Re: [PATCH] /fs/partition/check.c: fix return value warning

From: Jesper Juhl
Date: Mon May 19 2008 - 18:53:29 EST


Hi Abdel,

2008/5/13 Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>:
> On Sat, 10 May 2008 13:40:53 +0200
> Abdel Benamrouche <draconux@xxxxxxxxx> wrote:
>
>> fs/partitions/check.c:381: warning: ignoring return value of ___device_add___,
>> declared with attribute warn_unused_result
>>
>> Signed-off-by: Abdel Benamrouche <draconux@xxxxxxxxx>
>> ---
>> :100644 100644 6149e4b... 7a87fad... M fs/partitions/check.c
>> fs/partitions/check.c | 8 +++++++-
>> 1 files changed, 7 insertions(+), 1 deletions(-)
>>
>> diff --git a/fs/partitions/check.c b/fs/partitions/check.c
>> index 6149e4b..7a87fad 100644
>> --- a/fs/partitions/check.c
>> +++ b/fs/partitions/check.c
>> @@ -378,7 +378,13 @@ void add_partition(struct gendisk *disk, int part, sector_t start, sector_t len,
>>
>> /* delay uevent until 'holders' subdir is created */
>> p->dev.uevent_suppress = 1;
>> - device_add(&p->dev);
>> + if (device_add(&p->dev)) {
>> + put_device(&p->dev);
>> + free_part_stats(p);
>> + kfree(p);
>> + return;
>> + }
>> +
>> partition_sysfs_add_subdir(p);
>> p->dev.uevent_suppress = 0;
>> if (flags & ADDPART_FLAG_WHOLEDISK)
>
> We should go further than this. add_partition() just drops the error
> on the floor. It should be propagated back to callers, and callers
> should be modified to handle it appropriately.
>
> Presumably we should also handle a device_create_file() failure as well
> - that is presently being silently ignored.
>

Given these comments from Andrew, I'm not adding this patch to the Trivial tree.
Please address Andrews comments and re-submit - at which point I doubt
it'll be suitable for trivial, so please try to get it merged via
other maintainers.

--
Jesper Juhl <jesper.juhl@xxxxxxxxx>
Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please http://www.expita.com/nomime.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/