[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZYMKXahWqvsGdy77@smile.fi.intel.com>
Date: Wed, 20 Dec 2023 17:38:05 +0200
From: Andy Shevchenko <andriy.shevchenko@...el.com>
To: Hugo Villeneuve <hugo@...ovil.com>
Cc: gregkh@...uxfoundation.org, jirislaby@...nel.org, jringle@...dpoint.com,
kubakici@...pl, phil@...pberrypi.org, bo.svangard@...eddedart.se,
linux-kernel@...r.kernel.org, linux-serial@...r.kernel.org,
Hugo Villeneuve <hvilleneuve@...onoff.com>, stable@...r.kernel.org
Subject: Re: [PATCH 01/18] serial: sc16is7xx: fix segfault when removing
driver
On Wed, Dec 20, 2023 at 05:34:29PM +0200, Andy Shevchenko wrote:
> On Tue, Dec 19, 2023 at 12:18:45PM -0500, Hugo Villeneuve wrote:
> > From: Hugo Villeneuve <hvilleneuve@...onoff.com>
...
> > + dev_set_drvdata(dev, NULL);
>
> I believe this is wrong approach to fix the issue as this one is prone
> to be cleaned up in the future as we don't do this call explicitly for
> the past ~15 years.
On top of that the ->remove() is not the only uart_remove_one_port() call.
It has a lot of other stuff to go with.
It seems that ->remove() doesn't check the bit in &sc16is7xx_lines, that
might be the proper fix for the issue you have.
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists