persistent 2.0.37 oops

Dan Hollis (goemon@sasami.anime.net)
Mon, 2 Aug 1999 01:16:16 -0700 (PDT)


This is a bug that has been recurring for a long long time now (since at
least Dec 1997, circa 2.0.33 kernels). hardware problems have been ruled
out as this exact same oops occurs across several different machines with
completely different hardware configurations.

general protection: 0000
CPU: 0
EIP: 0010:[<001480d8>]
EFLAGS: 00010213
eax: f000e987 ebx: 00000000 ecx: 07d3fc30 edx: f000f84d
esi: 07d3fccc edi: 000001a8 ebp: 07d3fc0c esp: 00bddee8
ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018
Process in.ftpd (pid: 16946, process nr: 36, stackpage=00bdd000)
Stack: 07d3fc0c 00bddf7c 00000000 00000000 10204d75 07d3fc30 00000000 000001a8
00ad3c0c 04c71248 0021441a 00152b5e 07d3fc0c 00bddf78 00001e58 00000000
00000000 00bddf7c 00002000 04c71200 0807e0b8 04c71290 00137d2b 04c71290
Call Trace: [<00152b5e>] [<00137d2b>] [<001237d8>] [<0010a891>]
Code: 8a 40 0d a8 02 74 04 ff 4c 24 10 8b 7c 24 10 39 7b 30 0f 87
wait_queue is bad (eip = 00152153)
q = 04c7124c
*q = 00bddf08
general protection: 0000
CPU: 0
EIP: 0010:[<001480d8>]
EFLAGS: 00010217
eax: f000e987 ebx: 00000000 ecx: 047af438 edx: f000f84d
esi: 047af4d4 edi: 0000019d ebp: 047af414 esp: 06ec7ee8
ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018
Process roxen (pid: 925, process nr: 4, stackpage=06ec7000)
Stack: 047af414 06ec7f7c 00000000 00000800 11a90ad4 047af438 00000000 0000019d
07370c0c 03db4248 01aa0184 00152b5e 047af414 06ec7f78 00001e63 00000800
00000000 06ec7f7c 00002000 03db4200 0b61ab64 03db4290 00137d2b 03db4290
Call Trace: [<00152b5e>] [<00137d2b>] [<001237d8>] [<0010a891>]
Code: 8a 40 0d a8 02 74 04 ff 4c 24 10 8b 7c 24 10 39 7b 30 0f 87

0x1480d8 is in tcp_recvmsg (tcp.c:1661).
1656 while (skb != (struct sk_buff *)&sk->receive_queue)
1657 {
1658 if (before(*seq, skb->seq))
1659 break;
1660 offset = *seq - skb->seq;
1661 if (skb->h.th->syn)
1662 offset--;
1663 if (offset < skb->len)
1664 goto found_ok_skb;
1665 if (skb->h.th->fin)

0x152b5e is in inet_recvmsg (af_inet.c:865).
860
861 /* We may need to bind the socket. */
862 if(inet_autobind(sk) != 0)
863 return(-EAGAIN);
864
865 return(sk->prot->recvmsg(sk, ubuf, size, noblock, flags,addr_len));
866 }
867
868
869 static int inet_sendmsg(struct socket *sock, struct msghdr *msg, int size, int noblock,

0x137d2b is in sock_read (socket.c:383).
378 msg.msg_iovlen=1;
379 msg.msg_control=NULL;
380 iov.iov_base=ubuf;
381 iov.iov_len=size;
382
383 return(sock->ops->recvmsg(sock, &msg, size,(file->f_flags & O_NONBLOCK), 0,&msg.msg_namelen));
384 }
385
386 /*
387 * Write data to a socket. We verify that the user area ubuf..ubuf+size-1 is

0x1237d8 is in sys_read (read_write.c:132).
127 if (error)
128 goto out;
129 error = verify_area(VERIFY_WRITE,buf,count);
130 if (error)
131 goto out;
132 error = file->f_op->read(inode,file,buf,count);
133 out:
134 fput(file, inode);
135 bad_file:
136 return error;

No source file for address 0x10a891.

0x152153 is in def_callback3 (af_inet.c:400).
395 static void def_callback3(struct sock *sk)
396 {
397 if(!sk->dead && sk->wmem_alloc*2 <= sk->sndbuf)
398 {
399 wake_up_interruptible(sk->sleep);
400 sock_wake_async(sk->socket, 2);
401 }
402 }
403
404 /*

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/