Re: [PATCH][5/5][resend] floppy.c: Fix device_create_file() warning

From: Dmitriy Monakhov
Date: Wed Mar 21 2007 - 03:11:30 EST


"Jesper Juhl" <jesper.juhl@xxxxxxxxx> writes:

> On 20/03/07, Mikael Pettersson <mikpe@xxxxxxxx> wrote:
>> On Mon, 19 Mar 2007 18:42:22 +0100, Jesper Juhl wrote:
>> > --- a/drivers/block/floppy.c
>> > +++ b/drivers/block/floppy.c
>> > @@ -4302,7 +4302,12 @@ static int __init floppy_init(void)
>> > if (err)
>> > goto out_flush_work;
>> >
>> > - device_create_file(&floppy_device[drive].dev,&dev_attr_cmos);
>> > + err = device_create_file(&floppy_device[drive].dev, &dev_attr_cmos);
>> > + if (err)
>> > + goto out_flush_work;
>> > +
>> > /* to be cleaned up... */
>> > disks[drive]->private_data = (void *)(long)drive;
>> > disks[drive]->queue = floppy_queue;
>>
>> The floppy driver's sysfs file just provides some auxiliary
>> information to user-space, none of which matters for most of
>> its users. It is IMO totally inappropriate to fail floppy
>> driver init in this case.
>>
>
> Which is why my original patch just output a warning to let the user
> know that creating the file had failed.
Ohh please... First of all you have to make you patch correct, and only
after this think about tiny shiny error massages.
Lets look at original code:
err = platform_device_register(&floppy_device[drive]);
if (err)
goto out_flush_work;

device_create_file(&floppy_device[drive].dev,&dev_attr_cmos);
<<<<<<<<< You propose "goto out_flush_work" here if device_create_file() failed
<<<<<<<<< ,as it was done if platform_device_register() failed. But at the
<<<<<<<<< moment we call device_create_file() platform_device_register()
<<<<<<<<< succeed, this means we have to unregister it first and only after
<<<<<<<<< this jumpto out_flush_work.
>
> --
> 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/

-
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/