On 19:59, Andre Noll wrote: > > 2. This is using CCID2, which has not been maintained for a while. Can > > you please try CCID 3 also, e.g. by using the following sysctls: > > > > sysctl -w net.dccp.default.rx_ccid=3 > > sysctl -w net.dccp.default.tx_ccid=3 > > sysctl -w net.dccp.default.tx_qlen=5 > > sysctl -w net.dccp.default.seq_window=100 > > sysctl -w net.dccp.default.send_ackvec=0 > > Will do this today in the evening and report again tomorrow. There was no sysctl on this system, but echo 3 > /proc/net/dccp/default/rx_ccid should do the same, so I did this (and analogously for the other three values). The bug remains, but the backtrace is slightly different, see below. > > The BUG is caused via the following chain: > > > > 1. dccp_write_xmit(sk, 0) (due to !block) > > 1. dccp_sendmsg > > 2. ccid2_hc_tx_send_packet -> with hctx->ccid2hctx_pipe >= hctx->ccid2hctx_cwnd > > (see above, pipe=cwnd=1) ==> returns 1 > > 3. in dccp_write_xmit(sk, 0): > > if (!block) { /* this is true here */ > > sk_reset_timer(sk, &dp->dccps_xmit_timer, > > msecs_to_jiffies(err)+jiffies) > > ==> BUG() > > | <7>dccp_set_state: listen(c1580030) LISTEN -> CLOSED > > This may be a clue: this socket has not gone past listen state (i.e. not entered server) > > Yes, the bug happens in para_server just at the moment the first client > connects. No data is transfered to the client. I'll look into the kernel > dccp code a bit this evening as well. Found nothing suspicious. Apparently, dccp_connect() in net/cddp/output.c is never called as this is the only place where dp->dccps_xmit_timer.function is set, and the BUG in kernel/timer.c indicates that this function pointer is NULL. Regards, Andre ------------[ cut here ]------------ kernel BUG at kernel/timer.c:407! invalid opcode: 0000 [#1] PREEMPT CPU: 0 EIP: 0060:[<c01256a2>] Not tainted VLI EFLAGS: 00210246 (2.6.20 #14) EIP is at mod_timer+0x1d/0x21 eax: df6e473c ebx: df6e4400 ecx: 00000000 edx: fffc231e esi: df6e4400 edi: db534c4c ebp: 000001a1 esp: dce2be0c ds: 007b es: 007b ss: 0068 Process para_server (pid: 1263, ti=dce2a000 task=de089550 task.ti=dce2a000) Stack: c03747b6 db579d80 c0416949 dce2be20 dce2be98 00000000 00000000 c0511fc0 df6e4400 dce2be98 dce2bedc c03b5470 000001a1 c0443f20 dce2be98 dcf9b800 df788200 c0371128 000001a1 dce2bedc dce2bedc 00000001 dce2bed4 00000000 Call Trace: [<c03747b6>] sk_reset_timer+0xc/0x15 [<c0416949>] dccp_sendmsg+0x105/0x155 [<c03b5470>] inet_sendmsg+0x47/0x5f [<c0371128>] do_sock_write+0x93/0xa2 [<c03711ab>] sock_aio_write+0x74/0x8c [<c03700ff>] pcibios_setup+0x104/0x3b2 [<c0397aad>] inet_csk_accept+0x8b/0x163 [<c015cca0>] do_sync_write+0xc8/0x117 [<c0295251>] write_chan+0x1a5/0x1e4 [<c011959d>] __wake_up+0x4b/0x77 [<c0130990>] autoremove_wake_function+0x0/0x43 [<c028f384>] tty_ldisc_deref+0x51/0x84 [<c0254a32>] copy_to_user+0x2b/0x37 [<c015ce7e>] vfs_write+0x18f/0x194 [<c015cf2e>] sys_write+0x41/0x6a [<c0102ff4>] syscall_call+0x7/0xb ======================= Code: 5f c3 0f 0b eb fe 5b 5e 5f e9 be aa 2f 00 8b 48 0c 85 c9 74 16 39 50 08 74 05 e9 cb fe ff ff 8b 08 85 c9 74 f5 b8 01 00 00 00 c3 <0f> 0b eb fe 83 ec 0c 89 5c 24 04 89 74 24 08 89 c3 8b 00 31 f6 EIP: [<c01256a2>] mod_timer+0x1d/0x21 SS:ESP 0068:dce2be0c -- The only person who always got his work done by Friday was Robinson Crusoe
Attachment:
signature.asc
Description: Digital signature