2004-01-21 18:49:10

by Marek Habersack

[permalink] [raw]
Subject: [OOPS] 2.4.24+XFS+grsecurity2+SATA+HIPAC

Hello,

As you can see, it's a heavily patched kernel running on the following
hardware:

P4, 2GB of RAM, 2x80GB SATA drives on the ICH5R chipset SATA controller:

$ lspci
00:00.0 Host bridge: Intel Corp. 82875P Memory Controller Hub (rev 02)
00:01.0 PCI bridge: Intel Corp. 82875P Processor to AGP Controller (rev 02)
00:1e.0 PCI bridge: Intel Corp. 82801BA/CA/DB/EB PCI Bridge (rev c2)
00:1f.0 ISA bridge: Intel Corp. 82801EB LPC Interface Controller (rev 02)
00:1f.2 IDE interface: Intel Corp. 82801EB Ultra ATA Storage Controller (rev 02)
00:1f.3 SMBus: Intel Corp. 82801EB SMBus Controller (rev 02)
02:09.0 VGA compatible controller: ATI Technologies Inc Rage XL (rev 27)
02:0a.0 Ethernet controller: Intel Corp.: Unknown device 1013
02:0b.0 Ethernet controller: Intel Corp.: Unknown device 1013

The software config is in short:

softraid (all partitions, including /),sata,hipac packet filter,xfs on all
partitions except / which has ext3.

The oops happens shortly after booting the machine and results in
broken raid (up to the point no raid partition mounts except for /) and,
once, in slightly messed up data on /. The oops is as follows:

-------
ksymoops 2.4.9 on i686 2.4.24-xfs-gr2-sata-hipac-p4-up. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.4.24-xfs-gr2-sata-hipac-p4-up/ (default)
-m /boot/System.map-2.4.24-xfs-gr2-sata-hipac-p4-up (default)

Warning: You did not tell me where to find symbol information. I will
assume that the log matches the kernel and modules that are running
right now and I'll use the default options above for symbol resolution.
If the current kernel and/or modules do not match the log, you can get
more accurate output by telling me the kernel version and where to find
map, modules, ksyms etc. ksymoops -h explains the options.

Unable to handle kernel paging request at virtual address a6069a94
c01c5010
*pde = 00000000
Oops: 0002
CPU: 0
EIP: 0010:[<c01c5010>] Not tainted
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010282
eax: f7153800 ebx: f352c000 ecx: 00000079 edx: a6069a80
esi: fffffff7 edi: 00000002 ebp: 59bfec1c esp: f352df94
ds: 0018 es: 0018 ss: 0018
Process mysqld (pid: 3725, stackpage=f352d000)
Stack: c01c3e85 00000003 00000022 ffffffff 00000000 f352c000 00000006 f352c000
59bfec04 00000002 59bfec1c c01935d3 00000079 00000000 00000000 59bfec04
00000002 59bfec1c 0000008c 0000002b 0000002b 0000008c 25739315 00000023
Call Trace: [<c01c3e85>] [<c01935d3>]
Code: ff 42 14 89 d0 c3 8d 76 00 8d bc 27 00 00 00 00 8b 4c 24 04


>>EIP; c01c5010 <fget+20/30> <=====

>>eax; f7153800 <_end+36d73bf8/384b6458>
>>ebx; f352c000 <_end+3314c3f8/384b6458>
>>esp; f352df94 <_end+3314e38c/384b6458>

Trace; c01c3e85 <sys_llseek+15/c0>
Trace; c01935d3 <system_call+33/40>

Code; c01c5010 <fget+20/30>
00000000 <_EIP>:
Code; c01c5010 <fget+20/30> <=====
0: ff 42 14 incl 0x14(%edx) <=====
Code; c01c5013 <fget+23/30>
3: 89 d0 mov %edx,%eax
Code; c01c5015 <fget+25/30>
5: c3 ret
Code; c01c5016 <fget+26/30>
6: 8d 76 00 lea 0x0(%esi),%esi
Code; c01c5019 <fget+29/30>
9: 8d bc 27 00 00 00 00 lea 0x0(%edi,1),%edi
Code; c01c5020 <put_filp+0/40>
10: 8b 4c 24 04 mov 0x4(%esp,1),%ecx

