On Thu, Feb 17, 2022 at 04:02:39PM +0100, Jan Beulich wrote:
> On 17.02.2022 15:47, Roger Pau Monné wrote:
> > On Thu, Feb 17, 2022 at 12:01:08PM +0100, Jan Beulich wrote:
> >> @@ -179,8 +179,7 @@ void __init vesa_mtrr_init(void)
> >>
> >> static void lfb_flush(void)
> >> {
> >> - if ( vesa_mtrr == 3 )
> >> - __asm__ __volatile__ ("sfence" : : : "memory");
> >> + __asm__ __volatile__ ("sfence" : : : "memory");
> >
> > Now that the cache attribute is forced to WC using PAT don't we need
> > to drop vesa_mtrr_init and vesa_mtrr? The more that the option is
> > fully undocumented.
>
> Yes indeed. You did ask to re-send this patch in isolation. This removal
> is part of the full series.
>
> >> --- a/xen/drivers/video/vga.c
> >> +++ b/xen/drivers/video/vga.c
> >> @@ -79,7 +79,7 @@ void __init video_init(void)
> >> {
> >> case XEN_VGATYPE_TEXT_MODE_3:
> >> if ( page_is_ram_type(paddr_to_pfn(0xB8000),
> >> RAM_TYPE_CONVENTIONAL) ||
> >> - ((video = ioremap(0xB8000, 0x8000)) == NULL) )
> >> + ((video = ioremap_wc(0xB8000, 0x8000)) == NULL) )
> >> return;
> >> outw(0x200a, 0x3d4); /* disable cursor */
> >> columns = vga_console_info.u.text_mode_3.columns;
> >> @@ -164,7 +164,11 @@ void __init video_endboot(void)
> >> {
> >> case XEN_VGATYPE_TEXT_MODE_3:
> >> if ( !vgacon_keep )
> >> + {
> >> memset(video, 0, columns * lines * 2);
> >> + iounmap(video);
> >> + video = ZERO_BLOCK_PTR;
> >> + }
> >> break;
> >> case XEN_VGATYPE_VESA_LFB:
> >> case XEN_VGATYPE_EFI_LFB:
> >
> > I think in vesa_endboot you also need to iounmap the framebuffer
> > iomem?
>
> Again part of the full series. I guess I was a little inconsistent
> with leaving the VGA unmap in here, but breaking out the VESA part.
> It's been a long time, but I guess I did so because the VESA part
> needs to touch two files.
I think you are hesitant to include the chunks for the above items? (or
maybe I'm not properly accounting for their complexity).
Thanks, Roger.