Skip to contentSkip to conversation

windows PIO question

DISCUSSION Nikola Ciprich 2 participants 5 messages Feb 2, 2012 – Feb 7, 2012 KVM

lore
Share & tools
lore
#0 lore raw

Hello everybody,

I'm a bit confused regarding windows guests and PIO.. some time ago, I was trying to find out, why one of my windows guests was running terribly slow. After checking the trace-cmd output, Avi stated that windows were using PIO instead of DMA, after changing that, windows indeed got a lot faster. I didn't check traces
after that, but I'm now testing host with two windows 2003 guests, and checking the
trac-cmd output, I see a lot of kvm_pio calls.
While windows don't seem to be running particularly slow, they're not especially fast either, and I'm wandering whether this could be related. But checking IDE bus in guests, they seem to be using DMA which confuses me...
so my questions is, what are the kvm_pio operations I see in traces, and how can I tell what is OK and what is wrong, regarding disks DMA/PIO?
If somebody could shed some light on this for me, I'd be very grateful...

Thanks a lot in advance

with best regards

nikola ciprich

Signature · 14 lines
-------------------------------------
Ing. Nikola CIPRICH
LinuxBox.cz, s.r.o.
28. rijna 168, 709 01 Ostrava

tel.:   +420 596 603 142
fax:    +420 596 621 273
mobil:  +420 777 093 799

www.linuxbox.cz

mobil servis: +420 737 238 656
email servis: [email protected]
-------------------------------------
#1 lore raw
Quoted 14 lines · Nikola Ciprich

Hello everybody,

I'm a bit confused regarding windows guests and PIO.. some time ago, I was trying to find out, why one of my windows guests was running terribly slow. After checking the trace-cmd output, Avi stated that windows were using PIO instead of DMA, after changing that, windows indeed got a lot faster. I didn't check traces
after that, but I'm now testing host with two windows 2003 guests, and checking the
trac-cmd output, I see a lot of kvm_pio calls.
While windows don't seem to be running particularly slow, they're not especially fast either, and I'm wandering whether this could be related. But checking IDE bus in guests, they seem to be using DMA which confuses me...
so my questions is, what are the kvm_pio operations I see in traces, and how can I tell what is OK and what is wrong, regarding disks DMA/PIO?
If somebody could shed some light on this for me, I'd be very grateful...

Not all PIO operations are DMA. Provide a trace and we can look.

Signature · 1 line
error compiling committee.c: too many arguments to function
#2 lore raw
Quoted 1 line

Not all PIO operations are DMA. Provide a trace and we can look.

Hi,
here's snippet:

        qemu-kvm-16441 [000] 12887154.698329: kvm_pio:              pio_read at 0xc002 size 1 count 1
        qemu-kvm-16441 [000] 12887154.698331: kvm_userspace_exit:   reason KVM_EXIT_IO (2)
        qemu-kvm-16441 [000] 12887154.698331: kvm_fpu:              unload
        qemu-kvm-16441 [000] 12887154.698337: kvm_entry:            vcpu 1
        qemu-kvm-16441 [000] 12887154.698338: kvm_exit:             [FAILED TO PARSE] exit_reason=30 guest_rip=0xfffff88000dabca3 isa=1 info1=3221356552 info2=0
        qemu-kvm-16441 [000] 12887154.698339: kvm_emulate_insn:     [FAILED TO PARSE] rip=18446735827386678435 csbase=0 len=1 insn=<EC><C3><CC><CC><CC><CC><CC><CC><CC>^O<B7><D1>f<ED><C3>       flags=9 failed=0
        qemu-kvm-16441 [000] 12887154.698340: kvm_pio:              pio_read at 0xc002 size 1 count 1
        qemu-kvm-16441 [000] 12887154.698340: kvm_userspace_exit:   reason KVM_EXIT_IO (2)
        qemu-kvm-16441 [000] 12887154.698343: kvm_entry:            vcpu 1
        qemu-kvm-16441 [000] 12887154.698344: kvm_exit:             [FAILED TO PARSE] exit_reason=30 guest_rip=0xfffff88000dabdbd isa=1 info1=3221225472 info2=0
        qemu-kvm-16441 [000] 12887154.698345: kvm_pio:              pio_write at 0xc000 size 1 count 1
        qemu-kvm-16441 [000] 12887154.698346: kvm_userspace_exit:   reason KVM_EXIT_IO (2)
        qemu-kvm-16441 [000] 12887154.698348: kvm_entry:            vcpu 1
        qemu-kvm-16441 [000] 12887154.698349: kvm_exit:             [FAILED TO PARSE] exit_reason=30 guest_rip=0xfffff88000dabdbd isa=1 info1=3221356544 info2=0
        qemu-kvm-16441 [000] 12887154.698349: kvm_pio:              pio_write at 0xc002 size 1 count 1
        qemu-kvm-16441 [000] 12887154.698350: kvm_userspace_exit:   reason KVM_EXIT_IO (2)
        qemu-kvm-16441 [000] 12887154.698352: kvm_entry:            vcpu 1
        qemu-kvm-16441 [000] 12887154.698353: kvm_exit:             [FAILED TO PARSE] exit_reason=30 guest_rip=0xfffff88000dabca3 isa=1 info1=32964616 info2=0
        qemu-kvm-16441 [000] 12887154.698354: kvm_emulate_insn:     [FAILED TO PARSE] rip=18446735827386678435 csbase=0 len=1 insn=<EC><C3><CC><CC><CC><CC><CC><CC><CC>^O<B7><D1>f<ED><C3>       flags=9 failed=0
        qemu-kvm-16441 [000] 12887154.698354: kvm_pio:              pio_read at 0x1f7 size 1 count 1
        qemu-kvm-16441 [000] 12887154.698355: kvm_userspace_exit:   reason KVM_EXIT_IO (2)
        qemu-kvm-16441 [000] 12887154.698357: kvm_set_irq:          gsi 14 level 0 source 0
        qemu-kvm-16441 [000] 12887154.698358: kvm_pic_set_irq:      chip 1 pin 6 (edge|masked)
        qemu-kvm-16441 [000] 12887154.698358: kvm_ioapic_set_irq:   pin 14 dst 3 vec=97 (LowPrio|logical|edge)
        qemu-kvm-16441 [000] 12887154.698360: kvm_entry:            vcpu 1
        qemu-kvm-16441 [000] 12887154.698362: kvm_exit:             [FAILED TO PARSE] exit_reason=30 guest_rip=0xfffff88000dabca3 isa=1 info1=32964616 info2=0
        qemu-kvm-16441 [000] 12887154.698363: kvm_emulate_insn:     [FAILED TO PARSE] rip=18446735827386678435 csbase=0 len=1 insn=<EC><C3><CC><CC><CC><CC><CC><CC><CC>^O<B7><D1>f<ED><C3>       flags=9 failed=0
        qemu-kvm-16441 [000] 12887154.698363: kvm_pio:              pio_read at 0x1f7 size 1 count 1

n.

Quoted 4 lines
Signature · 2 lines
-- 
error compiling committee.c: too many arguments to function
Signature · 14 lines
-------------------------------------
Ing. Nikola CIPRICH
LinuxBox.cz, s.r.o.
28. rijna 168, 709 01 Ostrava

tel.:   +420 596 603 142
fax:    +420 596 621 273
mobil:  +420 777 093 799

www.linuxbox.cz

mobil servis: +420 737 238 656
email servis: [email protected]
-------------------------------------
#3 lore raw
Quoted 5 lines · Nikola Ciprich
Quoted 1 line

Not all PIO operations are DMA. Provide a trace and we can look.

Hi,
here's snippet:

Quoted 8 lines
        qemu-kvm-16441 [000] 12887154.698329: kvm_pio:              pio_read at 0xc002 size 1 count 1
        qemu-kvm-16441 [000] 12887154.698331: kvm_userspace_exit:   reason KVM_EXIT_IO (2)
        qemu-kvm-16441 [000] 12887154.698331: kvm_fpu:              unload
        qemu-kvm-16441 [000] 12887154.698337: kvm_entry:            vcpu 1
        qemu-kvm-16441 [000] 12887154.698338: kvm_exit:             [FAILED TO PARSE] exit_reason=30 guest_rip=0xfffff88000dabca3 isa=1 info1=3221356552 info2=0
        qemu-kvm-16441 [000] 12887154.698339: kvm_emulate_insn:     [FAILED TO PARSE] rip=18446735827386678435 csbase=0 len=1 insn=<EC><C3><CC><CC><CC><CC><CC><CC><CC>^O<B7><D1>f<ED><C3>       flags=9 failed=0
        qemu-kvm-16441 [000] 12887154.698340: kvm_pio:              pio_read at 0xc002 size 1 count 1

That's virtio, not IDE.

Signature · 1 line
error compiling committee.c: too many arguments to function
#4 lore raw
Quoted 1 line

That's virtio, not IDE.

well, this seems a bit strange to me, the only virtio device I can see is balloon dev, can this be it?

how can I find out which operations are IDE PIO etc? sorry for asking silly questions, but I couldn't find this anywhere in the documentation...

thanks in advance

nik

Quoted 9 lines
Signature · 7 lines
-- 
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Signature · 13 lines
-------------------------------------
Ing. Nikola CIPRICH
LinuxBox.cz, s.r.o.
28. rijna 168, 709 01 Ostrava

tel.:   +420 596 603 142
fax:    +420 596 621 273
mobil:  +420 777 093 799
www.linuxbox.cz

mobil servis: +420 737 238 656
email servis: [email protected]
-------------------------------------