Bug 192911

Summary: xm create Error: (9, 'Bad file descriptor')
Product: [Fedora] Fedora Reporter: Demetri Mouratis <dmourati>
Component: xenAssignee: Xen Maintainance List <xen-maint>
Status: CLOSED NOTABUG QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: 5CC: bstein, katzj
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-06-07 13:56:11 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:

Description Demetri Mouratis 2006-05-23 21:50:00 EDT
Description of problem:
Xm complains with Error: (9, 'Bad file descriptor') when trying to start a new
domain created with xenguest-install.py in an unattended fashion.  Note,
however, that xenguest-install.py creates a working domain if invoked interactively.

Version-Release number of selected component (if applicable):

[root@localhost ~]# uname -a
Linux localhost.localdomain 2.6.16-1.2122_FC5xen0 #1 SMP Sun May 21 15:34:43 EDT
2006 i686 i686 i386 GNU/Linux

[root@localhost ~]# xenguest-install.py -n xendomain1 -f /home/xen/xendomain1 -s
25 -r 256 -l http://ops1.rnmd.net/fedora/core/5/i386/os -x
ks=http://ops1.rnmd.net/kickstart/cfgs/ks-fedora-core-5-xen-guest.cfg

[root@localhost ~]# xm create -c xendomain1
Using config file "/etc/xen/xendomain1".
Going to boot Fedora Core (2.6.15-1.2054_FC5smp)
  kernel: /vmlinuz-2.6.15-1.2054_FC5smp
  initrd: /initrd-2.6.15-1.2054_FC5smp.img
Error: (9, 'Bad file descriptor')

How reproducible:

Every time.

Steps to Reproduce:
1.  Install FC5
2.  Patch FC5 with yum update
3.  Install Xen kernel
4.  Reboot into Xen kernel
5.  Invoke xenguest-install.py in a non-interactive mode:

[root@localhost ~]# xenguest-install.py -n xendomain1 -f /home/xen/xendomain1 -s
25 -r 256 -l http://ops1.rnmd.net/fedora/core/5/i386/os -x
ks=http://ops1.rnmd.net/kickstart/cfgs/ks-fedora-core-5-xen-guest.cfg 
6.  Create new domain:
[root@localhost ~]# xm create -c xendomain1

Actual results:
Using config file "/etc/xen/xendomain1".
Going to boot Fedora Core (2.6.15-1.2054_FC5smp)
  kernel: /vmlinuz-2.6.15-1.2054_FC5smp
  initrd: /initrd-2.6.15-1.2054_FC5smp.img
Error: (9, 'Bad file descriptor')

Expected results:

Xendomain1 boots successfully

Additional info:

See also https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=190707

Same machine and process but earlier in the FC5 release prior to latest big xen
fix.  There, the following additional information was requested.  

[root@localhost ~]# cat /sys/hypervisor/properties/capabilities
xen-3.0-x86_32

[root@localhost ~]# xm dmesg
 __  __            _____  ___   ____    ____
 \ \/ /___ _ __   |___ / / _ \ |___ \  |___ \
  \  // _ \ '_ \    |_ \| | | |  __) |__ __) |
  /  \  __/ | | |  ___) | |_| | / __/|__/ __/
 /_/\_\___|_| |_| |____(_)___(_)_____| |_____|

 http://www.cl.cam.ac.uk/netos/xen
 University of Cambridge Computer Laboratory

 Xen version 3.0.2-2 (bhcompile@build.redhat.com) (gcc version 4.1.0 20060304
(Red Hat 4.1.0-3)) Sun May 21 14:57:45 EDT 2006
 Latest ChangeSet: unavailable

(XEN) Console output is synchronous.
(XEN) Command line: /xen.gz-2.6.16-1.2122_FC5 com1=9600,8n1 sync_console
(XEN) Physical RAM map:
(XEN)  0000000000000000 - 00000000000a0000 (usable)
(XEN)  0000000000100000 - 000000007ffc0000 (usable)
(XEN)  000000007ffc0000 - 000000007ffcfc00 (ACPI data)
(XEN)  000000007ffcfc00 - 000000007ffff000 (reserved)
(XEN)  00000000f0000000 - 00000000f4000000 (reserved)
(XEN)  00000000fec00000 - 00000000fed00400 (reserved)
(XEN)  00000000fed13000 - 00000000feda0000 (reserved)
(XEN)  00000000fee00000 - 00000000fee10000 (reserved)
(XEN)  00000000ffb00000 - 0000000100000000 (reserved)
(XEN) System RAM: 2047MB (2096512kB)
(XEN) Xen heap: 10MB (10252kB)
(XEN) Using scheduler: Simple EDF Scheduler (sedf)
(XEN) PAE disabled.
(XEN) found SMP MP-table at 000fe710
(XEN) DMI 2.3 present.
(XEN) Using APIC driver default
(XEN) ACPI: RSDP (v000 DELL                                  ) @ 0x000fd160
(XEN) ACPI: RSDT (v001 DELL   PE850    0x00000001 MSFT 0x0100000a) @ 0x000fd174
(XEN) ACPI: FADT (v001 DELL   PE850    0x00000001 MSFT 0x0100000a) @ 0x000fd1b8
(XEN) ACPI: MADT (v001 DELL   PE850    0x00000001 MSFT 0x0100000a) @ 0x000fd22c
(XEN) ACPI: SPCR (v001 DELL   PE850    0x00000001 MSFT 0x0100000a) @ 0x000fd2a0
(XEN) ACPI: HPET (v001 DELL   PE830    0x00000001 MSFT 0x0100000a) @ 0x000fd2f0
(XEN) ACPI: MCFG (v001 DELL   PE830    0x00000001 MSFT 0x0100000a) @ 0x000fd328
(XEN) ACPI: DSDT (v001 DELL   PE830    0x00000001 MSFT 0x0100000e) @ 0x00000000
(XEN) ACPI: Local APIC address 0xfee00000
(XEN) ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
(XEN) Processor #0 15:4 APIC version 20
(XEN) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled)
(XEN) Processor #1 15:4 APIC version 20
(XEN) ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
(XEN) ACPI: LAPIC_NMI (acpi_id[0x02] high edge lint[0x1])
(XEN) ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
(XEN) IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23
(XEN) ACPI: IOAPIC (id[0x03] address[0xfec10000] gsi_base[32])
(XEN) IOAPIC[1]: apic_id 3, version 32, address 0xfec10000, GSI 32-55
(XEN) ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
(XEN) ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
(XEN) ACPI: IRQ0 used by override.
(XEN) ACPI: IRQ2 used by override.
(XEN) ACPI: IRQ9 used by override.
(XEN) Enabling APIC mode:  Flat.  Using 2 I/O APICs
(XEN) ACPI: HPET id: 0xffffffff base: 0xfed00000
(XEN) Using ACPI (MADT) for SMP configuration information
(XEN) Initializing CPU#0
(XEN) Detected 3000.265 MHz processor.
(XEN) CPU: Trace cache: 12K uops, L1 D cache: 16K
(XEN) CPU: L2 cache: 1024K
(XEN) CPU: Physical Processor ID: 0
(XEN) CPU: Processor Core ID: 0
(XEN) Intel machine check architecture supported.
(XEN) Intel machine check reporting enabled on CPU#0.
(XEN) CPU0: Intel P4/Xeon Extended MCE MSRs (24) available
(XEN) CPU0: Thermal monitoring enabled
(XEN) CPU0: Intel(R) Pentium(R) D CPU 3.00GHz stepping 07
(XEN) Booting processor 1/1 eip 90000
(XEN) Initializing CPU#1
(XEN) CPU: Trace cache: 12K uops, L1 D cache: 16K
(XEN) CPU: L2 cache: 1024K
(XEN) CPU: Physical Processor ID: 0
(XEN) CPU: Processor Core ID: 1
(XEN) Intel machine check architecture supported.
(XEN) Intel machine check reporting enabled on CPU#1.
(XEN) CPU1: Intel P4/Xeon Extended MCE MSRs (24) available
(XEN) CPU1: Thermal monitoring enabled
(XEN) CPU1: Intel(R) Pentium(R) D CPU 3.00GHz stepping 07
(XEN) Total of 2 processors activated.
(XEN) ENABLING IO-APIC IRQs
(XEN)  -> Using new ACK method
(XEN) ..TIMER: vector=0xF0 apic1=0 pin1=2 apic2=-1 pin2=-1
(XEN) checking TSC synchronization across 2 CPUs: passed.
(XEN) Platform timer is 14.318MHz HPET
(XEN) Brought up 2 CPUs
(XEN) Machine check exception polling timer started.
(XEN) Using IPI Shortcut mode
(XEN) *** LOADING DOMAIN 0 ***
(XEN) Domain 0 kernel supports features = { 0000001f }.
(XEN) Domain 0 kernel requires features = { 00000000 }.
(XEN) PHYSICAL MEMORY ARRANGEMENT:
(XEN)  Dom0 alloc.:   7e000000->7f000000 (480644 pages to be allocated)
(XEN) VIRTUAL MEMORY ARRANGEMENT:
(XEN)  Loaded kernel: c0100000->c0455bfc
(XEN)  Init. ramdisk: c0456000->c0842200
(XEN)  Phys-Mach map: c0843000->c0a1c610
(XEN)  Start info:    c0a1d000->c0a1e000
(XEN)  Page tables:   c0a1e000->c0a22000
(XEN)  Boot stack:    c0a22000->c0a23000
(XEN)  TOTAL:         c0000000->c0c00000
(XEN)  ENTRY ADDRESS: c0100000
(XEN) Dom0 has maximum 2 VCPUs
(XEN) Initrd len 0x3ec200, start at 0xc0456000
(XEN) Scrubbing Free RAM: .....................done.
(XEN) Xen trace buffers: disabled
(XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch input to Xen).
(XEN) (file=dom0_ops.c, line=395) Domain 0 says that IO-APIC REGSEL is good
(XEN) DOM1: (file=mm.c, line=486) Non-privileged attempt to map I/O space 00000000
(XEN) DOM1: (file=mm.c, line=486) Non-privileged attempt to map I/O space 00000000
(XEN) DOM5: (file=mm.c, line=486) Non-privileged attempt to map I/O space 00000000
(XEN) DOM5: (file=mm.c, line=486) Non-privileged attempt to map I/O space 00000000
(XEN) DOM6: (file=mm.c, line=486) Non-privileged attempt to map I/O space 00000000
(XEN) DOM6: (file=mm.c, line=486) Non-privileged attempt to map I/O space 00000000
(XEN) DOM7: (file=mm.c, line=486) Non-privileged attempt to map I/O space 00000000
(XEN) DOM7: (file=mm.c, line=486) Non-privileged attempt to map I/O space 00000000

Also, please find below information from /var/log/xend-debug.log:

[root@localhost ~]# cat /var/log/xend-debug.log
ERROR: Kernel image does not have a a.out9 header.
ERROR: Unrecognized image format
ERROR: Error constructing guest OS
ERROR: Kernel image does not have a a.out9 header.
ERROR: Unrecognized image format
ERROR: Error constructing guest OS
ERROR: Kernel image does not have a a.out9 header.
ERROR: Unrecognized image format
ERROR: Error constructing guest OS
ERROR: Kernel image does not have a a.out9 header.
ERROR: Unrecognized image format
ERROR: Error constructing guest OS
ERROR: Kernel image does not have a a.out9 header.
ERROR: Unrecognized image format
ERROR: Error constructing guest OS
ERROR: Kernel image does not have a a.out9 header.
ERROR: Unrecognized image format
ERROR: Error constructing guest OS
Comment 1 Jeremy Katz 2006-06-04 14:46:12 EDT
*** Bug 190707 has been marked as a duplicate of this bug. ***
Comment 2 Demetri Mouratis 2006-06-07 13:37:57 EDT
Please close this bug.  This behavior was created by using an incorrect ks.cfg
file explicitly calling for the kernel-smp package to be installed.  Sorry for
the noise.