Re: vga and 64-bit memcpy's

From: Dave Airlie
Date: Tue Oct 21 2014 - 00:30:33 EST


On 13 September 2014 01:11, Linus Torvalds
<torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Fri, Sep 12, 2014 at 3:48 AM, Dave Airlie <airlied@xxxxxxxxx> wrote:
>>
>> Well I'm not shocked that an SMI GPU is out of spec, just not sure how
>> we can workaround it.
>
> Try just removing the
>
> #define scr_memcpyw(d, s, c) memcpy(d, s, c)
> #define VT_BUF_HAVE_MEMCPYW
>
> (and perhaps MEMMOVEW case too) from the default implementation, and
> see if doing things 16-bit words at a time using the fallbacks ends up
> working. As Alan said, write combining might defeat that, but quite
> frankly, we already do this for the MEMSETW case (probably because we
> forgot, possibly because it's not as performance-sensitive)
>
> My gut feel is that we don't care deeply about performance here,
> because (a) true text-modes are less common anyway and (b) true text
> modes are pretty damn fast anyway compared to the more usual "write
> the whole glyph as graphics" fbcon case.
>
> And *maybe* it works. And maybe that SMI GPU is a piece of shit that
> isn't worth worrying about in VGA text-mode. Where the hell are they
> found anyway?

Sorry I let this fall off the planet,

some huawei x86 server has this behaviour, works with RHEL5 32-bit,
fails with RHEL6 64-bit.

//#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
was tested and found to work, just a question if we care enough to fix
it I suppose.

Dave.





The info I have
>
> Linus
--
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/