From: Zhenzhong Duan <zhenzhong.duan@oracle.com>
To: Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: Konrad Rzeszutek Wilk <konrad@kernel.org>,
Dan Magenheimer <dan.magenheimer@oracle.com>,
xen-devel <xen-devel@lists.xen.org>,
Feng Jin <joe.jin@oracle.com>,
Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Subject: Re: Is: Contention in block script when doing guest saving. Was:Re: an issue with 'xm save'
Date: Fri, 28 Sep 2012 22:46:03 +0800 [thread overview]
Message-ID: <5065B82B.8080003@oracle.com> (raw)
In-Reply-To: <20581.45245.846208.289785@mariner.uk.xensource.com>
[-- Attachment #1: Type: text/plain, Size: 1170 bytes --]
On 2012-09-28 22:14, Ian Jackson wrote:
> Konrad Rzeszutek Wilk writes ("Is: Contention in block script when doing guest saving. Was:Re: [Xen-devel] an issue with 'xm save'"):
>> On Fri, Sep 28, 2012 at 06:34:51PM +0800, Zhenzhong Duan wrote:
>>> After replace locking.sh with OVM's, it worked.
>>> But xen-tools evolved to use flock based locking currently. We can't
>>> revert back.
>>> It seems changeset 25595:497e2fe49455 bring the issue.
>>> Finally, I came with a small patch that workaround the issue.
>> Ian, any thoughts on how this can be fixed properly? The locking
>> is quite heavy and causes two scripts that do deal with blocks
>> to spin for a long time.
> The algorithm is not supposed to spin. If it spins there is a bug, I
> think.
>
> Can you show me a transcript of the spinning happening with "set -x"
> in force ?
Hi Ian,
Attachment is part of xen-hotplug.log that will show the spin.
Original file is nearly 7G big. I fetch first 1000 lines.
Below is steps I did:
1. delete xen-hotplug.log
2. reboot dom0
3. add "set -x" to head of block script.
4.create first PV guest
5. save guest
6. get first 1000 lines from xen-hotplug.log
thanks
zduan
[-- Attachment #2: xen-hotplug.log --]
[-- Type: text/plain, Size: 32861 bytes --]
[root@zhenzhong1 tmp]# head -n 1000 /var/log/xen/xen-hotplug.log
+++ export PATH=/usr/bin:/usr/sbin:/usr/lib/xen/bin:/usr/lib/xen/bin:/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/bin:/usr/bin
+++ PATH=/usr/bin:/usr/sbin:/usr/lib/xen/bin:/usr/lib/xen/bin:/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/bin:/usr/bin
+++ export LANG=POSIX
+++ LANG=POSIX
++++ set
++++ grep '^LC_'
++++ cut -d= -f1
+++ unset
+++ trap sigerr ERR
+++ log debug add XENBUS_PATH=backend/vbd/1/51712
+++ local level=debug
+++ shift
+++ logger -p daemon.debug -- /etc/xen/scripts/block: add XENBUS_PATH=backend/vbd/1/51712
++ findCommand add
++ for arg in '"$@"'
++ expr index add =
++ command=add
++ return
++ '[' add '!=' add ']'
++ XENBUS_PATH=backend/vbd/1/51712
++ xenstore_read_default backend/vbd/1/51712/type MISSING
++ xenstore-read backend/vbd/1/51712/type
+ t=file
+ case "$command" in
++ xenstore_read_default backend/vbd/1/51712/physical-device MISSING
++ xenstore-read backend/vbd/1/51712/physical-device
++ echo MISSING
+ phys=MISSING
+ '[' MISSING '!=' MISSING ']'
+ '[' -n file ']'
++ xenstore_read backend/vbd/1/51712/params
+++ xenstore-read backend/vbd/1/51712/params
++ local v=/mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
++ '[' /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img '!=' '' ']'
++ echo /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
+ p=/mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
++ xenstore_read backend/vbd/1/51712/mode
+++ xenstore-read backend/vbd/1/51712/mode
++ local v=w
++ '[' w '!=' '' ']'
++ echo w
+ mode=w
++ xenstore_read backend/vbd/1/51712/frontend-id
+++ xenstore-read backend/vbd/1/51712/frontend-id
++ local v=1
++ '[' 1 '!=' '' ']'
++ echo 1
+ FRONTEND_ID=1
++ xenstore_read_default /local/domain/1/vm unknown
++ xenstore-read /local/domain/1/vm
+ FRONTEND_UUID=/vm/cc02077f-d327-cdf2-4876-91bb7ece8cc8
+ case $t in
++ readlink -f /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
+ file=/mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
+ test -f /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
++ canonicalise_mode w
++ local mode=w
++ expr index w w
++ expr index w '!'
++ echo w
+ mode=w
+ claim_lock block
+ mkdir -p /var/run/xen-hotplug
+ _setlockfd block
+ local i
+ (( i = 0 ))
+ (( i < 0 ))
+ _lockdict[$i]=block
+ let _lockfd=200+i
+ _lockfile=/var/run/xen-hotplug/block
+ local rightfile
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=y
+ '[' xy = xy ']'
+ break
++ xenstore_read_default backend/vbd/1/51712/state unknown
++ xenstore-read backend/vbd/1/51712/state
+ xenbus_state=2
+ '[' 2 '!=' 2 ']'
+ '[' w = w ']'
+ stat /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img -c %A
+ grep -q w
+ '[' xw '!=' 'x!' ']'
++ stat -c %i /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
+ inode=835587
++ stat -c %D /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
+ dev=806
+ '[' -z 835587 ']'
+ '[' -z 806 ']'
++ losetup -a
++ sed -n -e 's@^\([^:]\+\)\(:[[:blank:]]\[0*806\]:835587[[:blank:]](.*)\)@\1@p'
+ shared_list=
++ losetup -f
+ loopdev=/dev/loop0
+ '[' /dev/loop0 = '' ']'
+ LANG=C
+ losetup -h
+ grep read-only
+ roflag=-w
+ roflag=
+ roflag=
+ do_or_die losetup /dev/loop0 /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
+ losetup /dev/loop0 /mnt/sda6/OVM_OL5U7_X86_64_PVM_10GB/System.img
+ xenstore_write backend/vbd/1/51712/node /dev/loop0
+ _xenstore_write backend/vbd/1/51712/node /dev/loop0
+ log debug 'Writing backend/vbd/1/51712/node' '/dev/loop0 to xenstore.'
+ local level=debug
+ shift
+ logger -p daemon.debug -- /etc/xen/scripts/block: 'Writing backend/vbd/1/51712/node' '/dev/loop0 to xenstore.'
+ xenstore-write backend/vbd/1/51712/node /dev/loop0
+ write_dev /dev/loop0
+ local mm
++ device_major_minor /dev/loop0
++ stat -L -c %t:%T /dev/loop0
+ mm=7:0
+ '[' -z 7:0 ']'
+ xenstore_write backend/vbd/1/51712/physical-device 7:0
+ _xenstore_write backend/vbd/1/51712/physical-device 7:0
+ log debug 'Writing backend/vbd/1/51712/physical-device' '7:0 to xenstore.'
+ local level=debug
+ shift
+ logger -p daemon.debug -- /etc/xen/scripts/block: 'Writing backend/vbd/1/51712/physical-device' '7:0 to xenstore.'
+ xenstore-write backend/vbd/1/51712/physical-device 7:0
+ success
+ xenstore_write backend/vbd/1/51712/hotplug-status connected
+ _xenstore_write backend/vbd/1/51712/hotplug-status connected
+ log debug 'Writing backend/vbd/1/51712/hotplug-status' 'connected to xenstore.'
+ local level=debug
+ shift
+ logger -p daemon.debug -- /etc/xen/scripts/block: 'Writing backend/vbd/1/51712/hotplug-status' 'connected to xenstore.'
+ xenstore-write backend/vbd/1/51712/hotplug-status connected
+ release_lock block
+ _setlockfd block
+ local i
+ (( i = 0 ))
+ (( i < 5 ))
+ '[' -z block -o block = block ']'
+ break
+ _lockdict[$i]=block
+ let _lockfd=200+i
+ _lockfile=/var/run/xen-hotplug/block
+ rm /var/run/xen-hotplug/block
+ exit 0
+++ export PATH=/usr/bin:/usr/sbin:/usr/lib/xen/bin:/usr/lib/xen/bin:/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/bin:/usr/bin
+++ PATH=/usr/bin:/usr/sbin:/usr/lib/xen/bin:/usr/lib/xen/bin:/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/bin:/usr/bin
+++ export LANG=POSIX
+++ LANG=POSIX
++++ cut -d= -f1
++++ grep '^LC_'
++++ set
+++ unset
+++ trap sigerr ERR
+++ log debug remove XENBUS_PATH=backend/vbd/1/51712
+++ local level=debug
+++ shift
+++ logger -p daemon.debug -- /etc/xen/scripts/block: remove XENBUS_PATH=backend/vbd/1/51712
++ findCommand remove
++ for arg in '"$@"'
++ expr index remove =
++ command=remove
++ return
++ '[' remove '!=' add ']'
++ '[' remove '!=' remove ']'
++ XENBUS_PATH=backend/vbd/1/51712
++ xenstore_read_default backend/vbd/1/51712/type MISSING
++ xenstore-read backend/vbd/1/51712/type
+ t=file
+ case "$command" in
+ case $t in
+ claim_lock block
+ mkdir -p /var/run/xen-hotplug
+ _setlockfd block
+ local i
+ (( i = 0 ))
+ (( i < 0 ))
+ _lockdict[$i]=block
+ let _lockfd=200+i
+ _lockfile=/var/run/xen-hotplug/block
+ local rightfile
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
print "y\n" if $fd_inum eq $file_inum;
' /var/run/xen-hotplug/block
+ rightfile=
+ '[' x = xy ']'
+ true
+ eval 'exec 200>>/var/run/xen-hotplug/block'
++ exec
+ flock -x 200
++ perl -e '
open STDIN, "<&200" or die $!;
my $fd_inum = (stat STDIN)[1]; die $! unless defined $fd_inum;
my $file_inum = (stat $ARGV[0])[1];
[root@zhenzhong1 tmp]#
[-- Attachment #3: Type: text/plain, Size: 126 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
next prev parent reply other threads:[~2012-09-28 14:46 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-21 9:41 an issue with 'xm save' Zhenzhong Duan
2012-09-21 14:34 ` Konrad Rzeszutek Wilk
2012-09-26 8:48 ` Zhenzhong Duan
2012-09-26 12:35 ` Konrad Rzeszutek Wilk
2012-09-27 5:58 ` Zhenzhong Duan
2012-09-27 11:59 ` Konrad Rzeszutek Wilk
2012-09-28 10:34 ` Zhenzhong Duan
2012-09-28 14:01 ` Is: Contention in block script when doing guest saving. Was:Re: " Konrad Rzeszutek Wilk
2012-09-28 14:14 ` Ian Jackson
2012-09-28 14:46 ` Zhenzhong Duan [this message]
2012-10-02 14:59 ` Ian Jackson
2012-10-09 8:53 ` DuanZhenzhong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5065B82B.8080003@oracle.com \
--to=zhenzhong.duan@oracle.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=dan.magenheimer@oracle.com \
--cc=joe.jin@oracle.com \
--cc=konrad.wilk@oracle.com \
--cc=konrad@kernel.org \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.