On Thu, Aug 01, 2013 at 11:58:15AM +0100, Peter Maydell wrote:
> Unfortunately at this point you run into the classic
> issue of trying to get an ARM kernel running, which
> is that a huge class of config errors all have the
> failure mode "just sits there with no serial output".
> This is remarkably user-unfriendly but I don't really
> know how we could fix it since the underlying cause
> is that serial ports on ARM aren't in a single standard
> location, so if the kernel's not configured right it
> won't find the serial port. I usually end up resorting
> to running with gdb connected to qemu's debug stub
> and fishing the kernel output out of its log_buf :-(

Yeah, probably I should fix virt-dmesg to work on ARM guests ...

I don't know if there's a better list for asking these questions, but
here's another one:

~/d/qemu/arm-softmmu/qemu-system-arm -m 512 -M vexpress-a9 \
  -kernel kernel -initrd initrd \
  -drive if=none,file=root,id=foo -device virtio-blk-device,drive=foo \
  -append "root=/dev/vda console=ttyAMA0 rootwait debug" -serial stdio

This command boots the kernel, loads the initrd, and loads the virtio
modules, but the 'root' disk is never enumerated (see full messages
attached).

I wonder if I'm missing a kernel module for virtio-blk to work?

The code that is running in the guest is here if you're interested:
https://github.com/libguestfs/supermin/blob/master/helper/init.c

---

I'd _really_ prefer to use virtio-scsi, since virtio-blk has all sorts
of shortcomings.  However I could work out the command line fu to
enable virtio-scsi.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
virt-df lists disk usage of guests without needing to install any
software inside the virtual machine.  Supports Linux and Windows.
http://people.redhat.com/~rjones/virt-df/
oss: Could not initialize DAC
oss: Failed to open `/dev/dsp'
oss: Reason: No such file or directory
oss: Could not initialize DAC
oss: Failed to open `/dev/dsp'
oss: Reason: No such file or directory
audio: Failed to create voice `lm4549.out'
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 3.9.9-302.fc19.armv7hl 
(mockbu...@arm04-builder00.arm.fedoraproject.org) (gcc version 4.8.1 20130603 
(Red Hat 4.8.1-1) (GCC) ) #1 SMP Sun Jul 7 02:30:19 UTC 2013
[    0.000000] CPU: ARMv7 Processor [410fc090] revision 0 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing 
instruction cache
[    0.000000] Machine: ARM-Versatile Express
[    0.000000] Memory policy: ECC disabled, Data cache writealloc
[    0.000000] On node 0 totalpages: 131072
[    0.000000] free_area_init_node: node 0, pgdat c08af680, node_mem_map 
c09a3000
[    0.000000]   Normal zone: 1024 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 131072 pages, LIFO batch:31
[    0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 
178956ms
[    0.000000] PERCPU: Embedded 9 pages/cpu @c0da7000 s13056 r8192 d15616 u36864
[    0.000000] pcpu-alloc: s13056 r8192 d15616 u36864 alloc=9*4096
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total 
pages: 130048
[    0.000000] Kernel command line: root=/dev/vda console=ttyAMA0 rootwait debug
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] __ex_table already sorted, skipping sort
[    0.000000] allocated 1048576 bytes of page_cgroup
[    0.000000] please try 'cgroup_disable=memory' option if you don't want 
memory cgroups
[    0.000000] Memory: 512MB = 512MB total
[    0.000000] Memory: 508080k/508080k available, 16208k reserved, 0K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc07994bc   (7750 kB)
[    0.000000]       .init : 0xc079a000 - 0xc0817300   ( 501 kB)
[    0.000000]       .data : 0xc0818000 - 0xc08bcf30   ( 660 kB)
[    0.000000]        .bss : 0xc08bcf30 - 0xc09a2c48   ( 920 kB)
[    0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, 
Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000]  RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=1.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] GIC CPU mask not found - kernel will fail to boot.
[    0.000000] GIC CPU mask not found - kernel will fail to boot.
[    0.000000] smp_twd: clock not found -2
[    0.000000] Console: colour dummy device 80x30
[    0.411689] Calibrating delay loop... 317.03 BogoMIPS (lpj=1585152)
[    0.474478] pid_max: default: 32768 minimum: 301
[    0.477877] Security Framework initialized
[    0.486420] SELinux:  Initializing.
[    0.487542] SELinux:  Starting in permissive mode
[    0.493488] Mount-cache hash table entries: 512
[    0.524454] Initializing cgroup subsys cpuacct
[    0.524661] Initializing cgroup subsys memory
[    0.526533] Initializing cgroup subsys devices
[    0.526758] Initializing cgroup subsys freezer
[    0.527064] Initializing cgroup subsys net_cls
[    0.527251] Initializing cgroup subsys blkio
[    0.527404] Initializing cgroup subsys perf_event
[    0.529864] CPU: Testing write buffer coherency: ok
[    0.534160] ftrace: allocating 23282 entries in 46 pages
[    0.761116] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.762425] Setting up static identity map for 0xc0552c10 - 0xc0552c68
[    0.820267] Brought up 1 CPUs
[    0.820542] SMP: Total of 1 processors activated (317.03 BogoMIPS).
[    0.820708] CPU: All CPU(s) started in SVC mode.
[    0.862247] devtmpfs: initialized
[    0.930991] atomic64 test passed
[    0.931158] pinctrl core: initialized pinctrl subsystem
[    0.947771] regulator-dummy: no parameters
[    0.956973] NET: Registered protocol family 16
[    0.964155] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.993450] L310 cache controller enabled
[    0.993593] l2x0: 8 ways, CACHE_ID 0x410000c8, AUX_CTRL 0x02420000, Cache 
size: 131072 B
[    1.001379] hw-breakpoint: debug architecture 0x0 unsupported.
[    1.003124] Serial: AMBA PL011 UART driver
[    1.007048] uart-pl011 mb:uart0: could not get default pinstate
[    1.008963] mb:uart0: ttyAMA0 at MMIO 0x10009000 (irq = 37) is a PL011 rev1
[    1.096611] console [ttyAMA0] enabled
[    1.110688] uart-pl011 mb:uart1: could not get default pinstate
[    1.116064] mb:uart1: ttyAMA1 at MMIO 0x1000a000 (irq = 38) is a PL011 rev1
[    1.125853] uart-pl011 mb:uart2: could not get default pinstate
[    1.132100] mb:uart2: ttyAMA2 at MMIO 0x1000b000 (irq = 39) is a PL011 rev1
[    1.140628] uart-pl011 mb:uart3: could not get default pinstate
[    1.146353] mb:uart3: ttyAMA3 at MMIO 0x1000c000 (irq = 40) is a PL011 rev1
[    1.205975] bio: create slab <bio-0> at 0
[    1.220085] fixed-dummy: no parameters
[    1.231209] SCSI subsystem initialized
[    1.236978] libata version 3.00 loaded.
[    1.245164] usbcore: registered new interface driver usbfs
[    1.250743] usbcore: registered new interface driver hub
[    1.256689] usbcore: registered new device driver usb
[    1.287510] NetLabel: Initializing
[    1.290847] NetLabel:  domain hash size = 128
[    1.294501] NetLabel:  protocols = UNLABELED CIPSOv4
[    1.301551] NetLabel:  unlabeled traffic allowed by default
[    1.307648] Switching to clocksource v2m-timer1
[    1.760789] NET: Registered protocol family 2
[    1.779931] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[    1.789193] TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
[    1.795697] TCP: Hash tables configured (established 4096 bind 4096)
[    1.801733] TCP: reno registered
[    1.805250] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    1.810560] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    1.823436] NET: Registered protocol family 1
[    1.835604] RPC: Registered named UNIX socket transport module.
[    1.840650] RPC: Registered udp transport module.
[    1.844462] RPC: Registered tcp transport module.
[    1.848563] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    1.866501] Unpacking initramfs...
[    1.932263] Freeing initrd memory: 756K
[    1.938555] CPU PMU: probing PMU on CPU 0
[    1.943935] hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 1 
counters available
[    1.964068] audit: initializing netlink socket (disabled)
[    1.970960] type=2000 audit(1.520:1): initialized
[    2.978846] VFS: Disk quotas dquot_6.5.2
[    2.983333] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    3.012738] NFS: Registering the id_resolver key type
[    3.020334] Key type id_resolver registered
[    3.023733] Key type id_legacy registered
[    3.032127] msgmni has been set to 993
[    3.040951] SELinux:  Registering netfilter hooks
[    3.099632] alg: No test for stdrng (krng)
[    3.102692] NET: Registered protocol family 38
[    3.109888] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 
252)
[    3.118987] io scheduler noop registered
[    3.121794] io scheduler deadline registered
[    3.128916] io scheduler cfq registered (default)
[    3.143196] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    3.158575] Serial: AMBA driver
[    3.161697] uart-pl011 mb:uart0: no DMA platform data
[    3.166326] uart-pl011 mb:uart1: no DMA platform data
[    3.170435] uart-pl011 mb:uart2: no DMA platform data
[    3.174535] uart-pl011 mb:uart3: no DMA platform data
[    3.224027] loop: module loaded
[    3.234490] libphy: Fixed MDIO Bus: probed
[    3.242660] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    3.248806] ehci-omap: OMAP-EHCI Host Controller driver
[    3.253432] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    3.261218] usbcore: registered new interface driver usbserial
[    3.267377] usbcore: registered new interface driver usbserial_generic
[    3.273933] usbserial: USB Serial support registered for generic
[    3.282354] mousedev: PS/2 mouse device common for all mice
[    3.296821] rtc-pl031 mb:rtc: rtc core: registered pl031 as rtc0
[    3.305451] device-mapper: uevent: version 1.0.3
[    3.311826] device-mapper: ioctl: 4.24.0-ioctl (2013-01-15) initialised: 
dm-de...@redhat.com
[    3.320817] omap_cpufreq_init: unable to get MPU regulator
[    3.328315] mmci-pl18x mb:mmci: could not get default pinstate
[    3.331685] mmci-pl18x mb:mmci: mmc0: PL181 manf 41 rev0 at 0x10005000 irq 
41,42 (pio)
[    3.332321] mmci-pl18x mb:mmci: no DMA platform data
[    3.378274] hidraw: raw HID events driver (C) Jiri Kosina
[    3.389921] usbcore: registered new interface driver usbhid
[    3.393333] usbhid: USB HID core driver
[    3.398149] drop_monitor: Initializing network drop monitor service
[    3.406858] ip_tables: (C) 2000-2006 Netfilter Core Team
[    3.414453] TCP: cubic registered
[    3.417195] Initializing XFRM netlink socket
[    3.424005] NET: Registered protocol family 10
[    3.445361] mip6: Mobile IPv6
[    3.447645] NET: Registered protocol family 17
[    3.453325] Key type dns_resolver registered
[    3.460185] VFP support v0.3: implementor 41 architecture 3 part 30 variant 
9 rev 0
[    3.491723] ThumbEE CPU extension supported.
[    3.500837] Registering SWP/SWPB emulation handler
[    3.571345] registered taskstats version 1
[    3.604295] rtc-pl031 mb:rtc: setting system clock to 2013-08-01 11:36:55 
UTC (1375357015)
[    3.610018] sr_init: No PMIC hook to init smartreflex
[    3.618745] sr_init: platform driver register failed for SR
[    3.654447] Freeing init memory: 500K
supermin: mounting /proc
supermin: uptime: 3.35 0.35
supermin: ext2 mini initrd starting up: 4.1.1 zlib
supermin: cmdline: root=/dev/vda console=ttyAMA0 rootwait debug
supermin: mounting /sys
supermin: internal insmod libcrc32c.ko
supermin: internal insmod crc-itu-t.ko
supermin: internal insmod crc32.ko
[    3.953305] alg: No test for crc32 (crc32-table)
supermin: internal insmod crc-ccitt.ko
supermin: internal insmod crc7.ko
supermin: internal insmod crc8.ko
supermin: internal insmod scsi_transport_spi.ko
supermin: internal insmod virtio.ko
supermin: internal insmod virtio_ring.ko
supermin: internal insmod virtio-rng.ko
supermin: internal insmod virtio_blk.ko
supermin: internal insmod virtio_scsi.ko
supermin: internal insmod virtio_net.ko
supermin: internal insmod virtio_mmio.ko
supermin: internal insmod virtio_balloon.ko
supermin: waiting another 1024000000 ns for /sys/block/vda/dev to appear
supermin: waiting another 2048000000 ns for /sys/block/vda/dev to appear
supermin: waiting another 4096000000 ns for /sys/block/vda/dev to appear
supermin: waiting another 8192000000 ns for /sys/block/vda/dev to appear
supermin: waiting another 16384000000 ns for /sys/block/vda/dev to appear
supermin: waiting another 32768000000 ns for /sys/block/vda/dev to appear
supermin: waiting another 65536000000 ns for /sys/block/vda/dev to appear
supermin: waiting another 131072000000 ns for /sys/block/vda/dev to appear
qemu: terminating on signal 15 from pid 11242

Reply via email to