Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-24 Thread Laszlo Ersek
On 05/23/19 10:37, Peter Maydell wrote:
> On Thu, 23 May 2019 at 01:51, Laszlo Ersek  wrote:
>> I have narrowed down the issue sufficiently that I think I can hand
>> it over to Peter and Ard now -- because they know AARCH32 and AARCH64
>> assembly, and "target/arm/translate-a64.c" and "tcg/arm/*" too.
>>
>> The summarize the issue for Ard, the symptom is that AARCH64
>> ArmVirtQemu runs perfectly fine with TCG on an x86-64 system, but it
>> crashes on an AARCH32 host system.
>
> Thanks for the investigation; this is probably more one for Richard
> than me.

I figured I'd provide some logs.

(1) To recap, the aarch64 assembly source code file that seems to be
mis-translated (from the aarch64 binary) lives at

  
https://github.com/tianocore/edk2/blob/3604174718e2afc950c3cc64c64ba5165c8692bd/MdePkg/Library/BaseMemoryLibOptDxe/AArch64/CopyMem.S

The relevant functions are InternalMemCopyMem() and __memcpy().


(2) I disassembled the aarch64 binary with "objdump", and uploaded the
listing to:

  
http://people.redhat.com/lersek/aarch64-to-arm-mistranslation/DxeCore.objdump.xz

The InternalMemCopyMem() function starts at hex offset 2b2ec. The
__memcpy() function starts at hex offset 2b180.


(3) I ran the guest with "-d in_asm,op,op_opt,op_ind,out_asm" and
uploaded the log file to:

  
http://people.redhat.com/lersek/aarch64-to-arm-mistranslation/tcg.in_asm.op.op_opt.op_ind.out_asm.log.xz

The TBs that correspond to (parts of) the InternalMemCopyMem() and
__memcpy() functions are scattered over the file, but the offset between
the "nice" disassembly from (2), and the in-RAM TBs in (3), can be
determined from the fact that there is a single prfm instruction in the
entire binary. The instruction's offset is 0x2b180 in (2) -- at the
beginning of the __memcpy() function --, and its RAM address is
0x472d2180 in (3). Thus the difference (= the load address of
DxeCore.efi) is 0x472a7000.

(This is logged by the guest as well:

> Loading DXE CORE at 0x000472A7000 EntryPoint=0x000472A8000
)

Thanks
Laszlo



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-23 Thread Laszlo Ersek
Hi Peter,

On 05/22/19 23:15, Peter Maydell wrote:
> On Wed, 22 May 2019 at 15:22, Laszlo Ersek  wrote:
>> This is very interesting. I had obviously tested booting
>> "bios-tables-test.aarch64.iso.qcow2" against "edk2-aarch64-code.fd",
>> using TCG, on my x86_64 laptop. (And, I've run the above exact command
>> just now, at commit a4f667b67149 -- it works 100% fine.)
>>
>> However, I've never been *near* a 32-bit ARM host. Therefore my
>> suspicion is that the AARCH64 UEFI guest code tickles something in the
>> 32-bit ARM code generator. It could be a bug in 32-bit ARM TCG, or it
>> could be a bug in edk2 that is exposed by 32-bit ARM TCG.
> 
> Does it repro in a 32-bit-chroot in an aarch64 host ?
> I don't know if that might be easier for you to set up than
> getting access to real 32-bit hardware.

If this test is still necessary (e.g. for repeated testing), I might be
able to run qemu-system-aarch64/TCG in a 32-bit QEMU/KVM guest on my
Mustang. I was preparing to set up this kind of nesting, when Igor gave
me access to a real aarch32 host.

Thanks
Laszlo



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-23 Thread Peter Maydell
On Thu, 23 May 2019 at 01:51, Laszlo Ersek  wrote:
> I have narrowed down the issue sufficiently that I think I can hand it
> over to Peter and Ard now -- because they know AARCH32 and AARCH64
> assembly, and "target/arm/translate-a64.c" and "tcg/arm/*" too.
>
> The summarize the issue for Ard, the symptom is that AARCH64 ArmVirtQemu
> runs perfectly fine with TCG on an x86-64 system, but it crashes on an
> AARCH32 host system.

Thanks for the investigation; this is probably more one for
Richard than me.

-- PMM



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-22 Thread Laszlo Ersek
(+Ard)

On 05/22/19 16:22, Laszlo Ersek wrote:
> On 05/22/19 15:06, Igor Mammedov wrote:
>> On Tue, 21 May 2019 09:26:16 -0400
>> "Michael S. Tsirkin"  wrote:
>>
>>> On Tue, May 21, 2019 at 12:49:48PM +0100, Peter Maydell wrote:
 On Tue, 21 May 2019 at 00:10, Michael S. Tsirkin 
 wrote:
>
> The following changes since commit
> 2259637b95bef3116cc262459271de08e038cc66:
>
>   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream'
>   into staging (2019-05-20 17:22:05 +0100)
>
> are available in the Git repository at:
>
>   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git
>   tags/for_upstream
>
> for you to fetch changes up to
> 0c05ec64c388aea59facbef740651afa78e04f50:
>
>   tests: acpi: print error unable to dump ACPI table during
>   rebuild (2019-05-20 18:40:02 -0400)
>
> 
> pci, pc, virtio: features, fixes
>
> reconnect for vhost blk
> tests for UEFI
> misc other stuff
>
> Signed-off-by: Michael S. Tsirkin 
>
> 

 Hi -- this failed 'make check' for 32-bit Arm hosts:

 ERROR:/home/peter.maydell/qemu/tests/acpi-utils.c:145:acpi_find_rsdp_address_uefi:
 code should not be reached
 Aborted
 ERROR - too few tests run (expected 1, got 0)
 /home/peter.maydell/qemu/tests/Makefile.include:885: recipe for
 /target check-qtest-aarch64' failed

 thanks
 -- PMM
>>>
>>> Nothing jumps out ... Igor?
>> On 32-bit ARM host and it looks like UEFI crashes (CCing Laszlo)
>> with:
>>
>> InstallProtocolInterface: 5B1B31A1-9562-11D2-8E3F-00A0C969723B 469E52C0
>> ASSERT [DxeCore] 
>> /home/lacos/src/upstream/qemu/roms/edk2/MdePkg/Library/BaseLib/String.c(1090):
>>  Length < _gPcd_FixedAtBuild_PcdMaximumAsciiStringLength
>>
>> CLI to reproduce:
>>
>> qemu-system-aarch64  -display none -machine virt,accel=tcg
>> -nodefaults -nographic -drive
>> if=pflash,format=raw,file=pc-bios/edk2-aarch64-code.fd,readonly
>> -drive if=pflash,format=raw,file=pc-bios/edk2-arm-vars.fd,snapshot=on
>> -cdrom tests/data/uefi-boot-images/bios-tables-test.aarch64.iso.qcow2
>> -cpu cortex-a57 -serial stdio
>
> This is very interesting. I had obviously tested booting
> "bios-tables-test.aarch64.iso.qcow2" against "edk2-aarch64-code.fd",
> using TCG, on my x86_64 laptop. (And, I've run the above exact command
> just now, at commit a4f667b67149 -- it works 100% fine.)
>
> However, I've never been *near* a 32-bit ARM host. Therefore my
> suspicion is that the AARCH64 UEFI guest code tickles something in the
> 32-bit ARM code generator. It could be a bug in 32-bit ARM TCG, or it
> could be a bug in edk2 that is exposed by 32-bit ARM TCG.
>
> The direct assertion failure is mostly useless. The AsciiStrLen()
> function does what you'd expect it to, except it has a kind of "safety
> check" where it trips an assertion if the string length (under
> measurement) exceeds a pre-set platform constant. It helps with
> catching memory corruption errors.
>
> $ git show edk2-stable201903:MdePkg/Library/BaseLib/String.c | less
> 1090g
>
> UINTN
> EFIAPI
> AsciiStrLen (
>   IN  CONST CHAR8   *String
>   )
> {
>   UINTN Length;
>
>   ASSERT (String != NULL);
>
>   for (Length = 0; *String != '\0'; String++, Length++) {
> //
> // If PcdMaximumUnicodeStringLength is not zero,
> // length should not more than PcdMaximumUnicodeStringLength
> //
> if (PcdGet32 (PcdMaximumAsciiStringLength) != 0) {
>   ASSERT (Length < PcdGet32 (PcdMaximumAsciiStringLength)); <-- HERE
> }
>   }
>   return Length;
> }
>
> (Never mind that the comment has a typo -- it incorrectly references
> "PcdMaximumUnicodeStringLength", but the PCD that's actually checked
> is (correctly) "PcdMaximumAsciiStringLength".)
>
> The constant is set to decimal 1,000,000 in ArmVirtQemu builds
> (inherited from MdePkg.dec), and that's indeed a quite unlikely length
> for real-word strings seen by firmware.
>
> I'll take a closer look once I have access to a 32-bit ARM host, but
> I'll definitely need help. Basically we should compare the original
> AARCH64 (dis)assembly with the QEMU-generated 32-bit ARM assembly.
> Hopefully I can at least get a backtrace myself.

