diff --git a/kernel/resource.c b/kernel/resource.c index a8344dda70492d9eb5e1b5806ce27e56a61b0d3c..673061c06da182dbe02993d6f332168f8b3b3c96 100644 --- a/kernel/resource.c +++ b/kernel/resource.c @@ -945,8 +945,8 @@ struct resource * __request_region(struct resource *parent, res->name = name; res->start = start; res->end = start + n - 1; - res->flags = IORESOURCE_BUSY; - res->flags |= flags; + res->flags = resource_type(parent); + res->flags |= IORESOURCE_BUSY | flags; write_lock(&resource_lock);