* [Qemu-devel] [PATCH v5 0/2] ati-vga: Implement DDC and EDID info from monitor @ 2019-06-20 10:55 BALATON Zoltan 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ BALATON Zoltan ` (2 more replies) 0 siblings, 3 replies; 11+ messages in thread From: BALATON Zoltan @ 2019-06-20 10:55 UTC (permalink / raw) To: qemu-devel; +Cc: Corey Minyard, Gerd Hoffmann Version 5 Works with ATI MacOS NDRV, MorphOS and Linux radeonfb so hopefully this is good enough for now (each of these access DDC bits slightly differently). Version 4 try to fix an ASan warning about leaking bitbang_i2c. Version 3 keeps bitbang_i2c.h and moves it to include/hw/i2c/ otherwise same as version 2. BALATON Zoltan (2): i2c: Move bitbang_i2c.h to include/hw/i2c/ ati-vga: Implement DDC and EDID info from monitor hw/display/Kconfig | 2 ++ hw/display/ati.c | 60 ++++++++++++++++++++++++++++++++++-- hw/display/ati_int.h | 5 +++ hw/display/ati_regs.h | 2 ++ hw/i2c/bitbang_i2c.c | 2 +- hw/i2c/ppc4xx_i2c.c | 1 - hw/i2c/versatile_i2c.c | 2 +- {hw => include/hw}/i2c/bitbang_i2c.h | 2 ++ include/hw/i2c/i2c.h | 2 -- include/hw/i2c/ppc4xx_i2c.h | 2 +- 10 files changed, 72 insertions(+), 8 deletions(-) rename {hw => include/hw}/i2c/bitbang_i2c.h (80%) -- 2.13.7 ^ permalink raw reply [flat|nested] 11+ messages in thread
* [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ 2019-06-20 10:55 [Qemu-devel] [PATCH v5 0/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan @ 2019-06-20 10:55 ` BALATON Zoltan 2019-06-20 15:46 ` Philippe Mathieu-Daudé 2019-06-25 12:54 ` Corey Minyard 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan 2019-06-20 14:46 ` [Qemu-devel] [PATCH v5 0/2] " no-reply 2 siblings, 2 replies; 11+ messages in thread From: BALATON Zoltan @ 2019-06-20 10:55 UTC (permalink / raw) To: qemu-devel; +Cc: Corey Minyard, Gerd Hoffmann The bitbang i2c implementation is also useful for other device models such as DDC in display controllers. Move the header to include/hw/i2c/ to allow it to be used from other device models and adjust users of this include. This also reverts commit 2b4c1125ac which is no longer needed. Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> --- hw/i2c/bitbang_i2c.c | 2 +- hw/i2c/ppc4xx_i2c.c | 1 - hw/i2c/versatile_i2c.c | 2 +- {hw => include/hw}/i2c/bitbang_i2c.h | 2 ++ include/hw/i2c/i2c.h | 2 -- include/hw/i2c/ppc4xx_i2c.h | 2 +- 6 files changed, 5 insertions(+), 6 deletions(-) rename {hw => include/hw}/i2c/bitbang_i2c.h (80%) diff --git a/hw/i2c/bitbang_i2c.c b/hw/i2c/bitbang_i2c.c index 5dfc72d9d7..3cb0509b02 100644 --- a/hw/i2c/bitbang_i2c.c +++ b/hw/i2c/bitbang_i2c.c @@ -12,7 +12,7 @@ #include "qemu/osdep.h" #include "hw/hw.h" -#include "bitbang_i2c.h" +#include "hw/i2c/bitbang_i2c.h" #include "hw/sysbus.h" #include "qemu/module.h" diff --git a/hw/i2c/ppc4xx_i2c.c b/hw/i2c/ppc4xx_i2c.c index d606d3dbeb..5fb4f86c38 100644 --- a/hw/i2c/ppc4xx_i2c.c +++ b/hw/i2c/ppc4xx_i2c.c @@ -30,7 +30,6 @@ #include "cpu.h" #include "hw/hw.h" #include "hw/i2c/ppc4xx_i2c.h" -#include "bitbang_i2c.h" #define PPC4xx_I2C_MEM_SIZE 18 diff --git a/hw/i2c/versatile_i2c.c b/hw/i2c/versatile_i2c.c index e07be9890c..24b6e36b6d 100644 --- a/hw/i2c/versatile_i2c.c +++ b/hw/i2c/versatile_i2c.c @@ -23,7 +23,7 @@ #include "qemu/osdep.h" #include "hw/sysbus.h" -#include "bitbang_i2c.h" +#include "hw/i2c/bitbang_i2c.h" #include "qemu/log.h" #include "qemu/module.h" diff --git a/hw/i2c/bitbang_i2c.h b/include/hw/i2c/bitbang_i2c.h similarity index 80% rename from hw/i2c/bitbang_i2c.h rename to include/hw/i2c/bitbang_i2c.h index 9443021710..3a7126d5de 100644 --- a/hw/i2c/bitbang_i2c.h +++ b/include/hw/i2c/bitbang_i2c.h @@ -3,6 +3,8 @@ #include "hw/i2c/i2c.h" +typedef struct bitbang_i2c_interface bitbang_i2c_interface; + #define BITBANG_I2C_SDA 0 #define BITBANG_I2C_SCL 1 diff --git a/include/hw/i2c/i2c.h b/include/hw/i2c/i2c.h index 8e236f7bb4..75c5bd638b 100644 --- a/include/hw/i2c/i2c.h +++ b/include/hw/i2c/i2c.h @@ -81,8 +81,6 @@ uint8_t i2c_recv(I2CBus *bus); DeviceState *i2c_create_slave(I2CBus *bus, const char *name, uint8_t addr); -typedef struct bitbang_i2c_interface bitbang_i2c_interface; - /* lm832x.c */ void lm832x_key_event(DeviceState *dev, int key, int state); diff --git a/include/hw/i2c/ppc4xx_i2c.h b/include/hw/i2c/ppc4xx_i2c.h index aa2a2bf9de..8437bf070b 100644 --- a/include/hw/i2c/ppc4xx_i2c.h +++ b/include/hw/i2c/ppc4xx_i2c.h @@ -28,7 +28,7 @@ #define PPC4XX_I2C_H #include "hw/sysbus.h" -#include "hw/i2c/i2c.h" +#include "hw/i2c/bitbang_i2c.h" #define TYPE_PPC4xx_I2C "ppc4xx-i2c" #define PPC4xx_I2C(obj) OBJECT_CHECK(PPC4xxI2CState, (obj), TYPE_PPC4xx_I2C) -- 2.13.7 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ BALATON Zoltan @ 2019-06-20 15:46 ` Philippe Mathieu-Daudé 2019-06-25 12:54 ` Corey Minyard 1 sibling, 0 replies; 11+ messages in thread From: Philippe Mathieu-Daudé @ 2019-06-20 15:46 UTC (permalink / raw) To: BALATON Zoltan, qemu-devel; +Cc: Corey Minyard, Gerd Hoffmann On 6/20/19 12:55 PM, BALATON Zoltan wrote: > The bitbang i2c implementation is also useful for other device models > such as DDC in display controllers. Move the header to include/hw/i2c/ > to allow it to be used from other device models and adjust users of > this include. This also reverts commit 2b4c1125ac which is no longer > needed. > > Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > hw/i2c/bitbang_i2c.c | 2 +- > hw/i2c/ppc4xx_i2c.c | 1 - > hw/i2c/versatile_i2c.c | 2 +- > {hw => include/hw}/i2c/bitbang_i2c.h | 2 ++ > include/hw/i2c/i2c.h | 2 -- > include/hw/i2c/ppc4xx_i2c.h | 2 +- > 6 files changed, 5 insertions(+), 6 deletions(-) > rename {hw => include/hw}/i2c/bitbang_i2c.h (80%) > > diff --git a/hw/i2c/bitbang_i2c.c b/hw/i2c/bitbang_i2c.c > index 5dfc72d9d7..3cb0509b02 100644 > --- a/hw/i2c/bitbang_i2c.c > +++ b/hw/i2c/bitbang_i2c.c > @@ -12,7 +12,7 @@ > > #include "qemu/osdep.h" > #include "hw/hw.h" > -#include "bitbang_i2c.h" > +#include "hw/i2c/bitbang_i2c.h" > #include "hw/sysbus.h" > #include "qemu/module.h" > > diff --git a/hw/i2c/ppc4xx_i2c.c b/hw/i2c/ppc4xx_i2c.c > index d606d3dbeb..5fb4f86c38 100644 > --- a/hw/i2c/ppc4xx_i2c.c > +++ b/hw/i2c/ppc4xx_i2c.c > @@ -30,7 +30,6 @@ > #include "cpu.h" > #include "hw/hw.h" > #include "hw/i2c/ppc4xx_i2c.h" > -#include "bitbang_i2c.h" > > #define PPC4xx_I2C_MEM_SIZE 18 > > diff --git a/hw/i2c/versatile_i2c.c b/hw/i2c/versatile_i2c.c > index e07be9890c..24b6e36b6d 100644 > --- a/hw/i2c/versatile_i2c.c > +++ b/hw/i2c/versatile_i2c.c > @@ -23,7 +23,7 @@ > > #include "qemu/osdep.h" > #include "hw/sysbus.h" > -#include "bitbang_i2c.h" > +#include "hw/i2c/bitbang_i2c.h" > #include "qemu/log.h" > #include "qemu/module.h" > > diff --git a/hw/i2c/bitbang_i2c.h b/include/hw/i2c/bitbang_i2c.h > similarity index 80% > rename from hw/i2c/bitbang_i2c.h > rename to include/hw/i2c/bitbang_i2c.h > index 9443021710..3a7126d5de 100644 > --- a/hw/i2c/bitbang_i2c.h > +++ b/include/hw/i2c/bitbang_i2c.h > @@ -3,6 +3,8 @@ > > #include "hw/i2c/i2c.h" > > +typedef struct bitbang_i2c_interface bitbang_i2c_interface; > + > #define BITBANG_I2C_SDA 0 > #define BITBANG_I2C_SCL 1 > > diff --git a/include/hw/i2c/i2c.h b/include/hw/i2c/i2c.h > index 8e236f7bb4..75c5bd638b 100644 > --- a/include/hw/i2c/i2c.h > +++ b/include/hw/i2c/i2c.h > @@ -81,8 +81,6 @@ uint8_t i2c_recv(I2CBus *bus); > > DeviceState *i2c_create_slave(I2CBus *bus, const char *name, uint8_t addr); > > -typedef struct bitbang_i2c_interface bitbang_i2c_interface; > - > /* lm832x.c */ > void lm832x_key_event(DeviceState *dev, int key, int state); > > diff --git a/include/hw/i2c/ppc4xx_i2c.h b/include/hw/i2c/ppc4xx_i2c.h > index aa2a2bf9de..8437bf070b 100644 > --- a/include/hw/i2c/ppc4xx_i2c.h > +++ b/include/hw/i2c/ppc4xx_i2c.h > @@ -28,7 +28,7 @@ > #define PPC4XX_I2C_H > > #include "hw/sysbus.h" > -#include "hw/i2c/i2c.h" > +#include "hw/i2c/bitbang_i2c.h" > > #define TYPE_PPC4xx_I2C "ppc4xx-i2c" > #define PPC4xx_I2C(obj) OBJECT_CHECK(PPC4xxI2CState, (obj), TYPE_PPC4xx_I2C) > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ BALATON Zoltan 2019-06-20 15:46 ` Philippe Mathieu-Daudé @ 2019-06-25 12:54 ` Corey Minyard 1 sibling, 0 replies; 11+ messages in thread From: Corey Minyard @ 2019-06-25 12:54 UTC (permalink / raw) To: BALATON Zoltan; +Cc: qemu-devel, Gerd Hoffmann On Thu, Jun 20, 2019 at 12:55:23PM +0200, BALATON Zoltan wrote: > The bitbang i2c implementation is also useful for other device models > such as DDC in display controllers. Move the header to include/hw/i2c/ > to allow it to be used from other device models and adjust users of > this include. This also reverts commit 2b4c1125ac which is no longer > needed. > > Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> This change looks good to me. Acked-by: Corey Minyard <cminyard@mvista.com> > --- > hw/i2c/bitbang_i2c.c | 2 +- > hw/i2c/ppc4xx_i2c.c | 1 - > hw/i2c/versatile_i2c.c | 2 +- > {hw => include/hw}/i2c/bitbang_i2c.h | 2 ++ > include/hw/i2c/i2c.h | 2 -- > include/hw/i2c/ppc4xx_i2c.h | 2 +- > 6 files changed, 5 insertions(+), 6 deletions(-) > rename {hw => include/hw}/i2c/bitbang_i2c.h (80%) > > diff --git a/hw/i2c/bitbang_i2c.c b/hw/i2c/bitbang_i2c.c > index 5dfc72d9d7..3cb0509b02 100644 > --- a/hw/i2c/bitbang_i2c.c > +++ b/hw/i2c/bitbang_i2c.c > @@ -12,7 +12,7 @@ > > #include "qemu/osdep.h" > #include "hw/hw.h" > -#include "bitbang_i2c.h" > +#include "hw/i2c/bitbang_i2c.h" > #include "hw/sysbus.h" > #include "qemu/module.h" > > diff --git a/hw/i2c/ppc4xx_i2c.c b/hw/i2c/ppc4xx_i2c.c > index d606d3dbeb..5fb4f86c38 100644 > --- a/hw/i2c/ppc4xx_i2c.c > +++ b/hw/i2c/ppc4xx_i2c.c > @@ -30,7 +30,6 @@ > #include "cpu.h" > #include "hw/hw.h" > #include "hw/i2c/ppc4xx_i2c.h" > -#include "bitbang_i2c.h" > > #define PPC4xx_I2C_MEM_SIZE 18 > > diff --git a/hw/i2c/versatile_i2c.c b/hw/i2c/versatile_i2c.c > index e07be9890c..24b6e36b6d 100644 > --- a/hw/i2c/versatile_i2c.c > +++ b/hw/i2c/versatile_i2c.c > @@ -23,7 +23,7 @@ > > #include "qemu/osdep.h" > #include "hw/sysbus.h" > -#include "bitbang_i2c.h" > +#include "hw/i2c/bitbang_i2c.h" > #include "qemu/log.h" > #include "qemu/module.h" > > diff --git a/hw/i2c/bitbang_i2c.h b/include/hw/i2c/bitbang_i2c.h > similarity index 80% > rename from hw/i2c/bitbang_i2c.h > rename to include/hw/i2c/bitbang_i2c.h > index 9443021710..3a7126d5de 100644 > --- a/hw/i2c/bitbang_i2c.h > +++ b/include/hw/i2c/bitbang_i2c.h > @@ -3,6 +3,8 @@ > > #include "hw/i2c/i2c.h" > > +typedef struct bitbang_i2c_interface bitbang_i2c_interface; > + > #define BITBANG_I2C_SDA 0 > #define BITBANG_I2C_SCL 1 > > diff --git a/include/hw/i2c/i2c.h b/include/hw/i2c/i2c.h > index 8e236f7bb4..75c5bd638b 100644 > --- a/include/hw/i2c/i2c.h > +++ b/include/hw/i2c/i2c.h > @@ -81,8 +81,6 @@ uint8_t i2c_recv(I2CBus *bus); > > DeviceState *i2c_create_slave(I2CBus *bus, const char *name, uint8_t addr); > > -typedef struct bitbang_i2c_interface bitbang_i2c_interface; > - > /* lm832x.c */ > void lm832x_key_event(DeviceState *dev, int key, int state); > > diff --git a/include/hw/i2c/ppc4xx_i2c.h b/include/hw/i2c/ppc4xx_i2c.h > index aa2a2bf9de..8437bf070b 100644 > --- a/include/hw/i2c/ppc4xx_i2c.h > +++ b/include/hw/i2c/ppc4xx_i2c.h > @@ -28,7 +28,7 @@ > #define PPC4XX_I2C_H > > #include "hw/sysbus.h" > -#include "hw/i2c/i2c.h" > +#include "hw/i2c/bitbang_i2c.h" > > #define TYPE_PPC4xx_I2C "ppc4xx-i2c" > #define PPC4xx_I2C(obj) OBJECT_CHECK(PPC4xxI2CState, (obj), TYPE_PPC4xx_I2C) > -- > 2.13.7 > ^ permalink raw reply [flat|nested] 11+ messages in thread
* [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor 2019-06-20 10:55 [Qemu-devel] [PATCH v5 0/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ BALATON Zoltan @ 2019-06-20 10:55 ` BALATON Zoltan 2019-06-20 15:09 ` Gerd Hoffmann 2019-06-25 12:56 ` Corey Minyard 2019-06-20 14:46 ` [Qemu-devel] [PATCH v5 0/2] " no-reply 2 siblings, 2 replies; 11+ messages in thread From: BALATON Zoltan @ 2019-06-20 10:55 UTC (permalink / raw) To: qemu-devel; +Cc: Corey Minyard, Gerd Hoffmann This adds DDC support to ati-vga and connects i2c-ddc to it. This allows at least MacOS with an ATI ndrv, Linux radeonfb and MorphOS to get monitor EDID info (although MorphOS splash screen is not displayed and radeonfb needs additional tables from vgabios-rv100). Xorg needs additional support from VESA vgabios, it's missing INT10 0x4F15 function (see https://gitlab.freedesktop.org/xorg/xserver/blob/master/hw/xfree86/vbe/vbe.c) without which no DDC is available that also prevents loading the accelerated X driver. Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> --- hw/display/Kconfig | 2 ++ hw/display/ati.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++++-- hw/display/ati_int.h | 5 +++++ hw/display/ati_regs.h | 2 ++ 4 files changed, 67 insertions(+), 2 deletions(-) diff --git a/hw/display/Kconfig b/hw/display/Kconfig index 910dccb2f7..cbdf7b1a67 100644 --- a/hw/display/Kconfig +++ b/hw/display/Kconfig @@ -130,3 +130,5 @@ config ATI_VGA default y if PCI_DEVICES depends on PCI select VGA + select BITBANG_I2C + select DDC diff --git a/hw/display/ati.c b/hw/display/ati.c index 76595d9511..61e351a024 100644 --- a/hw/display/ati.c +++ b/hw/display/ati.c @@ -26,6 +26,7 @@ #include "qapi/error.h" #include "hw/hw.h" #include "ui/console.h" +#include "hw/display/i2c-ddc.h" #include "trace.h" #define ATI_DEBUG_HW_CURSOR 0 @@ -215,6 +216,24 @@ static void ati_cursor_draw_line(VGACommonState *vga, uint8_t *d, int scr_y) } } +static uint64_t ati_i2c(bitbang_i2c_interface *i2c, uint64_t data, int base) +{ + bool c = (data & BIT(base + 17) ? !!(data & BIT(base + 1)) : 1); + bool d = (data & BIT(base + 16) ? !!(data & BIT(base)) : 1); + + bitbang_i2c_set(i2c, BITBANG_I2C_SCL, c); + d = bitbang_i2c_set(i2c, BITBANG_I2C_SDA, d); + + data &= ~0xf00ULL; + if (c) { + data |= BIT(base + 9); + } + if (d) { + data |= BIT(base + 8); + } + return data; +} + static inline uint64_t ati_reg_read_offs(uint32_t reg, int offs, unsigned int size) { @@ -266,7 +285,16 @@ static uint64_t ati_mm_read(void *opaque, hwaddr addr, unsigned int size) case DAC_CNTL: val = s->regs.dac_cntl; break; -/* case GPIO_MONID: FIXME hook up DDC I2C here */ + case GPIO_VGA_DDC: + val = s->regs.gpio_vga_ddc; + break; + case GPIO_DVI_DDC: + val = s->regs.gpio_dvi_ddc; + break; + case GPIO_MONID ... GPIO_MONID + 3: + val = ati_reg_read_offs(s->regs.gpio_monid, + addr - GPIO_MONID, size); + break; case PALETTE_INDEX: /* FIXME unaligned access */ val = vga_ioport_read(&s->vga, VGA_PEL_IR) << 16; @@ -497,7 +525,28 @@ static void ati_mm_write(void *opaque, hwaddr addr, s->regs.dac_cntl = data & 0xffffe3ff; s->vga.dac_8bit = !!(data & DAC_8BIT_EN); break; -/* case GPIO_MONID: FIXME hook up DDC I2C here */ + case GPIO_VGA_DDC: + if (s->dev_id != PCI_DEVICE_ID_ATI_RAGE128_PF) { + /* FIXME: Maybe add a property to select VGA or DVI port? */ + } + break; + case GPIO_DVI_DDC: + if (s->dev_id != PCI_DEVICE_ID_ATI_RAGE128_PF) { + s->regs.gpio_dvi_ddc = ati_i2c(s->bbi2c, data, 0); + } + break; + case GPIO_MONID ... GPIO_MONID + 3: + /* FIXME What does Radeon have here? */ + if (s->dev_id == PCI_DEVICE_ID_ATI_RAGE128_PF) { + /* Rage128p accesses DDC used to get EDID on these pins */ + ati_reg_write_offs(&s->regs.gpio_monid, + addr - GPIO_MONID, data, size); + if ((s->regs.gpio_monid & BIT(25)) && + addr <= GPIO_MONID + 2 && addr + size > GPIO_MONID + 2) { + s->regs.gpio_monid = ati_i2c(s->bbi2c, s->regs.gpio_monid, 1); + } + } + break; case PALETTE_INDEX ... PALETTE_INDEX + 3: if (size == 4) { vga_ioport_write(&s->vga, VGA_PEL_IR, (data >> 16) & 0xff); @@ -788,6 +837,12 @@ static void ati_vga_realize(PCIDevice *dev, Error **errp) vga->cursor_draw_line = ati_cursor_draw_line; } + /* ddc, edid */ + I2CBus *i2cbus = i2c_init_bus(DEVICE(s), "ati-vga.ddc"); + s->bbi2c = bitbang_i2c_init(i2cbus); + I2CSlave *i2cddc = I2C_SLAVE(qdev_create(BUS(i2cbus), TYPE_I2CDDC)); + i2c_set_slave_address(i2cddc, 0x50); + /* mmio register space */ memory_region_init_io(&s->mm, OBJECT(s), &ati_mm_ops, s, "ati.mmregs", 0x4000); @@ -813,6 +868,7 @@ static void ati_vga_exit(PCIDevice *dev) ATIVGAState *s = ATI_VGA(dev); graphic_console_close(s->vga.con); + g_free(s->bbi2c); } static Property ati_vga_properties[] = { diff --git a/hw/display/ati_int.h b/hw/display/ati_int.h index 2f426064cf..51465f5630 100644 --- a/hw/display/ati_int.h +++ b/hw/display/ati_int.h @@ -10,6 +10,7 @@ #define ATI_INT_H #include "hw/pci/pci.h" +#include "hw/i2c/bitbang_i2c.h" #include "vga_int.h" /*#define DEBUG_ATI*/ @@ -35,6 +36,9 @@ typedef struct ATIVGARegs { uint32_t crtc_gen_cntl; uint32_t crtc_ext_cntl; uint32_t dac_cntl; + uint32_t gpio_vga_ddc; + uint32_t gpio_dvi_ddc; + uint32_t gpio_monid; uint32_t crtc_h_total_disp; uint32_t crtc_h_sync_strt_wid; uint32_t crtc_v_total_disp; @@ -83,6 +87,7 @@ typedef struct ATIVGAState { uint16_t cursor_size; uint32_t cursor_offset; QEMUCursor *cursor; + bitbang_i2c_interface *bbi2c; MemoryRegion io; MemoryRegion mm; ATIVGARegs regs; diff --git a/hw/display/ati_regs.h b/hw/display/ati_regs.h index 923bfd33ce..1ec3498b73 100644 --- a/hw/display/ati_regs.h +++ b/hw/display/ati_regs.h @@ -37,6 +37,8 @@ #define CRTC_GEN_CNTL 0x0050 #define CRTC_EXT_CNTL 0x0054 #define DAC_CNTL 0x0058 +#define GPIO_VGA_DDC 0x0060 +#define GPIO_DVI_DDC 0x0064 #define GPIO_MONID 0x0068 #define I2C_CNTL_1 0x0094 #define PALETTE_INDEX 0x00b0 -- 2.13.7 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan @ 2019-06-20 15:09 ` Gerd Hoffmann 2019-06-20 15:40 ` BALATON Zoltan 2019-06-25 12:56 ` Corey Minyard 1 sibling, 1 reply; 11+ messages in thread From: Gerd Hoffmann @ 2019-06-20 15:09 UTC (permalink / raw) To: BALATON Zoltan; +Cc: Corey Minyard, qemu-devel On Thu, Jun 20, 2019 at 12:55:23PM +0200, BALATON Zoltan wrote: > This adds DDC support to ati-vga and connects i2c-ddc to it. This > allows at least MacOS with an ATI ndrv, Linux radeonfb and MorphOS to linux radeonfb is rv100 only, and aty128fb has no i2c support. Do MacOS and MorphOS have working edid with both card variants? > + case GPIO_MONID ... GPIO_MONID + 3: > + /* FIXME What does Radeon have here? */ > + if (s->dev_id == PCI_DEVICE_ID_ATI_RAGE128_PF) { > + /* Rage128p accesses DDC used to get EDID on these pins */ > + ati_reg_write_offs(&s->regs.gpio_monid, > + addr - GPIO_MONID, data, size); > + if ((s->regs.gpio_monid & BIT(25)) && Extra enable bit, ok. > + addr <= GPIO_MONID + 2 && addr + size > GPIO_MONID + 2) { Hmm, isn't this just "addr == GPIO_MONID + 2" ? > + s->regs.gpio_monid = ati_i2c(s->bbi2c, s->regs.gpio_monid, 1); So all i2c bits are shifted by one compared to rv100, correct? cheers, Gerd ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor 2019-06-20 15:09 ` Gerd Hoffmann @ 2019-06-20 15:40 ` BALATON Zoltan 2019-06-20 15:52 ` Gerd Hoffmann 0 siblings, 1 reply; 11+ messages in thread From: BALATON Zoltan @ 2019-06-20 15:40 UTC (permalink / raw) To: Gerd Hoffmann; +Cc: Corey Minyard, qemu-devel On Thu, 20 Jun 2019, Gerd Hoffmann wrote: > On Thu, Jun 20, 2019 at 12:55:23PM +0200, BALATON Zoltan wrote: >> This adds DDC support to ati-vga and connects i2c-ddc to it. This >> allows at least MacOS with an ATI ndrv, Linux radeonfb and MorphOS to > > linux radeonfb is rv100 only, and aty128fb has no i2c support. > Do MacOS and MorphOS have working edid with both card variants? I've only tested EDID with MacOS with an NDRV from an ATI card ROM and MorphOS on mac99. These could read EDID with this patch. Haven't tried RV100 as that's known to be very incomplete to work yet (probably needs at least command FIFO to do something). The rage128 Xorg driver might load but that wants to use VESA BIOS function mentioned in the commit message to read EDID so it does not work yet. If you can add that function to vesabios it might get further. >> + case GPIO_MONID ... GPIO_MONID + 3: >> + /* FIXME What does Radeon have here? */ >> + if (s->dev_id == PCI_DEVICE_ID_ATI_RAGE128_PF) { >> + /* Rage128p accesses DDC used to get EDID on these pins */ >> + ati_reg_write_offs(&s->regs.gpio_monid, >> + addr - GPIO_MONID, data, size); >> + if ((s->regs.gpio_monid & BIT(25)) && > > Extra enable bit, ok. This bit is listed as mask bit in docs and clients set this to enable other bits. It could probably safely be ignored (does not seem to be present on RV100 only on older card) but checking it does not hurt either. >> + addr <= GPIO_MONID + 2 && addr + size > GPIO_MONID + 2) { > > Hmm, isn't this just "addr == GPIO_MONID + 2" ? No because there could be all kinds of unalligned or multibyte access and we only want to trigger this when the byte with the enable bits are touched. (The MacOS NDRV accesses this 1 byte at a time so this is needed to avoid spurious i2c bit banging but other drivers write 4 bytes so then addr is not equal but covering above byte which is what this test allows. >> + s->regs.gpio_monid = ati_i2c(s->bbi2c, s->regs.gpio_monid, 1); > > So all i2c bits are shifted by one compared to rv100, correct? They are in a different register and drivers I've tried poke bits shifted by one on R128P. Regards, BALATON Zoltan ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor 2019-06-20 15:40 ` BALATON Zoltan @ 2019-06-20 15:52 ` Gerd Hoffmann 0 siblings, 0 replies; 11+ messages in thread From: Gerd Hoffmann @ 2019-06-20 15:52 UTC (permalink / raw) To: BALATON Zoltan; +Cc: Corey Minyard, qemu-devel Hi, > > > + addr <= GPIO_MONID + 2 && addr + size > GPIO_MONID + 2) { > > > > Hmm, isn't this just "addr == GPIO_MONID + 2" ? > > No because there could be all kinds of unalligned or multibyte access and we > only want to trigger this when the byte with the enable bits are touched. > (The MacOS NDRV accesses this 1 byte at a time so this is needed to avoid > spurious i2c bit banging but other drivers write 4 bytes so then addr is not > equal but covering above byte which is what this test allows. Can you add a comment explaining this (no need to respin, incremental patch is fine)? thanks, Gerd ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan 2019-06-20 15:09 ` Gerd Hoffmann @ 2019-06-25 12:56 ` Corey Minyard 2019-06-25 13:20 ` BALATON Zoltan 1 sibling, 1 reply; 11+ messages in thread From: Corey Minyard @ 2019-06-25 12:56 UTC (permalink / raw) To: BALATON Zoltan; +Cc: qemu-devel, Gerd Hoffmann On Thu, Jun 20, 2019 at 12:55:23PM +0200, BALATON Zoltan wrote: > This adds DDC support to ati-vga and connects i2c-ddc to it. This > allows at least MacOS with an ATI ndrv, Linux radeonfb and MorphOS to > get monitor EDID info (although MorphOS splash screen is not displayed > and radeonfb needs additional tables from vgabios-rv100). Xorg needs > additional support from VESA vgabios, it's missing INT10 0x4F15 > function (see > https://gitlab.freedesktop.org/xorg/xserver/blob/master/hw/xfree86/vbe/vbe.c) > without which no DDC is available that also prevents loading the > accelerated X driver. > > Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> This patch also looks good, and thanks to Gerd for reviewing. I didn't see the followup documentation patch that Gerd suggested, did I miss that? Also, how would you like to handle these? Thanks, -corey > --- > hw/display/Kconfig | 2 ++ > hw/display/ati.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++++-- > hw/display/ati_int.h | 5 +++++ > hw/display/ati_regs.h | 2 ++ > 4 files changed, 67 insertions(+), 2 deletions(-) > > diff --git a/hw/display/Kconfig b/hw/display/Kconfig > index 910dccb2f7..cbdf7b1a67 100644 > --- a/hw/display/Kconfig > +++ b/hw/display/Kconfig > @@ -130,3 +130,5 @@ config ATI_VGA > default y if PCI_DEVICES > depends on PCI > select VGA > + select BITBANG_I2C > + select DDC > diff --git a/hw/display/ati.c b/hw/display/ati.c > index 76595d9511..61e351a024 100644 > --- a/hw/display/ati.c > +++ b/hw/display/ati.c > @@ -26,6 +26,7 @@ > #include "qapi/error.h" > #include "hw/hw.h" > #include "ui/console.h" > +#include "hw/display/i2c-ddc.h" > #include "trace.h" > > #define ATI_DEBUG_HW_CURSOR 0 > @@ -215,6 +216,24 @@ static void ati_cursor_draw_line(VGACommonState *vga, uint8_t *d, int scr_y) > } > } > > +static uint64_t ati_i2c(bitbang_i2c_interface *i2c, uint64_t data, int base) > +{ > + bool c = (data & BIT(base + 17) ? !!(data & BIT(base + 1)) : 1); > + bool d = (data & BIT(base + 16) ? !!(data & BIT(base)) : 1); > + > + bitbang_i2c_set(i2c, BITBANG_I2C_SCL, c); > + d = bitbang_i2c_set(i2c, BITBANG_I2C_SDA, d); > + > + data &= ~0xf00ULL; > + if (c) { > + data |= BIT(base + 9); > + } > + if (d) { > + data |= BIT(base + 8); > + } > + return data; > +} > + > static inline uint64_t ati_reg_read_offs(uint32_t reg, int offs, > unsigned int size) > { > @@ -266,7 +285,16 @@ static uint64_t ati_mm_read(void *opaque, hwaddr addr, unsigned int size) > case DAC_CNTL: > val = s->regs.dac_cntl; > break; > -/* case GPIO_MONID: FIXME hook up DDC I2C here */ > + case GPIO_VGA_DDC: > + val = s->regs.gpio_vga_ddc; > + break; > + case GPIO_DVI_DDC: > + val = s->regs.gpio_dvi_ddc; > + break; > + case GPIO_MONID ... GPIO_MONID + 3: > + val = ati_reg_read_offs(s->regs.gpio_monid, > + addr - GPIO_MONID, size); > + break; > case PALETTE_INDEX: > /* FIXME unaligned access */ > val = vga_ioport_read(&s->vga, VGA_PEL_IR) << 16; > @@ -497,7 +525,28 @@ static void ati_mm_write(void *opaque, hwaddr addr, > s->regs.dac_cntl = data & 0xffffe3ff; > s->vga.dac_8bit = !!(data & DAC_8BIT_EN); > break; > -/* case GPIO_MONID: FIXME hook up DDC I2C here */ > + case GPIO_VGA_DDC: > + if (s->dev_id != PCI_DEVICE_ID_ATI_RAGE128_PF) { > + /* FIXME: Maybe add a property to select VGA or DVI port? */ > + } > + break; > + case GPIO_DVI_DDC: > + if (s->dev_id != PCI_DEVICE_ID_ATI_RAGE128_PF) { > + s->regs.gpio_dvi_ddc = ati_i2c(s->bbi2c, data, 0); > + } > + break; > + case GPIO_MONID ... GPIO_MONID + 3: > + /* FIXME What does Radeon have here? */ > + if (s->dev_id == PCI_DEVICE_ID_ATI_RAGE128_PF) { > + /* Rage128p accesses DDC used to get EDID on these pins */ > + ati_reg_write_offs(&s->regs.gpio_monid, > + addr - GPIO_MONID, data, size); > + if ((s->regs.gpio_monid & BIT(25)) && > + addr <= GPIO_MONID + 2 && addr + size > GPIO_MONID + 2) { > + s->regs.gpio_monid = ati_i2c(s->bbi2c, s->regs.gpio_monid, 1); > + } > + } > + break; > case PALETTE_INDEX ... PALETTE_INDEX + 3: > if (size == 4) { > vga_ioport_write(&s->vga, VGA_PEL_IR, (data >> 16) & 0xff); > @@ -788,6 +837,12 @@ static void ati_vga_realize(PCIDevice *dev, Error **errp) > vga->cursor_draw_line = ati_cursor_draw_line; > } > > + /* ddc, edid */ > + I2CBus *i2cbus = i2c_init_bus(DEVICE(s), "ati-vga.ddc"); > + s->bbi2c = bitbang_i2c_init(i2cbus); > + I2CSlave *i2cddc = I2C_SLAVE(qdev_create(BUS(i2cbus), TYPE_I2CDDC)); > + i2c_set_slave_address(i2cddc, 0x50); > + > /* mmio register space */ > memory_region_init_io(&s->mm, OBJECT(s), &ati_mm_ops, s, > "ati.mmregs", 0x4000); > @@ -813,6 +868,7 @@ static void ati_vga_exit(PCIDevice *dev) > ATIVGAState *s = ATI_VGA(dev); > > graphic_console_close(s->vga.con); > + g_free(s->bbi2c); > } > > static Property ati_vga_properties[] = { > diff --git a/hw/display/ati_int.h b/hw/display/ati_int.h > index 2f426064cf..51465f5630 100644 > --- a/hw/display/ati_int.h > +++ b/hw/display/ati_int.h > @@ -10,6 +10,7 @@ > #define ATI_INT_H > > #include "hw/pci/pci.h" > +#include "hw/i2c/bitbang_i2c.h" > #include "vga_int.h" > > /*#define DEBUG_ATI*/ > @@ -35,6 +36,9 @@ typedef struct ATIVGARegs { > uint32_t crtc_gen_cntl; > uint32_t crtc_ext_cntl; > uint32_t dac_cntl; > + uint32_t gpio_vga_ddc; > + uint32_t gpio_dvi_ddc; > + uint32_t gpio_monid; > uint32_t crtc_h_total_disp; > uint32_t crtc_h_sync_strt_wid; > uint32_t crtc_v_total_disp; > @@ -83,6 +87,7 @@ typedef struct ATIVGAState { > uint16_t cursor_size; > uint32_t cursor_offset; > QEMUCursor *cursor; > + bitbang_i2c_interface *bbi2c; > MemoryRegion io; > MemoryRegion mm; > ATIVGARegs regs; > diff --git a/hw/display/ati_regs.h b/hw/display/ati_regs.h > index 923bfd33ce..1ec3498b73 100644 > --- a/hw/display/ati_regs.h > +++ b/hw/display/ati_regs.h > @@ -37,6 +37,8 @@ > #define CRTC_GEN_CNTL 0x0050 > #define CRTC_EXT_CNTL 0x0054 > #define DAC_CNTL 0x0058 > +#define GPIO_VGA_DDC 0x0060 > +#define GPIO_DVI_DDC 0x0064 > #define GPIO_MONID 0x0068 > #define I2C_CNTL_1 0x0094 > #define PALETTE_INDEX 0x00b0 > -- > 2.13.7 > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor 2019-06-25 12:56 ` Corey Minyard @ 2019-06-25 13:20 ` BALATON Zoltan 0 siblings, 0 replies; 11+ messages in thread From: BALATON Zoltan @ 2019-06-25 13:20 UTC (permalink / raw) To: Corey Minyard; +Cc: qemu-devel, Gerd Hoffmann On Tue, 25 Jun 2019, Corey Minyard wrote: > On Thu, Jun 20, 2019 at 12:55:23PM +0200, BALATON Zoltan wrote: >> This adds DDC support to ati-vga and connects i2c-ddc to it. This >> allows at least MacOS with an ATI ndrv, Linux radeonfb and MorphOS to >> get monitor EDID info (although MorphOS splash screen is not displayed >> and radeonfb needs additional tables from vgabios-rv100). Xorg needs >> additional support from VESA vgabios, it's missing INT10 0x4F15 >> function (see >> https://gitlab.freedesktop.org/xorg/xserver/blob/master/hw/xfree86/vbe/vbe.c) >> without which no DDC is available that also prevents loading the >> accelerated X driver. >> >> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> > > This patch also looks good, and thanks to Gerd for reviewing. > > I didn't see the followup documentation patch that Gerd suggested, did > I miss that? > > Also, how would you like to handle these? Gerd has already queued them (including the requested follow up to update comment which I think only cc'd to Gerd that's why you may have missed it, but another fix up I've sent adding reg names to ati_dbg.h may still be missing from Gerd's tree). I think Gerd can send these via his tree with your Acked-by on the i2c patch which should be OK if nobody disagrees. There's still the issue with cleaning up bitbang_i2c that results in an ASan warning which we have discussed before: https://lists.nongnu.org/archive/html/qemu-devel/2019-03/msg05966.html but we could not find an easy fix so since it's preexisting problem it can be fixed later. Although, I don't have plans to fix that, only mentioning it here as a reminder. Thank you, BALATON Zoltan ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH v5 0/2] ati-vga: Implement DDC and EDID info from monitor 2019-06-20 10:55 [Qemu-devel] [PATCH v5 0/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ BALATON Zoltan 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan @ 2019-06-20 14:46 ` no-reply 2 siblings, 0 replies; 11+ messages in thread From: no-reply @ 2019-06-20 14:46 UTC (permalink / raw) To: balaton; +Cc: cminyard, qemu-devel, kraxel Patchew URL: https://patchew.org/QEMU/cover.1561028123.git.balaton@eik.bme.hu/ Hi, This series failed the asan build test. Please find the testing commands and their output below. If you have Docker installed, you can probably reproduce it locally. === TEST SCRIPT BEGIN === #!/bin/bash make docker-image-fedora V=1 NETWORK=1 time make docker-test-debug@fedora TARGET_LIST=x86_64-softmmu J=14 NETWORK=1 === TEST SCRIPT END === PASS 1 fdc-test /x86_64/fdc/cmos PASS 2 fdc-test /x86_64/fdc/no_media_on_start PASS 3 fdc-test /x86_64/fdc/read_without_media ==7849==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 fdc-test /x86_64/fdc/media_change PASS 5 fdc-test /x86_64/fdc/sense_interrupt PASS 6 fdc-test /x86_64/fdc/relative_seek --- PASS 32 test-opts-visitor /visitor/opts/range/beyond PASS 33 test-opts-visitor /visitor/opts/dict/unvisited MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-coroutine -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-coroutine" ==7889==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7889==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffccf525000; bottom 0x7f86725f8000; size: 0x00765cf2d000 (508365557760) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 1 test-coroutine /basic/no-dangling-access --- PASS 11 test-aio /aio/event/wait PASS 12 test-aio /aio/event/flush PASS 13 test-aio /aio/event/wait/no-flush-cb ==7904==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 test-aio /aio/timer/schedule PASS 15 test-aio /aio/coroutine/queue-chaining PASS 16 test-aio /aio-gsource/flush --- PASS 12 fdc-test /x86_64/fdc/read_no_dma_19 PASS 1 test-aio-multithread /aio/multi/lifecycle PASS 13 fdc-test /x86_64/fdc/fuzz-registers ==7910==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/ide-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="ide-test" PASS 2 test-aio-multithread /aio/multi/schedule ==7928==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 test-aio-multithread /aio/multi/mutex/contended PASS 1 ide-test /x86_64/ide/identify ==7944==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 ide-test /x86_64/ide/flush ==7950==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 ide-test /x86_64/ide/bmdma/simple_rw ==7956==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 test-aio-multithread /aio/multi/mutex/handoff PASS 4 ide-test /x86_64/ide/bmdma/trim PASS 5 test-aio-multithread /aio/multi/mutex/mcs ==7967==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 test-aio-multithread /aio/multi/mutex/pthread PASS 5 ide-test /x86_64/ide/bmdma/short_prdt MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-throttle -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-throttle" ==7982==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-throttle /throttle/leak_bucket PASS 2 test-throttle /throttle/compute_wait PASS 3 test-throttle /throttle/init --- PASS 13 test-throttle /throttle/config/ranges PASS 14 test-throttle /throttle/config/max PASS 15 test-throttle /throttle/config/iops_size ==7979==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-thread-pool -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-thread-pool" PASS 6 ide-test /x86_64/ide/bmdma/one_sector_short_prdt PASS 1 test-thread-pool /thread-pool/submit ==7991==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 test-thread-pool /thread-pool/submit-aio PASS 3 test-thread-pool /thread-pool/submit-co PASS 4 test-thread-pool /thread-pool/submit-many ==7995==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 ide-test /x86_64/ide/bmdma/long_prdt PASS 5 test-thread-pool /thread-pool/cancel ==8002==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8002==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc9c362000; bottom 0x7f5bf03fe000; size: 0x00a0abf64000 (690079809536) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 8 ide-test /x86_64/ide/bmdma/no_busmaster --- PASS 3 test-hbitmap /hbitmap/size/unaligned PASS 4 test-hbitmap /hbitmap/iter/empty PASS 5 test-hbitmap /hbitmap/iter/partial ==8017==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 test-hbitmap /hbitmap/iter/granularity PASS 7 test-hbitmap /hbitmap/iter/iter_and_reset PASS 8 test-hbitmap /hbitmap/get/all --- PASS 14 test-hbitmap /hbitmap/set/twice PASS 15 test-hbitmap /hbitmap/set/overlap PASS 16 test-hbitmap /hbitmap/reset/empty ==8023==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 17 test-hbitmap /hbitmap/reset/general PASS 11 ide-test /x86_64/ide/flush/retry_pci PASS 18 test-hbitmap /hbitmap/reset/all --- PASS 28 test-hbitmap /hbitmap/truncate/shrink/medium PASS 29 test-hbitmap /hbitmap/truncate/shrink/large PASS 30 test-hbitmap /hbitmap/meta/zero ==8029==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 ide-test /x86_64/ide/flush/retry_isa ==8035==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 ide-test /x86_64/ide/cdrom/pio ==8041==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 ide-test /x86_64/ide/cdrom/pio_large PASS 31 test-hbitmap /hbitmap/meta/one PASS 32 test-hbitmap /hbitmap/meta/byte PASS 33 test-hbitmap /hbitmap/meta/word ==8047==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 34 test-hbitmap /hbitmap/meta/sector PASS 35 test-hbitmap /hbitmap/serialize/align PASS 15 ide-test /x86_64/ide/cdrom/dma MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/ahci-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="ahci-test" ==8061==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 36 test-hbitmap /hbitmap/serialize/basic PASS 37 test-hbitmap /hbitmap/serialize/part PASS 38 test-hbitmap /hbitmap/serialize/zeroes --- PASS 43 test-hbitmap /hbitmap/next_dirty_area/next_dirty_area_4 MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-bdrv-drain -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bdrv-drain" PASS 1 ahci-test /x86_64/ahci/sanity ==8069==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-bdrv-drain /bdrv-drain/nested PASS 2 test-bdrv-drain /bdrv-drain/multiparent PASS 3 test-bdrv-drain /bdrv-drain/set_aio_context --- PASS 15 test-bdrv-drain /bdrv-drain/quiesce/co/drain_subtree PASS 16 test-bdrv-drain /bdrv-drain/graph-change/drain_subtree PASS 17 test-bdrv-drain /bdrv-drain/graph-change/drain_all ==8071==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 18 test-bdrv-drain /bdrv-drain/iothread/drain_all PASS 19 test-bdrv-drain /bdrv-drain/iothread/drain PASS 20 test-bdrv-drain /bdrv-drain/iothread/drain_subtree --- PASS 2 ahci-test /x86_64/ahci/pci_spec PASS 30 test-bdrv-drain /bdrv-drain/blockjob/iothread/error/drain_all PASS 31 test-bdrv-drain /bdrv-drain/blockjob/iothread/error/drain ==8101==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 32 test-bdrv-drain /bdrv-drain/blockjob/iothread/error/drain_subtree PASS 33 test-bdrv-drain /bdrv-drain/deletion/drain PASS 34 test-bdrv-drain /bdrv-drain/detach/drain_all --- PASS 39 test-bdrv-drain /bdrv-drain/attach/drain MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-bdrv-graph-mod -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bdrv-graph-mod" PASS 3 ahci-test /x86_64/ahci/pci_enable ==8121==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-bdrv-graph-mod /bdrv-graph-mod/update-perm-tree PASS 2 test-bdrv-graph-mod /bdrv-graph-mod/should-update-child ==8123==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-blockjob -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-blockjob" ==8131==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-blockjob /blockjob/ids PASS 2 test-blockjob /blockjob/cancel/created PASS 3 test-blockjob /blockjob/cancel/running --- PASS 7 test-blockjob /blockjob/cancel/pending PASS 8 test-blockjob /blockjob/cancel/concluded MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-blockjob-txn -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-blockjob-txn" ==8137==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 ahci-test /x86_64/ahci/hba_spec PASS 1 test-blockjob-txn /single/success PASS 2 test-blockjob-txn /single/failure --- PASS 6 test-blockjob-txn /pair/cancel PASS 7 test-blockjob-txn /pair/fail-cancel-race MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-block-backend -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-block-backend" ==8140==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8144==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-block-backend /block-backend/drain_aio_error PASS 2 test-block-backend /block-backend/drain_all_aio_error MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-block-iothread -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-block-iothread" PASS 5 ahci-test /x86_64/ahci/hba_enable ==8153==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-block-iothread /sync-op/pread PASS 2 test-block-iothread /sync-op/pwrite PASS 3 test-block-iothread /sync-op/load_vmstate --- PASS 14 test-block-iothread /propagate/basic PASS 15 test-block-iothread /propagate/diamond PASS 16 test-block-iothread /propagate/mirror ==8155==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-image-locking -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-image-locking" ==8179==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-image-locking /image-locking/basic PASS 2 test-image-locking /image-locking/set-perm-abort MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-x86-cpuid -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-x86-cpuid" --- PASS 3 test-xbzrle /xbzrle/encode_decode_unchanged PASS 4 test-xbzrle /xbzrle/encode_decode_1_byte PASS 5 test-xbzrle /xbzrle/encode_decode_overflow ==8191==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 test-xbzrle /xbzrle/encode_decode MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-vmstate -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-vmstate" PASS 1 test-vmstate /vmstate/tmp_struct --- PASS 9 test-int128 /int128/int128_gt PASS 10 test-int128 /int128/int128_rshift MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/rcutorture -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="rcutorture" ==8211==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 rcutorture /rcu/torture/1reader PASS 8 ahci-test /x86_64/ahci/reset ==8252==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8252==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe5d63e000; bottom 0x7febf73fe000; size: 0x001266240000 (79023046656) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 2 rcutorture /rcu/torture/10readers MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-rcu-list -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-list" PASS 9 ahci-test /x86_64/ahci/io/pio/lba28/simple/zero ==8265==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-rcu-list /rcu/qlist/single-threaded ==8265==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffce5e37000; bottom 0x7ff50e5fe000; size: 0x0007d7839000 (33680494592) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 10 ahci-test /x86_64/ahci/io/pio/lba28/simple/low PASS 2 test-rcu-list /rcu/qlist/short-few ==8277==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8277==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff8669b000; bottom 0x7f34a8bfe000; size: 0x00cadda9d000 (871302287360) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 11 ahci-test /x86_64/ahci/io/pio/lba28/simple/high ==8304==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8304==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe80eb8000; bottom 0x7f7abd7fe000; size: 0x0083c36ba000 (565919326208) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 3 test-rcu-list /rcu/qlist/long-many MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-rcu-simpleq -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-simpleq" PASS 12 ahci-test /x86_64/ahci/io/pio/lba28/double/zero ==8317==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-rcu-simpleq /rcu/qsimpleq/single-threaded ==8317==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe588a7000; bottom 0x7f7ec13fe000; size: 0x007f974a9000 (547999092736) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 13 ahci-test /x86_64/ahci/io/pio/lba28/double/low PASS 2 test-rcu-simpleq /rcu/qsimpleq/short-few ==8329==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8329==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc2835b000; bottom 0x7ffb4dbfe000; size: 0x0000da75d000 (3665154048) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 14 ahci-test /x86_64/ahci/io/pio/lba28/double/high ==8356==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 test-rcu-simpleq /rcu/qsimpleq/long-many MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-rcu-tailq -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-tailq" ==8356==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff053a7000; bottom 0x7fbccc57c000; size: 0x004238e2b000 (284422221824) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 15 ahci-test /x86_64/ahci/io/pio/lba28/long/zero PASS 1 test-rcu-tailq /rcu/qtailq/single-threaded ==8369==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8369==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcc4109000; bottom 0x7f981377c000; size: 0x0064b098d000 (432459534336) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 2 test-rcu-tailq /rcu/qtailq/short-few PASS 16 ahci-test /x86_64/ahci/io/pio/lba28/long/low ==8402==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8402==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffc2ffc000; bottom 0x7f23a09fe000; size: 0x00dc225fe000 (945469513728) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 17 ahci-test /x86_64/ahci/io/pio/lba28/long/high --- PASS 7 test-qdist /qdist/binning/expand PASS 8 test-qdist /qdist/binning/shrink MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-qht -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qht" ==8408==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 18 ahci-test /x86_64/ahci/io/pio/lba28/short/zero ==8423==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 19 ahci-test /x86_64/ahci/io/pio/lba28/short/low ==8429==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 20 ahci-test /x86_64/ahci/io/pio/lba28/short/high ==8435==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8435==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc64b81000; bottom 0x7f07f47fe000; size: 0x00f470383000 (1049854750720) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 21 ahci-test /x86_64/ahci/io/pio/lba48/simple/zero ==8441==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8441==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffd4e44000; bottom 0x7fb1491fe000; size: 0x004e8bc46000 (337352351744) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 22 ahci-test /x86_64/ahci/io/pio/lba48/simple/low ==8447==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8447==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffd1470000; bottom 0x7fc0f21fe000; size: 0x003edf272000 (270031855616) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 23 ahci-test /x86_64/ahci/io/pio/lba48/simple/high ==8453==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8453==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffec5093000; bottom 0x7f450a5fe000; size: 0x00b9baa95000 (797700608000) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 24 ahci-test /x86_64/ahci/io/pio/lba48/double/zero ==8459==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8459==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcb98f1000; bottom 0x7ff4e37fe000; size: 0x0007d60f3000 (33656090624) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 25 ahci-test /x86_64/ahci/io/pio/lba48/double/low ==8465==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8465==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcb9294000; bottom 0x7f70539fe000; size: 0x008c65896000 (602998923264) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 26 ahci-test /x86_64/ahci/io/pio/lba48/double/high ==8471==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8471==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc3ea9f000; bottom 0x7fd6d6dfe000; size: 0x002567ca1000 (160655085568) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 27 ahci-test /x86_64/ahci/io/pio/lba48/long/zero ==8477==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-qht /qht/mode/default ==8477==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcd0f4d000; bottom 0x7f3e9f9fe000; size: 0x00be3154f000 (816871436288) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 2 test-qht /qht/mode/resize MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-qht-par -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qht-par" PASS 1 test-qht-par /qht/parallel/2threads-0%updates-1s PASS 28 ahci-test /x86_64/ahci/io/pio/lba48/long/low ==8500==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8500==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc52c7f000; bottom 0x7fac1b1fe000; size: 0x005037a81000 (344531144704) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 2 test-qht-par /qht/parallel/2threads-20%updates-1s --- PASS 3 test-qdev-global-props /qdev/properties/dynamic/global PASS 4 test-qdev-global-props /qdev/properties/global/subclass MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/check-qom-interface -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="check-qom-interface" ==8516==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 check-qom-interface /qom/interface/direct_impl PASS 2 check-qom-interface /qom/interface/intermediate_impl MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/check-qom-proplist -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="check-qom-proplist" --- PASS 3 test-write-threshold /write-threshold/multi-set-get PASS 4 test-write-threshold /write-threshold/not-trigger PASS 5 test-write-threshold /write-threshold/trigger ==8549==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-crypto-hash -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-hash" PASS 1 test-crypto-hash /crypto/hash/iov PASS 2 test-crypto-hash /crypto/hash/alloc --- PASS 16 test-crypto-secret /crypto/secret/crypt/badiv MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-crypto-tlscredsx509 -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-tlscredsx509" PASS 31 ahci-test /x86_64/ahci/io/pio/lba48/short/low ==8583==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/perfectserver PASS 2 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/perfectclient PASS 32 ahci-test /x86_64/ahci/io/pio/lba48/short/high ==8590==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 33 ahci-test /x86_64/ahci/io/dma/lba28/fragmented ==8596==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodca1 PASS 4 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodca2 PASS 34 ahci-test /x86_64/ahci/io/dma/lba28/retry --- PASS 6 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca1 PASS 7 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca2 PASS 8 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca3 ==8602==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver1 PASS 10 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver2 PASS 11 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver3 PASS 35 ahci-test /x86_64/ahci/io/dma/lba28/simple/zero ==8608==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver4 PASS 13 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver5 PASS 36 ahci-test /x86_64/ahci/io/dma/lba28/simple/low ==8614==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver6 PASS 15 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver7 PASS 16 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badserver1 --- PASS 37 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/missingca PASS 38 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/missingserver PASS 39 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/missingclient ==8620==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-crypto-tlssession -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-tlssession" PASS 1 test-crypto-tlssession /qcrypto/tlssession/psk PASS 2 test-crypto-tlssession /qcrypto/tlssession/basicca PASS 38 ahci-test /x86_64/ahci/io/dma/lba28/double/zero ==8631==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 39 ahci-test /x86_64/ahci/io/dma/lba28/double/low PASS 3 test-crypto-tlssession /qcrypto/tlssession/differentca ==8637==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 40 ahci-test /x86_64/ahci/io/dma/lba28/double/high ==8643==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 test-crypto-tlssession /qcrypto/tlssession/altname1 PASS 41 ahci-test /x86_64/ahci/io/dma/lba28/long/zero PASS 5 test-crypto-tlssession /qcrypto/tlssession/altname2 PASS 6 test-crypto-tlssession /qcrypto/tlssession/altname3 ==8649==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 test-crypto-tlssession /qcrypto/tlssession/altname4 PASS 42 ahci-test /x86_64/ahci/io/dma/lba28/long/low PASS 8 test-crypto-tlssession /qcrypto/tlssession/altname5 ==8655==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 test-crypto-tlssession /qcrypto/tlssession/altname6 PASS 43 ahci-test /x86_64/ahci/io/dma/lba28/long/high PASS 10 test-crypto-tlssession /qcrypto/tlssession/wildcard1 ==8661==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 11 test-crypto-tlssession /qcrypto/tlssession/wildcard2 PASS 44 ahci-test /x86_64/ahci/io/dma/lba28/short/zero PASS 12 test-crypto-tlssession /qcrypto/tlssession/wildcard3 ==8667==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 test-crypto-tlssession /qcrypto/tlssession/wildcard4 PASS 14 test-crypto-tlssession /qcrypto/tlssession/wildcard5 PASS 45 ahci-test /x86_64/ahci/io/dma/lba28/short/low ==8673==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 15 test-crypto-tlssession /qcrypto/tlssession/wildcard6 PASS 16 test-crypto-tlssession /qcrypto/tlssession/cachain PASS 46 ahci-test /x86_64/ahci/io/dma/lba28/short/high MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qga" ==8681==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 47 ahci-test /x86_64/ahci/io/dma/lba48/simple/zero PASS 1 test-qga /qga/sync-delimited PASS 2 test-qga /qga/sync --- PASS 15 test-qga /qga/invalid-cmd PASS 16 test-qga /qga/invalid-args PASS 17 test-qga /qga/fsfreeze-status ==8692==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 18 test-qga /qga/blacklist PASS 19 test-qga /qga/config PASS 48 ahci-test /x86_64/ahci/io/dma/lba48/simple/low PASS 20 test-qga /qga/guest-exec PASS 21 test-qga /qga/guest-exec-invalid ==8703==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 22 test-qga /qga/guest-get-osinfo PASS 23 test-qga /qga/guest-get-host-name PASS 24 test-qga /qga/guest-get-timezone --- PASS 49 ahci-test /x86_64/ahci/io/dma/lba48/simple/high PASS 1 test-timed-average /timed-average/average MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-util-filemonitor -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-util-filemonitor" ==8720==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-util-filemonitor /util/filemonitor MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-util-sockets -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-util-sockets" PASS 1 test-util-sockets /util/socket/is-socket/bad --- PASS 4 test-io-channel-file /io/channel/pipe/sync PASS 5 test-io-channel-file /io/channel/pipe/async MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-io-channel-tls -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-channel-tls" ==8746==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-io-channel-tls /qio/channel/tls/basic MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-io-channel-command -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-channel-command" PASS 1 test-io-channel-command /io/channel/command/fifo/sync --- PASS 3 test-base64 /util/base64/not-nul-terminated PASS 4 test-base64 /util/base64/invalid-chars MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-crypto-pbkdf -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-pbkdf" ==8831==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-crypto-pbkdf /crypto/pbkdf/rfc3962/sha1/iter1 PASS 2 test-crypto-pbkdf /crypto/pbkdf/rfc3962/sha1/iter2 PASS 3 test-crypto-pbkdf /crypto/pbkdf/rfc3962/sha1/iter1200a --- PASS 1 test-logging /logging/parse_range PASS 2 test-logging /logging/parse_path MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-replication -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-replication" ==8863==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8874==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-replication /replication/primary/read PASS 53 ahci-test /x86_64/ahci/io/dma/lba48/long/zero PASS 2 test-replication /replication/primary/write --- PASS 4 test-replication /replication/primary/stop PASS 5 test-replication /replication/primary/do_checkpoint PASS 6 test-replication /replication/primary/get_error_all ==8883==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 test-replication /replication/secondary/read PASS 54 ahci-test /x86_64/ahci/io/dma/lba48/long/low PASS 8 test-replication /replication/secondary/write ==8889==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 55 ahci-test /x86_64/ahci/io/dma/lba48/long/high ==8874==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd08294000; bottom 0x7f04a17fc000; size: 0x00f866a98000 (1066874273792) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 9 test-replication /replication/secondary/start ==8895==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 56 ahci-test /x86_64/ahci/io/dma/lba48/short/zero ==8916==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 57 ahci-test /x86_64/ahci/io/dma/lba48/short/low PASS 10 test-replication /replication/secondary/stop ==8923==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 58 ahci-test /x86_64/ahci/io/dma/lba48/short/high ==8929==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 59 ahci-test /x86_64/ahci/io/ncq/simple PASS 11 test-replication /replication/secondary/do_checkpoint ==8935==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 test-replication /replication/secondary/get_error_all PASS 60 ahci-test /x86_64/ahci/io/ncq/retry MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-bufferiszero -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bufferiszero" ==8943==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 61 ahci-test /x86_64/ahci/flush/simple ==8952==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 62 ahci-test /x86_64/ahci/flush/retry ==8958==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8963==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 63 ahci-test /x86_64/ahci/flush/migrate ==8972==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8977==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 64 ahci-test /x86_64/ahci/migrate/sanity ==8986==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8991==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 65 ahci-test /x86_64/ahci/migrate/dma/simple ==9000==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==9005==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 66 ahci-test /x86_64/ahci/migrate/dma/halted ==9014==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==9019==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 67 ahci-test /x86_64/ahci/migrate/ncq/simple ==9028==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==9033==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 68 ahci-test /x86_64/ahci/migrate/ncq/halted ==9042==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 69 ahci-test /x86_64/ahci/cdrom/eject PASS 1 test-bufferiszero /cutils/bufferiszero MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-uuid -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-uuid" ==9047==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-uuid /uuid/is_null PASS 2 test-uuid /uuid/generate PASS 3 test-uuid /uuid/parse --- PASS 21 test-qgraph /qgraph/test_two_test_same_interface PASS 22 test-qgraph /qgraph/test_test_in_path PASS 23 test-qgraph /qgraph/test_double_edge ==9066==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 71 ahci-test /x86_64/ahci/cdrom/dma/multi ==9076==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 72 ahci-test /x86_64/ahci/cdrom/pio/single ==9082==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==9082==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffde88d000; bottom 0x7fc9cbbfe000; size: 0x003612c8f000 (232243392512) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 73 ahci-test /x86_64/ahci/cdrom/pio/multi ==9088==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 74 ahci-test /x86_64/ahci/cdrom/pio/bcl MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/hd-geo-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="hd-geo-test" PASS 1 hd-geo-test /x86_64/hd-geo/ide/none ==9102==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 hd-geo-test /x86_64/hd-geo/ide/drive/cd_0 ==9108==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/blank ==9114==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/lba ==9120==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/chs ==9126==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 hd-geo-test /x86_64/hd-geo/ide/device/mbr/blank ==9132==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 hd-geo-test /x86_64/hd-geo/ide/device/mbr/lba ==9138==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 8 hd-geo-test /x86_64/hd-geo/ide/device/mbr/chs ==9144==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 hd-geo-test /x86_64/hd-geo/ide/device/user/chs ==9149==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 10 hd-geo-test /x86_64/hd-geo/ide/device/user/chst MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/boot-order-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="boot-order-test" PASS 1 boot-order-test /x86_64/boot-order/pc --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9217==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 bios-tables-test /x86_64/acpi/piix4 Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9223==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 bios-tables-test /x86_64/acpi/q35 Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9229==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 bios-tables-test /x86_64/acpi/piix4/bridge Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9235==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 bios-tables-test /x86_64/acpi/piix4/ipmi Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9241==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 bios-tables-test /x86_64/acpi/piix4/cpuhp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9248==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 bios-tables-test /x86_64/acpi/piix4/memhp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9254==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 bios-tables-test /x86_64/acpi/piix4/numamem Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9260==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 8 bios-tables-test /x86_64/acpi/piix4/dimmpxm Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9269==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 bios-tables-test /x86_64/acpi/q35/bridge Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9275==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 10 bios-tables-test /x86_64/acpi/q35/mmio64 Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9281==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 11 bios-tables-test /x86_64/acpi/q35/ipmi Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9287==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 bios-tables-test /x86_64/acpi/q35/cpuhp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9294==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 bios-tables-test /x86_64/acpi/q35/memhp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9300==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 bios-tables-test /x86_64/acpi/q35/numamem Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9306==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 15 bios-tables-test /x86_64/acpi/q35/dimmpxm MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/boot-serial-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="boot-serial-test" PASS 1 boot-serial-test /x86_64/boot-serial/isapc --- PASS 1 i440fx-test /x86_64/i440fx/defaults PASS 2 i440fx-test /x86_64/i440fx/pam PASS 3 i440fx-test /x86_64/i440fx/firmware/bios ==9390==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 i440fx-test /x86_64/i440fx/firmware/pflash MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/fw_cfg-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="fw_cfg-test" PASS 1 fw_cfg-test /x86_64/fw_cfg/signature --- MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/drive_del-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="drive_del-test" PASS 1 drive_del-test /x86_64/drive_del/without-dev PASS 2 drive_del-test /x86_64/drive_del/after_failed_device_add ==9478==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 drive_del-test /x86_64/blockdev/drive_del_device_del MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/wdt_ib700-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="wdt_ib700-test" PASS 1 wdt_ib700-test /x86_64/wdt_ib700/pause --- PASS 1 usb-hcd-uhci-test /x86_64/uhci/pci/init PASS 2 usb-hcd-uhci-test /x86_64/uhci/pci/port1 PASS 3 usb-hcd-uhci-test /x86_64/uhci/pci/hotplug ==9673==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 usb-hcd-uhci-test /x86_64/uhci/pci/hotplug/usb-storage MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/usb-hcd-xhci-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="usb-hcd-xhci-test" PASS 1 usb-hcd-xhci-test /x86_64/xhci/pci/init PASS 2 usb-hcd-xhci-test /x86_64/xhci/pci/hotplug ==9682==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 usb-hcd-xhci-test /x86_64/xhci/pci/hotplug/usb-uas PASS 4 usb-hcd-xhci-test /x86_64/xhci/pci/hotplug/usb-ccid MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/cpu-plug-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="cpu-plug-test" --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9788==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 vmgenid-test /x86_64/vmgenid/vmgenid/set-guid Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9794==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 vmgenid-test /x86_64/vmgenid/vmgenid/set-guid-auto Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9800==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 vmgenid-test /x86_64/vmgenid/vmgenid/query-monitor MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/tpm-crb-swtpm-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="tpm-crb-swtpm-test" SKIP 1 tpm-crb-swtpm-test /x86_64/tpm/crb-swtpm/test # SKIP swtpm not in PATH or missing --tpm2 support --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9905==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9910==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 migration-test /x86_64/migration/fd_proto Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9918==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9923==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 migration-test /x86_64/migration/postcopy/unix PASS 5 migration-test /x86_64/migration/postcopy/recovery Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9953==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9958==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 migration-test /x86_64/migration/precopy/unix Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9967==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9972==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 migration-test /x86_64/migration/precopy/tcp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9981==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9986==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 8 migration-test /x86_64/migration/xbzrle/unix MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/test-x86-cpuid-compat -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-x86-cpuid-compat" PASS 1 test-x86-cpuid-compat /x86/cpuid/parsing-plus-minus --- PASS 6 numa-test /x86_64/numa/pc/dynamic/cpu MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qmp-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="qmp-test" PASS 1 qmp-test /x86_64/qmp/protocol ==10315==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 qmp-test /x86_64/qmp/oob PASS 3 qmp-test /x86_64/qmp/preconfig PASS 4 qmp-test /x86_64/qmp/missing-any-arg --- PASS 5 device-introspect-test /x86_64/device/introspect/abstract-interfaces ================================================================= ==10563==ERROR: LeakSanitizer: detected memory leaks Direct leak of 32 byte(s) in 1 object(s) allocated from: #0 0x555c255c6abe in calloc (/tmp/qemu-test/build/x86_64-softmmu/qemu-system-x86_64+0x19e9abe) --- SUMMARY: AddressSanitizer: 64 byte(s) leaked in 2 allocation(s). /tmp/qemu-test/src/tests/libqtest.c:137: kill_qemu() tried to terminate QEMU process but encountered exit status 1 ERROR - too few tests run (expected 6, got 5) make: *** [/tmp/qemu-test/src/tests/Makefile.include:894: check-qtest-x86_64] Error 1 make: *** Waiting for unfinished jobs.... Traceback (most recent call last): The full log is available at http://patchew.org/logs/cover.1561028123.git.balaton@eik.bme.hu/testing.asan/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2019-06-25 13:42 UTC | newest] Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-06-20 10:55 [Qemu-devel] [PATCH v5 0/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 1/2] i2c: Move bitbang_i2c.h to include/hw/i2c/ BALATON Zoltan 2019-06-20 15:46 ` Philippe Mathieu-Daudé 2019-06-25 12:54 ` Corey Minyard 2019-06-20 10:55 ` [Qemu-devel] [PATCH v5 2/2] ati-vga: Implement DDC and EDID info from monitor BALATON Zoltan 2019-06-20 15:09 ` Gerd Hoffmann 2019-06-20 15:40 ` BALATON Zoltan 2019-06-20 15:52 ` Gerd Hoffmann 2019-06-25 12:56 ` Corey Minyard 2019-06-25 13:20 ` BALATON Zoltan 2019-06-20 14:46 ` [Qemu-devel] [PATCH v5 0/2] " no-reply
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).