I have narrowed down the issue sufficiently that I think I can hand it
over to Peter and Ard now -- because they know AARCH32 and AARCH64
assembly, and "target/arm/translate-a64.c" and "tcg/arm/*" too.

The summarize the issue for Ard, the symptom is that AARCH64 ArmVirtQemu
runs perfectly fine with TCG on an x86-64 system, but it crashes on an
AARCH32 host system.

Below is my analysis.

(1) First, I determined a backtrace for the crash. For this, I flipped
the ASSERT() failure disposition from CpuDeadLoop() to CpuBreakpoint(),
via "PcdDebugPropertyMask". This printed a very nice 

Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-22 Thread Laszlo Ersek
On 05/23/19 02:51, Laszlo Ersek wrote:

> I'm attaching the two log sections ("good.txt" (from
> the x86-64 host) vs "bad.txt" (from the aarch64 host)).

Typo correction: "bad.txt" comes from an aarch32 host. (That's quite the
point.)

Thanks & sorry
Laszlo



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-22 Thread Peter Maydell
On Wed, 22 May 2019 at 15:22, Laszlo Ersek  wrote:
> This is very interesting. I had obviously tested booting
> "bios-tables-test.aarch64.iso.qcow2" against "edk2-aarch64-code.fd",
> using TCG, on my x86_64 laptop. (And, I've run the above exact command
> just now, at commit a4f667b67149 -- it works 100% fine.)
>
> However, I've never been *near* a 32-bit ARM host. Therefore my
> suspicion is that the AARCH64 UEFI guest code tickles something in the
> 32-bit ARM code generator. It could be a bug in 32-bit ARM TCG, or it
> could be a bug in edk2 that is exposed by 32-bit ARM TCG.

Does it repro in a 32-bit-chroot in an aarch64 host ?
I don't know if that might be easier for you to set up than
getting access to real 32-bit hardware.

thanks
-- PMM



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-22 Thread Laszlo Ersek
On 05/22/19 15:06, Igor Mammedov wrote:
> On Tue, 21 May 2019 09:26:16 -0400
> "Michael S. Tsirkin"  wrote:
> 
>> On Tue, May 21, 2019 at 12:49:48PM +0100, Peter Maydell wrote:
>>> On Tue, 21 May 2019 at 00:10, Michael S. Tsirkin  wrote:  

 The following changes since commit 
 2259637b95bef3116cc262459271de08e038cc66:

   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into 
 staging (2019-05-20 17:22:05 +0100)

 are available in the Git repository at:

   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream

 for you to fetch changes up to 0c05ec64c388aea59facbef740651afa78e04f50:

   tests: acpi: print error unable to dump ACPI table during rebuild 
 (2019-05-20 18:40:02 -0400)

 
 pci, pc, virtio: features, fixes

 reconnect for vhost blk
 tests for UEFI
 misc other stuff

 Signed-off-by: Michael S. Tsirkin 

   
