All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
@ 2018-03-20 17:11 Howard Spoelstra
  2018-03-21 11:07 ` Paolo Bonzini
  0 siblings, 1 reply; 15+ messages in thread
From: Howard Spoelstra @ 2018-03-20 17:11 UTC (permalink / raw)
  To: qemu-devel qemu-devel

Hi,

I just built qemu-system-ppc.exe for windows using a fully up-to-date Fedora 27.
Command line for build:

./configure --cross-prefix=x86_64-w64-mingw32-
--target-list="ppc-softmmu ppc64-softmmu" --enable-gtk
--with-gtkabi=3.0 --enable-sdl --with-sdlabi=2.0

Command line to invoke Qemu:
C:\qemu-master>qemu-system-ppc.exe -L pc-bios -boot c -m 256 -M mac99
-prom-env "boot-args=-v" -prom-env "auto-boot?=true" -prom-env
"vga-ndrv?=true"  -drive
file=c:\Mac-disks\9.1.img,format=raw,media=disk -netdev
user,id=network01 -device
sungem,netdev=network01,mac=52:54:00:12:34:66 -sdl -device usb-kbd
-device usb-mouse

Error:
Unexpected error in aio_context_set_poll_params() at util/aio-win32.c:413:
qemu-system-ppc.exe: AioContext polling is not implemented on Windows

Best,
Howard

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-20 17:11 [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe Howard Spoelstra
@ 2018-03-21 11:07 ` Paolo Bonzini
  2018-03-21 13:13   ` Howard Spoelstra
  0 siblings, 1 reply; 15+ messages in thread
From: Paolo Bonzini @ 2018-03-21 11:07 UTC (permalink / raw)
  To: Howard Spoelstra, qemu-devel qemu-devel

On 20/03/2018 18:11, Howard Spoelstra wrote:
> Hi,
> 
> I just built qemu-system-ppc.exe for windows using a fully up-to-date Fedora 27.
> Command line for build:
> 
> ./configure --cross-prefix=x86_64-w64-mingw32-
> --target-list="ppc-softmmu ppc64-softmmu" --enable-gtk
> --with-gtkabi=3.0 --enable-sdl --with-sdlabi=2.0
> 
> Command line to invoke Qemu:
> C:\qemu-master>qemu-system-ppc.exe -L pc-bios -boot c -m 256 -M mac99
> -prom-env "boot-args=-v" -prom-env "auto-boot?=true" -prom-env
> "vga-ndrv?=true"  -drive
> file=c:\Mac-disks\9.1.img,format=raw,media=disk -netdev
> user,id=network01 -device
> sungem,netdev=network01,mac=52:54:00:12:34:66 -sdl -device usb-kbd
> -device usb-mouse
> 
> Error:
> Unexpected error in aio_context_set_poll_params() at util/aio-win32.c:413:
> qemu-system-ppc.exe: AioContext polling is not implemented on Windows

Can you get a backtrace on the Windows system?  Perhaps by putting a
breakpoint in aio_context_set_poll_params.

Paolo

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 11:07 ` Paolo Bonzini
@ 2018-03-21 13:13   ` Howard Spoelstra
  2018-03-21 13:22     ` Paolo Bonzini
  0 siblings, 1 reply; 15+ messages in thread
From: Howard Spoelstra @ 2018-03-21 13:13 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-devel qemu-devel

> Can you get a backtrace on the Windows system?  Perhaps by putting a
> breakpoint in aio_context_set_poll_params.
>
> Paolo

I built qemu-master RC0 with --enable-debug. This is what a bt provides:

(gdb) attach 9692
Attaching to program `c:\qemu-master\qemu-system-ppc.exe', process 9692
[New Thread 9692.0x670]
[New Thread 9692.0x238c]
[New Thread 9692.0xb94]
[New Thread 9692.0x10bc]
[New Thread 9692.0x90c]
[New Thread 9692.0x29a0]
(gdb) thread apply all bt full

Thread 6 (Thread 9692.0x29a0):
#0  0x00007ff980ec3811 in ?? ()
No symbol table info available.
#1  0x00007ff980ef020b in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 5 (Thread 9692.0x90c):
#0  0x00007ff980ebff04 in ?? ()
No symbol table info available.
#1  0x00007ff97d673b7f in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 4 (Thread 9692.0x10bc):
#0  0x00007ff980ec3794 in ?? ()
No symbol table info available.
#1  0x00007ff980e549dd in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 3 (Thread 9692.0xb94):
#0  0x00007ff980ec3794 in ?? ()
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#1  0x00007ff980e549dd in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 2 (Thread 9692.0x238c):
#0  0x00007ff980ec3794 in ?? ()
No symbol table info available.
#1  0x00007ff980e549dd in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 1 (Thread 9692.0x670):
#0  0x00007ff980ec09d4 in ?? ()
No symbol table info available.
#1  0x00007ff97d6ba9c6 in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb)

Best,
Howard

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 13:13   ` Howard Spoelstra
@ 2018-03-21 13:22     ` Paolo Bonzini
  2018-03-21 13:29       ` Howard Spoelstra
  0 siblings, 1 reply; 15+ messages in thread
From: Paolo Bonzini @ 2018-03-21 13:22 UTC (permalink / raw)
  To: Howard Spoelstra; +Cc: qemu-devel qemu-devel

On 21/03/2018 14:13, Howard Spoelstra wrote:
>> Can you get a backtrace on the Windows system?  Perhaps by putting a
>> breakpoint in aio_context_set_poll_params.
>>
>> Paolo
> 
> I built qemu-master RC0 with --enable-debug. This is what a bt provides:

