Re: ath5k AP kernel panic when client uses SCP

From: Bob Copeland
Date: Sat Oct 24 2009 - 08:53:00 EST


>> I'll recompile...
>
> Is this one more useful?

Much! Thanks.

> [ 516.430000] ------------[ cut here ]------------
> [ 516.430000] WARNING: at net/core/dev.c:1566 skb_gso_segment+0x110/0x298()
> [ 516.440000] b44: caps=(0x0, 0x0) len=52 data_len=0 ip_summed=1

So this looks like the ethernet driver b44 instead of ath5k, I think.

> [ 516.450000] Modules linked in: configs aes_generic tun sch_sfq cls_fw sch_htb ipt_MASQUERADE iptable_nat nf_nat xt_MARK iptable_mangle ipt_ULOG xt_recent nf_conn1
> [ 516.480000] Call Trace:
> [ 516.480000] [<80013ac4>] dump_stack+0x8/0x34
> [ 516.480000] [<8002f2a0>] warn_slowpath_common+0x70/0x98
> [ 516.490000] [<8002f308>] warn_slowpath_fmt+0x24/0x30
> [ 516.490000] [<801f0398>] skb_gso_segment+0x110/0x298

...but this is higher up the stack. skb_gso_segment is about a year old
so it would be odd if there were a bug here. Can you do the following?

objdump -S net/core/dev.o, then find the address for skb_gso_segment,
it should look something like this (your numbers and disassembly will
differ):

00004190 <skb_gso_segment>:
*
* It may return NULL if the skb requires no segmentation. This is
* only possible when GSO is used for verifying header integrity.
*/
struct sk_buff *skb_gso_segment(struct sk_buff *skb, int features)
{
4190: 55 push %ebp
4191: 89 e5 mov %esp,%ebp
4193: 57 push %edi
4194: 56 push %esi

Then find whatever 0x4190 (your offset here) + 0x110 is, and pick about
10 lines before and after that and paste it -- the opcodes in the second
column should match up with the code lines below:

> [ 516.650000] [ 516.650000] [ 516.650000] Code: 3c048007 08010d50
> 248436fc <8c820000> 3042c000 10400003 00803821 0801ca7f 00000000 [

Or you can send me the whole objdump -S output off-list if that's easier.

--
Bob Copeland %% www.bobcopeland.com

--
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html