>>>
>>> Hi -- this failed 'make check' for 32-bit Arm hosts:
>>>
>>> ERROR:/home/peter.maydell/qemu/tests/acpi-utils.c:145:acpi_find_rsdp_address_uefi:
>>> code should not be reached
>>> Aborted
>>> ERROR - too few tests run (expected 1, got 0)
>>> /home/peter.maydell/qemu/tests/Makefile.include:885: recipe for target
>>> 'check-qtest-aarch64' failed
>>>
>>> thanks
>>> -- PMM  
>>
>> Nothing jumps out ... Igor?
> On 32-bit ARM host and it looks like UEFI crashes (CCing Laszlo) with:
> 
> InstallProtocolInterface: 5B1B31A1-9562-11D2-8E3F-00A0C969723B 469E52C0
> ASSERT [DxeCore] 
> /home/lacos/src/upstream/qemu/roms/edk2/MdePkg/Library/BaseLib/String.c(1090):
>  Length < _gPcd_FixedAtBuild_PcdMaximumAsciiStringLength
> 
> CLI to reproduce:
> 
> qemu-system-aarch64  -display none -machine virt,accel=tcg -nodefaults 
> -nographic -drive 
> if=pflash,format=raw,file=pc-bios/edk2-aarch64-code.fd,readonly -drive 
> if=pflash,format=raw,file=pc-bios/edk2-arm-vars.fd,snapshot=on -cdrom 
> tests/data/uefi-boot-images/bios-tables-test.aarch64.iso.qcow2 -cpu 
> cortex-a57 -serial stdio

This is very interesting. I had obviously tested booting
"bios-tables-test.aarch64.iso.qcow2" against "edk2-aarch64-code.fd",
using TCG, on my x86_64 laptop. (And, I've run the above exact command
just now, at commit a4f667b67149 -- it works 100% fine.)

However, I've never been *near* a 32-bit ARM host. Therefore my
suspicion is that the AARCH64 UEFI guest code tickles something in the
32-bit ARM code generator. It could be a bug in 32-bit ARM TCG, or it
could be a bug in edk2 that is exposed by 32-bit ARM TCG.

The direct assertion failure is mostly useless. The AsciiStrLen()
function does what you'd expect it to, except it has a kind of "safety
check" where it trips an assertion if the string length (under
measurement) exceeds a pre-set platform constant. It helps with catching
memory corruption errors.

$ git show edk2-stable201903:MdePkg/Library/BaseLib/String.c | less
1090g

UINTN
EFIAPI
AsciiStrLen (
  IN  CONST CHAR8   *String
  )
{
  UINTN Length;

  ASSERT (String != NULL);

  for (Length = 0; *String != '\0'; String++, Length++) {
//
// If PcdMaximumUnicodeStringLength is not zero,
// length should not more than PcdMaximumUnicodeStringLength
//
if (PcdGet32 (PcdMaximumAsciiStringLength) != 0) {
  ASSERT (Length < PcdGet32 (PcdMaximumAsciiStringLength)); <-- HERE
}
  }
  return Length;
}

(Never mind that the comment has a typo -- it incorrectly references
"PcdMaximumUnicodeStringLength", but the PCD that's actually checked is
(correctly) "PcdMaximumAsciiStringLength".)

The constant is set to decimal 1,000,000 in ArmVirtQemu builds
(inherited from MdePkg.dec), and that's indeed a quite unlikely length
for real-word strings seen by firmware.

