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

Re: [Xen-devel] [PATCH] qemu-xen-3.4-testing: Fix read-only image file handling



On Mon, Jun 07, 2010 at 03:14:40PM +0200, Michal Novotny wrote:
> On 06/07/2010 03:10 PM, Michal Novotny wrote:
>> On 06/07/2010 01:45 PM, Pasi Kärkkäinen wrote:
>>> On Mon, Jun 07, 2010 at 01:21:21PM +0200, Michal Novotny wrote:
>>>> Well, I'm still having some tools issues, mainly:
>>>>
>>>> Error: (111, 'Connection refused')
>>>>
>>>> Any guess what may be going wrong? Booted grub entry:
>>>>
>>>> title Red Hat Enterprise Linux Server (2.6.31.13-xen HV, nolog)
>>>>          root (hd1,6)
>>>>          kernel /xen-4.1-unstable.gz
>>>>          module /vmlinuz-2.6.31.13 ro root=LABEL=/rhel2 rhgb quiet  
>>>> selinux=0
>>>>          module /initrd-2.6.31.13.img
>>>>
>>>> Mount is having `xenfs on /proc/xen type xenfs (rw)`. Any guess 
>>>> what may
>>>> be going wrong?
>>>>
>>>
>>> Do you have xen-evtchn driver loaded?
>>>
>>>
>>> -- Pasi
>>>
>>
>> Well, no, and doesn't seem to be installed/probed:
>>
>> # modprobe xen-evtchn
>> # lsmod | grep xen-evtchn
>> #
>>
>> So there's the problem :(
>>
>> Michal
>
> Oh, I'm taking this back since I found out the module is not xen-evtchn  
> but xen_evtchn. So yeah, I'm having it loaded in the memory now.  
> However, when I do `service xend restart` the same error is here:
>
> [2010-06-07 17:14:09 5635] INFO (SrvDaemon:227) Xend stopped due to  
> signal 15.
> [2010-06-07 17:14:09 6295] INFO (SrvDaemon:332) Xend Daemon started
> [2010-06-07 17:14:09 6295] INFO (SrvDaemon:336) Xend changeset: Thu May  
> 20 17:22:15 2010 +0100 21442:a7fcf2e35d32.
> [2010-06-07 17:14:09 6295] DEBUG (tcp:96) Listening on :8002
> [2010-06-07 17:14:09 6295] INFO (XendNetwork:114) Not recreating missing  
> unmanaged network eth0
> [2010-06-07 17:14:09 6295] INFO (XendNetwork:114) Not recreating missing  
> unmanaged network eth2
> [2010-06-07 17:14:09 6295] INFO (XendNetwork:114) Not recreating missing  
> unmanaged network br0
> [2010-06-07 17:14:09 6295] INFO (XendNetwork:114) Not recreating missing  
> unmanaged network xenbr0
> [2010-06-07 17:14:10 6295] DEBUG (XendCPUPool:747) recreate_active_pools
> [2010-06-07 17:14:10 6295] ERROR (SrvDaemon:349) Exception starting xend  
> ((111, 'Connection refused'))
> Traceback (most recent call last):
>   File  
> "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvDaemon.py", line  
> 341, in run
>     servers = SrvServer.create()
>   File  
> "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvServer.py", line  
> 258, in create
>     root.putChild('xend', SrvRoot())
>   File "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvRoot.py",  
> line 40, in __init__
>     self.get(name)
>   File "/usr/lib64/python2.4/site-packages/xen/web/SrvDir.py", line 84,  
> in get
>     val = val.getobj()
>   File "/usr/lib64/python2.4/site-packages/xen/web/SrvDir.py", line 52,  
> in getobj
>     self.obj = klassobj()
>   File "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvNode.py",  
> line 30, in __init__
>     self.xn = XendNode.instance()
>   File "/usr/lib64/python2.4/site-packages/xen/xend/XendNode.py", line  
> 1176, in instance
>     inst = XendNode()
>   File "/usr/lib64/python2.4/site-packages/xen/xend/XendNode.py", line  
> 163, in __init__
>     self._init_cpu_pools()
>   File "/usr/lib64/python2.4/site-packages/xen/xend/XendNode.py", line  
> 377, in _init_cpu_pools
>     XendCPUPool.recreate_active_pools()
>   File "/usr/lib64/python2.4/site-packages/xen/xend/XendCPUPool.py",  
> line 754, in recreate_active_pools
>     uuid = xstransact.Read(path, 'uuid')
>   File  
> "/usr/lib64/python2.4/site-packages/xen/xend/xenstore/xstransact.py",  
> line 307, in Read
>     return complete(path, lambda t: t.read(*args))
>   File  
> "/usr/lib64/python2.4/site-packages/xen/xend/xenstore/xstransact.py",  
> line 361, in complete
>     t = xstransact(path)
>   File  
> "/usr/lib64/python2.4/site-packages/xen/xend/xenstore/xstransact.py",  
> line 29, in __init__
>     self.transaction = xshandle().transaction_start()
>   File "/usr/lib64/python2.4/site-packages/xen/xend/xenstore/xsutil.py", 
> line 18, in xshandle
>     xs_handle = xen.lowlevel.xs.xs()
> Error: (111, 'Connection refused')
>
> Any ideas?
>

Is xenstore running? 

Are there files in /proc/xen ? 

-- Pasi

> Michal
>
>>
>>>> Thanks,
>>>> Michal
>>>>
>>>> On 06/04/2010 12:42 PM, Pasi Kärkkäinen wrote:
>>>>> On Fri, Jun 04, 2010 at 11:37:51AM +0200, Michal Novotny wrote:
>>>>>
>>>>>> Oh, one more thing I've discovered now. Since the codebase for
>>>>>> qemu-xen-unstable is looking the same like for  
>>>>>> qemu-xen-3.4-testing and
>>>>>> the patch is applicable without any modifications it could be working
>>>>>> for xen-4.1 unstable as well, unfortunately I was not able to 
>>>>>> boot PVOPS
>>>>>> kernel since it always ends up in kernel panic, maybe the missing
>>>>>> drivers or something like that.
>>>>>>
>>>>>>
>>>>> What kernel version? Did you use xen/stable-2.6.32.x branch from  
>>>>> xen.git?
>>>>>
>>>>> See my example .config files from:
>>>>> http://wiki.xensource.com/xenwiki/XenParavirtOps in the  
>>>>> "troubleshooting" section.
>>>>>
>>>>> Works on F12/F13 dom0's.
>>>>>
>>>>> For el5 dom0 you might need these:
>>>>> http://wiki.xensource.com/xenwiki/2.6.18-to-2.6.31-and-higher
>>>>>
>>>>> aka
>>>>> CONFIG_SYSFS_DEPRECATED=y
>>>>> CONFIG_SYSFS_DEPRECATED_V2=y
>>>>>
>>>>> Also atm I think you need CONFIG_XEN_XENBUS_FRONTEND=y in the .config
>>>>> because of the recently added pv-on-hvm drivers (you'll get build 
>>>>> failure without that option),
>>>>> so you need XEN_PCIDEV_FRONTEND XEN_BLKDEV_FRONTEND or  
>>>>> XEN_NETDEV_FRONTEND or XEN_FBDEV_FRONTEND needs to be =y.
>>>>>
>>>>> -- Pasi
>>>>>
>>>>>
>>>>>
>>>>>> On 06/03/2010 04:12 PM, Michal Novotny wrote:
>>>>>>
>>>>>>> Oh, just one more thing that should be mentioned:
>>>>>>>
>>>>>>> When you want to mount an image that is set as read-only in 
>>>>>>> the domain
>>>>>>> configuration file but you omit to set mode to read-only it results
>>>>>>> into I/O errors when processing the requests. Remounting as  
>>>>>>> read-only
>>>>>>> or unmounting and remounting using the `mount /dev/*  
>>>>>>> /path/to/mount -o
>>>>>>> ro` shall do the mounting the correct way, i.e. with no I/O  
>>>>>>> errors, so
>>>>>>> make sure you mount those disks as read-only otherwise you can be
>>>>>>> getting errors like:
>>>>>>>
>>>>>>> end_request: I/O error, dev hdb, sector 52
>>>>>>>
>>>>>>> Buffer I/O error on device hdb1, logical block 1
>>>>>>>
>>>>>>> lost page write due to I/O error on hdb1
>>>>>>>
>>>>>>>
>>>>>>> and for IDE devices you'll be getting several additional DeviceFault
>>>>>>> errors since mounting the device read-write (default setting) writes
>>>>>>> some data onto a disk at the mount-time.
>>>>>>>
>>>>>>> Michal
>>>>>>>
>>>>>>> On 06/03/2010 04:04 PM, Michal Novotny wrote:
>>>>>>>
>>>>>>>> [Well, I did send an e-mail to the list using git but it's not here
>>>>>>>> so I'm forwarding the e-mail to the list for sure:]
>>>>>>>>
>>>>>>>> Hi,
>>>>>>>> this is the patch for qemu-xen-3.4-testing to fix the read-only
>>>>>>>> image file handling since the image file was always treated as
>>>>>>>> read-write which means that all the HVM guests were able to
>>>>>>>> write to all the disk images available in domain configuration
>>>>>>>> file no matter what the mode of the image was defined. This
>>>>>>>> patch fixes this functionality to honor the O_RDONLY in the
>>>>>>>> BDRV_O_ACCESS flag in block.c and also fixes the IDE and SCSI
>>>>>>>> interfaces that uses it.
>>>>>>>>
>>>>>>>> It's been tested on RHEL-5 with xen-3.4-testing version of
>>>>>>>> upstream xen with xen-3.4-testing qemu implementation.
>>>>>>>>
>>>>>>>> For SCSI devices the DATA PROTECT request sense has been added
>>>>>>>> as found at:  
>>>>>>>> http://en.wikipedia.org/wiki/SCSI_Request_Sense_Command
>>>>>>>>
>>>>>>>> file no matter what the mode of the image was defined. This
>>>>>>>> patch fixes this functionality to honor the O_RDONLY in the
>>>>>>>> BDRV_O_ACCESS flag in block.c and also fixes the IDE and SCSI
>>>>>>>> interfaces that uses it.
>>>>>>>>
>>>>>>>> It's been tested on RHEL-5 with xen-3.4-testing version of
>>>>>>>> Michal
>>>>>>>>
>>>>>>>> Signed-off-by: Michal Novotny<minovotn@xxxxxxxxxx>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Xen-devel mailing list
>>>>>>>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>>>>>>>> http://lists.xensource.com/xen-devel
>>>>>>>>
>>>>>>>
>>>>>> -- 
>>>>>> Michal Novotny<minovotn@xxxxxxxxxx>, RHCE
>>>>>> Virtualization Team (xen userspace), Red Hat
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Xen-devel mailing list
>>>>>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>>>>>> http://lists.xensource.com/xen-devel
>>>>>>
>>>>
>>>> -- 
>>>> Michal Novotny<minovotn@xxxxxxxxxx>, RHCE
>>>> Virtualization Team (xen userspace), Red Hat
>>>>
>>> _______________________________________________
>>> Xen-devel mailing list
>>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>>> http://lists.xensource.com/xen-devel
>>
>>
>
>
> -- 
> Michal Novotny<minovotn@xxxxxxxxxx>, RHCE
> Virtualization Team (xen userspace), Red Hat
>

_______________________________________________
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®.