I am not sure what is happening here, but it is obviously not too
helpful. :(  Perhaps "gdb --args qemu-system-ppc.exe ..." is better?

Thanks,

Paolo

> (gdb) attach 9692
> Attaching to program `c:\qemu-master\qemu-system-ppc.exe', process 9692
> [New Thread 9692.0x670]
> [New Thread 9692.0x238c]
> [New Thread 9692.0xb94]
> [New Thread 9692.0x10bc]
> [New Thread 9692.0x90c]
> [New Thread 9692.0x29a0]
> (gdb) thread apply all bt full
> 
> Thread 6 (Thread 9692.0x29a0):
> #0  0x00007ff980ec3811 in ?? ()
> No symbol table info available.
> #1  0x00007ff980ef020b in ?? ()
> No symbol table info available.
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 5 (Thread 9692.0x90c):
> #0  0x00007ff980ebff04 in ?? ()
> No symbol table info available.
> #1  0x00007ff97d673b7f in ?? ()
> No symbol table info available.
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 4 (Thread 9692.0x10bc):
> #0  0x00007ff980ec3794 in ?? ()
> No symbol table info available.
> #1  0x00007ff980e549dd in ?? ()
> No symbol table info available.
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 3 (Thread 9692.0xb94):
> #0  0x00007ff980ec3794 in ?? ()
> ---Type <return> to continue, or q <return> to quit---
> No symbol table info available.
> #1  0x00007ff980e549dd in ?? ()
> No symbol table info available.
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 2 (Thread 9692.0x238c):
> #0  0x00007ff980ec3794 in ?? ()
> No symbol table info available.
> #1  0x00007ff980e549dd in ?? ()
> No symbol table info available.
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 1 (Thread 9692.0x670):
> #0  0x00007ff980ec09d4 in ?? ()
> No symbol table info available.
> #1  0x00007ff97d6ba9c6 in ?? ()
> No symbol table info available.
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> (gdb)
> 
> Best,
> Howard
> 

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 13:22     ` Paolo Bonzini
@ 2018-03-21 13:29       ` Howard Spoelstra
  2018-03-21 15:27         ` Paolo Bonzini
  0 siblings, 1 reply; 15+ messages in thread
From: Howard Spoelstra @ 2018-03-21 13:29 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-devel qemu-devel

>> I built qemu-master RC0 with --enable-debug. This is what a bt provides:
>
> I am not sure what is happening here, but it is obviously not too
> helpful. :(  Perhaps "gdb --args qemu-system-ppc.exe ..." is better?
>
> Thanks,
>
> Paolo

Obviously not, but this doesn't make things better... ;-)

C:\qemu-debugging>gdb --args c:\qemu-master\qemu-system-ppc.exe -L
c:\qemu-master\pc-bios -boot d -m 256 -M mac99 -prom-env
"boot-args=-v" -prom-env "auto-boot?=true" -prom-env "vga-ndrv?=true"
-drive file=c:\Mac-disks\debian-9.0-powerpc-NETINST-1.iso,format=raw,media=cdrom
-device usb-mouse -device usb-kbd -netdev user,id=network01 -device
sungem,netdev=network01,mac=52:54:00:12:34:56 -sdl -drive
file=c:\Mac-disks\9.2.img,format=raw,media=disk
This binary was built by Equation Solution <http://www.Equation.com>.
GNU gdb (GDB) 7.12
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-w64-mingw32".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from c:\qemu-master\qemu-system-ppc.exe...done.
(gdb) thread apply all bt full
(gdb) bt
No stack.
(gdb)

Best,
Howard

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 13:29       ` Howard Spoelstra
@ 2018-03-21 15:27         ` Paolo Bonzini
  2018-03-21 16:23           ` Howard Spoelstra
  0 siblings, 1 reply; 15+ messages in thread
From: Paolo Bonzini @ 2018-03-21 15:27 UTC (permalink / raw)
  To: Howard Spoelstra; +Cc: qemu-devel qemu-devel

On 21/03/2018 14:29, Howard Spoelstra wrote:
> Obviously not, but this doesn't make things better... ;-)
> 
> C:\qemu-debugging>gdb --args c:\qemu-master\qemu-system-ppc.exe -L
> c:\qemu-master\pc-bios -boot d -m 256 -M mac99 -prom-env
> "boot-args=-v" -prom-env "auto-boot?=true" -prom-env "vga-ndrv?=true"
> -drive file=c:\Mac-disks\debian-9.0-powerpc-NETINST-1.iso,format=raw,media=cdrom
> -device usb-mouse -device usb-kbd -netdev user,id=network01 -device
> sungem,netdev=network01,mac=52:54:00:12:34:56 -sdl -drive
> file=c:\Mac-disks\9.2.img,format=raw,media=disk
> This binary was built by Equation Solution <http://www.Equation.com>.
> GNU gdb (GDB) 7.12
> Copyright (C) 2016 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "x86_64-w64-mingw32".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
> <http://www.gnu.org/software/gdb/documentation/>.
> For help, type "help".
> Type "apropos word" to search for commands related to "word"...
> Reading symbols from c:\qemu-master\qemu-system-ppc.exe...done.

You need to "r"un the program here. :)

Also probably "b aio_context_set_poll_params" is useful before you run
the program, to trap the moment in which the function is called.

Thanks,

Paolo

> (gdb) thread apply all bt full
> (gdb) bt
> No stack.
> (gdb)
> 
> Best,
> Howard
> 

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 15:27         ` Paolo Bonzini
@ 2018-03-21 16:23           ` Howard Spoelstra
  2018-03-21 16:25             ` Paolo Bonzini
  0 siblings, 1 reply; 15+ messages in thread
From: Howard Spoelstra @ 2018-03-21 16:23 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-devel qemu-devel

> You need to "r"un the program here. :)
>
> Also probably "b aio_context_set_poll_params" is useful before you run
> the program, to trap the moment in which the function is called.
>

Hi, that got me here:

(gdb) run
Starting program: c:\qemu-master\qemu-system-ppc.exe -L
c:\qemu-master\pc-bios -boot d -m 256 -M mac99 -prom-env
"boot-args=-v" -prom-env "auto-boot?=true" -prom-env "vga-ndrv?=true"
-drive "file=c:\Mac-disks\debian-9.0-powerpc-NETINST-1.iso,format=raw,media=cdrom"
-device usb-mouse -device usb-kbd -netdev "user,id=network01" -device
"sungem,netdev=network01,mac=52:54:00:12:34:56" -sdl -drive
"file=c:\Mac-disks\9.2.img,format=raw,media=disk"
[New Thread 10844.0x24d0]
warning: FTH: (10844): *** Fault tolerant heap shim applied to current
process. This is usually due to previous crashes. ***
[New Thread 10844.0x1224]
[New Thread 10844.0x2a30]
[New Thread 10844.0x2594]
[New Thread 10844.0x32a8]

Thread 1 hit Breakpoint 1, aio_context_set_poll_params (ctx=0xc14a9b0,
max_ns=32768, grow=0, shrink=0, errp=0x362f968)
    at util/aio-win32.c:413
413     in util/aio-win32.c
(gdb) s
error_setg_internal (errp=0x362f968, src=0xe166e0 <__func__.58569+32>
"util/aio-win32.c", line=413,
    func=0xe16740 <__func__.59050> "aio_context_set_poll_params",
    fmt=0xe16708 <__func__.58569+72> "AioContext polling is not
implemented on Windows") at util/error.c:91
91      util/error.c: No such file or directory.
(gdb) s
94      in util/error.c

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 16:23           ` Howard Spoelstra
@ 2018-03-21 16:25             ` Paolo Bonzini
  2018-03-21 16:31               ` Howard Spoelstra
  0 siblings, 1 reply; 15+ messages in thread
From: Paolo Bonzini @ 2018-03-21 16:25 UTC (permalink / raw)
  To: Howard Spoelstra; +Cc: qemu-devel qemu-devel

On 21/03/2018 17:23, Howard Spoelstra wrote:
> warning: FTH: (10844): *** Fault tolerant heap shim applied to current
> process. This is usually due to previous crashes. ***
> [New Thread 10844.0x1224]
> [New Thread 10844.0x2a30]
> [New Thread 10844.0x2594]
> [New Thread 10844.0x32a8]
> 
> Thread 1 hit Breakpoint 1, aio_context_set_poll_params (ctx=0xc14a9b0,
> max_ns=32768, grow=0, shrink=0, errp=0x362f968)
>     at util/aio-win32.c:413
> 413     in util/aio-win32.c
> (gdb) s
> error_setg_internal (errp=0x362f968, src=0xe166e0 <__func__.58569+32>
> "util/aio-win32.c", line=413,
>     func=0xe16740 <__func__.59050> "aio_context_set_poll_params",
>     fmt=0xe16708 <__func__.58569+72> "AioContext polling is not
> implemented on Windows") at util/error.c:91
> 91      util/error.c: No such file or directory.
> (gdb) s
> 94      in util/error.c

Great!  Now do "bt".

Paolo

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 16:25             ` Paolo Bonzini
@ 2018-03-21 16:31               ` Howard Spoelstra
  2018-03-21 16:37                 ` Paolo Bonzini
  0 siblings, 1 reply; 15+ messages in thread
From: Howard Spoelstra @ 2018-03-21 16:31 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-devel qemu-devel

On Wed, Mar 21, 2018 at 5:25 PM, Paolo Bonzini <pbonzini@redhat.com> wrote:
> On 21/03/2018 17:23, Howard Spoelstra wrote:
>> warning: FTH: (10844): *** Fault tolerant heap shim applied to current
>> process. This is usually due to previous crashes. ***
>> [New Thread 10844.0x1224]
>> [New Thread 10844.0x2a30]
>> [New Thread 10844.0x2594]
>> [New Thread 10844.0x32a8]
>>
>> Thread 1 hit Breakpoint 1, aio_context_set_poll_params (ctx=0xc14a9b0,
>> max_ns=32768, grow=0, shrink=0, errp=0x362f968)
>>     at util/aio-win32.c:413
>> 413     in util/aio-win32.c
>> (gdb) s
>> error_setg_internal (errp=0x362f968, src=0xe166e0 <__func__.58569+32>
>> "util/aio-win32.c", line=413,
>>     func=0xe16740 <__func__.59050> "aio_context_set_poll_params",
>>     fmt=0xe16708 <__func__.58569+72> "AioContext polling is not
>> implemented on Windows") at util/error.c:91
>> 91      util/error.c: No such file or directory.
>> (gdb) s
>> 94      in util/error.c
>
> Great!  Now do "bt".
>
> Paolo

(gdb) bt full
#0  aio_context_set_poll_params (ctx=0xc16a9b0, max_ns=32768, grow=0,
shrink=0, errp=0x362f968) at util/aio-win32.c:413
        __func__ = "aio_context_set_poll_params"
#1  0x00000000005f7563 in iothread_complete (obj=0xc16a290,
errp=0x362fa50) at iothread.c:143
        local_error = 0x0
        iothread = 0xc16a290
        __func__ = "iothread_complete"
        name = 0xde8be9 <container_info+265> "user-creatable"
        thread_name = 0x400000000 <error: Cannot access memory at
address 0x400000000>
#2  0x0000000000831716 in user_creatable_complete (obj=0xc16a290,
errp=0x362fa50) at qom/object_interfaces.c:24
        ucc = 0x7fec650
        uc = 0xc16a290
        __func__ = "user_creatable_complete"
