2.6.27-rc5-mm1 mystery trace

Started by Andrew Morton on Sep 5, 2008 · 12 messages from 4 authors · Last reply Sep 8, 2008

open the first message on its own page

Booting the putative 2.6.27-rc5-mm1 lineup on the g5 I see:

io scheduler cfq registered
proc_dir_entry '00' already registered
Call Trace:
[c00000017a0fbae0] [c000000000012540] unrecov_restore+0x98d8/0x1220c (unreliable)
[c00000017a0fbb90] [c000000000149798] dst_error+0x117d3c/0x42ba04
[c00000017a0fbc40] [c000000000149c14] dst_error+0x1181b8/0x42ba04
[c00000017a0fbcc0] [c0000000001f9260] dst_error+0x1c7804/0x42ba04
[c00000017a0fbd60] [c0000000005ccc8c] _sinittext+0x25c8c/0x371d4
[c00000017a0fbde0] [c000000000009230] unrecov_restore+0x5c8/0x1220c
[c00000017a0fbee0] [c0000000005a7d90] _sinittext+0xd90/0x371d4
[c00000017a0fbf90] [c000000000026db4] fpdisable+0xa6f4/0xa884
nvidiafb: Device ID: 10de0141 
nvidiafb: CRTC0 analog not found
nvidiafb: CRTC1 analog found

from which I conclude

a) someone broke powerpc's kallsyms processing and

b) someone screwed up their procfs handling.

The output of `nm -n vmlinux' is at
http://userweb.kernel.org/~akpm/nm-n.txt.  You'll see that
c000000000012540 is actually somewhere inside proc_register().



This is stupid:

g5:/usr/src/25> gdb vmlinux
GNU gdb Red Hat Linux (6.3.0.0-1.21rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "ppc-yellowdog-linux-gnu"..."/usr/src/25/vmlinux": not in executable format: File format not recognized

3 more lines

This is stupid:

g5:/usr/src/25> gdb vmlinux
GNU gdb Red Hat Linux (6.3.0.0-1.21rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "ppc-yellowdog-linux-gnu"..."/usr/src/25/vmlinux": not in executable format: File format not recognized

probably there's some command line magic to make it work, but there
shouldn't be.
Is this a 64 bits gdb ?

Ben.
On Fri, 05 Sep 2008 13:42:44 +1000 Benjamin Herrenschmidt [off-list ref] wrote:
quoted
This is stupid:

g5:/usr/src/25> gdb vmlinux
GNU gdb Red Hat Linux (6.3.0.0-1.21rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "ppc-yellowdog-linux-gnu"..."/usr/src/25/vmlinux": not in executable format: File format not recognized

probably there's some command line magic to make it work, but there
shouldn't be.
Is this a 64 bits gdb ?
I don't think so - it's whatever ydl4.1 gave me.

A 64-bit binary on a 64-bit machine Should Just Work.  Maybe that's
me being simplistic.
a) someone broke powerpc's kallsyms processing and

b) someone screwed up their procfs handling.
I think the proc bug is old, might have to do with /proc/bus/pci... 
I have that on my G5 too with 2.6.26, I think I just forgot about it..
Care to give that untested patch a try ?

powerpc: Always enable pci domains in /proc for 64 bits powerpc

This patch always enable the use of the pci domain number in /proc
on 64 bits ppc machines instead of the old pseries specific hack of
testing for the buid which is meaningless on most machines.

We also enable the compat code that makes domain 0 use the old
format for the sake of the X server.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
Index: linux-work/arch/powerpc/kernel/pci-common.c
===================================================================
--- linux-work.orig/arch/powerpc/kernel/pci-common.c	2008-09-05 13:46:09.000000000 +1000
+++ linux-work/arch/powerpc/kernel/pci-common.c	2008-09-05 13:49:46.000000000 +1000
@@ -53,8 +53,9 @@ static int global_phb_number;		/* Global
 /* ISA Memory physical address */
 resource_size_t isa_mem_base;
 
-/* Default PCI flags is 0 */
-unsigned int ppc_pci_flags;
+/* Default PCI flags is 0 on ppc32, modified at boot on ppc64 */
+unsigned int ppc_pci_flags = 0;
+
 
 struct pci_controller *pcibios_alloc_controller(struct device_node *dev)
 {
@@ -669,15 +670,12 @@ void __devinit pci_process_bridge_OF_ran
 int pci_proc_domain(struct pci_bus *bus)
 {
 	struct pci_controller *hose = pci_bus_to_host(bus);
-#ifdef CONFIG_PPC64
-	return hose->buid != 0;
-#else
+
 	if (!(ppc_pci_flags & PPC_PCI_ENABLE_PROC_DOMAINS))
 		return 0;
 	if (ppc_pci_flags & PPC_PCI_COMPAT_DOMAIN_0)
 		return hose->global_number != 0;
 	return 1;
-#endif
 }
 
 void pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region,
On Fri, 05 Sep 2008 13:54:22 +1000 Benjamin Herrenschmidt [off-list ref] wrote:
quoted
a) someone broke powerpc's kallsyms processing and

b) someone screwed up their procfs handling.
I think the proc bug is old, might have to do with /proc/bus/pci... 
I have that on my G5 too with 2.6.26, I think I just forgot about it..
Care to give that untested patch a try ?
uh, soon, hopfully.  The wife pinched the monitor.

I'd be more worried about the kallsyms non-workage?
On Thu, 2008-09-04 at 20:49 -0700, Andrew Morton wrote:
On Fri, 05 Sep 2008 13:42:44 +1000 Benjamin Herrenschmidt [off-list ref] wrote:
quoted
quoted
This is stupid:

g5:/usr/src/25> gdb vmlinux
GNU gdb Red Hat Linux (6.3.0.0-1.21rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "ppc-yellowdog-linux-gnu"..."/usr/src/25/vmlinux": not in executable format: File format not recognized

probably there's some command line magic to make it work, but there
shouldn't be.
Is this a 64 bits gdb ?
I don't think so - it's whatever ydl4.1 gave me.

A 64-bit binary on a 64-bit machine Should Just Work.  Maybe that's
me being simplistic.
But is it a 64 bits binary ? 

Ben.
On Thu, 2008-09-04 at 21:04 -0700, Andrew Morton wrote:
On Fri, 05 Sep 2008 13:54:22 +1000 Benjamin Herrenschmidt [off-list ref] wrote:
quoted
quoted
a) someone broke powerpc's kallsyms processing and

b) someone screwed up their procfs handling.
I think the proc bug is old, might have to do with /proc/bus/pci... 
I have that on my G5 too with 2.6.26, I think I just forgot about it..
Care to give that untested patch a try ?
uh, soon, hopfully.  The wife pinched the monitor.

I'd be more worried about the kallsyms non-workage?
yes, that's the harder part :-) somebody will have to dig. I don't have
the cycles today but next if if nobody raised a hand, I can have a look.

Ben.
On Fri, 05 Sep 2008 14:36:41 +1000 Benjamin Herrenschmidt [off-list ref] wrote:
On Thu, 2008-09-04 at 20:49 -0700, Andrew Morton wrote:
quoted
On Fri, 05 Sep 2008 13:42:44 +1000 Benjamin Herrenschmidt [off-list ref] wrote:
quoted
quoted
This is stupid:

g5:/usr/src/25> gdb vmlinux
GNU gdb Red Hat Linux (6.3.0.0-1.21rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "ppc-yellowdog-linux-gnu"..."/usr/src/25/vmlinux": not in executable format: File format not recognized

probably there's some command line magic to make it work, but there
shouldn't be.
Is this a 64 bits gdb ?
I don't think so - it's whatever ydl4.1 gave me.

A 64-bit binary on a 64-bit machine Should Just Work.  Maybe that's
me being simplistic.
But is it a 64 bits binary ? 
vmlinux?  Yup.  According to file(1).
On Thu, 4 Sep 2008, Andrew Morton wrote:
On Fri, 05 Sep 2008 14:36:41 +1000 Benjamin Herrenschmidt [off-list ref] wrote:
quoted
On Thu, 2008-09-04 at 20:49 -0700, Andrew Morton wrote:
quoted
On Fri, 05 Sep 2008 13:42:44 +1000 Benjamin Herrenschmidt [off-list ref] wrote:
quoted
quoted
g5:/usr/src/25> gdb vmlinux
GNU gdb Red Hat Linux (6.3.0.0-1.21rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "ppc-yellowdog-linux-gnu"..."/usr/src/25/vmlinux": not in executable format: File format not recognized

probably there's some command line magic to make it work, but there
shouldn't be.
Is this a 64 bits gdb ?
I don't think so - it's whatever ydl4.1 gave me.

A 64-bit binary on a 64-bit machine Should Just Work.  Maybe that's
me being simplistic.
But is it a 64 bits binary ? 
vmlinux?  Yup.  According to file(1).
No, gdb.

With kind regards,

Geert Uytterhoeven
Software Architect

Sony Techsoft Centre Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium

Phone:    +32 (0)2 700 8453
Fax:      +32 (0)2 700 8622
E-mail:   Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/

A division of Sony Europe (Belgium) N.V.
VAT BE 0413.825.160 · RPR Brussels
Fortis · BIC GEBABEBB · IBAN BE41293037680010
quoted
quoted
A 64-bit binary on a 64-bit machine Should Just Work.  Maybe that's
me being simplistic.
But is it a 64 bits binary ? 
vmlinux?  Yup.  According to file(1).
No, I'm talking about gdb :-0

IE. If it's a 32 bits gdb variant that cannot do 64 bits.. then it's
stuffed.

Is there a gdb64 binary somewhere ? Some distro have that.

Cheers,
Ben.
Andrew Morton writes:
a) someone broke powerpc's kallsyms processing and
That would be h8300-kallsyms-exclude-local-symbols.patch, which
excludes symbols starting with '.' on all architectures, despite the
name of the patch.

Paul.
On Mon, 8 Sep 2008 16:11:06 +1000 Paul Mackerras [off-list ref] wrote:
Andrew Morton writes:
quoted
a) someone broke powerpc's kallsyms processing and
That would be h8300-kallsyms-exclude-local-symbols.patch, which
excludes symbols starting with '.' on all architectures, despite the
name of the patch.
Ah, thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help