Re: [PATCH v9] tty: Fix the keyboard led light display problem
From: Greg KH
Date: Mon Nov 01 2021 - 08:48:36 EST
On Mon, Nov 01, 2021 at 08:35:47PM +0800, 常廉志 wrote:
> > Switching from the desktop environment to the tty environment,
> > the state of the keyboard led lights and the state of the keyboard
> > lock are inconsistent. This is because the attribute kb->kbdmode
> > of the tty bound in the desktop environment (Xorg) is set to
> > VC_OFF, which causes the ledstate and kb->ledflagstate
> > values of the bound tty to always be 0, which causes the switch
> > from the desktop When to the tty environment, the LED light
> > status is inconsistent with the keyboard lock status.
> >
> > Signed-off-by: lianzhi chang <changlianzhi@xxxxxxxxxxxxx>
> > ---
> > v7-->v8:
> > Optimize the implementation of kbd_update_ledstate function
> >
> > Why not adopt the opinions of Greg KH and Andy Shevchenko:
> > (1) In the structure struct input_dev, the definition of led is
> > like this: unsigned long led[BITS_TO_LONGS(LED_CNT)]; If you
> > define it like this: unsigned long newstate = *dev->led; I
> > always feel that there is still big end and Little endian problem.
> > (2) The test_bit function is used to avoid the problem of large
> > and small ends, and the current algorithm (v8) also exists
> > elsewhere in the kernel: the atkbd_set_leds function (drivers/
> > input/keyboard/atkbd.c).
> > (3) In the current keyboard.c code, the code is already very good,
> > and it is already relatively independent. If you modify the type
> > of ledstate to u64 or modify the macro definitions such as
> > VC_NUMLOCK, it feels that it is not very meaningful, and this It
> > will also cause other related modifications. Of course, this is
> > only my current opinion. If everyone still feels that it is
> > necessary to modify, I will do it this way. Of course, this
> > process may be a bit longer, and I think it is necessary to
> > conduct more tests.
> >
> > v9: Change description information: xorg-->Xorg
> > ……
>
> Hi, friends, I would like to ask whether this version of patch is possible, if not,
> I will try my best to find a way to complete the next version!
It's the merge window right now, we can't do anything with this until
after 5.16-rc1 is out. So give us until then at the least please, then
I will review it again.
thanks,
greg k-h