filp_open() in 2.2.19 causes memory corruption
Are you sure the trace is decoded correctly?
Quoted 5 lines
CPU: 0 EIP: 0010:[sys_mremap+31/884] EFLAGS: 00010206Code: ac ae 75 08 84 c0 75 f8 31 c0 eb 04 19 c0 0c 01 85 c0 75 d9
ac ae is
lodsb
scasb
Could you run
#objdump --disassemble-all --reloc linux/mm/mremap.o | less
and check that the code is really at offset 31 of sys_mremap?
And is it correct that only 64 MB memory is installed/enabled?
--
Manfred
Quoted 14 lines · Manfred Spraul
Are you sure the trace is decoded correctly?
Quoted 5 lines
CPU: 0 EIP: 0010:[sys_mremap+31/884] EFLAGS: 00010206Code: ac ae 75 08 84 c0 75 f8 31 c0 eb 04 19 c0 0c 01 85 c0 75 d9ac ae is
lodsb
scasbCould you run
#objdump --disassemble-all --reloclinux/mm/mremap.o| less
Quoted 6 lines
and check that the code is really at offset 31 of
sys_mremap?And is it correct that only 64 MB memory is installed/enabled?
--
Manfred
Manfred,
This is what's being reported when I produce the oops. I think we have memory corruption somewhere, which explains the funky code offsets. It's easy to reproduce. Call filp_open with the handle table I gave you on a single IDE system with **NO** tape drive in the system, and it crashes quite after the module is loaded the fisrt time, then unloaded, and reloaded a second time. The oops happens on the second insmod of the module. I can provide you the actual module itself built with all the code if you want to reproduce it.
It's 100% reproduceable.
Jeff
Quoted 1 line
Quoted 4 lines · [email protected] said:
Are you sure the trace is decoded correctly?
Quoted 2 lines
CPU: 0 EIP: 0010:[sys_mremap+31/884]
Probably not. It looks like it was munged by klogd. Some distributions are still shipping with klogd configured to destroy the original information on the way to the log, without even making it do a sanity check that the System.map it's using actually matches the current kernel.
Jeff, please disable the broken klogd symbol munging and reproduce it, running the oops through ksymoops manually. Ksymoops should have built-in sanity checks on the System.map it tries to use.
Also, please make sure you report this as a serious bug with the vendor of whatever distribution you're running on this box.
--
dwmw2
Quoted 12 lines · David Woodhouse
Quoted 4 lines · [email protected] said:
Are you sure the trace is decoded correctly?
Quoted 2 lines
CPU: 0 EIP: 0010:[sys_mremap+31/884]Probably not. It looks like it was munged by klogd. Some distributions are still shipping with klogd configured to destroy the original information on the way to the log, without even making it do a sanity check that the System.map it's using actually matches the current kernel.
Quoted 7 lines
Jeff, please disable the broken klogd symbol munging and reproduce it, running the oops through ksymoops manually. Ksymoops should have built-in sanity checks on the System.map it tries to use.
Also, please make sure you report this as a serious bug with the vendor of whatever distribution you're running on this box.
David,
I will comply and repost the oops.
Jeff
Quoted 3 lines
--
dwmw2