qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] a89fe6: vga: catch depth 0


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] a89fe6: vga: catch depth 0
Date: Thu, 24 May 2018 10:33:13 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: a89fe6c329799e47aaa1663650f076b28808e186
      
https://github.com/qemu/qemu/commit/a89fe6c329799e47aaa1663650f076b28808e186
  Author: Gerd Hoffmann <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M hw/display/vga.c

  Log Message:
  -----------
  vga: catch depth 0

depth == 0 is used to indicate 256 color modes.  Our region calculation
goes wrong in that case.  So detect that and just take the safe code
path we already have for the wraparound case.

While being at it also catch depth == 15 (where our region size
calculation goes wrong too).  And make the comment more verbose,
explaining what is going on here.

Without this windows guest install might trigger an assert due to trying
to check dirty bitmap outside the snapshot region.

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1575541
Signed-off-by: Gerd Hoffmann <address@hidden>
Message-id: address@hidden


  Commit: a3ee49f07511ff487f55a15b295fb9e89453ca13
      
https://github.com/qemu/qemu/commit/a3ee49f07511ff487f55a15b295fb9e89453ca13
  Author: Gerd Hoffmann <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M hw/display/vga-pci.c
    M hw/display/vga_int.h
    A include/hw/display/bochs-vbe.h

  Log Message:
  -----------
  vga: move bochs vbe defines to header file

Create a new header file, move the bochs vbe dispi interface
defines to it, so they can be used outside vga code.

Signed-off-by: Gerd Hoffmann <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Message-id: address@hidden


  Commit: 83ff909f93d35368832230c1a4e70c84793a695c
      
https://github.com/qemu/qemu/commit/83ff909f93d35368832230c1a4e70c84793a695c
  Author: Gerd Hoffmann <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M hw/display/vga-pci.c

  Log Message:
  -----------
  vga-pci: use PCI_VGA_MMIO_SIZE

Signed-off-by: Gerd Hoffmann <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-id: address@hidden


  Commit: 765c94290863eef1fc4a67819d452cc13b7854a1
      
https://github.com/qemu/qemu/commit/765c94290863eef1fc4a67819d452cc13b7854a1
  Author: Gerd Hoffmann <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M hw/display/Makefile.objs
    A hw/display/bochs-display.c

  Log Message:
  -----------
  hw/display: add new bochs-display device

After writing up the virtual mdev device emulating a display supporting
the bochs vbe dispi interface (mbochs.ko) and seeing how simple it
actually is I've figured that would be useful for qemu too.

So, here it is, -device bochs-display.  It is basically -device VGA
without legacy vga emulation.  PCI bar 0 is the framebuffer, PCI bar 2
is mmio with the registers.  The vga registers are simply not there
though, neither in the legacy ioport location nor in the mmio bar.
Consequently it is PCI class DISPLAY_OTHER not DISPLAY_VGA.

So there is no text mode emulation, no weird video modes (planar,
256color palette), no memory window at 0xa0000.  Just a linear
framebuffer in the pci memory bar.  And the amount of code to emulate
this (and therefore the attack surface) is an order of magnitude smaller
when compared to vga emulation.

Compatibility wise it works with OVMF (latest git master).
The bochs-drm.ko linux kernel module can handle it just fine too.
So UEFI guests should not see any functional difference to VGA.

Signed-off-by: Gerd Hoffmann <address@hidden>
Tested-by: Marc-André Lureau <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Message-id: address@hidden


  Commit: 33ebad54056f0e54b9db1d675d34eed097479c69
      
https://github.com/qemu/qemu/commit/33ebad54056f0e54b9db1d675d34eed097479c69
  Author: Gerd Hoffmann <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M hw/display/bochs-display.c

  Log Message:
  -----------
  bochs-display: add dirty tracking support

Signed-off-by: Gerd Hoffmann <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Message-id: address@hidden


  Commit: f2581064a68f37d3406b90f9a0929801d97b2758
      
https://github.com/qemu/qemu/commit/f2581064a68f37d3406b90f9a0929801d97b2758
  Author: Gerd Hoffmann <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M hw/display/bochs-display.c

  Log Message:
  -----------
  bochs-display: add pcie support

Signed-off-by: Gerd Hoffmann <address@hidden>
Message-id: address@hidden


  Commit: dbb2e4726c76dbffb39efe6623bf75d2ec1db8bc
      
https://github.com/qemu/qemu/commit/dbb2e4726c76dbffb39efe6623bf75d2ec1db8bc
  Author: Gerd Hoffmann <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: add vga entries

Add entries for standard vga, virtio-gpu and cirrus.

Signed-off-by: Gerd Hoffmann <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-id: address@hidden


  Commit: 62b9b076d9d37117696ec64f0b3544c1205ff7f9
      
https://github.com/qemu/qemu/commit/62b9b076d9d37117696ec64f0b3544c1205ff7f9
  Author: Peter Maydell <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M MAINTAINERS
    M hw/display/Makefile.objs
    A hw/display/bochs-display.c
    M hw/display/vga-pci.c
    M hw/display/vga.c
    M hw/display/vga_int.h
    A include/hw/display/bochs-vbe.h

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/kraxel/tags/vga-20180524-pull-request' 
into staging

vga: catch depth 0
hw/display: add new bochs-display device
some cleanups.

# gpg: Signature made Thu 24 May 2018 16:45:46 BST
# gpg:                using RSA key 4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <address@hidden>"
# gpg:                 aka "Gerd Hoffmann <address@hidden>"
# gpg:                 aka "Gerd Hoffmann (private) <address@hidden>"
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/vga-20180524-pull-request:
  MAINTAINERS: add vga entries
  bochs-display: add pcie support
  bochs-display: add dirty tracking support
  hw/display: add new bochs-display device
  vga-pci: use PCI_VGA_MMIO_SIZE
  vga: move bochs vbe defines to header file
  vga: catch depth 0

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/45eabb2ede0c...62b9b076d9d3
      **NOTE:** This service been marked for deprecation: 
https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]