Re: [PATCH v6 1/2] tty: serial: Cleanup the bit shift with macro

From: Crescent CY Hsieh
Date: Thu Jan 18 2024 - 03:15:02 EST


On Thu, Jan 18, 2024 at 08:01:58AM +0100, Greg KH wrote:
> On Wed, Jan 17, 2024 at 03:56:23PM +0100, Christoph Niedermaier wrote:
> > > struct serial_rs485 {
> > > __u32 flags;
> > > -#define SER_RS485_ENABLED (1 << 0)
> > > -#define SER_RS485_RTS_ON_SEND (1 << 1)
> > > -#define SER_RS485_RTS_AFTER_SEND (1 << 2)
> >
> > In the old definition (1 << 3) wasn't used.
> >
> > > -#define SER_RS485_RX_DURING_TX (1 << 4)
> > > -#define SER_RS485_TERMINATE_BUS (1 << 5)
> > > -#define SER_RS485_ADDRB (1 << 6)
> > > -#define SER_RS485_ADDR_RECV (1 << 7)
> > > -#define SER_RS485_ADDR_DEST (1 << 8)
> > > +#define SER_RS485_ENABLED _BITUL(0)
> > > +#define SER_RS485_RTS_ON_SEND _BITUL(1)
> > > +#define SER_RS485_RTS_AFTER_SEND _BITUL(2)
> > > +#define SER_RS485_RX_DURING_TX _BITUL(3)
> >
> > Isn't it a break if number 3 isn't skipped here as well?

Sorry I might have misunderstood the meaning of "broke userspace".

In this case, does it imply splitting the "cleanup" patch and the "add
feature" patch, or leaving the third bit unused? Or perhaps both?

---
Sincerely,
Crescent Hsieh