[PATCH 1/3] POWERPC: don't cast a pointer to pointer of list_head
Li Zefan
lizf at cn.fujitsu.com
Fri Dec 7 16:05:30 EST 2007
Nick Piggin 写道:
> On Thursday 06 December 2007 20:33, Li Zefan wrote:
>> The casting is safe only when the list_head member is the
>> first member of the structure.
>
> Even so, I don't think too safe :) It might technically work,
> but it could break more easily.
>
> So even if you find places where list_head is the first member of
> a structure, it would be nice to explicitly use the list_head member
> and avoid casts IMO.
>
This is exactly what I think. Those patches actually fix no bugs, but
avoid this kind of technically and currently correct casting.
>
>> Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
>>
>> ---
>> arch/ppc/syslib/ocp.c | 2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/arch/ppc/syslib/ocp.c b/arch/ppc/syslib/ocp.c
>> index 3f5be2c..d42d408 100644
>> --- a/arch/ppc/syslib/ocp.c
>> +++ b/arch/ppc/syslib/ocp.c
>> @@ -376,7 +376,7 @@ ocp_remove_one_device(unsigned int vendor, unsigned int
>> function, int index)
>>
>> down_write(&ocp_devices_sem);
>> dev = __ocp_find_device(vendor, function, index);
>> - list_del((struct list_head *)dev);
>> + list_del(&dev->link);
>> up_write(&ocp_devices_sem);
>>
>> DBG(("ocp: ocp_remove_one_device(vendor: %x, function: %x, index: %d)...
>> done.\n", vendor, function, index));
>
>
More information about the Linuxppc-dev
mailing list