Where is patch 1/2? On Thu, Nov 02, 2023 at 12:39:26PM +0100, dimadrumspro@xxxxxxxxx wrote: > From: Dima <dimadrumspro@xxxxxxxxx> Is that your full name? > > The previous code lacked proper synchronization, leading to potential data corruption and crashes. Added a spin lock to protect shared variable 'scrollback_delta' to prevent concurrent access. Please wrap your lines properly, as your editor hinted that you should. And always run scripts/checkpatch.pl on your patch before submitting it. > > Signed-off-by: Dima <dimadrumspro@xxxxxxxxx> > --- > drivers/tty/vt/vt.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c > index 5c47f77804f0..29cf7fe11662 100644 > --- a/drivers/tty/vt/vt.c > +++ b/drivers/tty/vt/vt.c > @@ -301,12 +301,13 @@ static inline unsigned short *screenpos(const struct vc_data *vc, int offset, > } > > /* Called from the keyboard irq path.. */ > +static DEFINE_SPINLOCK(scrolldelta_lock); > + > static inline void scrolldelta(int lines) > { > - /* FIXME */ > - /* scrolldelta needs some kind of consistency lock, but the BKL was > - and still is not protecting versus the scheduled back end */ > + spin_lock(&scrolldelta_lock); > scrollback_delta += lines; > + spin_unlock(&scrolldelta_lock); How exactly did you test this? This patch does not do anything that I can determine. And what "crashes" have you fixed here? What "data corruption"? Your changelog text does not match this actual change at all from what I can tell. thanks, greg k-h