I'll take a closer look once I have access to a 32-bit ARM host, but
I'll definitely need help. Basically we should compare the original
AARCH64 (dis)assembly with the QEMU-generated 32-bit ARM assembly.
Hopefully I can at least get a backtrace myself.

Thanks,
Laszlo



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-22 Thread Igor Mammedov
On Tue, 21 May 2019 09:26:16 -0400
"Michael S. Tsirkin"  wrote:

> On Tue, May 21, 2019 at 12:49:48PM +0100, Peter Maydell wrote:
> > On Tue, 21 May 2019 at 00:10, Michael S. Tsirkin  wrote:  
> > >
> > > The following changes since commit 
> > > 2259637b95bef3116cc262459271de08e038cc66:
> > >
> > >   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into 
> > > staging (2019-05-20 17:22:05 +0100)
> > >
> > > are available in the Git repository at:
> > >
> > >   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> > >
> > > for you to fetch changes up to 0c05ec64c388aea59facbef740651afa78e04f50:
> > >
> > >   tests: acpi: print error unable to dump ACPI table during rebuild 
> > > (2019-05-20 18:40:02 -0400)
> > >
> > > 
> > > pci, pc, virtio: features, fixes
> > >
> > > reconnect for vhost blk
> > > tests for UEFI
> > > misc other stuff
> > >
> > > Signed-off-by: Michael S. Tsirkin 
> > >
> > >   
> > 
> > Hi -- this failed 'make check' for 32-bit Arm hosts:
> > 
> > ERROR:/home/peter.maydell/qemu/tests/acpi-utils.c:145:acpi_find_rsdp_address_uefi:
> > code should not be reached
> > Aborted
> > ERROR - too few tests run (expected 1, got 0)
> > /home/peter.maydell/qemu/tests/Makefile.include:885: recipe for target
> > 'check-qtest-aarch64' failed
> > 
> > thanks
> > -- PMM  
> 
> Nothing jumps out ... Igor?
On 32-bit ARM host and it looks like UEFI crashes (CCing Laszlo) with:

InstallProtocolInterface: 5B1B31A1-9562-11D2-8E3F-00A0C969723B 469E52C0
ASSERT [DxeCore] 
/home/lacos/src/upstream/qemu/roms/edk2/MdePkg/Library/BaseLib/String.c(1090): 
Length < _gPcd_FixedAtBuild_PcdMaximumAsciiStringLength

CLI to reproduce:

qemu-system-aarch64  -display none -machine virt,accel=tcg -nodefaults 
-nographic -drive 
if=pflash,format=raw,file=pc-bios/edk2-aarch64-code.fd,readonly -drive 
if=pflash,format=raw,file=pc-bios/edk2-arm-vars.fd,snapshot=on -cdrom 
tests/data/uefi-boot-images/bios-tables-test.aarch64.iso.qcow2 -cpu cortex-a57 
-serial stdio





Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-21 Thread Peter Maydell
On Tue, 21 May 2019 at 14:42, Michael S. Tsirkin  wrote:
>
> On Tue, May 21, 2019 at 12:49:48PM +0100, Peter Maydell wrote:
> > On Tue, 21 May 2019 at 00:10, Michael S. Tsirkin  wrote:
> > >
> > > The following changes since commit 
> > > 2259637b95bef3116cc262459271de08e038cc66:
> > >
> > >   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into 
> > > staging (2019-05-20 17:22:05 +0100)
> > >
> > > are available in the Git repository at:
> > >
> > >   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> > >
> > > for you to fetch changes up to 0c05ec64c388aea59facbef740651afa78e04f50:
> > >
> > >   tests: acpi: print error unable to dump ACPI table during rebuild 
> > > (2019-05-20 18:40:02 -0400)
> > >
> > > 
> > > pci, pc, virtio: features, fixes
> > >
> > > reconnect for vhost blk
> > > tests for UEFI
> > > misc other stuff
> > >
> > > Signed-off-by: Michael S. Tsirkin 
> > >
> > > 
> >
> > Hi -- this failed 'make check' for 32-bit Arm hosts:
> >
> > ERROR:/home/peter.maydell/qemu/tests/acpi-utils.c:145:acpi_find_rsdp_address_uefi:
> > code should not be reached
> > Aborted
> > ERROR - too few tests run (expected 1, got 0)
> > /home/peter.maydell/qemu/tests/Makefile.include:885: recipe for target
> > 'check-qtest-aarch64' failed
> >
> > thanks
> > -- PMM
>
> Dropped ARM and re-pushed.