#3  0x000000000082cde1 in object_new_with_propv (typename=0xc4b14b
<__func__.56984+43> "iothread", parent=0xc169e50,
    id=0xc12494 <__emutls_t.iothread_locked+19167> "mon_iothread",
errp=0x14ae260 <error_abort>, vargs=0x362fb20 "")
    at qom/object.c:555
        obj = 0xc16a290
        klass = 0x7fec020
        local_err = 0x0
        __func__ = "object_new_with_propv"
#4  0x000000000082cc67 in object_new_with_props (typename=0xc4b14b
<__func__.56984+43> "iothread", parent=0xc169e50,
    id=0xc12494 <__emutls_t.iothread_locked+19167> "mon_iothread",
errp=0x14ae260 <error_abort>) at qom/object.c:516
        vargs = 0x362fb20 ""
        obj = 0xd34e26fdf887
#5  0x00000000005f7ced in iothread_create (id=0xc12494
<__emutls_t.iothread_locked+19167> "mon_iothread",
---Type <return> to continue, or q <return> to quit---
    errp=0x14ae260 <error_abort>) at iothread.c:352
        obj = 0x45bef7 <sortcmdlist+137>
        __func__ = "iothread_create"
#6  0x000000000045bf53 in monitor_iothread_init () at
/home/hsp/src/qemu-master/monitor.c:4436
No locals.
#7  0x000000000045bfcb in monitor_init_globals () at
/home/hsp/src/qemu-master/monitor.c:4464
No locals.
#8  0x00000000006064d5 in qemu_main (argc=28, argv=0x5679620,
envp=0x0) at vl.c:4545
        i = 1
        snapshot = 0
        linux_boot = 0
        initrd_filename = 0x0
        kernel_filename = 0x0
        kernel_cmdline = 0xc4e286 <runstate_transitions_def+6918> ""
        boot_order = 0x57052c0 "d"
        boot_once = 0x0
        ds = 0x7ff94aced24c
        opts = 0x5705100
        machine_opts = 0x5705560
        icount_opts = 0x0
        accel_opts = 0x0
        olist = 0xa6e000 <qemu_machine_opts>
        optind = 28
        optarg = 0x56793dd "file=c:\\Mac-disks\\9.2.img,format=raw,media=disk"
