Horizontal pel panning bit 3 is only used in text mode. In graphics mode, it can be treated as if it was zero, thus not extending the dirty memory region.
Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- hw/display/vga.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/display/vga.c b/hw/display/vga.c index 40acd19e72a..77f59e8c113 100644 --- a/hw/display/vga.c +++ b/hw/display/vga.c @@ -1571,7 +1571,9 @@ static void vga_draw_graphic(VGACommonState *s, int full_update) break; } } - hpel = bits <= 8 ? s->params.hpel : 0; + + /* Horizontal pel panning bit 3 is only used in text mode. */ + hpel = bits <= 8 ? s->params.hpel & 7 : 0; region_start = (s->params.start_addr * 4); region_end = region_start + (ram_addr_t)s->params.line_offset * height; -- 2.44.0