Fixed up version applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/4.1
for any user-visible changes.

-- PMM



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-21 Thread Michael S. Tsirkin
On Tue, May 21, 2019 at 12:49:48PM +0100, Peter Maydell wrote:
> On Tue, 21 May 2019 at 00:10, Michael S. Tsirkin  wrote:
> >
> > The following changes since commit 2259637b95bef3116cc262459271de08e038cc66:
> >
> >   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into 
> > staging (2019-05-20 17:22:05 +0100)
> >
> > are available in the Git repository at:
> >
> >   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> >
> > for you to fetch changes up to 0c05ec64c388aea59facbef740651afa78e04f50:
> >
> >   tests: acpi: print error unable to dump ACPI table during rebuild 
> > (2019-05-20 18:40:02 -0400)
> >
> > 
> > pci, pc, virtio: features, fixes
> >
> > reconnect for vhost blk
> > tests for UEFI
> > misc other stuff
> >
> > Signed-off-by: Michael S. Tsirkin 
> >
> > 
> 
> Hi -- this failed 'make check' for 32-bit Arm hosts:
> 
> ERROR:/home/peter.maydell/qemu/tests/acpi-utils.c:145:acpi_find_rsdp_address_uefi:
> code should not be reached
> Aborted
> ERROR - too few tests run (expected 1, got 0)
> /home/peter.maydell/qemu/tests/Makefile.include:885: recipe for target
> 'check-qtest-aarch64' failed
> 
> thanks
> -- PMM

Dropped ARM and re-pushed.

-- 
MST



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-21 Thread Michael S. Tsirkin
On Tue, May 21, 2019 at 12:49:48PM +0100, Peter Maydell wrote:
> On Tue, 21 May 2019 at 00:10, Michael S. Tsirkin  wrote:
> >
> > The following changes since commit 2259637b95bef3116cc262459271de08e038cc66:
> >
> >   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into 
> > staging (2019-05-20 17:22:05 +0100)
> >
> > are available in the Git repository at:
> >
> >   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> >
> > for you to fetch changes up to 0c05ec64c388aea59facbef740651afa78e04f50:
> >
> >   tests: acpi: print error unable to dump ACPI table during rebuild 
> > (2019-05-20 18:40:02 -0400)
> >
> > 
> > pci, pc, virtio: features, fixes
> >
> > reconnect for vhost blk
> > tests for UEFI
> > misc other stuff
> >
> > Signed-off-by: Michael S. Tsirkin 
> >
> > 
> 
> Hi -- this failed 'make check' for 32-bit Arm hosts:
> 
> ERROR:/home/peter.maydell/qemu/tests/acpi-utils.c:145:acpi_find_rsdp_address_uefi:
> code should not be reached
> Aborted
> ERROR - too few tests run (expected 1, got 0)
> /home/peter.maydell/qemu/tests/Makefile.include:885: recipe for target
> 'check-qtest-aarch64' failed
> 
> thanks
> -- PMM


OK for now I will just drop UEFI tests from ARM.
Igor will debug and re-add later on.

Igor, as you do this maybe start by adding the infrastructure
with the blacklist so we can formalize the current
"these tables need to be updated".


-- 
MST



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-21 Thread Michael S. Tsirkin
On Tue, May 21, 2019 at 12:49:48PM +0100, Peter Maydell wrote:
> On Tue, 21 May 2019 at 00:10, Michael S. Tsirkin  wrote:
> >
> > The following changes since commit 2259637b95bef3116cc262459271de08e038cc66:
> >
> >   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into 
> > staging (2019-05-20 17:22:05 +0100)
> >
> > are available in the Git repository at:
> >
> >   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> >
> > for you to fetch changes up to 0c05ec64c388aea59facbef740651afa78e04f50:
> >
> >   tests: acpi: print error unable to dump ACPI table during rebuild 
> > (2019-05-20 18:40:02 -0400)
> >
> > 
> > pci, pc, virtio: features, fixes
> >
> > reconnect for vhost blk
> > tests for UEFI
> > misc other stuff
> >
> > Signed-off-by: Michael S. Tsirkin 
> >
> > 
> 
> Hi -- this failed 'make check' for 32-bit Arm hosts:
> 
> ERROR:/home/peter.maydell/qemu/tests/acpi-utils.c:145:acpi_find_rsdp_address_uefi:
> code should not be reached
> Aborted
> ERROR - too few tests run (expected 1, got 0)
> /home/peter.maydell/qemu/tests/Makefile.include:885: recipe for target
> 'check-qtest-aarch64' failed
> 
> thanks
> -- PMM

Nothing jumps out ... Igor?

-- 
MST



