On Fri, May 11, 2012 at 01:41:43PM -0700, Brendan Conoboy wrote: > On 05/11/2012 01:04 PM, Richard W.M. Jones wrote: > >Has anyone tried to debug our Fedora/arm kernels under qemu-system-arm? > >(In this case, the host is also arm, but I don't think that matters.) > > Richard, > > FYI, we as of a few hours ago have nearly-official F17-beta images > for versatile express on the following page: > > http://scotland.proximity.on.ca/arm-nightlies/ > > There's a link for vexpress and vexpress+x rootfs images. A second > link provides a kernel, initramfs, and script for starting qemu. > Note that vexpress is much faster than versatile and allows more ram > (1GB). Recommend you try this out! So one issue appears to be lack of PCI support (according to Linaro's notes: https://wiki.linaro.org/PeterMaydell/QemuVersatileExpress). Unfortunately all of the virtio hardware is PCI-based, so it doesn't seem like this is going to work for the virt tools :-( Having said that, virtio with the current Fedora ARM kernels doesn't work either (see below). This appears to be a problem with qemu not setting up the PCI config space sensibly. I'm still investigating. Rich. [...] [ 2.360640] PCI core found (slot 11) [ 2.367644] PCI host bridge to bus 0000:00 [ 2.371144] pci_bus 0000:00: root bus resource [io 0x44000000-0x4fffffff] [ 2.374066] pci_bus 0000:00: root bus resource [mem 0x50000000-0x5fffffff] [ 2.374751] pci_bus 0000:00: root bus resource [mem 0x60000000-0x6fffffff pref] [ 2.393315] PCI: bus0: Fast back to back transfers disabled [ 2.405189] PCI map irq: slot 0, pin 1, devslot 12, irq: 27 [ 2.406686] PCI map irq: slot 0, pin 1, devslot 13, irq: 27 [ 2.407285] PCI map irq: slot 0, pin 1, devslot 14, irq: 27 [ 2.413989] pci 0000:00:0d.0: BAR 0: assigned [io 0x44000000-0x4400003f] [ 2.416204] pci 0000:00:0e.0: BAR 0: assigned [io 0x44000040-0x4400007f] [ 2.417221] pci 0000:00:0c.0: BAR 0: assigned [io 0x44000080-0x4400009f] [ 2.516011] bio: create slab <bio-0> at 0 [ 2.538118] vgaarb: loaded [ 2.551547] SCSI subsystem initialized [ 2.566105] usbcore: registered new interface driver usbfs [ 2.568507] usbcore: registered new interface driver hub [ 2.573128] usbcore: registered new device driver usb [ 2.623191] NetLabel: Initializing [ 2.623702] NetLabel: domain hash size = 128 [ 2.624088] NetLabel: protocols = UNLABELED CIPSOv4 [ 2.631777] NetLabel: unlabeled traffic allowed by default [ 2.646556] Switching to clocksource timer3 [ 3.165976] NET: Registered protocol family 2 [ 3.176617] IP route cache hash table entries: 2048 (order: 1, 8192 bytes) [ 3.201008] TCP established hash table entries: 8192 (order: 4, 65536 bytes) [ 3.203937] TCP bind hash table entries: 8192 (order: 3, 32768 bytes) [ 3.206121] TCP: Hash tables configured (established 8192 bind 8192) [ 3.207154] TCP reno registered [ 3.208383] UDP hash table entries: 256 (order: 0, 4096 bytes) [ 3.212231] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes) [ 3.224129] NET: Registered protocol family 1 [ 3.252885] Unpacking initramfs... [ 3.363403] Freeing initrd memory: 764K [ 3.389097] audit: initializing netlink socket (disabled) [ 3.393720] type=2000 audit(1.860:1): initialized [ 4.616872] VFS: Disk quotas dquot_6.5.2 [ 4.623368] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) [ 4.671602] msgmni has been set to 492 [ 4.782151] alg: No test for stdrng (krng) [ 4.783383] NET: Registered protocol family 38 [ 4.792118] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253) [ 4.796706] io scheduler noop registered [ 4.797383] io scheduler deadline registered [ 4.800773] io scheduler cfq registered (default) [ 4.824787] PCI: enabling device 0000:00:0c.0 (0100 -> 0101) [ 4.829857] Unable to handle kernel paging request at virtual address 44000092 [ 4.830565] pgd = c0004000 [ 4.830912] [44000092] *pgd=00000000 [ 4.833083] Internal error: Oops: 805 [#1] [ 4.834016] Modules linked in: [ 4.835742] CPU: 0 Not tainted (3.3.4-4.fc17.armv7hl #1) [ 4.838653] PC is at vp_reset+0x14/0x64 The code is: static void vp_reset(struct virtio_device *vdev) { struct virtio_pci_device *vp_dev = to_vp_device(vdev); /* 0 status means a reset. */ iowrite8(0, vp_dev->ioaddr + VIRTIO_PCI_STATUS); <<--- here // 0x44000080 + 0x12 == 0x44000092 [ 4.840141] LR is at register_virtio_device+0x4c/0x94 [ 4.841896] pc : [<c0230a08>] lr : [<c022fa48>] psr: 80000013 [ 4.841996] sp : cf82feb0 ip : 00000000 fp : 00000000 [ 4.845557] r10: c0649084 r9 : 00000000 r8 : 00000000 [ 4.847277] r7 : cf889860 r6 : 00000000 r5 : cfa50608 r4 : cfa50600 [ 4.849447] r3 : 44000080 r2 : 00000000 r1 : 0000002f r0 : cfa50600 [ 4.851825] Flags: Nzcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel [ 4.854292] Control: 00093177 Table: 00004000 DAC: 00000017 [ 4.856360] Process swapper (pid: 1, stack limit = 0xcf82e270) [ 4.858594] Stack: (0xcf82feb0 to 0xcf830000) [ 4.860942] fea0: c02309f4 cfa50600 cfa50608 c022fa48 [ 4.863691] fec0: 00000003 cfa50600 cf889800 c04277bc c04276bc cf889860 cf889800 c0648ff8 [ 4.866636] fee0: c0648fc8 c02138e0 c0213850 cf889860 c0648ff8 c0648ff8 c0260014 00000000 [ 4.869311] ff00: c05f51d8 c025fe98 c0648ff8 cf889860 cf889860 cf889894 c0648ff8 c0260084 [ 4.872680] ff20: 00000000 cf82ff30 c0648ff8 c025e590 cf8264cc cf8960f0 c0648ff8 c0648ff8 [ 4.875525] ff40: cfa4f7e0 c06488c8 c06488c8 c025f610 c0553c83 c0553c83 00000070 c0648ff8 [ 4.878504] ff60: c0648ff8 c000f288 c06488c8 00000000 c05f51d8 c0260590 c0649030 c0648fc8 [ 4.881452] ff80: c0648ff8 c000f288 c06488c8 00000000 c05f51d8 c0213ad0 cf82e000 c061e95c [ 4.884427] ffa0: c061eaec c000f288 00000013 c0008874 c05f51d8 c05539dc c0667460 00000000 [ 4.887227] ffc0: c061e95c c061eaec c000f288 00000013 00000000 00000000 00000000 c05dc884 [ 4.890246] ffe0: 00000000 00000000 00000000 00000000 c05dc7f0 c000f288 00000000 00000000 [ 4.898225] [<c0230a08>] (vp_reset+0x14/0x64) from [<c022fa48>] (register_virtio_device+0x4c/0x94) [ 4.901667] [<c022fa48>] (register_virtio_device+0x4c/0x94) from [<c04277bc>] (virtio_pci_probe+0x100/0x168) [ 4.905157] [<c04277bc>] (virtio_pci_probe+0x100/0x168) from [<c02138e0>] (pci_device_probe+0x90/0x120) [ 4.909051] [<c02138e0>] (pci_device_probe+0x90/0x120) from [<c025fe98>] (driver_probe_device+0x148/0x2c4) [ 4.912494] [<c025fe98>] (driver_probe_device+0x148/0x2c4) from [<c0260084>] (__driver_attach+0x70/0x94) [ 4.915944] [<c0260084>] (__driver_attach+0x70/0x94) from [<c025e590>] (bus_for_each_dev+0x50/0x88) [ 4.919211] [<c025e590>] (bus_for_each_dev+0x50/0x88) from [<c025f610>] (bus_add_driver+0x108/0x278) [ 4.922554] [<c025f610>] (bus_add_driver+0x108/0x278) from [<c0260590>] (driver_register+0xa4/0x128) [ 4.925672] [<c0260590>] (driver_register+0xa4/0x128) from [<c0213ad0>] (__pci_register_driver+0x40/0xbc) [ 4.929041] [<c0213ad0>] (__pci_register_driver+0x40/0xbc) from [<c0008874>] (do_one_initcall+0x98/0x170) [ 4.932406] [<c0008874>] (do_one_initcall+0x98/0x170) from [<c05dc884>] (kernel_init+0x94/0x134) [ 4.935700] [<c05dc884>] (kernel_init+0x94/0x134) from [<c000f288>] (kernel_thread_exit+0x0/0x8) [ 4.939538] Code: e92d4000 e8bd4000 e5903184 e3a02000 (e5c32012) [ 4.946406] ---[ end trace 0da3e76b87a358c1 ]--- [ 4.950652] Kernel panic - not syncing: Attempted to kill init! -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones New in Fedora 11: Fedora Windows cross-compiler. Compile Windows programs, test, and build Windows installers. Over 70 libraries supprt'd http://fedoraproject.org/wiki/MinGW http://www.annexia.org/fedora_mingw _______________________________________________ arm mailing list arm@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/arm