Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1455596 > unrolled thread
| Started by | Guenter Roeck <linux@roeck-us.net> |
|---|---|
| First post | 2016-08-03 05:00 +0200 |
| Last post | 2016-08-09 18:20 +0200 |
| Articles | 6 — 3 participants |
Back to article view | Back to linux.kernel
"Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") Guenter Roeck <linux@roeck-us.net> - 2016-08-03 05:00 +0200
Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") Russell King - ARM Linux <linux@armlinux.org.uk> - 2016-08-03 10:50 +0200
Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") Guenter Roeck <linux@roeck-us.net> - 2016-08-03 19:20 +0200
Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") Russell King - ARM Linux <linux@armlinux.org.uk> - 2016-08-04 12:20 +0200
Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") Gregory CLEMENT <gregory.clement@free-electrons.com> - 2016-08-09 17:10 +0200
Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") Guenter Roeck <linux@roeck-us.net> - 2016-08-09 18:20 +0200
| From | Guenter Roeck <linux@roeck-us.net> |
|---|---|
| Date | 2016-08-03 05:00 +0200 |
| Subject | "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") |
| Message-ID | <s1Uzv-4PA-13@gated-at.bofh.it> |
Hi,
I see the following crash when running a qemu arm 'kzm' runtime test with the current mainline.
Failed to create /dev/root: -14
[ followed by panic ]
A complete log file is at [1].
Bisect points to commit e6978e4bf1 ("ARM: save and reset the address limit when entering
an exception"). Some additional debugging shows lots of similar error returns from
strncpy_from_user(). For the error case resulting in the crash, the call chain
is as follows.
sys_mknod
sys_mknodat()
user_path_create()
getname()
getname_flags()
strncpy_from_user()
Reverting the patch fixes the problem.
I don't see the problem with any other qemu arm test.
It looks like the kernel runs in exception context. My gut feeling is that qemu may be
to blame, but I am not really sure.
Any idea how to track this down ?
Thanks,
Guenter
---
[1] http://kerneltests.org/builders/qemu-arm-master/builds/615
[toc] | [next] | [standalone]
| From | Russell King - ARM Linux <linux@armlinux.org.uk> |
|---|---|
| Date | 2016-08-03 10:50 +0200 |
| Subject | Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") |
| Message-ID | <s202d-eJ-13@gated-at.bofh.it> |
| In reply to | #1455596 |
On Tue, Aug 02, 2016 at 07:51:45PM -0700, Guenter Roeck wrote: > Hi, > > I see the following crash when running a qemu arm 'kzm' runtime test with > the current mainline. >... > Failed to create /dev/root: -14 > > [ followed by panic ] > > A complete log file is at [1]. I think it's because of those undefined instructions you're hitting with the hw-breakpoint code... can you try the patch below please? arch/arm/kernel/entry-armv.S | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S index bc5f50799d75..9f157e7c51e7 100644 --- a/arch/arm/kernel/entry-armv.S +++ b/arch/arm/kernel/entry-armv.S @@ -295,6 +295,7 @@ __und_svc_fault: bl __und_fault __und_svc_finish: + get_thread_info tsk ldr r5, [sp, #S_PSR] @ Get SVC cpsr svc_exit r5 @ return from exception UNWIND(.fnend ) -- RMK's Patch system: http://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up according to speedtest.net.
[toc] | [prev] | [next] | [standalone]
| From | Guenter Roeck <linux@roeck-us.net> |
|---|---|
| Date | 2016-08-03 19:20 +0200 |
| Subject | Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") |
| Message-ID | <s27ZM-5m7-5@gated-at.bofh.it> |
| In reply to | #1455702 |
On 08/03/2016 01:38 AM, Russell King - ARM Linux wrote: > On Tue, Aug 02, 2016 at 07:51:45PM -0700, Guenter Roeck wrote: >> Hi, >> >> I see the following crash when running a qemu arm 'kzm' runtime test with >> the current mainline. >> ... >> Failed to create /dev/root: -14 >> >> [ followed by panic ] >> >> A complete log file is at [1]. > > I think it's because of those undefined instructions you're hitting > with the hw-breakpoint code... can you try the patch below please? > > arch/arm/kernel/entry-armv.S | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S > index bc5f50799d75..9f157e7c51e7 100644 > --- a/arch/arm/kernel/entry-armv.S > +++ b/arch/arm/kernel/entry-armv.S > @@ -295,6 +295,7 @@ __und_svc_fault: > bl __und_fault > > __und_svc_finish: > + get_thread_info tsk > ldr r5, [sp, #S_PSR] @ Get SVC cpsr > svc_exit r5 @ return from exception > UNWIND(.fnend ) > Yes, that fixes the problem. Assuming you'll create a patch: Tested-by: Guenter Roeck <linux@roeck-us.net> Does that need to be addressed in qemu, or is it a Linux bug ? Thanks, Guenter
[toc] | [prev] | [next] | [standalone]
| From | Russell King - ARM Linux <linux@armlinux.org.uk> |
|---|---|
| Date | 2016-08-04 12:20 +0200 |
| Subject | Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") |
| Message-ID | <s2nUS-7xS-25@gated-at.bofh.it> |
| In reply to | #1455909 |
On Wed, Aug 03, 2016 at 08:07:02AM -0700, Guenter Roeck wrote: > On 08/03/2016 01:38 AM, Russell King - ARM Linux wrote: > >On Tue, Aug 02, 2016 at 07:51:45PM -0700, Guenter Roeck wrote: > >>Hi, > >> > >>I see the following crash when running a qemu arm 'kzm' runtime test with > >>the current mainline. > >>... > >>Failed to create /dev/root: -14 > >> > >>[ followed by panic ] > >> > >>A complete log file is at [1]. > > > >I think it's because of those undefined instructions you're hitting > >with the hw-breakpoint code... can you try the patch below please? > > > > arch/arm/kernel/entry-armv.S | 1 + > > 1 file changed, 1 insertion(+) > > > >diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S > >index bc5f50799d75..9f157e7c51e7 100644 > >--- a/arch/arm/kernel/entry-armv.S > >+++ b/arch/arm/kernel/entry-armv.S > >@@ -295,6 +295,7 @@ __und_svc_fault: > > bl __und_fault > > > > __und_svc_finish: > >+ get_thread_info tsk > > ldr r5, [sp, #S_PSR] @ Get SVC cpsr > > svc_exit r5 @ return from exception > > UNWIND(.fnend ) > > > > Yes, that fixes the problem. > > Assuming you'll create a patch: > > Tested-by: Guenter Roeck <linux@roeck-us.net> > > Does that need to be addressed in qemu, or is it a Linux bug ? It's a Linux bug provoked by qemu not implementing the hardware breakpoints. Well worth fixing in Linux. -- RMK's Patch system: http://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up according to speedtest.net.
[toc] | [prev] | [next] | [standalone]
| From | Gregory CLEMENT <gregory.clement@free-electrons.com> |
|---|---|
| Date | 2016-08-09 17:10 +0200 |
| Subject | Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") |
| Message-ID | <s4gPg-NP-31@gated-at.bofh.it> |
| In reply to | #1456295 |
Hi Russell King, On jeu., août 04 2016, Russell King - ARM Linux <linux@armlinux.org.uk> wrote: > On Wed, Aug 03, 2016 at 08:07:02AM -0700, Guenter Roeck wrote: >> On 08/03/2016 01:38 AM, Russell King - ARM Linux wrote: >> >On Tue, Aug 02, 2016 at 07:51:45PM -0700, Guenter Roeck wrote: >> >>Hi, >> >> >> >>I see the following crash when running a qemu arm 'kzm' runtime test with >> >>the current mainline. >> >>... >> >>Failed to create /dev/root: -14 >> >> >> >>[ followed by panic ] >> >> >> >>A complete log file is at [1]. >> > >> >I think it's because of those undefined instructions you're hitting >> >with the hw-breakpoint code... can you try the patch below please? >> > >> > arch/arm/kernel/entry-armv.S | 1 + >> > 1 file changed, 1 insertion(+) >> > >> >diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S >> >index bc5f50799d75..9f157e7c51e7 100644 >> >--- a/arch/arm/kernel/entry-armv.S >> >+++ b/arch/arm/kernel/entry-armv.S >> >@@ -295,6 +295,7 @@ __und_svc_fault: >> > bl __und_fault >> > >> > __und_svc_finish: >> >+ get_thread_info tsk >> > ldr r5, [sp, #S_PSR] @ Get SVC cpsr >> > svc_exit r5 @ return from exception >> > UNWIND(.fnend ) >> > >> >> Yes, that fixes the problem. >> >> Assuming you'll create a patch: >> >> Tested-by: Guenter Roeck <linux@roeck-us.net> >> >> Does that need to be addressed in qemu, or is it a Linux bug ? > > It's a Linux bug provoked by qemu not implementing the hardware > breakpoints. Well worth fixing in Linux. The Armada XP base platform were hit by the same bug as we can see on kernlci: https://storage.kernelci.org/mainline/v4.8-rc1/arm-mvebu_v7_defconfig/lab-baylibre-seattle/boot-armada-xp-openblocks-ax3-4.html Your patch solves the issue too. Will you push this patch for v4.8-rc2 ? Also I wonder if it is something expected to have this issue on a "real" hardware. You can also add my: Tested-by: Gregory CLEMENT <gregory.clement@free-electrons.com> Thanks, Gregory > > -- > RMK's Patch system: http://www.armlinux.org.uk/developer/patches/ > FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up > according to speedtest.net. > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
[toc] | [prev] | [next] | [standalone]
| From | Guenter Roeck <linux@roeck-us.net> |
|---|---|
| Date | 2016-08-09 18:20 +0200 |
| Subject | Re: "Failed to create /dev/root: -14" after commit e6978e4bf1 ("ARM: save and reset the address limit when entering an exception") |
| Message-ID | <s4hV0-1tf-5@gated-at.bofh.it> |
| In reply to | #1458835 |
On Tue, Aug 09, 2016 at 05:06:51PM +0200, Gregory CLEMENT wrote: > Hi Russell King, > > On jeu., août 04 2016, Russell King - ARM Linux <linux@armlinux.org.uk> wrote: > > > On Wed, Aug 03, 2016 at 08:07:02AM -0700, Guenter Roeck wrote: > >> On 08/03/2016 01:38 AM, Russell King - ARM Linux wrote: > >> >On Tue, Aug 02, 2016 at 07:51:45PM -0700, Guenter Roeck wrote: > >> >>Hi, > >> >> > >> >>I see the following crash when running a qemu arm 'kzm' runtime test with > >> >>the current mainline. > >> >>... > >> >>Failed to create /dev/root: -14 > >> >> > >> >>[ followed by panic ] > >> >> > >> >>A complete log file is at [1]. > >> > > >> >I think it's because of those undefined instructions you're hitting > >> >with the hw-breakpoint code... can you try the patch below please? > >> > > >> > arch/arm/kernel/entry-armv.S | 1 + > >> > 1 file changed, 1 insertion(+) > >> > > >> >diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S > >> >index bc5f50799d75..9f157e7c51e7 100644 > >> >--- a/arch/arm/kernel/entry-armv.S > >> >+++ b/arch/arm/kernel/entry-armv.S > >> >@@ -295,6 +295,7 @@ __und_svc_fault: > >> > bl __und_fault > >> > > >> > __und_svc_finish: > >> >+ get_thread_info tsk > >> > ldr r5, [sp, #S_PSR] @ Get SVC cpsr > >> > svc_exit r5 @ return from exception > >> > UNWIND(.fnend ) > >> > > >> > >> Yes, that fixes the problem. > >> > >> Assuming you'll create a patch: > >> > >> Tested-by: Guenter Roeck <linux@roeck-us.net> > >> > >> Does that need to be addressed in qemu, or is it a Linux bug ? > > > > It's a Linux bug provoked by qemu not implementing the hardware > > breakpoints. Well worth fixing in Linux. > > The Armada XP base platform were hit by the same bug as we can see on > kernlci: > https://storage.kernelci.org/mainline/v4.8-rc1/arm-mvebu_v7_defconfig/lab-baylibre-seattle/boot-armada-xp-openblocks-ax3-4.html > > Your patch solves the issue too. > > Will you push this patch for v4.8-rc2 ? > > Also I wonder if it is something expected to have this issue on a "real" > hardware. > It would be expected if hardware breakpoint implementation is optional and not all real CPUs implement it. Guenter
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web