---Type <return> to continue, or q <return> to quit---
        loadvm = 0x0
        machine_class = 0x7fb28f0
        cpu_model = 0x0
        vga_model = 0x0
        qtest_chrdev = 0x0
        qtest_log = 0x0
        pid_file = 0x0
        incoming = 0x0
        userconfig = true
        nographic = false
        display_remote = 0
        log_mask = 0x0
        log_file = 0x0
        trace_file = 0x0
        maxram_size = 268435456
        ram_slots = 0
        vmstate_dump_file = 0x0
        main_loop_err = 0x0
        err = 0x0
        list_data_dirs = false
        dir = 0x8026a80 "c:\\qemu-master"
        dirs = 0x8026980
        bdo_queue = {sqh_first = 0x0, sqh_last = 0x362fda0}
        __func__ = "qemu_main"
---Type <return> to continue, or q <return> to quit---
#9  0x00000000005fc507 in SDL_main (argc=28, argv=0x5679620) at vl.c:43
No locals.
#10 0x000000000096e4e8 in main_getcmdline ()
No symbol table info available.
#11 0x00000000004013f7 in __tmainCRTStartup () at ../crt/crtexe.c:334
        lock_free = <optimized out>
        fiberid = <optimized out>
        nested = <optimized out>
        lpszCommandLine = <optimized out>
        StartupInfo = {cb = 104, lpReserved = 0x5787680 "", lpDesktop
= 0x57881f0 "Winsta0\\Default",
          lpTitle = 0x578c000 "c:\\qemu-master\\qemu-system-ppc.exe",
dwX = 0, dwY = 0, dwXSize = 0, dwYSize = 0,
          dwXCountChars = 0, dwYCountChars = 0, dwFillAttribute = 0,
dwFlags = 0, wShowWindow = 0, cbReserved2 = 0,
          lpReserved2 = 0x0, hStdInput = 0xffffffffffffffff,
hStdOutput = 0xffffffffffffffff,
          hStdError = 0xffffffffffffffff}
        inDoubleQuote = <optimized out>
#12 0x00000000004014fb in WinMainCRTStartup () at ../crt/crtexe.c:184
        ret = 255
(gdb)

Finally ;-)

Best,
Howard

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 16:31               ` Howard Spoelstra
@ 2018-03-21 16:37                 ` Paolo Bonzini
  2018-03-22  5:19                   ` Peter Xu
  0 siblings, 1 reply; 15+ messages in thread
From: Paolo Bonzini @ 2018-03-21 16:37 UTC (permalink / raw)
  To: Howard Spoelstra; +Cc: qemu-devel qemu-devel, Peter Xu

On 21/03/2018 17:31, Howard Spoelstra wrote:
> On Wed, Mar 21, 2018 at 5:25 PM, Paolo Bonzini <pbonzini@redhat.com> wrote:
>> On 21/03/2018 17:23, Howard Spoelstra wrote:
>>> warning: FTH: (10844): *** Fault tolerant heap shim applied to current
>>> process. This is usually due to previous crashes. ***
>>> [New Thread 10844.0x1224]
>>> [New Thread 10844.0x2a30]
>>> [New Thread 10844.0x2594]
>>> [New Thread 10844.0x32a8]
>>>
>>> Thread 1 hit Breakpoint 1, aio_context_set_poll_params (ctx=0xc14a9b0,
>>> max_ns=32768, grow=0, shrink=0, errp=0x362f968)
>>>     at util/aio-win32.c:413
>>> 413     in util/aio-win32.c
>>> (gdb) s
>>> error_setg_internal (errp=0x362f968, src=0xe166e0 <__func__.58569+32>
>>> "util/aio-win32.c", line=413,
>>>     func=0xe16740 <__func__.59050> "aio_context_set_poll_params",
>>>     fmt=0xe16708 <__func__.58569+72> "AioContext polling is not
>>> implemented on Windows") at util/error.c:91
>>> 91      util/error.c: No such file or directory.
>>> (gdb) s
>>> 94      in util/error.c
>>
>> Great!  Now do "bt".
>>
>> Paolo
> 
> (gdb) bt full
> #0  aio_context_set_poll_params (ctx=0xc16a9b0, max_ns=32768, grow=0,
> shrink=0, errp=0x362f968) at util/aio-win32.c:413
>         __func__ = "aio_context_set_poll_params"
> #1  0x00000000005f7563 in iothread_complete (obj=0xc16a290,
> errp=0x362fa50) at iothread.c:143
>         local_error = 0x0
>         iothread = 0xc16a290
>         __func__ = "iothread_complete"
>         name = 0xde8be9 <container_info+265> "user-creatable"
>         thread_name = 0x400000000 <error: Cannot access memory at
> address 0x400000000>
> #2  0x0000000000831716 in user_creatable_complete (obj=0xc16a290,
> errp=0x362fa50) at qom/object_interfaces.c:24
>         ucc = 0x7fec650
>         uc = 0xc16a290
>         __func__ = "user_creatable_complete"
> #3  0x000000000082cde1 in object_new_with_propv (typename=0xc4b14b
> <__func__.56984+43> "iothread", parent=0xc169e50,
>     id=0xc12494 <__emutls_t.iothread_locked+19167> "mon_iothread",
> errp=0x14ae260 <error_abort>, vargs=0x362fb20 "")
>     at qom/object.c:555
>         obj = 0xc16a290
>         klass = 0x7fec020
>         local_err = 0x0
>         __func__ = "object_new_with_propv"
> #4  0x000000000082cc67 in object_new_with_props (typename=0xc4b14b
> <__func__.56984+43> "iothread", parent=0xc169e50,
>     id=0xc12494 <__emutls_t.iothread_locked+19167> "mon_iothread",
> errp=0x14ae260 <error_abort>) at qom/object.c:516
>         vargs = 0x362fb20 ""
>         obj = 0xd34e26fdf887
> #5  0x00000000005f7ced in iothread_create (id=0xc12494
> <__emutls_t.iothread_locked+19167> "mon_iothread",
> ---Type <return> to continue, or q <return> to quit---
>     errp=0x14ae260 <error_abort>) at iothread.c:352
>         obj = 0x45bef7 <sortcmdlist+137>
>         __func__ = "iothread_create"
> #6  0x000000000045bf53 in monitor_iothread_init () at
> /home/hsp/src/qemu-master/monitor.c:4436
> No locals.
> #7  0x000000000045bfcb in monitor_init_globals () at
> /home/hsp/src/qemu-master/monitor.c:4464
> No locals.
> #8  0x00000000006064d5 in qemu_main (argc=28, argv=0x5679620,
> envp=0x0) at vl.c:4545
>         i = 1
>         snapshot = 0
>         linux_boot = 0
>         initrd_filename = 0x0
>         kernel_filename = 0x0
>         kernel_cmdline = 0xc4e286 <runstate_transitions_def+6918> ""
>         boot_order = 0x57052c0 "d"
>         boot_once = 0x0
>         ds = 0x7ff94aced24c
>         opts = 0x5705100
>         machine_opts = 0x5705560
>         icount_opts = 0x0
>         accel_opts = 0x0
>         olist = 0xa6e000 <qemu_machine_opts>
>         optind = 28
>         optarg = 0x56793dd "file=c:\\Mac-disks\\9.2.img,format=raw,media=disk"
> ---Type <return> to continue, or q <return> to quit---
>         loadvm = 0x0
>         machine_class = 0x7fb28f0
>         cpu_model = 0x0
>         vga_model = 0x0
>         qtest_chrdev = 0x0
>         qtest_log = 0x0
>         pid_file = 0x0
>         incoming = 0x0
>         userconfig = true
>         nographic = false
>         display_remote = 0
>         log_mask = 0x0
>         log_file = 0x0
>         trace_file = 0x0
>         maxram_size = 268435456
>         ram_slots = 0
>         vmstate_dump_file = 0x0
>         main_loop_err = 0x0
>         err = 0x0
>         list_data_dirs = false
>         dir = 0x8026a80 "c:\\qemu-master"
>         dirs = 0x8026980
>         bdo_queue = {sqh_first = 0x0, sqh_last = 0x362fda0}
>         __func__ = "qemu_main"
> ---Type <return> to continue, or q <return> to quit---
> #9  0x00000000005fc507 in SDL_main (argc=28, argv=0x5679620) at vl.c:43
> No locals.
> #10 0x000000000096e4e8 in main_getcmdline ()
> No symbol table info available.
> #11 0x00000000004013f7 in __tmainCRTStartup () at ../crt/crtexe.c:334
>         lock_free = <optimized out>
>         fiberid = <optimized out>
>         nested = <optimized out>
>         lpszCommandLine = <optimized out>
>         StartupInfo = {cb = 104, lpReserved = 0x5787680 "", lpDesktop
> = 0x57881f0 "Winsta0\\Default",
>           lpTitle = 0x578c000 "c:\\qemu-master\\qemu-system-ppc.exe",
> dwX = 0, dwY = 0, dwXSize = 0, dwYSize = 0,
>           dwXCountChars = 0, dwYCountChars = 0, dwFillAttribute = 0,
> dwFlags = 0, wShowWindow = 0, cbReserved2 = 0,
>           lpReserved2 = 0x0, hStdInput = 0xffffffffffffffff,
> hStdOutput = 0xffffffffffffffff,
>           hStdError = 0xffffffffffffffff}
>         inDoubleQuote = <optimized out>
> #12 0x00000000004014fb in WinMainCRTStartup () at ../crt/crtexe.c:184
>         ret = 255
> (gdb)
> 
> Finally ;-)

Great, thanks.  Peter, can you look at it?  I think we should:

1) make aio_context_set_poll_params succeed in aio-win32.c if
poll_max_ns is zero

2) set IOTHREAD_POLL_MAX_NS_DEFAULT to zero on windows.

Paolo

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-21 16:37                 ` Paolo Bonzini
@ 2018-03-22  5:19                   ` Peter Xu
  2018-03-22  8:28                     ` Howard Spoelstra
  2018-03-22  9:14                     ` Paolo Bonzini
  0 siblings, 2 replies; 15+ messages in thread
From: Peter Xu @ 2018-03-22  5:19 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: Howard Spoelstra, qemu-devel qemu-devel

On Wed, Mar 21, 2018 at 05:37:22PM +0100, Paolo Bonzini wrote:
> On 21/03/2018 17:31, Howard Spoelstra wrote:
> > On Wed, Mar 21, 2018 at 5:25 PM, Paolo Bonzini <pbonzini@redhat.com> wrote:
> >> On 21/03/2018 17:23, Howard Spoelstra wrote:
> >>> warning: FTH: (10844): *** Fault tolerant heap shim applied to current
> >>> process. This is usually due to previous crashes. ***
> >>> [New Thread 10844.0x1224]
> >>> [New Thread 10844.0x2a30]
> >>> [New Thread 10844.0x2594]
> >>> [New Thread 10844.0x32a8]
> >>>
> >>> Thread 1 hit Breakpoint 1, aio_context_set_poll_params (ctx=0xc14a9b0,
> >>> max_ns=32768, grow=0, shrink=0, errp=0x362f968)
> >>>     at util/aio-win32.c:413
> >>> 413     in util/aio-win32.c
> >>> (gdb) s
> >>> error_setg_internal (errp=0x362f968, src=0xe166e0 <__func__.58569+32>
> >>> "util/aio-win32.c", line=413,
> >>>     func=0xe16740 <__func__.59050> "aio_context_set_poll_params",
> >>>     fmt=0xe16708 <__func__.58569+72> "AioContext polling is not
> >>> implemented on Windows") at util/error.c:91
> >>> 91      util/error.c: No such file or directory.
> >>> (gdb) s
> >>> 94      in util/error.c
> >>
> >> Great!  Now do "bt".
> >>
> >> Paolo
> > 
> > (gdb) bt full
> > #0  aio_context_set_poll_params (ctx=0xc16a9b0, max_ns=32768, grow=0,
> > shrink=0, errp=0x362f968) at util/aio-win32.c:413
> >         __func__ = "aio_context_set_poll_params"
> > #1  0x00000000005f7563 in iothread_complete (obj=0xc16a290,
> > errp=0x362fa50) at iothread.c:143
> >         local_error = 0x0
> >         iothread = 0xc16a290
> >         __func__ = "iothread_complete"
> >         name = 0xde8be9 <container_info+265> "user-creatable"
> >         thread_name = 0x400000000 <error: Cannot access memory at
> > address 0x400000000>
> > #2  0x0000000000831716 in user_creatable_complete (obj=0xc16a290,
> > errp=0x362fa50) at qom/object_interfaces.c:24
> >         ucc = 0x7fec650
> >         uc = 0xc16a290
> >         __func__ = "user_creatable_complete"
> > #3  0x000000000082cde1 in object_new_with_propv (typename=0xc4b14b
> > <__func__.56984+43> "iothread", parent=0xc169e50,
> >     id=0xc12494 <__emutls_t.iothread_locked+19167> "mon_iothread",
> > errp=0x14ae260 <error_abort>, vargs=0x362fb20 "")
> >     at qom/object.c:555
> >         obj = 0xc16a290
> >         klass = 0x7fec020
> >         local_err = 0x0
> >         __func__ = "object_new_with_propv"
> > #4  0x000000000082cc67 in object_new_with_props (typename=0xc4b14b
> > <__func__.56984+43> "iothread", parent=0xc169e50,
> >     id=0xc12494 <__emutls_t.iothread_locked+19167> "mon_iothread",
> > errp=0x14ae260 <error_abort>) at qom/object.c:516
> >         vargs = 0x362fb20 ""
> >         obj = 0xd34e26fdf887
> > #5  0x00000000005f7ced in iothread_create (id=0xc12494
> > <__emutls_t.iothread_locked+19167> "mon_iothread",
> > ---Type <return> to continue, or q <return> to quit---
> >     errp=0x14ae260 <error_abort>) at iothread.c:352
> >         obj = 0x45bef7 <sortcmdlist+137>
> >         __func__ = "iothread_create"
> > #6  0x000000000045bf53 in monitor_iothread_init () at
> > /home/hsp/src/qemu-master/monitor.c:4436
> > No locals.
> > #7  0x000000000045bfcb in monitor_init_globals () at
> > /home/hsp/src/qemu-master/monitor.c:4464
> > No locals.
> > #8  0x00000000006064d5 in qemu_main (argc=28, argv=0x5679620,
> > envp=0x0) at vl.c:4545
> >         i = 1
> >         snapshot = 0
> >         linux_boot = 0
> >         initrd_filename = 0x0
> >         kernel_filename = 0x0
> >         kernel_cmdline = 0xc4e286 <runstate_transitions_def+6918> ""
> >         boot_order = 0x57052c0 "d"
> >         boot_once = 0x0
> >         ds = 0x7ff94aced24c
> >         opts = 0x5705100
> >         machine_opts = 0x5705560
> >         icount_opts = 0x0
> >         accel_opts = 0x0
> >         olist = 0xa6e000 <qemu_machine_opts>
> >         optind = 28
> >         optarg = 0x56793dd "file=c:\\Mac-disks\\9.2.img,format=raw,media=disk"
> > ---Type <return> to continue, or q <return> to quit---
> >         loadvm = 0x0
> >         machine_class = 0x7fb28f0
> >         cpu_model = 0x0
> >         vga_model = 0x0
> >         qtest_chrdev = 0x0
> >         qtest_log = 0x0
> >         pid_file = 0x0
> >         incoming = 0x0
> >         userconfig = true
> >         nographic = false
> >         display_remote = 0
> >         log_mask = 0x0
> >         log_file = 0x0
> >         trace_file = 0x0
> >         maxram_size = 268435456
> >         ram_slots = 0
> >         vmstate_dump_file = 0x0
> >         main_loop_err = 0x0
> >         err = 0x0
> >         list_data_dirs = false
> >         dir = 0x8026a80 "c:\\qemu-master"
> >         dirs = 0x8026980
> >         bdo_queue = {sqh_first = 0x0, sqh_last = 0x362fda0}
> >         __func__ = "qemu_main"
> > ---Type <return> to continue, or q <return> to quit---
> > #9  0x00000000005fc507 in SDL_main (argc=28, argv=0x5679620) at vl.c:43
> > No locals.
> > #10 0x000000000096e4e8 in main_getcmdline ()
> > No symbol table info available.
> > #11 0x00000000004013f7 in __tmainCRTStartup () at ../crt/crtexe.c:334
> >         lock_free = <optimized out>
> >         fiberid = <optimized out>
> >         nested = <optimized out>
> >         lpszCommandLine = <optimized out>
> >         StartupInfo = {cb = 104, lpReserved = 0x5787680 "", lpDesktop
> > = 0x57881f0 "Winsta0\\Default",
> >           lpTitle = 0x578c000 "c:\\qemu-master\\qemu-system-ppc.exe",
> > dwX = 0, dwY = 0, dwXSize = 0, dwYSize = 0,
> >           dwXCountChars = 0, dwYCountChars = 0, dwFillAttribute = 0,
> > dwFlags = 0, wShowWindow = 0, cbReserved2 = 0,
> >           lpReserved2 = 0x0, hStdInput = 0xffffffffffffffff,
> > hStdOutput = 0xffffffffffffffff,
> >           hStdError = 0xffffffffffffffff}
> >         inDoubleQuote = <optimized out>
> > #12 0x00000000004014fb in WinMainCRTStartup () at ../crt/crtexe.c:184
> >         ret = 255
> > (gdb)
> > 
> > Finally ;-)
> 
> Great, thanks.  Peter, can you look at it?  I think we should:
> 
> 1) make aio_context_set_poll_params succeed in aio-win32.c if
> poll_max_ns is zero
> 
> 2) set IOTHREAD_POLL_MAX_NS_DEFAULT to zero on windows.

Thanks Paolo!

Hi, Howard,

Thanks for reporting the problem.  Could you try applying below patch
to your rc0 tree and rebuild QEMU, to see whether it fixes your problem?

-----------------------------
diff --git a/iothread.c b/iothread.c
index 1b3463cb00..9f52270ae1 100644
--- a/iothread.c
+++ b/iothread.c
@@ -31,11 +31,15 @@ typedef ObjectClass IOThreadClass;
 #define IOTHREAD_CLASS(klass) \
    OBJECT_CLASS_CHECK(IOThreadClass, klass, TYPE_IOTHREAD)
 
+#ifdef CONFIG_LINUX
 /* Benchmark results from 2016 on NVMe SSD drives show max polling times around
  * 16-32 microseconds yield IOPS improvements for both iodepth=1 and iodepth=32
  * workloads.
  */
 #define IOTHREAD_POLL_MAX_NS_DEFAULT 32768ULL
+#else
+#define IOTHREAD_POLL_MAX_NS_DEFAULT 0ULL
+#endif
 
 static __thread IOThread *my_iothread;
 
diff --git a/util/aio-win32.c b/util/aio-win32.c
index d6d5e02f00..a67b00c6ad 100644
--- a/util/aio-win32.c
+++ b/util/aio-win32.c
@@ -410,5 +410,7 @@ void aio_context_setup(AioContext *ctx)
 void aio_context_set_poll_params(AioContext *ctx, int64_t max_ns,
                                  int64_t grow, int64_t shrink, Error **errp)
 {
-    error_setg(errp, "AioContext polling is not implemented on Windows");
+    if (max_ns) {
+        error_setg(errp, "AioContext polling is not implemented on Windows");
+    }
 }
-----------------------------

Thanks,

-- 
Peter Xu

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-22  5:19                   ` Peter Xu
@ 2018-03-22  8:28                     ` Howard Spoelstra
  2018-03-22  8:52                       ` Peter Xu
  2018-03-22  9:14                     ` Paolo Bonzini
  1 sibling, 1 reply; 15+ messages in thread
From: Howard Spoelstra @ 2018-03-22  8:28 UTC (permalink / raw)
  To: Peter Xu; +Cc: Paolo Bonzini, qemu-devel qemu-devel

> Hi, Howard,
>
> Thanks for reporting the problem.  Could you try applying below patch
> to your rc0 tree and rebuild QEMU, to see whether it fixes your problem?
>
> -----------------------------
> diff --git a/iothread.c b/iothread.c
> index 1b3463cb00..9f52270ae1 100644
> --- a/iothread.c
> +++ b/iothread.c
> @@ -31,11 +31,15 @@ typedef ObjectClass IOThreadClass;
>  #define IOTHREAD_CLASS(klass) \
>     OBJECT_CLASS_CHECK(IOThreadClass, klass, TYPE_IOTHREAD)
>
> +#ifdef CONFIG_LINUX
>  /* Benchmark results from 2016 on NVMe SSD drives show max polling times around
>   * 16-32 microseconds yield IOPS improvements for both iodepth=1 and iodepth=32
>   * workloads.
>   */
>  #define IOTHREAD_POLL_MAX_NS_DEFAULT 32768ULL
> +#else
> +#define IOTHREAD_POLL_MAX_NS_DEFAULT 0ULL
> +#endif
>
>  static __thread IOThread *my_iothread;
>
> diff --git a/util/aio-win32.c b/util/aio-win32.c
> index d6d5e02f00..a67b00c6ad 100644
> --- a/util/aio-win32.c
> +++ b/util/aio-win32.c
> @@ -410,5 +410,7 @@ void aio_context_setup(AioContext *ctx)
>  void aio_context_set_poll_params(AioContext *ctx, int64_t max_ns,
>                                   int64_t grow, int64_t shrink, Error **errp)
>  {
> -    error_setg(errp, "AioContext polling is not implemented on Windows");
> +    if (max_ns) {
> +        error_setg(errp, "AioContext polling is not implemented on Windows");
> +    }
>  }
> -----------------------------
>
> Thanks,
>
> --
> Peter Xu

Hi Peter,

Thanks, that patch does indeed fix the problem.

Best,
Howard

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-22  8:28                     ` Howard Spoelstra
@ 2018-03-22  8:52                       ` Peter Xu
  0 siblings, 0 replies; 15+ messages in thread
From: Peter Xu @ 2018-03-22  8:52 UTC (permalink / raw)
  To: Howard Spoelstra; +Cc: Paolo Bonzini, qemu-devel qemu-devel

On Thu, Mar 22, 2018 at 09:28:34AM +0100, Howard Spoelstra wrote:
> > Hi, Howard,
> >
> > Thanks for reporting the problem.  Could you try applying below patch
> > to your rc0 tree and rebuild QEMU, to see whether it fixes your problem?
> >
> > -----------------------------
> > diff --git a/iothread.c b/iothread.c
> > index 1b3463cb00..9f52270ae1 100644
> > --- a/iothread.c
> > +++ b/iothread.c
> > @@ -31,11 +31,15 @@ typedef ObjectClass IOThreadClass;
> >  #define IOTHREAD_CLASS(klass) \
> >     OBJECT_CLASS_CHECK(IOThreadClass, klass, TYPE_IOTHREAD)
> >
> > +#ifdef CONFIG_LINUX
> >  /* Benchmark results from 2016 on NVMe SSD drives show max polling times around
> >   * 16-32 microseconds yield IOPS improvements for both iodepth=1 and iodepth=32
> >   * workloads.
> >   */
> >  #define IOTHREAD_POLL_MAX_NS_DEFAULT 32768ULL
> > +#else
> > +#define IOTHREAD_POLL_MAX_NS_DEFAULT 0ULL
> > +#endif
> >
> >  static __thread IOThread *my_iothread;
> >
> > diff --git a/util/aio-win32.c b/util/aio-win32.c
> > index d6d5e02f00..a67b00c6ad 100644
> > --- a/util/aio-win32.c
> > +++ b/util/aio-win32.c
> > @@ -410,5 +410,7 @@ void aio_context_setup(AioContext *ctx)
> >  void aio_context_set_poll_params(AioContext *ctx, int64_t max_ns,
> >                                   int64_t grow, int64_t shrink, Error **errp)
> >  {
> > -    error_setg(errp, "AioContext polling is not implemented on Windows");
> > +    if (max_ns) {
> > +        error_setg(errp, "AioContext polling is not implemented on Windows");
> > +    }
> >  }
> > -----------------------------
> >
> > Thanks,
> >
> > --
> > Peter Xu
> 
> Hi Peter,
> 
> Thanks, that patch does indeed fix the problem.

Thank you for testing that.  I'll post a formal patch soon.  Hopefully
it can reach rc1.

> 
> Best,
> Howard

-- 
Peter Xu

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-22  5:19                   ` Peter Xu
  2018-03-22  8:28                     ` Howard Spoelstra
@ 2018-03-22  9:14                     ` Paolo Bonzini
  2018-03-22 10:06                       ` Peter Xu
  1 sibling, 1 reply; 15+ messages in thread
From: Paolo Bonzini @ 2018-03-22  9:14 UTC (permalink / raw)
  To: Peter Xu; +Cc: qemu-devel qemu-devel, Howard Spoelstra

On 22/03/2018 06:19, Peter Xu wrote:
> +#ifdef CONFIG_LINUX
>  /* Benchmark results from 2016 on NVMe SSD drives show max polling times around
>   * 16-32 microseconds yield IOPS improvements for both iodepth=1 and iodepth=32
>   * workloads.
>   */
>  #define IOTHREAD_POLL_MAX_NS_DEFAULT 32768ULL

POSIX, not Linux. :)   I'll fix it myself.

Paolo

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe
  2018-03-22  9:14                     ` Paolo Bonzini
@ 2018-03-22 10:06                       ` Peter Xu
  0 siblings, 0 replies; 15+ messages in thread
From: Peter Xu @ 2018-03-22 10:06 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-devel qemu-devel, Howard Spoelstra

On Thu, Mar 22, 2018 at 10:14:19AM +0100, Paolo Bonzini wrote:
> On 22/03/2018 06:19, Peter Xu wrote:
> > +#ifdef CONFIG_LINUX
> >  /* Benchmark results from 2016 on NVMe SSD drives show max polling times around
> >   * 16-32 microseconds yield IOPS improvements for both iodepth=1 and iodepth=32
> >   * workloads.
> >   */
> >  #define IOTHREAD_POLL_MAX_NS_DEFAULT 32768ULL
> 
> POSIX, not Linux. :)   I'll fix it myself.

Oops... Thanks. :)

-- 
Peter Xu

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2018-03-22 10:06 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-20 17:11 [Qemu-devel] Bug AioContext polling is not implemented on Windows with qemu-system-ppc.exe Howard Spoelstra
2018-03-21 11:07 ` Paolo Bonzini
2018-03-21 13:13   ` Howard Spoelstra
2018-03-21 13:22     ` Paolo Bonzini
2018-03-21 13:29       ` Howard Spoelstra
2018-03-21 15:27         ` Paolo Bonzini
2018-03-21 16:23           ` Howard Spoelstra
2018-03-21 16:25             ` Paolo Bonzini
2018-03-21 16:31               ` Howard Spoelstra
2018-03-21 16:37                 ` Paolo Bonzini
2018-03-22  5:19                   ` Peter Xu
2018-03-22  8:28                     ` Howard Spoelstra
2018-03-22  8:52                       ` Peter Xu
2018-03-22  9:14                     ` Paolo Bonzini
2018-03-22 10:06                       ` Peter Xu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.