Re: [PATCH 28/36] PCI: Add pci_bus_extend/shrink_top()

Bjorn Helgaas
2012-03-16T21:04:48Z

On Fri, Mar 16, 2012 at 2:42 PM, Yinghai Lu <yinghai@kernel.org> wrote:
> On Fri, Mar 16, 2012 at 12:36 PM, Bjorn Helgaas <bhelgaas@google.com> wrote:
>> I've objected to this before on the grounds that it's not safe to
>> update res->end because res is already linked into the resource tree,
>> but I just noticed another problem.
>>
>> Tree updates are protected by resource_lock, but we don't hold that
>> here.  I'm sure you "know" that this update can't race with any other
>> conflicting resource operations, but its safety certainly is not
>> obvious from the patch.
>>
>> I think a better implementation would be to add something like
>> "resource_extend()" that could live in kernel/resource.c so it could
>> do the appropriate locking and checking.  Such an interface could also
>> be independent of the resource type, which may be useful when doing
>> mem/io resource reassignment.
>
> Thanks for point it out.
>
> Let me thinking about it.
>
>>
>> This patch is already in Jesse's linux-next branch (commit
>> c901d4c0407), so I'm leaving it up to you and Jesse to figure out
>> what, if anything, to do about this.
>
> No, this patch is one in busn_alloc patchset. Jesse did NOT pick that
> patchset yet.

Ah, right you are. I guess I still had your for-pci-root-bus-hotplug
branch checked out when this occurred to me. Sorry for the confusion.

Bjorn