On Mon, 2012-12-03 at 19:04 +0100, Egoitz Aurrekoetxea Aurre wrote:
> Good morning,
> 
> After doing some checks and debugs about this problem, I can conclude that : 
> under Xen 4.1.3 on Debian Wheezy it works properly although in XCP1.6 if you 
> remove the cd drive from the vm works too. I'm going to describe the two test 
> environments have used for debugging this  :
> 
> ENV 1.- XCP 1.6 XEN 4.1.3 + FREEBSD 9.1-RC3 :
> 
> As you can see with an iso image mounted and without it, the boot process 
> gets stuck there….. (I paste here both screenshot location).
>                       
> http://postfixquotareject.ramattack.net/PastedGraphic-8.tiff
> http://postfixquotareject.ramattack.net/PastedGraphic-11.tiff                 
>                     
>        
> I have placed here two examples, with an empty (but existing) cd drive and 
> with a iso mounted in the drive. 
> 
> BUT If I do a in the XCP shell : 
> 
> xe vm-cd-remove uuid=08aec342-9572-8690-5e58-91d1b1f0aab2 cd-name=xs-tools.iso
> 
> The drive is being removed from the vm and it boots normally.  This is the 
> workaround I'm using for the moment.
> 
> Another debugging check I have done too is to apply this patch (although it's 
> just for testing purposes and for checking if cd drive works) to see how the 
> drive behaves after booting but without stopping in that loop of the FreeBSD 
> kernel source code.
> 
> --- /usr/src/sys/kern/subr_autoconf.c-defecto 2012-10-10 13:51:27.000000000 
> +0200
> +++ /usr/src/sys/kern/subr_autoconf.c 2012-10-10 18:21:51.000000000 +0200
> @@ -133,16 +133,17 @@
>       /* Block boot processing until all hooks are disestablished. */
>       mtx_lock(&intr_config_hook_lock);
>       warned = 0;
> -     while (!TAILQ_EMPTY(&intr_config_hook_list)) {
> +     /* while (!TAILQ_EMPTY(&intr_config_hook_list)) { */
>               if (msleep(&intr_config_hook_list, &intr_config_hook_lock,
>                   0, "conifhk", WARNING_INTERVAL_SECS * hz) ==
>                   EWOULDBLOCK) {
>                       mtx_unlock(&intr_config_hook_lock);
>                       warned++;
>                       run_interrupt_driven_config_hooks_warning(warned);
>                       mtx_lock(&intr_config_hook_lock);
>               }
> -     }
> +     /* } */
>       mtx_unlock(&intr_config_hook_lock);
> }
> 
> After applying this patch, kernel boots under XCP 1.6Beta and cd can be 
> mounted in the shell (should say I have not noticed about IRQ problems after 
> this). It seems like FreeBSD domU is not able to continue the boot process  
> because it's not able to finish up some test related to THIS (the cd drive) 
> device setup (IRQ assigning tests I assume concretely)  that should succeed 
> before being able to continue the boot process.
> 
> ENV 2.- Debian Wheezy (testing) XEN 4.1.3 + FreeBSD 9.1-RC3 :
> 
> Here is the concrete environment and config : 
> 
> root@pruebas-xen-egoitz:~# uname -ar
> Linux pruebas-xen-egoitz 3.2.0-4-amd64 #1 SMP Debian 3.2.32-1 x86_64 GNU/Linux
> 
> root@pruebas-xen-egoitz:~# cat /etc/issue
> Debian GNU/Linux wheezy/sid \n \l
> 
> root@pruebas-xen-egoitz:~# dpkg -l | grep -i xen
> ii  libxen-4.1                         4.1.3-4                   amd64        
> Public libs for Xen
> ii  libxenstore3.0                     4.1.3-4                   amd64        
> Xenstore communications library for Xen
> ri  linux-image-2.6.32-5-xen-amd64     2.6.32-46                 amd64        
> Linux 2.6.32 for 64-bit PCs, Xen dom0 support
> rc  xen-hypervisor-4.0-amd64           4.0.1-5.4                 amd64        
> The Xen Hypervisor on AMD64
> ii  xen-hypervisor-4.1-amd64           4.1.3-4                   amd64        
> Xen Hypervisor on AMD64
> ii  xen-linux-system-3.2.0-4-amd64     3.2.32-1                  amd64        
> Xen system with Linux 3.2 on 64-bit PCs (meta-package)
> ii  xen-linux-system-amd64             3.2+46                    amd64        
> Xen system with Linux for 64-bit PCs (meta-package)
> ii  xen-system-amd64                   4.1.3-4                   amd64        
> Xen System on AMD64 (meta-package)
> ii  xen-tools                          4.3.1-1                   all          
> Tools to manage Xen virtual servers
> ii  xen-utils-4.1                      4.1.3-4                   amd64        
> XEN administrative tools
> ii  xen-utils-common                   4.1.3-4                   all          
> Xen administrative tools - common files
> ii  xenstore-utils                     4.1.3-4                   amd64        
> Xenstore utilities for Xen
> 
> root@pruebas-xen-egoitz:~# xm list
> Name                                        ID   Mem VCPUs      State   
> Time(s)
> Domain-0                                     0  6908     8     r-----   1526.2
> freebsd90js.ramattack.net                   24   512     2     -b----     59.9
> 
> I normally create the life cycle with a xm new, later xm start……. the config 
> file is : 
> 
> root@pruebas-xen-egoitz:~# cat /etc/xen/freebsd90rjs.ramattack.net.cfg
> kernel = '/usr/lib/xen-4.1/boot/hvmloader'
> builder = 'hvm'
> vcpus = 2
> memory = 512
> name = 'freebsd90js.ramattack.net'
> vif = [ 'bridge=eth0, mac=00:13:3E:19:88:22, type=ioemu' ]
> disk = [ 'file:/servidores/freebsd90r/freebsd90js.img,hda,w', 
> 'file:/imagenes-cd/FreeBSD-9.1-RC3-amd64-disc1.iso,hdc:cdrom,r' ]
> boot = 'cd'
> device_model = 'qemu-dm'
> sdl = 0
> vnc = 1
> vncpasswd = 'agoodpassword'
> serial = 'pty'
> 
> And  after booting properly and from the own vm inside the Dom0 running 
> Debian and Xen : 
> 
> 
> root@pruebas:/root # uname -ar
> FreeBSD pruebas.sare.net 9.1-RC3 FreeBSD 9.1-RC3 #0: Fri Nov 30 12:14:50 CET 
> 2012     r...@pruebas.sare.net:/usr/obj/usr/src/sys/XENHVM  amd64
> 
> root@pruebas:/root # xen-detect 
> Running in HVM context on Xen v4.1.
> 
> root@pruebas:/root # dmesg
> Copyright (c) 1992-2012 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
>       The Regents of the University of California. All rights reserved.
> FreeBSD is a registered trademark of The FreeBSD Foundation.
> FreeBSD 9.1-RC3 #0: Fri Nov 30 12:14:50 CET 2012
>     r...@pruebas.sare.net:/usr/obj/usr/src/sys/XENHVM amd64
> CPU: Intel(R) Xeon(R) CPU           L3426  @ 1.87GHz (1862.83-MHz K8-class 
> CPU)
>   Origin = "GenuineIntel"  Id = 0x106e5  Family = 6  Model = 1e  Stepping = 5
>   
> Features=0x1781fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,MMX,FXSR,SSE,SSE2,HTT>
>   Features2=0x81b82201<SSE3,SSSE3,CX16,SSE4.1,SSE4.2,x2APIC,POPCNT,TSCDLT,HV>
>   AMD Features=0x28100800<SYSCALL,NX,RDTSCP,LM>
>   AMD Features2=0x1<LAHF>
> real memory  = 536870912 (512 MB)
> avail memory = 492093440 (469 MB)
> Event timer "LAPIC" quality 400
> ACPI APIC Table: <Xen HVM>
> FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
> FreeBSD/SMP: 1 package(s) x 2 core(s)
>  cpu0 (BSP): APIC ID:  0
>  cpu1 (AP): APIC ID:  2
> ioapic0: Changing APIC ID to 1
> MADT: Forcing active-low polarity and level trigger for SCI
> ioapic0 <Version 1.1> irqs 0-47 on motherboard
> kbd1 at kbdmux0
> acpi0: <Xen> on motherboard
> acpi0: Power Button (fixed)
> acpi0: Sleep Button (fixed)
> acpi0: reservation of 0, a0000 (3) failed
> cpu0: <ACPI CPU> on acpi0
> cpu1: <ACPI CPU> on acpi0
> attimer0: <AT timer> port 0x40-0x43 irq 0 on acpi0
> Timecounter "i8254" frequency 1193182 Hz quality 0
> Event timer "i8254" frequency 1193182 Hz quality 100
> atrtc0: <AT realtime clock> port 0x70-0x71 irq 8 on acpi0
> Event timer "RTC" frequency 32768 Hz quality 0
> Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
> acpi_timer0: <32-bit timer at 3.579545MHz> port 0xb008-0xb00b on acpi0
> pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
> pci0: <ACPI PCI bus> on pcib0
> isab0: <PCI-ISA bridge> at device 1.0 on pci0
> isa0: <ISA bus> on isab0
> atapci0: <Intel PIIX3 WDMA2 controller> port 
> 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xc200-0xc20f at device 1.1 on pci0
> ata0: <ATA channel> at channel 0 on atapci0
> ata1: <ATA channel> at channel 1 on atapci0
> pci0: <bridge> at device 1.3 (no driver attached)
> vgapci0: <VGA-compatible display> mem 
> 0xf0000000-0xf1ffffff,0xf3000000-0xf3000fff at device 2.0 on pci0
> xenpci0: <Xen Platform Device> port 0xc000-0xc0ff mem 0xf2000000-0xf2ffffff 
> irq 28 at device 3.0 on pci0
> xenstore0: <XenStore> on xenpci0
> atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
> atkbd0: <AT Keyboard> irq 1 on atkbdc0
> kbd0 at atkbd0
> atkbd0: [GIANT-LOCKED]
> psm0: <PS/2 Mouse> irq 12 on atkbdc0
> psm0: [GIANT-LOCKED]
> psm0: model IntelliMouse Explorer, device ID 4
> fdc0: <floppy drive controller> port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on acpi0
> fdc0: does not respond
> device_attach: fdc0 attach returned 6
> uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
> ppc0: <Parallel port> port 0x378-0x37f irq 7 on acpi0
> ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
> ppbus0: <Parallel port bus> on ppc0
> plip0: <PLIP network interface> on ppbus0
> lpt0: <Printer> on ppbus0
> lpt0: Interrupt-driven port
> ppi0: <Parallel I/O> on ppbus0
> sc0: <System console> at flags 0x100 on isa0
> sc0: VGA <16 virtual consoles, flags=0x300>
> vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
> fdc0: No FDOUT register!
> ctl: CAM Target Layer loaded
> Timecounters tick every 10.000 msec
> xenbusb_front0: <Xen Frontend Devices> on xenstore0
> xn0: <Virtual Network Interface> at device/vif/0 on xenbusb_front0
> xn0: Ethernet address: 00:13:3e:19:88:22
> xenbusb_back0: <Xen Backend Devices> on xenstore0
> xctrl0: <Xen Control Device> on xenstore0
> xn0: backend features: feature-sg feature-gso-tcp4
> xbd0: 40920MB <Virtual Block Device> at device/vbd/768 on xenbusb_front0
> xbd0: attaching as ad0
> xbd1: 685MB <Virtual Block Device> at device/vbd/5632 on xenbusb_front0
> xbd1: attaching as ad2
> GEOM: ad0s1: geometry does not match label (16h,63s != 255h,63s).
> cd0 at ata1 bus 0 scbus1 target 0 lun 0
> cd0: <QEMU QEMU DVD-ROM 0.10> Removable CD-ROM SCSI-0 device 
> cd0: 16.700MB/s transfers (WDMA2, ATAPI 12bytes, PIO 65534bytes)
> cd0: cd present [350977 x 2048 byte records]
> SMP: AP CPU #1 Launched!
> Trying to mount root from ufs:/dev/ad0s1a [rw]...
> xn0: 2 link states coalesced
> 
> A test showing how I'm able to mount an iso image :  
> 
> root@pruebas:/root # mount
> /dev/ad0s1a on / (ufs, local, journaled soft-updates)
> devfs on /dev (devfs, local, multilabel)
> /dev/ad2 on /puntomontajes (cd9660, local, read-only)
> 
> root@pruebas:/root # ls -la /puntomontajes/
> total 638
> drwxr-xr-x  17 root  wheel    4096 Jan  1  1970 .
> drwxr-xr-x  19 root  wheel    1024 Dec  3 11:42 ..
> -rw-r--r--   2 root  wheel    1011 Oct 30 02:48 .cshrc
> -rw-r--r--   2 root  wheel     253 Oct 30 02:48 .profile
> drwxr-xr-x   2 root  wheel    4096 Oct 30 02:47 .rr_moved
> -r--r--r--   1 root  wheel    6200 Oct 30 02:48 COPYRIGHT
> -r--r--r--   1 root  wheel   13814 Oct 30 02:48 ERRATA.HTM
> -r--r--r--   1 root  wheel    8442 Oct 30 02:48 ERRATA.TXT
> -r--r--r--   1 root  wheel  201433 Oct 30 02:48 HARDWARE.HTM
> -r--r--r--   1 root  wheel  122955 Oct 30 02:48 HARDWARE.TXT
> -r--r--r--   1 root  wheel   20807 Oct 30 02:48 README.HTM
> -r--r--r--   1 root  wheel   14764 Oct 30 02:48 README.TXT
> -r--r--r--   1 root  wheel  118904 Oct 30 02:48 RELNOTES.HTM
> -r--r--r--   1 root  wheel   61896 Oct 30 02:48 RELNOTES.TXT
> drwxr-xr-x   2 root  wheel    6144 Oct 30 02:47 bin
> drwxr-xr-x   7 root  wheel    6144 Oct 30 02:48 boot
> dr-xr-xr-x   2 root  wheel    2048 Oct 30 02:47 dev
> -r--r--r--   1 root  wheel    4143 Oct 30 02:48 docbook.css
> drwxr-xr-x  20 root  wheel   12288 Oct 30 02:48 etc
> drwxr-xr-x   3 root  wheel    6144 Oct 30 02:48 lib
> drwxr-xr-x   3 root  wheel    2048 Oct 30 02:48 libexec
> drwxr-xr-x   2 root  wheel    2048 Oct 30 02:47 media
> drwxr-xr-x   2 root  wheel    2048 Oct 30 02:47 mnt
> dr-xr-xr-x   2 root  wheel    2048 Oct 30 02:47 proc
> drwxr-xr-x   2 root  wheel    2048 Oct 30 02:47 rescue
> drwxr-xr-x   2 root  wheel    2048 Oct 30 02:48 root
> drwxr-xr-x   2 root  wheel   16384 Oct 30 02:48 sbin
> lrwxr-xr-x   1 root  wheel      11 Oct 30 02:47 sys -> usr/src/sys
> drwxrwxrwt   2 root  wheel    2048 Oct 30 02:47 tmp
> drwxr-xr-x  15 root  wheel    2048 Oct 30 02:48 usr
> drwxr-xr-x  23 root  wheel    4096 Oct 30 02:47 var
> root@pruebas:/root # fgrep -r -i aa /puntomontajes/*
> /puntomontajes/HARDWARE.HTM:"http://www.FreeBSD.org/cgi/man.cgi?query=aac&#38;sektion=4&#38;manpath=FreeBSD+9-current";>
> /puntomontajes/HARDWARE.HTM:<span class="citerefentry"><span 
> class="refentrytitle">aac</span>(4)</span></a> driver
> /puntomontajes/HARDWARE.HTM:<p>Adaptec AAC-364</p>
> /puntomontajes/HARDWARE.HTM:<p>Newer ServeRAID controllers are supported by 
> the aac(4) or mfi(4) driver.</p>
> /puntomontajes/HARDWARE.HTM:<p>RAIDarray 230 controllers, aka the Ultra-SCSI 
> DEC KZPAC-AA (1-ch, 4MB cache), KZPAC-CA
> /puntomontajes/HARDWARE.HTM:<p>Texas Instruments TSB43AA22</p>
> /puntomontajes/HARDWARE.HTM:<p>Texas Instruments TSB82AA2</p>
> /puntomontajes/HARDWARE.TXT:   [i386,ia64,amd64] Controllers supported by the 
> aac(4) driver
> /puntomontajes/HARDWARE.TXT:     * Adaptec AAC-364
> /puntomontajes/HARDWARE.TXT:   Newer ServeRAID controllers are sup
> .
> .
> .
> .
> etc
> etc…
> 
> 
> So, summarizing :  
> 
> Seems like under Debian with the same version of Xen works properly, so… I 
> have taken a look at the patches applied to Xen sources for composing the 
> Debian package and concretely one of them drew my attention : 
> 
> 
> 
> If someone at Citrix or XEN development team is reading this could tell us 
> something?. Could this give a clue for solving the problem?. I can further 
> investigate too if no one knows about it… but I assume this should be much 
> easier and faster to if could be checked by some of the Xen development 
> staff. 
> 
> Let us know something please,
> Very thankful,
> Best regards.


If you have the time, can you submit a PR for this issue?  I'll try and
reproduce it in tomorrow after I get the xen4 hypervisor working again.

Sean

_______________________________________________
freebsd-xen@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-xen
To unsubscribe, send any mail to "freebsd-xen-unsubscr...@freebsd.org"

Reply via email to