[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120817165446.GA12361@kroah.com>
Date: Fri, 17 Aug 2012 09:54:46 -0700
From: Greg KH <gregkh@...uxfoundation.org>
To: Tomas Hlavacek <tmshlvck@...il.com>
Cc: alan@...ux.intel.com, linux-serial@...r.kernel.org,
linux-kernel@...r.kernel.org, marek.vasut@...il.com
Subject: Re: [PATCHv3 1/1] [RFC] uartclk from serial_core exposed to sysfs
On Fri, Aug 17, 2012 at 06:30:36PM +0200, Tomas Hlavacek wrote:
> Hello Greg!
>
> On Fri, Aug 17, 2012 at 5:06 PM, Greg KH <gregkh@...uxfoundation.org> wrote:
> >> @@ -2355,6 +2373,14 @@ int uart_add_one_port(struct uart_driver *drv, struct uart_port *uport)
> >> }
> >>
> >> /*
> >> + * Expose uartclk in sysfs. Use driverdata of the tty device for
> >> + * referencing the UART port.
> >> + */
> >> + dev_set_drvdata(tty_dev, port);
> >> + if (device_create_file(tty_dev, &dev_attr_uartclk) < 0)
> >> + dev_err(tty_dev, "Failed to add uartclk attr\n");
> >
> > I think you just raced with userspace in creating the file after the
> > device was announced to userspace. Are you sure it's ok?
> >
> > If not (hint, I don't think so), please make it a default attribute of
> > the device, which will then cause the file to be created before it is
> > announced to userspace. It will also be less code as you don't have to
> > clean it up by hand :)
>
> Do you mean I should modify the tty_register_device() function not to
> use device_create() but it should rather do the device initialization
> on it's own.
No, not at all.
> And I should add add the attribute (via struct attribute_group) to
> struct device in between device_initialize() and device_add() calls.
> Did I get it right?
No, make this a driver attribute, that way when the device is
registered, it adds the attribute automagically to the device that is
bound to it.
Does that make sense?
greg k-h
--
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