Re: [Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-21 Thread Peter Maydell
On Tue, 21 May 2019 at 00:10, Michael S. Tsirkin  wrote:
>
> The following changes since commit 2259637b95bef3116cc262459271de08e038cc66:
>
>   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging 
> (2019-05-20 17:22:05 +0100)
>
> are available in the Git repository at:
>
>   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
>
> for you to fetch changes up to 0c05ec64c388aea59facbef740651afa78e04f50:
>
>   tests: acpi: print error unable to dump ACPI table during rebuild 
> (2019-05-20 18:40:02 -0400)
>
> 
> pci, pc, virtio: features, fixes
>
> reconnect for vhost blk
> tests for UEFI
> misc other stuff
>
> Signed-off-by: Michael S. Tsirkin 
>
> 

Hi -- this failed 'make check' for 32-bit Arm hosts:

ERROR:/home/peter.maydell/qemu/tests/acpi-utils.c:145:acpi_find_rsdp_address_uefi:
code should not be reached
Aborted
ERROR - too few tests run (expected 1, got 0)
/home/peter.maydell/qemu/tests/Makefile.include:885: recipe for target
'check-qtest-aarch64' failed

thanks
-- PMM



[Qemu-devel] [PULL v2 00/36] pci, pc, virtio: features, fixes

2019-05-20 Thread Michael S. Tsirkin
The following changes since commit 2259637b95bef3116cc262459271de08e038cc66:

  Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging 
(2019-05-20 17:22:05 +0100)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream

for you to fetch changes up to 0c05ec64c388aea59facbef740651afa78e04f50:

  tests: acpi: print error unable to dump ACPI table during rebuild (2019-05-20 
18:40:02 -0400)


pci, pc, virtio: features, fixes

reconnect for vhost blk
tests for UEFI
misc other stuff

Signed-off-by: Michael S. Tsirkin 


Dan Streetman (1):
  do not call vhost_net_cleanup() on running net from char user event

Daniel P. Berrangé (2):
  hw: report invalid disable-legacy|modern usage for virtio-1-only devs
  Revert "globals: Allow global properties to be optional"

David Gibson (2):
  pcie: Remove redundant test in pcie_mmcfg_data_{read,write}()
  pci: Simplify pci_bus_is_root()

Igor Mammedov (16):
  q35: acpi: do not create dummy MCFG table
  tests: acpi: rename acpi_parse_rsdp_table() into acpi_fetch_rsdp_table()
  tests: acpi: make acpi_fetch_table() take size of fetched table pointer
  tests: acpi: make RSDT test routine handle XSDT
  tests: acpi: make pointer to RSDP 64bit
  tests: acpi: fetch X_DSDT if pointer to DSDT is 0
  tests: acpi: skip FACS table if board uses hw reduced ACPI profile
  tests: acpi: move boot_sector_init() into x86 tests branch
  tests: acpi: add acpi_find_rsdp_address_uefi() helper
  tests: acpi: add a way to start tests with UEFI firmware
  tests: acpi: ignore SMBIOS tests when UEFI firmware is used
  tests: acpi: allow to override default accelerator
  tests: add expected ACPI tables for arm/virt board
  tests: acpi: add simple arm/virt testcase
  tests: acpi: refactor rebuild-expected-aml.sh to dump ACPI tables for a 
specified list of targets
  tests: acpi: print error unable to dump ACPI table during rebuild

Li Feng (1):
  libvhost-user: fix bad vu_log_write

Marc-André Lureau (1):
  docs: reST-ify vhost-user documentation

Markus Armbruster (3):
  acpi/piix4: Convert debug printf()s to trace events
  acpi/pcihp: Convert debug printf()s to trace events
  acpi/pcihp: Add a few more trace points related to unplug

Wei Yang (3):
  hw/arm/virt-acpi-build: remove unnecessary variable mcfg_start
  i386, acpi: remove mcfg_ prefix in AcpiMcfgInfo members
  hw/arm/virt-acpi-build: pass AcpiMcfgInfo to build_mcfg()

Xie Yongji (7):
  virtio: Introduce started flag to VirtioDevice
  virtio: Use started flag in virtio_vmstate_change()
  vhost-user-blk: Use started flag in vhost_user_blk_set_status()
  vhost-user-blk: Only start vhost-user backend with the first kick
  vhost-user-blk: Add return value for vhost_user_blk_start()
  vhost-user-blk: Add support to reconnect backend
  contrib/vhost-user-blk: enable inflight I/O tracking

 docs/interop/vhost-user.txt | 1219 
 hw/virtio/virtio-pci.h  |   31 +-
 include/hw/acpi/pci.h   |   33 +
 include/hw/pci/pci.h|1 -
 include/hw/pci/pci_bus.h|   12 +-
 include/hw/qdev-core.h  |3 -
 include/hw/virtio/vhost-user-blk.h  |3 +
 include/hw/virtio/virtio.h  |2 +
 tests/acpi-utils.h  |7 +-
 contrib/libvhost-user/libvhost-user.c   |2 +-
 contrib/vhost-user-blk/vhost-user-blk.c |3 +-
 hw/acpi/pcihp.c |   32 +-
 hw/acpi/piix4.c |   14 +-
 hw/arm/virt-acpi-build.c|   22 +-
 hw/block/vhost-user-blk.c   |  175 +++-
 hw/core/machine.c   |   23 +-
 hw/display/virtio-gpu-pci.c |4 +-
 hw/display/virtio-vga.c |4 +-
 hw/i386/acpi-build.c|   32 +-
 hw/pci-bridge/pci_expander_bridge.c |6 -
 hw/pci/pci.c|   14 +-
 hw/pci/pcie_host.c  |   10 -
 hw/virtio/virtio-crypto-pci.c   |4 +-
 hw/virtio/virtio-input-pci.c|4 +-
 hw/virtio/virtio-pci.c  |   27 +-
 hw/virtio/virtio.c  |   54 +-
 net/vhost-user.c|1 -
 qom/object.c|3 -
 tests/acpi-utils.c  |   68 +-
 tests/bios-tables-test.c|  146 +++-
 tests/vmgenid-test.c|6 +-
 MAINTAINERS |2 +-
 docs/interop/index.rst  |2 +-
 docs/interop/vhost-user.rst | 1351 +++
 hw/acpi/trace-events|   16 +