Messages in this thread Patch in this message | | | Date | Thu, 22 Jun 2006 08:47:27 +0800 | From | "Antonino A. Daplas" <> | Subject | Re: CONFIG_VGACON_SOFT_SCROLLBACK crashes 2.6.17 |
| |
Al Boldi wrote: > Antonino A. Daplas wrote: >> Al Boldi wrote: >>> Enabling CONFIG_VGACON_SOFT_SCROLLBACK causes random fatal system >>> freezes. >>> >>> Especially, ping 10.1 -A easily causes a complete system hang during >>> scroll. >>> >>> Is there an easy way to fix this, other than disabling the option? >> I can't duplicate your problem. Did it ever work before? > > This option did not exist before 2.6.17.
I meant if you tried any of the -rc kernels.
Anyway, can you try the patch below. It's a debugging patch and it will slow down the console.
If the system hang disappears, remove the line
while (i--);
in include/linux/vt_buffer.h. This line is introduced by the patch below.
Let me know at what point it worked, or whether it worked at all.
> >> Can you send me you kernel config? > > Attached below. > > BTW, is there any chance to patch your savagefb to support VIA/S3 UniChrome? >
If someone posts a patch to lkml or fbdev-devel, why not? But a separate driver is probably better as the 2 are very different.
Tony
diff --git a/include/linux/vt_buffer.h b/include/linux/vt_buffer.h index 057db7d..e9b6064 100644 --- a/include/linux/vt_buffer.h +++ b/include/linux/vt_buffer.h @@ -20,11 +20,21 @@ #endif #ifndef VT_BUF_HAVE_RW #define scr_writew(val, addr) (*(addr) = (val)) -#define scr_readw(addr) (*(addr)) -#define scr_memcpyw(d, s, c) memcpy(d, s, c) -#define scr_memmovew(d, s, c) memmove(d, s, c) -#define VT_BUF_HAVE_MEMCPYW -#define VT_BUF_HAVE_MEMMOVEW +//#define scr_readw(addr) (*(addr)) + +static inline u16 scr_readw(volatile const u16 *addr) +{ + int i = 10000; + u16 val = *addr; + + while (i--); + return val; +} + +//#define scr_memcpyw(d, s, c) memcpy(d, s, c) +//#define scr_memmovew(d, s, c) memmove(d, s, c) +#undef VT_BUF_HAVE_MEMCPYW +#undef VT_BUF_HAVE_MEMMOVEW #endif #ifndef VT_BUF_HAVE_MEMSETW - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |