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

Re: [Xen-devel] [PATCH] fix free of event channel in blkfront



Hi Steven,

We tested the xm block-attach/detach command.
It repeats block-attach/detach command for DomU and pv-on-hvm on HVM Domain.
(block-attach -> block-detach -> block-attach -> block-detach -> ...)

The block-attach command failed when repeating 256 times.

I can't reproduce this - just tested 500 or so attach/detach pairs in
a tight loop and worked for me. However I was using a regular domU -
is it pv-on-hvm only? Can you give a more detailed repro case (or a
script)?

We tested only pv-on-hvm.
The script used when testing is appended.

Sorry, the appended script was for network.
It tested in the following scripts.

-------------------------------------------------
#!/bin/sh
DomainID=25
DevID=8448
Count=0

while :
do
echo "##### block-attach ##### $Count"
xm block-attach $DomainID phy:/dev/sdc1 hde w
sleep 1
xm block-list $DomainID
sleep 1
echo "##### block-detach #####"
xm block-detach $DomainID $DevID
Count=`expr $Count + 1`
#DevID=`expr $DevID + 1`
sleep 1
xm block-list $DomainID
sleep 1
done
exit 0
-------------------------------------------------


We will confirm it again with latest xen-unstable.hg.

I confirmed it with up-to-date xen-unstable.hg. (cs 13282)

It did not reproduce it in DomU.
Because VBD was not able to be used, pv-on-hvm was not able to confirm it.
The following errors occur.

# insmod xen-vbd.ko
xen-vbd: Unknown symbol irq_to_evtchn_port
insmod: error inserting 'xen-vbd.ko': -1 Unknown symbol in module


When reproducing it with pv-on-hvm, evtchn had not been liberated as follows.

# xm block-attach <DomID> file:/test.img hde w
# xm block-list <DomID>
Vdev  BE handle state evt-ch ring-ref BE-path
2049    0    0     4      6      8    /local/domain/0/backend/vbd/6/2049
8448    0    0     4      7      306  /local/domain/0/backend/vbd/6/8448
# xm block-detach <DomID> 8448
# xm block-list <DomID>
Vdev  BE handle state evt-ch ring-ref BE-path
2049    0    0     4      6      8    /local/domain/0/backend/vbd/6/2049
# xm block-attach <DomID> file:/test.img hde w
# xm block-list <DomID>
Vdev  BE handle state evt-ch ring-ref BE-path
2049    0    0     4      6      8    /local/domain/0/backend/vbd/6/2049
8448    0    0     4      8      306  /local/domain/0/backend/vbd/6/8448
                        ^^^<= not 7

If the evtchn number is liberated, it is sure to become the same number.
The evtchn number keeps increase if it repeats.
I will confirm whether to be liberated as follows and correctly.

・xen-unstable.hg : cs 13192
Revert cset 13181:f087c013cf12 since the event channel is already unbound via
       blkif_free() -> unbind_from_irqhandler() -> unbind_from_irq()


Thanks,

--
Takanori Kasai


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.