[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20180925074714.GG13455@piout.net>
Date: Tue, 25 Sep 2018 09:47:14 +0200
From: Alexandre Belloni <alexandre.belloni@...tlin.com>
To: Denis OSTERLAND <denis.osterland@...hl.com>
Cc: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"khoroshilov@...ras.ru" <khoroshilov@...ras.ru>
Subject: Re: rtc: isl1208: avoid possible sysfs race
On 25/09/2018 06:46:24+0000, Denis OSTERLAND wrote:
> Hi,
>
> just for clarification:
> This changes user-space representation from
> /sys/class/rtc/rtcN/device/{atrim,dtrim,usr}
> to
> /sys/class/rtc/rtcN/{atrim,dtrim,usr}
> and fixes the "mistake made back in 2006" you mention in
> https://patchwork.ozlabs.org/patch/881397/
> correct?
>
This is correct. At some point, it would also be great to move from
atrim/dtrim to offset
> Regards Denis
>
> Am Samstag, den 15.09.2018, 13:43 +0200 schrieb Alexandre Belloni:
> > Use rtc_add_group to add the common sysfs group to avoid a possible race
> > condition.
> >
> > Signed-off-by: Alexandre Belloni <alexandre.belloni@...tlin.com>
> > ---
> > drivers/rtc/rtc-isl1208.c | 11 +----------
> > 1 file changed, 1 insertion(+), 10 deletions(-)
> >
> > diff --git a/drivers/rtc/rtc-isl1208.c b/drivers/rtc/rtc-isl1208.c
> > index ea18a8f4bce0..e1e9434c9972 100644
> > --- a/drivers/rtc/rtc-isl1208.c
> > +++ b/drivers/rtc/rtc-isl1208.c
> > @@ -804,7 +804,7 @@ isl1208_probe(struct i2c_client *client, const struct i2c_device_id *id)
> > evdet_irq = of_irq_get_byname(np, "evdet");
> > }
> >
> > - rc = sysfs_create_group(&client->dev.kobj, &isl1208_rtc_sysfs_files);
> > + rc = rtc_add_group(rtc, &isl1208_rtc_sysfs_files);
> > if (rc)
> > return rc;
> >
> > @@ -821,14 +821,6 @@ isl1208_probe(struct i2c_client *client, const struct i2c_device_id *id)
> > return rtc_register_device(rtc);
> > }
> >
> > -static int
> > -isl1208_remove(struct i2c_client *client)
> > -{
> > - sysfs_remove_group(&client->dev.kobj, &isl1208_rtc_sysfs_files);
> > -
> > - return 0;
> > -}
> > -
> > static const struct i2c_device_id isl1208_id[] = {
> > { "isl1208", TYPE_ISL1208 },
> > { "isl1218", TYPE_ISL1218 },
> > @@ -851,7 +843,6 @@ static struct i2c_driver isl1208_driver = {
> > .of_match_table = of_match_ptr(isl1208_of_match),
> > },
> > .probe = isl1208_probe,
> > - .remove = isl1208_remove,
> > .id_table = isl1208_id,
> > };
> >
>
> Diehl Connectivity Solutions GmbH
> Geschäftsführung: Horst Leonberger
> Sitz der Gesellschaft: Nürnberg - Registergericht: Amtsgericht
> Nürnberg: HRB 32315
> ___________________________________________________________________________________________________
>
> Der Inhalt der vorstehenden E-Mail ist nicht rechtlich bindend. Diese E-Mail enthaelt vertrauliche und/oder rechtlich geschuetzte Informationen.
> Informieren Sie uns bitte, wenn Sie diese E-Mail faelschlicherweise erhalten haben. Bitte loeschen Sie in diesem Fall die Nachricht.
> Jede unerlaubte Form der Reproduktion, Bekanntgabe, Aenderung, Verteilung und/oder Publikation dieser E-Mail ist strengstens untersagt.
> The contents of the above mentioned e-mail is not legally binding. This e-mail contains confidential and/or legally protected information. Please inform us if you have received this e-mail by
> mistake and delete it in such a case. Each unauthorized reproduction, disclosure, alteration, distribution and/or publication of this e-mail is strictly prohibited.
--
Alexandre Belloni, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Powered by blists - more mailing lists