<1>Unable to handle kernel paging request at virtual address 0002e476
c01c35c7
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c01c35c7>] Not tainted
EFLAGS: 00010282
eax: f7153800 ebx: 0002e462 ecx: 00000003 edx: 0002e462
esi: f7169980 edi: f7169980 ebp: 00000004 esp: f7057e80
ds: 0018 es: 0018 ss: 0018
Process mysqld (pid: 625, stackpage=f7057000)
Stack: f5e95900 f7169980 000000ff 00000078 f7169980 c01a3574 0002e462 f7169980
f7aa2c80 00000000 f7056000 00000009 c01a3c77 f7169980 00000009 f7056000
00000000 f7057f08 00000009 c01aa18c 00000009 c01aa365 00000009 00000009
Call Trace: [<c01a3574>] [<c01a3c77>] [<c01aa18c>] [<c01aa365>] [<c019330a>]
[<c01d426c>] [<c01d4070>] [<c030c784>] [<c0191d06>] [<c019d925>] [<c01a464d>]
[<c0192506>] [<c01935d3>]
Code: 8b 43 14 85 c0 74 52 8b 43 10 31 ff 85 c0 74 07 8b 50 24 85


>>EIP; c01c35c7 <filp_close+17/80> <=====

>>eax; f7153800 <_end+36d73bf8/384b6458>
>>esi; f7169980 <_end+36d89d78/384b6458>
>>edi; f7169980 <_end+36d89d78/384b6458>
>>esp; f7057e80 <_end+36c78278/384b6458>

Trace; c01a3574 <put_files_struct+64/d0>
Trace; c01a3c77 <do_exit+b7/280>
Trace; c01aa18c <sig_exit+ac/b0>
Trace; c01aa365 <dequeue_signal+65/d0>
Trace; c019330a <do_signal+1ca/2c0>
Trace; c01d426c <sys_getdents64+ac/c0>
Trace; c01d4070 <filldir64+0/150>
Trace; c030c784 <netif_receive_skb+c4/190>
Trace; c0191d06 <__switch_to+26/d0>
Trace; c019d925 <schedule+215/350>
Trace; c01a464d <do_setitimer+ed/110>
Trace; c0192506 <sys_rt_sigsuspend+c6/e0>
Trace; c01935d3 <system_call+33/40>

Code; c01c35c7 <filp_close+17/80>
00000000 <_EIP>:
Code; c01c35c7 <filp_close+17/80> <=====
0: 8b 43 14 mov 0x14(%ebx),%eax <=====
Code; c01c35ca <filp_close+1a/80>
3: 85 c0 test %eax,%eax
Code; c01c35cc <filp_close+1c/80>
5: 74 52 je 59 <_EIP+0x59>
Code; c01c35ce <filp_close+1e/80>
7: 8b 43 10 mov 0x10(%ebx),%eax
Code; c01c35d1 <filp_close+21/80>
a: 31 ff xor %edi,%edi
Code; c01c35d3 <filp_close+23/80>
c: 85 c0 test %eax,%eax
Code; c01c35d5 <filp_close+25/80>
e: 74 07 je 17 <_EIP+0x17>
Code; c01c35d7 <filp_close+27/80>
10: 8b 50 24 mov 0x24(%eax),%edx
Code; c01c35da <filp_close+2a/80>
13: 85 00 test %eax,(%eax)


1 warning issued. Results may not be reliable.
------

In all cases, the oops is preceeded by the following line in the logs:

get_unused_fd: slot 120 not NULL!


The patches I used were:

xfs-2.4.23-split*
nf-hipac-0.8rev3
2.4.24-pre2-libata1
grsecurity-2.0-rc4-2.4.23


The full kernel config is attached.

If you need more detailed information, please let me know.

TIA,

marek


Attachments:
(No filename) (0.00 B)
signature.asc (189.00 B)
Digital signature
Download all attachments