home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   linux.debian.kernel      Debian kernel discussions      2,884 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 2,073 of 2,884   
   William Burrow to wbkernel@gmail.com   
   Bug#1123750: linux: regression: virtual    
   27 Dec 25 03:30:01   
   
   [continued from previous message]   
      
   > Here is the patch that produced this log.  DO NOT work in the vtty   
   > with this patch, it will fill your logs and maybe make your machine   
   > unbootable.  Word to the wise.   
   > .   
   > -------------------------- patch to generate log --------------------------   
   > --- a/drivers/video/fbdev/core/bitblit.c        2025-12-26   
   > 14:46:52.270645363 -0400   
   > +++ b/drivers/video/fbdev/core/bitblit.c        2025-12-26   
   > 20:21:38.096907035 -0400   
   > @@ -82,13 +82,35 @@   
   >        unsigned int charcnt = vc->vc_font.charcount;   
   >        u32 idx = vc->vc_font.width >> 3;   
   >        u8 *src;   
   > +       u16 ch = 0;   
   > +       u16 prech = 0;   
   > +       u8 * srcnew, * srcorig;   
   >   
   >        while (cnt--) {   
   > -               u16 ch = scr_readw(s++) & charmask;   
   > -   
   > -               if (ch >= charcnt)   
   > -                       ch = 0;   
   > -               src = vc->vc_font.data + (unsigned int)ch * cellsize;   
   > +               prech = scr_readw(s++);   
   > +               srcorig = vc->vc_font.data + (prech&   
   > +                                         charmask)*cellsize;   
   > +               printk("** ** bit_putcs_aligned: ---------->>\n");   
   > +               printk("** ** bit_putcs_aligned: cnt: %d\n", cnt);   
   > +               printk("** ** bit_putcs_aligned: vc->vc_font.data:   
   > 0x%lx\n", vc->vc_font.data );   
   > +               printk("** ** bit_putcs_aligned:          srcorig:   
   > 0x%lx\n", srcorig );   
   > +   
   > +               ch = prech & charmask;   
   > +               printk("** ** bit_putcs_aligned: before: ch: 0x%x\n", ch);   
   > +   
   > +                if (ch >= charcnt)   
   > +                        ch = 32;   
   > +                srcnew = vc->vc_font.data + ch * cellsize;   
   > +               printk("** ** bit_putcs_aligned:  after: ch: 0x%x\n", ch);   
   > +               printk("** ** bit_putcs_aligned: charcnt: 0x%x\n", charcnt);   
   > +               printk("** ** bit_putcs_aligned: cellsize: 0x%x\n",   
   cellsize);   
   > +               printk("** ** bit_putcs_aligned: ch * cellsize:   
   > 0x%x\n", (ch * cellsize));   
   > +               printk("** ** bit_putcs_aligned:           srcnew:   
   > 0x%lx\n", srcnew);   
   > +               printk("** ** bit_putcs_aligned: srcorig - srcnew:   
   > 0x%lx\n", (srcorig - srcnew));   
   > +   
   > +               // src = srcorig; printk("** ** bit_putcs_aligned:   
   srcorig\n");   
   > +               src = srcnew; printk("** ** bit_putcs_aligned: srcnew\n");   
   > +               printk("** ** bit_putcs_aligned: <<----------\n");   
   >   
   >                if (attr) {   
   >                        update_attr(buf, src, attr, vc);   
   > -------------------------- patch to generate log --------------------------   
   > .   
   >   
   > On Fri, Dec 26, 2025 at 3:18 PM William Burrow  wrote:   
   > >   
   > > Hi, all.   
   > > To summarize the message thread, commit 0998a6cb232 was found to be   
   > > the issue.  It is unclear why this commit causes an issue.  It was   
   > > added shortly after kernel v5.10.246 was released, so it was not   
   > > necessary to bisect between 5.10.244 and 5.10.247, saving time.   
   > > .   
   > > In testing, it was found that the variable charcnt is set to zero,   
   > > causing the if-statement to trigger.  This should not happen.  There   
   > > may be a bug somewhere else that triggers this.   
   > > .   
   > > Patching the line after the added if-statement in that commit from ch   
   > > = 0 to ch = 32 (space character) does not seem to fix the issue, it   
   > > just changes it from a screen of symbols to a (mostly) blank screen.   
   > > This is unexpected, since the address for the variable src should be   
   > > the same calculated with the change of ch = 32 with this patch or the   
   > > code before this patch.   
   > > .   
   > > Thanks for your time to review this bug.   
   > > .   
   > > ------------------------- suspected commit ----------------------   
   > > diff --git a/drivers/video/fbdev/core/bitblit.c   
   > > b/drivers/video/fbdev/core/bitblit.c   
   > > index bb821b68f88c..4e774010d09f 100644   
   > > --- a/drivers/video/fbdev/core/bitblit.c   
   > > +++ b/drivers/video/fbdev/core/bitblit.c   
   > > @@ -79,12 +79,16 @@ static inline void bit_putcs_aligned(struct   
   > > vc_data *vc, struct fb_info *info,   
   > >                                     struct fb_image *image, u8 *buf, u8   
   *dst)   
   > > {   
   > >        u16 charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff;   
   > > +       unsigned int charcnt = vc->vc_font.charcount;   
   > >        u32 idx = vc->vc_font.width >> 3;   
   > >        u8 *src;   
   > >   
   > >        while (cnt--) {   
   > > -               src = vc->vc_font.data + (scr_readw(s++)&   
   > > -                                         charmask)*cellsize;   
   > > +               u16 ch = scr_readw(s++) & charmask;   
   > > +   
   > > +               if (ch >= charcnt)   
   > > +                       ch = 0;   
   > > +               src = vc->vc_font.data + (unsigned int)ch * cellsize;   
   > >   
   > >                if (attr) {   
   > >                        update_attr(buf, src, attr, vc);   
   > > @@ -112,14 +116,18 @@ static inline void bit_putcs_unaligned(struct   
   vc_data *vc,   
   > >                                       u8 *dst)   
   > > {   
   > >        u16 charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff;   
   > > +       unsigned int charcnt = vc->vc_font.charcount;   
   > >        u32 shift_low = 0, mod = vc->vc_font.width % 8;   
   > >        u32 shift_high = 8;   
   > >        u32 idx = vc->vc_font.width >> 3;   
   > >        u8 *src;   
   > >   
   > >        while (cnt--) {   
   > > -               src = vc->vc_font.data + (scr_readw(s++)&   
   > > -                                         charmask)*cellsize;   
   > > +               u16 ch = scr_readw(s++) & charmask;   
   > > +   
   > > +               if (ch >= charcnt)   
   > > +                       ch = 0;   
   > > +               src = vc->vc_font.data + (unsigned int)ch * cellsize;   
   > >   
   > >                if (attr) {   
   > >                        update_attr(buf, src, attr, vc);   
   > > ------------------------- suspected commit ----------------------   
   > >   
   > > On Fri, Dec 26, 2025 at 12:48 PM Salvatore Bonaccorso  wrote:   
   > > >   
   > > > Control: tags -1 - moreinfo   
   > > > Control: forwarded -1 https://lists.debian.org/debian-kern   
   l/2025/12/msg00293.html https://lists.debian.org/debian-kernel/2   
   25/12/msg00211.html   
   > > >   
   > > > Hi,   
   > > >   
   > > > On Sun, Dec 21, 2025 at 04:19:14PM +0000, Thorsten Glaser wrote:   
   > > > > Hi Salvatore,   
   > > > >   
   > > > > >If you can do the bisect mentioned that would help identifying the   
   > > > > >problem.   
   > > > >   
   > > > > I’m not in a position to do that currently, I don’t have a   
   > > > > fast machine anyway and packed light, too. But at least X11   
   > > > > works, so I’m fine currently.   
   > > > >   
   > > > > This is a Thinkpad X61 with Intel integrated graphics, FWIW.   
   > > >   
   > > > FTR, there is some progress in   
   > > > https://lists.debian.org/debian-kernel/2025/12/msg00293.html (which   
   > > > retrospectively we should have made a Debian BTS bug from the start   
   > > > for easier tracking).   
   > > >   
   > > > Helge, can you please include the Debian bug #1123750 in next replies?   
   > > >   
   > > > Regards,   
   > > > Salvatore   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca