* v3.4 boot failure on qemu-system-arm -M versatilepb [not found] <XNM1$5$0$1$$3$9$0$A$8005401U4fc38a01@hitachi.com> @ 2012-05-29 20:02 ` Rob Herring [not found] ` <XNM1$5$0$1$$3$9$0$A$8005413U4fc5e967@hitachi.com> 0 siblings, 1 reply; 4+ messages in thread From: Rob Herring @ 2012-05-29 20:02 UTC (permalink / raw) To: linux-arm-kernel Adding linux-arm-kernel... On 05/28/2012 09:22 AM, takuo.koguchi.sw at hitachi.com wrote: > Hi, > > I found linux-3.4 kernel fails to mount the rootfs on > "qemu-system-arm -M versatile." > > Git bisect shows commit c334bc1 cause this first. > > So I tried to revert it by putting > arch/arm/mach-versatile/include/mach/io.h and adding select > NEED_MACH_IO_H in the section of ARCH_VERSATILE in arch/arm/Kconfig, > then the kernel can mount the rootfs. > > Can someone confirm and fix this? > What config are you using, and what is your kernel command line? Rob > Takuo Koguchi > > > ----------- Uncompressing Linux... done, booting the kernel. Booting > Linux on physical CPU 0 Initializing cgroup subsys cpuset > Initializing cgroup subsys cpu Linux version 3.4.0-yocto-standard > (koguchi at mg70k) (gcc version 4.5.2 (Sourcery G++ Lite 2011.03-41) ) > #37 PREEMPT Sun May 27 22:36:22 JST 2012 CPU: ARM926EJ-S [41069265] > revision 5 (ARMv5TEJ), cr=00093177 CPU: VIVT data cache, VIVT > instruction cache Machine: ARM-Versatile PB ... eth0: link up > IP-Config: Complete: device=eth0, addr=192.168.7.3, > mask=255.255.255.0, gw=192.168.7.1 host=192.168.7.3, domain=, > nis-domain=(none) bootserver=255.255.255.255, > rootserver=255.255.255.255, rootpath= input: AT Raw Set 2 keyboard as > /devices/fpga:06/serio0/input/input0 md: Skipping autodetection of > RAID arrays. (raid=autodetect will force) VFS: Cannot open root > device "0x0800" or unknown-block(8,0): error -6 Please append a > correct "root=" boot option; here are the available partitions: > Kernel panic - not syncing: VFS: Unable to mount root fs on > unknown-block(8,0) [<c0013870>] (unwind_backtrace+0x0/0xec) from > [<c0389b68>] (dump_stack+0x20/0x24) [<c0389b68>] > (dump_stack+0x20/0x24) from [<c0389bf4>] (panic+0x88/0x1c4) > [<c0389bf4>] (panic+0x88/0x1c4) from [<c04fbde8>] > (mount_block_root+0x240/0x290) [<c04fbde8>] > (mount_block_root+0x240/0x290) from [<c04fbf80>] > (mount_root+0x50/0x68) [<c04fbf80>] (mount_root+0x50/0x68) from > [<c04fc108>] (prepare_namespace+0x170/0x1d0) [<c04fc108>] > (prepare_namespace+0x170/0x1d0) from [<c04fba08>] > (kernel_init+0x1bc/0x204) [<c04fba08>] (kernel_init+0x1bc/0x204) from > [<c000e7dc>] (kernel_thread_exit+0x0/0x8) > > > > ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <XNM1$5$0$1$$3$9$0$A$8005413U4fc5e967@hitachi.com>]
* Re[3]: v3.4 boot failure on qemu-system-arm -M versatilepb [not found] ` <XNM1$5$0$1$$3$9$0$A$8005413U4fc5e967@hitachi.com> @ 2012-05-30 15:37 ` takuo.koguchi.sw at hitachi.com 2012-06-11 8:15 ` Ben Dooks 0 siblings, 1 reply; 4+ messages in thread From: takuo.koguchi.sw at hitachi.com @ 2012-05-30 15:37 UTC (permalink / raw) To: linux-arm-kernel Hi Rob, I am sorry that it seems I gave you wrong information. It turned out that the config I used was not versatile_defconfig. I have tried to reproduce with versatile_defconfig and found that IO_SPACE_LIMIT modification has no effect, ie. it cannot mount root=/dev/sdb even if IO_SPACE_LIMIT is 0xffffffff. I suppose it misses the driver to read /dev/sdb. Actual config I used derived from buildroot tool's board/qemu/arm-versatile/linux-3.3.config. ( It works fine for linux-3.3 ) I attached my .config. As for this config, #define IO_SPACE_LIMIT ((resource_size_t)0xffffffff) works for linux-3.4 to mount /dev/sdb as rootfs. The command line I used was as follows, $ sudo qemu-system-arm -M versatilepb -kernel ~/linux/arch/arm/boot/zImage -net nic,vlan=0 -net tap,vlan=0,ifname=tap0,script=no,downscript=no -hda output/images/rootfs.ext2 -append "console=ttyAMA0 root=/dev/sda ip=192.168.7.3::192.168.7.1:255.255.255.0" Best Regards, Takuo Koguchi ---- >Hi Rob, > >Thank you for your attention. > >>What config are you using, and what is your kernel command line? > >I used versatile_defconfig. >And I invoked qemu as follows, >$ sudo qemu-system-arm -machine versatilepb -kernel ~/linux/arch/arm/boot/zImage -net nic,vlan=0 -net tap,vlan=0,ifname=tap0,script=no,downscript=no -hda output/images/rootfs.ext2 -append "console=ttyAMA0 root=0x0800 ip=192.168.7.3::192.168.7.1:255.255.255.0 raid=noautodetect" > >The result is the same even if root=/dev/sda. > >currently __io(a) is defined in arch/arm/include/asm/io.h >#define __io(a) __typesafe_io((a) & IO_SPACE_LIMIT) >... > >As CONFIG_PCI is defined in the config, IO_SPACE_LIMIT is defined as 0xffff and failed to boot. >The kernel can mount rootfs when I defined IO_SPACE_LIMIT as follows, >#define IO_SPACE_LIMIT ((resource_size_t)0xffffffff) > >It may be related only to qemu and not to real versatile board. > >Takuo Koguchi > > > > > >>Adding linux-arm-kernel... >> >>On 05/28/2012 09:22 AM, takuo.koguchi.sw at hitachi.com wrote: >>> Hi, >>> >>> I found linux-3.4 kernel fails to mount the rootfs on >>> "qemu-system-arm -M versatile." >>> >>> Git bisect shows commit c334bc1 cause this first. >>> >>> So I tried to revert it by putting >>> arch/arm/mach-versatile/include/mach/io.h and adding select >>> NEED_MACH_IO_H in the section of ARCH_VERSATILE in arch/arm/Kconfig, >>> then the kernel can mount the rootfs. >>> >>> Can someone confirm and fix this? >>> >> >>What config are you using, and what is your kernel command line? >> >>Rob >> >>> Takuo Koguchi >>> >>> > -------------- next part -------------- A non-text attachment was scrubbed... Name: qemu-arm_versatile_config Type: application/octet-stream Size: 46667 bytes Desc: not available URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120531/3ee9c625/attachment-0001.obj> ^ permalink raw reply [flat|nested] 4+ messages in thread
* v3.4 boot failure on qemu-system-arm -M versatilepb 2012-05-30 15:37 ` Re[3]: " takuo.koguchi.sw at hitachi.com @ 2012-06-11 8:15 ` Ben Dooks 2012-06-11 8:28 ` Russell King - ARM Linux 0 siblings, 1 reply; 4+ messages in thread From: Ben Dooks @ 2012-06-11 8:15 UTC (permalink / raw) To: linux-arm-kernel On 30/05/12 16:37, takuo.koguchi.sw at hitachi.com wrote: > Hi Rob, > > I am sorry that it seems I gave you wrong information. > > It turned out that the config I used was not versatile_defconfig. > I have tried to reproduce with versatile_defconfig and found that IO_SPACE_LIMIT modification has no effect, ie. it cannot mount root=/dev/sdb even if IO_SPACE_LIMIT is 0xffffffff. I suppose it misses the driver to read /dev/sdb. > > Actual config I used derived from buildroot tool's board/qemu/arm-versatile/linux-3.3.config. ( It works fine for linux-3.3 ) > I attached my .config. > As for this config, #define IO_SPACE_LIMIT ((resource_size_t)0xffffffff) works for linux-3.4 to mount /dev/sdb as rootfs. > > The command line I used was as follows, > $ sudo qemu-system-arm -M versatilepb -kernel ~/linux/arch/arm/boot/zImage -net nic,vlan=0 -net tap,vlan=0,ifname=tap0,script=no,downscript=no -hda output/images/rootfs.ext2 -append "console=ttyAMA0 root=/dev/sda ip=192.168.7.3::192.168.7.1:255.255.255.0" > > Best Regards, > > Takuo Koguchi We've seen the same problem. Limiting the __io() to the IO_SPACE_LIMIT will not fix the problem as the previous code was using a 1:1 CPU to PCI space view (which is why it was allocating space at 0x44000000). Either the __io() macro needs to add the base of PCI space, or the limit needs to be restored. -- Ben Dooks http://www.codethink.co.uk/ Senior Engineer Codethink - Providing Genius ^ permalink raw reply [flat|nested] 4+ messages in thread
* v3.4 boot failure on qemu-system-arm -M versatilepb 2012-06-11 8:15 ` Ben Dooks @ 2012-06-11 8:28 ` Russell King - ARM Linux 0 siblings, 0 replies; 4+ messages in thread From: Russell King - ARM Linux @ 2012-06-11 8:28 UTC (permalink / raw) To: linux-arm-kernel On Mon, Jun 11, 2012 at 09:15:20AM +0100, Ben Dooks wrote: > We've seen the same problem. Limiting the __io() to the IO_SPACE_LIMIT > will not fix the problem as the previous code was using a 1:1 CPU to > PCI space view (which is why it was allocating space at 0x44000000). > > Either the __io() macro needs to add the base of PCI space, or the > limit needs to be restored. Or the bus setup needs to be fixed to be more conventional, which is something I always did for the PCI platforms I had hardware for. ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-06-11 8:28 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <XNM1$5$0$1$$3$9$0$A$8005401U4fc38a01@hitachi.com>
2012-05-29 20:02 ` v3.4 boot failure on qemu-system-arm -M versatilepb Rob Herring
[not found] ` <XNM1$5$0$1$$3$9$0$A$8005413U4fc5e967@hitachi.com>
2012-05-30 15:37 ` Re[3]: " takuo.koguchi.sw at hitachi.com
2012-06-11 8:15 ` Ben Dooks
2012-06-11 8:28 ` Russell King - ARM Linux
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox