On Mon, May 7, 2012 at 2:29 PM, Yinghai Lu <yinghai@xxxxxxxxxx> wrote: > for no parent no siling case. > > Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx> > --- > kernel/resource.c | 13 ++++++++----- > 1 files changed, 8 insertions(+), 5 deletions(-) > > diff --git a/kernel/resource.c b/kernel/resource.c > index 7e8ea66..51ade23 100644 > --- a/kernel/resource.c > +++ b/kernel/resource.c > @@ -722,14 +722,12 @@ int adjust_resource(struct resource *res, resource_size_t start, resource_size_t > > write_lock(&resource_lock); > > + if (!parent) > + goto skip; > + > if ((start < parent->start) || (end > parent->end)) > goto out; > > - for (tmp = res->child; tmp; tmp = tmp->sibling) { > - if ((tmp->start < start) || (tmp->end > end)) > - goto out; > - } > - > if (res->sibling && (res->sibling->start <= end)) > goto out; > > @@ -741,6 +739,11 @@ int adjust_resource(struct resource *res, resource_size_t start, resource_size_t > goto out; > } > > +skip: > + for (tmp = res->child; tmp; tmp = tmp->sibling) > + if ((tmp->start < start) || (tmp->end > end)) > + goto out; > + > res->start = start; > res->end = end; > result = 0; Where does this case occur? When do you need to adjust a resource that has no parent? -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html