On Thu, Aug 24, 2006 at 02:00:42PM +0800, Yu, Ke wrote:
> Ewan Mellor wrote:
> > On Wed, Aug 23, 2006 at 11:08:42PM +0800, Yu, Ke wrote:
> >
> >> Hi Christian,
> >>
> >> In cset 10921 "Use xenstore to configure ioemu block devices", a
> >> empty cdrom entry is added in /etc/xen/xmexample.hvm:
> >>
> >> disk = [ 'file:/var/images/min-el3-i386.img,hda,w', ',hdc:cdrom,r' ]
> >>
> >> this actually breaks the HVM reboot in ia32e, since the UNAME of
> >> cdrom entry is None and control panel reboot logic can not handle
> >> this.
> >>
> >> When I try the following config, the reboot works.
> >>
> >> disk = [ 'file:/var/images/min-el3-i386.img,hda,w',
> >> 'file:/var/image/cdrom.iso,hdc:cdrom,r' ]
> >>
> >> Per my understanding, when user want to use cdrom, they should
> >> specify a physical ISO file or device, a empty cdrom entry is not
> >> valid. So I suggest the follwing simple patch, how do you think?
> >>
> >> diff -r b688d4a68a3e tools/examples/xmexample.hvm
> >> --- a/tools/examples/xmexample.hvm Tue Aug 22 14:59:16 2006
> >> +0100 +++ b/tools/examples/xmexample.hvm Wed Aug 23 22:48:46
> >> 2006 +0800 @@ -70,7 +70,8 @@ vif = [ 'type=ioemu, bridge=xenbr0' ]
> >> # and MODE is r for read-only, w for read-write.
> >>
> >> #disk = [ 'phy:hda1,hda1,r' ]
> >> -disk = [ 'file:/var/images/min-el3-i386.img,hda,w', ',hdc:cdrom,r' ]
> >> +#disk = [ 'file:/var/images/min-el3-i386.img,hda,w',
> >> 'file:/var/images/cdrom.iso,hdc:cdrom,r' ] +disk = [
> >> 'file:/var/images/min-el3-i386.img,hda,w' ]
> >
> > An empty CD-ROM drive seems like a reasonable thing to me. Can we
> > not just fix the reboot logic in Xend instead?
> >
> > At the least, could I see the xend.log for this?
> >
> > Thanks,
> >
> > Ewan.
>
> The xend.log is attached. Fixing reboot logic in Xend is also fine to me.
>
> root cause: uname of cdrom is ":" when domain first created. After reboot,
> uname become None since blkif.py did not generate uname for empty cdrom
> entry, which cause exception. the following patch can fix this issue:
>
> diff -r b688d4a68a3e tools/python/xen/xend/server/blkif.py
> --- a/tools/python/xen/xend/server/blkif.py Tue Aug 22 14:59:16 2006 +0100
> +++ b/tools/python/xen/xend/server/blkif.py Thu Aug 24 10:12:15 2006 +0800
> @@ -107,7 +107,7 @@ class BlkifController(DevController):
> if dev_type:
> dev += ":" + dev_type
> result.append(['dev', dev])
> - if typ and params:
> + if typ and params or ":cdrom" in dev: # allow empty cdrom
> result.append(['uname', typ + ":" + params])
> if mode:
> result.append(['mode', mode])
>
> Best Regards
> Ke
Hi Ke,
I was a little worried by the way your patch deliberately makes a uname
of ':' -- that seems like it could just cause problems in the future.
I've just put in a slightly larger patch that copes with the empty uname
in image.py, and also should give better error reporting in blkif.py
too. This fixes all the reconfiguration and reboot problems that I've
seen.
Thanks,
Ewan.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|