2002-09-22 06:06:53

by Andrew Morton

[permalink] [raw]
Subject: 2.5.38-mm1

Well that didn't last very long.

url: http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.38/2.5.38-mm1/

+filemap-fixes.patch

Fix mm/filemap.c for 64-bit builds: replace `unsigned' with size_t.


2002-09-23 00:35:35

by Adam Kropelin

[permalink] [raw]
Subject: Re: 2.5.38-mm1

Trying to boot 2.5.38-mm1 on SMP ppro gives an endless stream of oopses. (Well,
to be honest I only let it scroll for about 30 seconds before declaring it
"endless" and hitting the reset button.) Same .config on 2.5.38 stock boots
fine.

--Adam


ksymoops 2.4.6 on i686 2.5.37. Options used
-v /usr/src/linux-2.5.38-mm1/vmlinux (specified)
-K (specified)
-L (specified)
-O (specified)
-m /boot/System.map-2.5.38-mm1 (specified)

c0325f88 c0118c5a c02b9060 0000007e c0316880 c0118ef7 00000001 00000050
00000019 c02f1bc6 0008e000 c0336cc5 c0316880 c02d9585 00000005 00000500
c03d6044 c0336144 c0324000 00098700 c0105000 c03267d8 c038ada0 c02b9755
Call Trace: [<c0118c5a>] [<c0118ef7>] [<c0105000>]
c0325fa8 c0118c5a c02b9060 0000007e c0314700 c0118ef7 00000000 c0324000
00098700 c0105000 0008e000 c033404f c0314700 c03267d8 c038ada0 c02b9755
c038aea0 c0325ff4 c02b94c0 c038ada0 00000000 c01001b1
Call Trace: [<c0118c5a>] [<c0118ef7>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000246 fffff6a3 c0118cd0 000008f2
c02c0f6f 00000000 00000000 00002000 c01301f5 c030b8c0 000001d0 c032f3f5
c02beca0 00026c08 c030b784 00000000 00000000 c030b848 c0330126 c02c0f6f
Call Trace: [<c0130c96>] [<c0118cd0>] [<c01301f5>] [<c0105000>]
c0325f08 c0133e93 c02c1007 00000146 00000246 fffff52d 000001d0 00000ad2
00000000 000001d0 c030b8c0 00000000 c01340ea 00000000 000001d0 c01308f3
00000001 000001d0 00000018 c0107f9e c0326000 c02d9585 c030b8c0 c030b8c8
Call Trace: [<c0133e93>] [<c01340ea>] [<c01308f3>] [<c0107f9e>] [<c0130d9e>]
[<c0118cd0>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 c02beca0 00000000 c030b784
00000000 00000000 c030b848 c0330126 c02c0f6f 00000020 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f61 00000000 00000000 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b784 00000000 00000000 c030b848 c0330162 c02c0f61
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b784
00000000 00000000 c030b848 c0330162 c02c0f61 00000020 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f59 00000008 00000004 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b790 00000008 00000004 c030b848 c0330126 c02c0f59
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000020 c030b790
00000008 00000004 c030b848 c0330126 c02c0f59 00000040 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f4b 00000008 00000004 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000020 c030b790 00000008 00000004 c030b848 c0330162 c02c0f4b
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000020 c030b790
00000008 00000004 c030b848 c0330162 c02c0f4b 00000040 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f43 00000010 00000008 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000020 c030b79c 00000010 00000008 c030b848 c0330126 c02c0f43
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000040 c030b79c
00000010 00000008 c030b848 c0330126 c02c0f43 00000060 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f35 00000010 00000008 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000040 c030b79c 00000010 00000008 c030b848 c0330162 c02c0f35
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000040 c030b79c
00000010 00000008 c030b848 c0330162 c02c0f35 00000060 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f2c 00000018 0000000c 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000040 c030b7a8 00000018 0000000c c030b848 c0330126 c02c0f2c
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000060 c030b7a8
00000018 0000000c c030b848 c0330126 c02c0f2c 00000080 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f1d 00000018 0000000c 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000060 c030b7a8 00000018 0000000c c030b848 c0330162 c02c0f1d
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000060 c030b7a8
00000018 0000000c c030b848 c0330162 c02c0f1d 00000080 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f14 00000020 00000010 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000060 c030b7b4 00000020 00000010 c030b848 c0330126 c02c0f14
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000080 c030b7b4
00000020 00000010 c030b848 c0330126 c02c0f14 000000c0 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0f05 00000020 00000010 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000080 c030b7b4 00000020 00000010 c030b848 c0330162 c02c0f05
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000080 c030b7b4
00000020 00000010 c030b848 c0330162 c02c0f05 000000c0 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0efc 00000028 00000014 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000080 c030b7c0 00000028 00000014 c030b848 c0330126 c02c0efc
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 000000a0 c030b7c0
00000028 00000014 c030b848 c0330126 c02c0efc 00000100 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0eed 00000028 00000014 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 000000a0 c030b7c0 00000028 00000014 c030b848 c0330162 c02c0eed
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 000000a0 c030b7c0
00000028 00000014 c030b848 c0330162 c02c0eed 00000100 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0ee4 00000030 00000018 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 000000a0 c030b7cc 00000030 00000018 c030b848 c0330126 c02c0ee4
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7cc
00000030 00000018 c030b848 c0330126 c02c0ee4 00000200 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0ed5 00000030 00000018 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7cc 00000030 00000018 c030b848 c0330162 c02c0ed5
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7cc
00000030 00000018 c030b848 c0330162 c02c0ed5 00000200 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0ecb 00000038 0000001c 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7d8 00000038 0000001c c030b848 c0330126 c02c0ecb
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7d8
00000038 0000001c c030b848 c0330126 c02c0ecb 00000400 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0ebb 00000038 0000001c 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7d8 00000038 0000001c c030b848 c0330162 c02c0ebb
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7d8
00000038 0000001c c030b848 c0330162 c02c0ebb 00000400 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0eb1 00000040 00000020 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7e4 00000040 00000020 c030b848 c0330126 c02c0eb1
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7e4
00000040 00000020 c030b848 c0330126 c02c0eb1 00000800 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0ea1 00000040 00000020 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7e4 00000040 00000020 c030b848 c0330162 c02c0ea1
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f08 c0133e93 c02c1007 00000146 00000246 ffffc0bb 000001d0 00003f44
00000000 000001d0 c030b8c0 00000020 c01340ea 00000000 000001d0 c01308f3
00000001 000001d0 00000018 c0107f9e c0326000 c02d9585 c030b8c0 c030b8c8
Call Trace: [<c0133e93>] [<c01340ea>] [<c01308f3>] [<c0107f9e>] [<c0130d9e>]
[<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7e4
00000040 00000020 c030b848 c0330162 c02c0ea1 00000800 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0e97 00000048 00000024 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7f0 00000048 00000024 c030b848 c0330126 c02c0e97
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7f0
00000048 00000024 c030b848 c0330126 c02c0e97 00001000 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0e87 00000048 00000024 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7f0 00000048 00000024 c030b848 c0330162 c02c0e87
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7f0
00000048 00000024 c030b848 c0330162 c02c0e87 00001000 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0e7d 00000050 00000028 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7fc 00000050 00000028 c030b848 c0330126 c02c0e7d
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7fc
00000050 00000028 c030b848 c0330126 c02c0e7d 00002000 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0e6d 00000050 00000028 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b7fc 00000050 00000028 c030b848 c0330162 c02c0e6d
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b7fc
00000050 00000028 c030b848 c0330162 c02c0e6d 00002000 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0e62 00000058 0000002c 00002000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b808 00000058 0000002c c030b848 c0330126 c02c0e62
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b808
00000058 0000002c c030b848 c0330126 c02c0e62 00004000 00000020 00002000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0e51 00000058 0000002c 00006000 c01301f5 c030b8c0 000001d0 c0325fb0
ffffffff 00000000 c030b808 00000058 0000002c c030b848 c0330162 c02c0e51
Call Trace: [<c0130c96>] [<c0107f9e>] [<c01301f5>] [<c0105000>]
c0325f98 c013041f c02b9060 0000007e c0325fb0 ffffffff 00000000 c030b808
00000058 0000002c c030b848 c0330162 c02c0e51 00004000 00000020 00006000
00000000 00000000 c0324000 00098700 c0105000 0008e000 c032682c c038ada0
Call Trace: [<c013041f>] [<c0105000>]
c0325f6c c0130c96 c02c0f82 00000562 00000018 c0107f9e c0326000 c02d9585
c02c0e46 00000060 00000030?
Warning (Oops_read): Code line not seen, dumping what data is available


Trace; c0118c5a <acquire_console_sem+2a/50>
Trace; c0118ef7 <register_console+117/190>
Trace; c0105000 <_stext+0/0>
Trace; c0118c5a <acquire_console_sem+2a/50>
Trace; c0118ef7 <register_console+117/190>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0118cd0 <release_console_sem+50/b0>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0133e93 <__alloc_pages+23/250>
Trace; c01340ea <__get_free_pages+2a/70>
Trace; c01308f3 <kmem_cache_grow+b3/260>
Trace; c0107f9e <show_stack+6e/80>
Trace; c0130d9e <kmem_cache_alloc+12e/150>
Trace; c0118cd0 <release_console_sem+50/b0>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0133e93 <__alloc_pages+23/250>
Trace; c01340ea <__get_free_pages+2a/70>
Trace; c01308f3 <kmem_cache_grow+b3/260>
Trace; c0107f9e <show_stack+6e/80>
Trace; c0130d9e <kmem_cache_alloc+12e/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c0130c96 <kmem_cache_alloc+26/150>
Trace; c0107f9e <show_stack+6e/80>
Trace; c01301f5 <kmem_cache_create+75/3a0>
Trace; c0105000 <_stext+0/0>
Trace; c013041f <kmem_cache_create+29f/3a0>
Trace; c0105000 <_stext+0/0>


1 warning issued. Results may not be reliable.

2002-09-23 00:49:27

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.5.38-mm1

Adam Kropelin wrote:
>
> Trying to boot 2.5.38-mm1 on SMP ppro gives an endless stream of oopses. (Well,
> to be honest I only let it scroll for about 30 seconds before declaring it
> "endless" and hitting the reset button.) Same .config on 2.5.38 stock boots
> fine.

It found a bug. Someone is calling kmem_cache_create() in an
atomic region. Plus I think that during startup, in_atomic()
is (probably incorrectly) returning true.

I'll ratelimit it to one message per second.

You can kill the printk at the bottom of kernel/sched.c for now.

2002-09-23 00:54:49

by Robert Love

[permalink] [raw]
Subject: Re: 2.5.38-mm1

On Sun, 2002-09-22 at 20:54, Andrew Morton wrote:

> It found a bug. Someone is calling kmem_cache_create() in an
> atomic region. Plus I think that during startup, in_atomic()
> is (probably incorrectly) returning true.

Would you mind doing a

printk(KERN_ERR "kmem_cache_create called atomically!\n");

too? I was confused as to what debugging check he was tripping. Yah
yah, looking at the trace I should of known, but I didn't know you put a
check in there... :)

Robert Love

2002-09-23 01:04:55

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.5.38-mm1

Robert Love wrote:
>
> On Sun, 2002-09-22 at 20:54, Andrew Morton wrote:
>
> > It found a bug. Someone is calling kmem_cache_create() in an
> > atomic region. Plus I think that during startup, in_atomic()
> > is (probably incorrectly) returning true.
>
> Would you mind doing a
>
> printk(KERN_ERR "kmem_cache_create called atomically!\n");
>
> too? I was confused as to what debugging check he was tripping. Yah
> yah, looking at the trace I should of known, but I didn't know you put a
> check in there... :)

Robert, I put checks in *everywhere*.

Because I put the checks in kmem_cache_alloc(), and alloc_pages(),
and down(), and down_read(), and they have quite a lot of callers.

Here's the (updated) patch:


--- 2.5.38/include/asm-i386/semaphore.h~might_sleep Sun Sep 22 11:55:46 2002
+++ 2.5.38-akpm/include/asm-i386/semaphore.h Sun Sep 22 11:55:46 2002
@@ -123,7 +123,7 @@ static inline void down(struct semaphore
#if WAITQUEUE_DEBUG
CHECK_MAGIC(sem->__magic);
#endif
-
+ might_sleep();
__asm__ __volatile__(
"# atomic down operation\n\t"
LOCK "decl %0\n\t" /* --sem->count */
@@ -149,7 +149,7 @@ static inline int down_interruptible(str
#if WAITQUEUE_DEBUG
CHECK_MAGIC(sem->__magic);
#endif
-
+ might_sleep();
__asm__ __volatile__(
"# atomic interruptible down operation\n\t"
LOCK "decl %1\n\t" /* --sem->count */
--- 2.5.38/include/linux/kernel.h~might_sleep Sun Sep 22 11:55:46 2002
+++ 2.5.38-akpm/include/linux/kernel.h Sun Sep 22 11:55:46 2002
@@ -40,6 +40,13 @@

struct completion;

+#ifdef CONFIG_DEBUG_KERNEL
+void __might_sleep(char *file, int line);
+#define might_sleep() __might_sleep(__FILE__, __LINE__)
+#else
+#define might_sleep() do {} while(0)
+#endif
+
extern struct notifier_block *panic_notifier_list;
NORET_TYPE void panic(const char * fmt, ...)
__attribute__ ((NORET_AND format (printf, 1, 2)));
--- 2.5.38/include/linux/rwsem.h~might_sleep Sun Sep 22 11:55:46 2002
+++ 2.5.38-akpm/include/linux/rwsem.h Sun Sep 22 11:55:46 2002
@@ -41,6 +41,7 @@ extern void FASTCALL(rwsemtrace(struct r
*/
static inline void down_read(struct rw_semaphore *sem)
{
+ might_sleep();
rwsemtrace(sem,"Entering down_read");
__down_read(sem);
rwsemtrace(sem,"Leaving down_read");
@@ -63,6 +64,7 @@ static inline int down_read_trylock(stru
*/
static inline void down_write(struct rw_semaphore *sem)
{
+ might_sleep();
rwsemtrace(sem,"Entering down_write");
__down_write(sem);
rwsemtrace(sem,"Leaving down_write");
--- 2.5.38/kernel/ksyms.c~might_sleep Sun Sep 22 11:55:46 2002
+++ 2.5.38-akpm/kernel/ksyms.c Sun Sep 22 17:58:09 2002
@@ -498,7 +498,9 @@ EXPORT_SYMBOL(jiffies_64);
EXPORT_SYMBOL(xtime);
EXPORT_SYMBOL(do_gettimeofday);
EXPORT_SYMBOL(do_settimeofday);
-
+#ifdef CONFIG_DEBUG_KERNEL
+EXPORT_SYMBOL(__might_sleep);
+#endif
#if !defined(__ia64__)
EXPORT_SYMBOL(loops_per_jiffy);
#endif
--- 2.5.38/kernel/sched.c~might_sleep Sun Sep 22 11:55:46 2002
+++ 2.5.38-akpm/kernel/sched.c Sun Sep 22 18:01:31 2002
@@ -2166,3 +2166,18 @@ void __init sched_init(void)
enter_lazy_tlb(&init_mm, current, smp_processor_id());
}

+void __might_sleep(char *file, int line)
+{
+#if defined(in_atomic)
+ static unsigned long prev_jiffy; /* ratelimiting */
+
+ if (in_atomic()) {
+ if (time_before(jiffies, prev_jiffy + HZ))
+ return;
+ prev_jiffy = jiffies;
+ printk("Sleeping function called from illegal"
+ " context at %s:%d\n", file, line);
+ dump_stack();
+ }
+#endif
+}
--- 2.5.38/mm/page_alloc.c~might_sleep Sun Sep 22 11:55:46 2002
+++ 2.5.38-akpm/mm/page_alloc.c Sun Sep 22 17:58:09 2002
@@ -321,6 +321,9 @@ __alloc_pages(unsigned int gfp_mask, uns
struct page * page;
int freed, i;

+ if (gfp_mask & __GFP_WAIT)
+ might_sleep();
+
KERNEL_STAT_ADD(pgalloc, 1<<order);

zones = zonelist->zones; /* the list of zones suitable for gfp_mask */
--- 2.5.38/mm/slab.c~might_sleep Sun Sep 22 11:55:46 2002
+++ 2.5.38-akpm/mm/slab.c Sun Sep 22 17:58:09 2002
@@ -1374,6 +1374,9 @@ static inline void * __kmem_cache_alloc
unsigned long save_flags;
void* objp;

+ if (flags & __GFP_WAIT)
+ might_sleep();
+
kmem_cache_alloc_head(cachep, flags);
try_again:
local_irq_save(save_flags);

.

2002-09-23 01:20:47

by John Levon

[permalink] [raw]
Subject: Re: 2.5.38-mm1

On Sun, Sep 22, 2002 at 05:54:31PM -0700, Andrew Morton wrote:

> It found a bug. Someone is calling kmem_cache_create() in an
> atomic region.

And kmem_cache_alloc() has jumped to the top of the profile (checked
with readprofile) in 2.3.38-linus.

Didn't bother looking why ...

regards
john

--
"Say what you mean or you won't mean a thing to me."
- Embrace

2002-09-23 01:34:37

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.5.38-mm1

John Levon wrote:
>
> On Sun, Sep 22, 2002 at 05:54:31PM -0700, Andrew Morton wrote:
>
> > It found a bug. Someone is calling kmem_cache_create() in an
> > atomic region.
>
> And kmem_cache_alloc() has jumped to the top of the profile (checked
> with readprofile) in 2.3.38-linus.
>

Linus disabled the cpu-local caches if slab debugging is
enabled. This is because they were not being poisoned,
and so SMP machines were not getting the full debug benefit
of slab poisoning.

If you disable kernel debugging (either in config, or locally
in slab) then it should be fine.

Slab performance has always been sucky with debug enabled,
so no real loss there.