Re: [PATCH v2 1/2] platform/x86: Add new Dell UART backlight driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 13, 2024 at 05:33:10PM +0200, Hans de Goede wrote:
> On 5/13/24 5:19 PM, Andy Shevchenko wrote:
> > On Mon, May 13, 2024 at 03:18:10PM +0200, Hans de Goede wrote:
> >> On 5/13/24 2:58 PM, Andy Shevchenko wrote:
> >>> On Mon, May 13, 2024 at 01:15:50PM +0200, Hans de Goede wrote:

...

> >>>> +static int dell_uart_bl_command(struct dell_uart_backlight *dell_bl,
> >>>> +				const u8 *cmd, int cmd_len,
> >>>> +				u8 *resp, int resp_max_len)
> >>>> +{
> >>>> +	int ret;
> >>>> +
> >>>> +	ret = mutex_lock_killable(&dell_bl->mutex);
> >>>
> >>> Can't be called via cleanup.h?
> >>
> >> I prefer to have the locking explicit rather then use cleanup.h .
> > 
> > Hmm... interesting, so you push-back the cleanup.h usage?
> 
> I'm in favor of the guard(mutex)(&smne_mutex); syntax, but this
> is a mutex_lock_killable() for which that does not work AFAIK.
> 
> So in this case AFAICT we would need to use the cleanup stuff manually
> and in that case I believe that in that case just sticking with
> the current code is better.

There is scoped_cond_guard().
But there is no DEFINE_GUARD_COND() for mutex_lock_killable().

...

> >>>> +	dev_dbg(dev, "Firmware version: %.*s\n", resp[RESP_LEN] - 3, resp + RESP_DATA);
> >>>
> >>> I would be on the safest side, i.e. not trusting that it will be NUL-terminated
> >>> string, hence something like %*pE?
> >>
> >> Right, this is why the existing dev_dbg() already passes a precision and we do
> >> want to actually stop if there is a 0 there, which %pE does not do.
> > 
> > I'm talking about the opposite, when it might go over the boundary.
> 
> AFAIK the way the precision is used in the current code limits things to at max the boundary,
> stopping earlier if a 0 is encountered earlier.

Indeed, I refreshed my memory about %.*s.

So, the only part left is the potential terminal sequences appear in
the message.

-- 
With Best Regards,
Andy Shevchenko






[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux