Re: [PATCH] vt_buffer: drop console buffer copying optimisations

From: Pavel Machek
Date: Tue Feb 24 2015 - 11:49:26 EST


On Thu 2015-01-29 14:11:25, Dave Airlie wrote:
> These two copy to/from VGA memory, however on the Silicon
> Motion SMI750 VGA card on a 64-bit system cause console corruption.
>
> This is due to the hw being buggy and not handling a 64-bit transaction
> correctly.
>
> We could try and create a 32-bit version of these routines,
> but I'm not sure the optimisation is worth much today.
>
> Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1132826
>
> Tested-by: Huawei engineering.
> Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

Actually... are you sure this is right fix?

IOW can gcc do the optimalization behind your back and still break the
buggy card?
Pavel

> diff --git a/include/linux/vt_buffer.h b/include/linux/vt_buffer.h
> index 057db7d..f38c10b 100644
> --- a/include/linux/vt_buffer.h
> +++ b/include/linux/vt_buffer.h
> @@ -21,10 +21,6 @@
> #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
> #endif
>
> #ifndef VT_BUF_HAVE_MEMSETW

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/