[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <489F938A.10302@jp.fujitsu.com>
Date: Mon, 11 Aug 2008 10:19:06 +0900
From: Kenji Kaneshige <kaneshige.kenji@...fujitsu.com>
To: Alex Chiang <achiang@...com>,
Kenji Kaneshige <kaneshige.kenji@...fujitsu.com>,
Matthew Wilcox <matthew@....cx>,
Pierre Ossman <drzeus-list@...eus.cx>,
Jesse Barnes <jbarnes@...tuousgeek.org>,
LKML <linux-kernel@...r.kernel.org>, linux-pci@...r.kernel.org
Subject: Re: [PATCH 0/7] Fixups for duplicate slot names
Alex Chiang wrote:
> * Kenji Kaneshige <kaneshige.kenji@...fujitsu.com>:
>> Hi Alex-san,
>>
>> Thank you for patches!
>>
>> I looked at your patches and it looks good. But I have only one
>> concern about how to allocate/free memory for slot name.
>>
>> With your change, memory region for slot name will be allocated
>> by hotplug *controller* driver and it can be freed using kfree()
>> by hotplug *core* driver (not hotplug controller driver). So all
>> hotplug controller drivers including drivers implemented in the
>> future need to take it into account.
>>
>> I think it will be more robust if we can allocate and free memory
>> in the same component (maybe hotplug core driver in this case).
>
> Hm, I didn't think this would be a problem. The sequence is:
>
> - controller allocates memory for slot name
> - if core detects a collision:
> - it frees the name
> - it allocates new memory for name
> - it assigns that memory to the name parameter
> - controller->release will eventually free the name
>
> So it shouldn't matter if the core frees the original name
> pointer and allocates new memory, because the core will change
> the pointer for the controller.
>
> This is why I had to change the interface of pci_create_slot()
> from taking a const char *name to a char *name.
>
> Is there something I'm missing?
>
> /ac
I'm worrying about the following cases for example:
- hotplug controller driver allocates memory for slot name using
other than kmalloc().
- hotplug controller driver allocates memory for slot name as
a part of another data structure.
Thanks,
Kenji Kaneshige
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists