[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bc8c5d7d-91a4-e955-854f-eef88812ac1a@roeck-us.net>
Date: Fri, 7 Aug 2020 12:08:45 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Florian Fainelli <f.fainelli@...il.com>,
madhuparnabhowmik10@...il.com
Cc: wim@...ux-watchdog.org, linux-watchdog@...r.kernel.org,
linux-kernel@...r.kernel.org, andrianov@...ras.ru,
ldv-project@...uxtesting.org
Subject: Re: [PATCH] drivers: watchdog: rdc321x_wdt: Fix race condition bugs
On 8/7/20 11:08 AM, Florian Fainelli wrote:
>
>
> On 8/7/2020 9:21 AM, Guenter Roeck wrote:
>> On Fri, Aug 07, 2020 at 04:59:02PM +0530, madhuparnabhowmik10@...il.com wrote:
>>> From: Madhuparna Bhowmik <madhuparnabhowmik10@...il.com>
>>>
>>> In rdc321x_wdt_probe(), rdc321x_wdt_device.queue is initialized
>>> after misc_register(), hence if ioctl is called before its
>>> initialization which can call rdc321x_wdt_start() function,
>>> it will see an uninitialized value of rdc321x_wdt_device.queue,
>>> hence initialize it before misc_register().
>>> Also, rdc321x_wdt_device.default_ticks is accessed in reset()
>>> function called from write callback, thus initialize it before
>>> misc_register().
>>>
>>> Found by Linux Driver Verification project (linuxtesting.org).
>>>
>>> Signed-off-by: Madhuparna Bhowmik <madhuparnabhowmik10@...il.com>
>>
>> Reviewed-by: Guenter Roeck <linux@...ck-us.net>
>>
>> Having said that ... this is yet another potentially obsolete driver.
>> You are really wasting your (and, fwiw, my) time.
>>
>> Florian, any thoughts if support for this chip can/should be deprecated
>> or even removed ?
>
> I am still using my rdc321x-based SoC, so no, this is not obsolete as
> far as I am concerned, time permitting, modernizing the driver is on my
> TODO after checking/fixing the Ethernet driver first.
>
Do you have a manual ? I'd give it a try if you can test it - conversion
should be simple enough (I have a coccinelle script which partially
automates it), but this chip seems to have a fast timeout, and the
comments in the code ("set the timeout to 81.92 us") seem to be quite
obviously wrong.
Guenter
Powered by blists - more mailing lists