All of lore.kernel.org
 help / color / mirror / Atom feed
* ath6kl_usb - ping problems when compiled for sh4.
@ 2013-03-20 15:22 nick
  2013-03-20 15:34 ` Mohammed Shafi
  0 siblings, 1 reply; 13+ messages in thread
From: nick @ 2013-03-20 15:22 UTC (permalink / raw)
  To: linux-wireless

[-- Attachment #1: Type: text/plain, Size: 1240 bytes --]

Hi
I tried a wek or so ago to get some help with my ping problems.

Essentially, the problem I see is that my AR6004 based USB wifi adaptor can associate with an AP OK, and gets an IP address via DHCP just fine.
But, pings don't work.

I can't ping to the device from another PC on the same subnet, and I can't ping out.

And, I think my problem has something to do with MAC addresses.

According to wireshark, pings are received by the USB wifi device OK, but the echo reply is going back out to the wrong MAC address - so it's never received by the ping originator.

Attached is some debug from the driver - which hopefully someone will understand.

Someone suggested that my problem might be endianness related - but I can see that myself - because Association with the AP, and DHCP wouldn't work if that was the case.
The problem looks to me more like a problem with structure alignment - where the MAC address table is shifted over.


You will see in the attached file that the ping originator MAC address is 20:CF:30:94:83:7B
And, the MAC address of the wifi adaptor itself is 00:03:7F:20:50:59

According to wireshark the MAC address which the echo reply is going back to is neither of these.

Any ideas what's wrong?


Regards

Nick

[-- Attachment #2: ath6kl_debug.txt --]
[-- Type: text/plain, Size: 16919 bytes --]

Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:150 urb:0x89ae0c20
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x892721e0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx: ar=0x86c4d2a0 eid=2, skb=0x892721e0, data=0x88a6b026, len=0x90 status:0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx
Jan  1 00:12:41 H251 kernel: rx 00000000: 2a 00 e1 0f 00 46 00 00 00 00 00 00 00 00 00 00  *....F..........
Jan  1 00:12:41 H251 kernel: rx 00000010: 00 00 02 00 7e 00 00 0f 27 00 df 0b 00 46 00 00  ....~...'....F..
Jan  1 00:12:41 H251 kernel: rx 00000020: 00 00 00 00 00 00 00 00 00 00 02 00 82 00 00 10  ................
Jan  1 00:12:41 H251 kernel: rx 00000030: 25 00 e0 0b 00 46 00 00 00 00 08 42 00 00 ff ff  %%....F.....B....
Jan  1 00:12:41 H251 kernel: rx 00000040: ff ff 08 02 00 00 ff ff ff ff ff ff ff ff ff ff  ................
Jan  1 00:12:41 H251 kernel: rx 00000050: ff ff 20 cf 30 94 83 7b 00 36 aa aa 03 00 00 00  .. .0..{.6......
Jan  1 00:12:41 H251 kernel: rx 00000060: 08 06 00 01 08 00 06 04 00 01 20 cf 30 94 83 7b  .......... .0..{
Jan  1 00:12:41 H251 kernel: rx 00000070: c0 a8 00 65 00 00 00 00 00 00 c0 a8 00 07 00 00  ...e............
Jan  1 00:12:41 H251 kernel: rx 00000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_data_tx: skb=0x87e74c00, data=0x89047832, len=0x2a
Jan  1 00:12:41 H251 kernel: ath6kl: TSRS IE enabled::MinPhy 0->NominalPhy ===> 0
Jan  1 00:12:41 H251 kernel: ath6kl: sending create_pstream_cmd: ac=0  tsid:255
Jan  1 00:12:41 H251 kernel: ath6kl: wmi tx id 5 len 64 flag 0
Jan  1 00:12:41 H251 kernel: wmi tx 00000000: 00 00 00 00 00 00 00 00 88 13 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi tx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi tx 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi tx 00000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00  ................
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_control_tx: skb=0x87e74840, len=0x46 eid =1
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_htc_pipe_tx: endPointId: 1, buffer: 0x888DECC2, length: 70
Jan  1 00:12:41 H251 kernel: ath6kl: htc_try_send: (queue:0x89823A2C depth:1)
Jan  1 00:12:41 H251 kernel: ath6kl: get_htc_packet_credit_based: got head packet:0x87E493A4 , queue depth: 1
Jan  1 00:12:41 H251 kernel: ath6kl: get_htc_packet_credit_based: creds required:1got:1
Jan  1 00:12:41 H251 kernel: ath6kl: get_htc_packet_credit_based: host needs credits
Jan  1 00:12:41 H251 kernel: ath6kl: htc_issue_packets: queue: 0x898239CC, pkts 1
Jan  1 00:12:41 H251 kernel: ath6kl: hif pipe send
Jan  1 00:12:41 H251 kernel: ath6kl: +ath6kl_usb_send pipe : 0, buf:0x87e74840
Jan  1 00:12:41 H251 kernel: ath6kl: athusb bulk send submit:0, 0xC0008200 (ep:0x01), 76 bytes
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_data_tx
Jan  1 00:12:41 H251 kernel: tx 00000000: 00 00 00 00 00 00 7f 20 50 59 00 24 00 03 7f 20  ....... PY.$... 
Jan  1 00:12:41 H251 kernel: tx 00000010: 50 59 00 24 aa aa 03 00 00 00 08 06 00 01 08 00  PY.$............
Jan  1 00:12:41 H251 kernel: tx 00000020: 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07 20 cf  ....... PY.... .
Jan  1 00:12:41 H251 kernel: tx 00000030: 30 94 83 7b c0 a8 00 65                          0..{...e
Jan  1 00:12:41 H251 kernel: ath6kl: p2p_flowctrl get con_id 0 00:03:7f:20:50:59
Jan  1 00:12:41 H251 kernel: ath6kl: p2p_flowctrl schedule pkt 86c4d2a0 send
Jan  1 00:12:41 H251 kernel: ath6kl: 
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_usb_usb_transmit_complete: pipe: 0, stat:0, len:76
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:10 urb:0x88930540
Jan  1 00:12:41 H251 kernel: ath6kl_htc_pipe_tx: endPointId: 2, buffer: 0x89047824, length: 56
Jan  1 00:12:41 H251 kernel: ath6kl: htc_try_send: (queue:0x89823B10 depth:1)
Jan  1 00:12:41 H251 kernel: ath6kl: get_htc_packet_credit_based: got head packet:0x87FF65CC , queue depth: 1
Jan  1 00:12:41 H251 kernel: ath6kl: get_htc_packet_credit_based: creds required:1got:7
Jan  1 00:12:41 H251 kernel: ath6kl: htc_issue_packets: queue: 0x89823AB0, pkts 1
Jan  1 00:12:41 H251 kernel: ath6kl: hif pipe send
Jan  1 00:12:41 H251 kernel: ath6kl: +ath6kl_usb_send pipe : 1, buf:0x87e74c00
Jan  1 00:12:41 H251 kernel: ath6kl: athusb bulk send submit:1, 0xC0010200 (ep:0x02), 62 bytes
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_usb_usb_transmit_complete: pipe: 1, stat:0, len:62
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:52 urb:0x889301c0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x892721e0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x87e742a0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x87e747a0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x87e745c0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x87e740c0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x89be2900
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x89be2720
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x89be2d60
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x89be22c0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x89be29a0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x89be2ae0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x89bbb6c0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x88a3a820
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x88a3a960
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x88a3a8c0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb: bulk recv submit:6, 0xC0410280(ep:0x82), 2048 bytes buf:0x89272780
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:52 urb:0x87db10a0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x89272280
Jan  1 00:12:41 H251 kernel: ath6kl:   Report indicated 1 credits to distribute
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x892726e0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx: ar=0x86c4d2a0 eid=1, skb=0x892726e0, data=0x87ffd026, len=0x2e status:0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx
Jan  1 00:12:41 H251 kernel: rx 00000000: 14 90 00 00 00 00 0d 1f 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: rx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: rx 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00        ..............
Jan  1 00:12:41 H251 kernel: ath6kl: wmi rx id 36884 len 40
Jan  1 00:12:41 H251 kernel: wmi rx 00000000: 0d 1f 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi rx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi rx 00000020: 00 00 00 00 00 00 00 00                          ........
Jan  1 00:12:41 H251 kernel: ath6kl: WMI_FLOWCTRL_IND_EVENTID
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x89be24a0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx: ar=0x86c4d2a0 eid=1, skb=0x89be24a0, data=0x88a1c026, len=0x2e status:0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx
Jan  1 00:12:41 H251 kernel: rx 00000000: 14 90 00 00 00 00 0d 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: rx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: rx 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00        ..............
Jan  1 00:12:41 H251 kernel: ath6kl: wmi rx id 36884 len 40
Jan  1 00:12:41 H251 kernel: wmi rx 00000000: 0d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi rx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi rx 00000020: 00 00 00 00 00 00 00 00                          ........
Jan  1 00:12:41 H251 kernel: ath6kl: WMI_FLOWCTRL_IND_EVENTID
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb xmit callback buf:0x87e74840
Jan  1 00:12:41 H251 kernel: ath6kl: do_send_completion: calling ep 1, send complete multiple callback(1 pkts)
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_tx_complete: skb=0x87e74840 data=0x888decc2 len=0x46 eid=1 OK
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb xmit callback buf:0x87e74c00
Jan  1 00:12:41 H251 kernel: ath6kl: do_send_completion: calling ep 2, send complete multiple callback(1 pkts)
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_tx_complete: skb=0x87e74c00 data=0x89047824 len=0x38 eid=2 OK
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:52 urb:0x87db1120
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x89be2680
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx: ar=0x86c4d2a0 eid=1, skb=0x89be2680, data=0x8896f026, len=0x2e status:0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx
Jan  1 00:12:41 H251 kernel: rx 00000000: 14 90 00 00 00 00 0d 1f 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: rx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: rx 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00        ..............
Jan  1 00:12:41 H251 kernel: ath6kl: wmi rx id 36884 len 40
Jan  1 00:12:41 H251 kernel: wmi rx 00000000: 0d 1f 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi rx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi rx 00000020: 00 00 00 00 00 00 00 00                          ........
Jan  1 00:12:41 H251 kernel: ath6kl: WMI_FLOWCTRL_IND_EVENTID
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:52 urb:0x87db11a0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x89be2860
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx: ar=0x86c4d2a0 eid=1, skb=0x89be2860, data=0x89035026, len=0x2e status:0
Jan  1 00:12:41 H251 kernel: ath6kl: ath6kl_rx
Jan  1 00:12:41 H251 kernel: rx 00000000: 14 90 00 00 00 00 0d 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: rx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: rx 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00        ..............
Jan  1 00:12:41 H251 kernel: ath6kl: wmi rx id 36884 len 40
Jan  1 00:12:41 H251 kernel: wmi rx 00000000: 0d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi rx 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
Jan  1 00:12:41 H251 kernel: wmi rx 00000020: 00 00 00 00 00 00 00 00                          ........
Jan  1 00:12:41 H251 kernel: ath6kl: WMI_FLOWCTRL_IND_EVENTID
Jan  1 00:12:46 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:16 urb:0x87db1220
Jan  1 00:12:46 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x89be2180
Jan  1 00:12:46 H251 kernel: ath6kl: ath6kl_rx: ar=0x86c4d2a0 eid=1, skb=0x89be2180, data=0x89bd6026, len=0xa status:0
Jan  1 00:12:46 H251 kernel: ath6kl: ath6kl_rx
Jan  1 00:12:46 H251 kernel: rx 00000000: 07 10 00 00 00 00 00 00 00 00                    ..........
Jan  1 00:12:46 H251 kernel: ath6kl: wmi rx id 4103 len 4
Jan  1 00:12:46 H251 kernel: wmi rx 00000000: 00 00 00 00                                      ....
Jan  1 00:12:46 H251 kernel: ath6kl: WMI_PSTREAM_TIMEOUT_EVENTID
Jan  1 00:12:48 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:277 urb:0x87db12a0
Jan  1 00:12:48 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x89be2540
Jan  1 00:12:48 H251 kernel: ath6kl: ath6kl_rx: ar=0x86c4d2a0 eid=2, skb=0x89be2540, data=0x88a7e026, len=0x10f status:0
Jan  1 00:12:48 H251 kernel: ath6kl: ath6kl_rx
Jan  1 00:12:48 H251 kernel: rx 00000000: 24 00 2c 00 00 46 00 00 00 00 00 00 00 00 00 00  $.,..F..........
Jan  1 00:12:48 H251 kernel: rx 00000010: 00 00 02 00 82 00 00 10 25 00 e0 0b 00 46 00 00  ........%%....F..
Jan  1 00:12:48 H251 kernel: rx 00000020: 00 00 00 00 00 00 00 00 00 00 02 00 7e 00 00 11  ............~...
Jan  1 00:12:48 H251 kernel: rx 00000030: 26 00 e1 0b 00 46 00 00 00 00 08 62 00 00 ff ff  &....F.....b....
Jan  1 00:12:48 H251 kernel: rx 00000040: ff ff 08 22 00 00 ff ff ff ff ff ff ff ff ff ff  ..."............
Jan  1 00:12:48 H251 kernel: rx 00000050: ff ff 20 cf 30 94 83 7b 00 b5 aa aa 03 00 00 00  .. .0..{........
Jan  1 00:12:48 H251 kernel: rx 00000060: 08 00 45 00 00 ad b2 42 00 00 80 11 c6 f0 c0 a8  ..E....B........
Jan  1 00:12:48 H251 kernel: rx 00000070: 00 65 ff ff ff ff 44 5c 44 5c 00 99 cd 56 7b 22  .e....D\D\...V{"
Jan  1 00:12:48 H251 kernel: rx 00000080: 68 6f 73 74 5f 69 6e 74 22 3a 20 33 30 31 31 37  host_int": 30117
Jan  1 00:12:48 H251 kernel: rx 00000090: 32 33 33 35 2c 20 22 76 65 72 73 69 6f 6e 22 3a  2335, "version":
Jan  1 00:12:48 H251 kernel: rx 000000a0: 20 5b 31 2c 20 38 5d 2c 20 22 64 69 73 70 6c 61   [1, 8], "displa
Jan  1 00:12:48 H251 kernel: rx 000000b0: 79 6e 61 6d 65 22 3a 20 22 33 30 31 31 37 32 33  yname": "3011723
Jan  1 00:12:48 H251 kernel: rx 000000c0: 33 35 22 2c 20 22 70 6f 72 74 22 3a 20 31 37 35  35", "port": 175
Jan  1 00:12:48 H251 kernel: rx 000000d0: 30 30 2c 20 22 6e 61 6d 65 73 70 61 63 65 73 22  00, "namespaces"
Jan  1 00:12:48 H251 kernel: rx 000000e0: 3a 20 5b 31 35 37 34 33 37 30 37 32 2c 20 31 36  : [157437072, 16
Jan  1 00:12:48 H251 kernel: rx 000000f0: 36 34 32 34 30 39 36 2c 20 31 35 37 34 31 36 39  6424096, 1574169
Jan  1 00:12:48 H251 kernel: rx 00000100: 37 30 2c 20 31 39 33 34 36 35 34 36 36 5d 7d     70, 193465466]}
Jan  1 00:12:48 H251 kernel: ath6kl: ath6kl_usb_recv_complete: recv pipe: 6, stat:0, len:277 urb:0x87db1320
Jan  1 00:12:48 H251 kernel: ath6kl: ath6kl usb recv callback buf:0x89be2e00
Jan  1 00:12:48 H251 kernel: ath6kl: ath6kl_rx: ar=0x86c4d2a0 eid=2, skb=0x89be2e00, data=0x88a7c026, len=0x10f status:0
Jan  1 00:12:48 H251 kernel: ath6kl: ath6kl_rx
Jan  1 00:12:48 H251 kernel: rx 00000000: 24 00 2d 00 00 46 00 00 00 00 00 00 00 00 00 00  $.-..F..........
Jan  1 00:12:48 H251 kernel: rx 00000010: 00 00 02 00 7e 00 00 11 26 00 e1 0b 00 46 00 00  ....~...&....F..
Jan  1 00:12:48 H251 kernel: rx 00000020: 00 00 00 00 00 00 00 00 00 00 02 00 82 00 00 12  ................
Jan  1 00:12:48 H251 kernel: rx 00000030: 25 00 e2 0b 00 46 00 00 00 00 08 42 00 00 ff ff  %%....F.....B....
Jan  1 00:12:48 H251 kernel: rx 00000040: ff ff 08 02 00 00 ff ff ff ff ff ff ff ff ff ff  ................
Jan  1 00:12:48 H251 kernel: rx 00000050: ff ff 20 cf 30 94 83 7b 00 b5 aa aa 03 00 00 00  .. .0..{........
Jan  1 00:12:48 H251 kernel: rx 00000060: 08 00 45 00 00 ad b2 43 00 00 80 11 05 48 c0 a8  ..E....C.....H..
Jan  1 00:12:48 H251 kernel: rx 00000070: 00 65 c0 a8 00 ff 44 5c 44 5c 00 99 0b af 7b 22  .e....D\D\....{"
Jan  1 00:12:48 H251 kernel: rx 00000080: 68 6f 73 74 5f 69 6e 74 22 3a 20 33 30 31 31 37  host_int": 30117
Jan  1 00:12:48 H251 kernel: rx 00000090: 32 33 33 35 2c 20 22 76 65 72 73 69 6f 6e 22 3a  2335, "version":
Jan  1 00:12:48 H251 kernel: rx 000000a0: 20 5b 31 2c 20 38 5d 2c 20 22 64 69 73 70 6c 61   [1, 8], "displa
Jan  1 00:12:48 H251 kernel: rx 000000b0: 79 6e 61 6d 65 22 3a 20 22 33 30 31 31 37 32 33  yname": "3011723
Jan  1 00:12:48 H251 kernel: rx 000000c0: 33 35 22 2c 20 22 70 6f 72 74 22 3a 20 31 37 35  35", "port": 175
Jan  1 00:12:48 H251 kernel: rx 000000d0: 30 30 2c 20 22 6e 61 6d 65 73 70 61 63 65 73 22  00, "namespaces"
Jan  1 00:12:48 H251 kernel: rx 000000e0: 3a 20 5b 31 35 37 34 33 37 30 37 32 2c 20 31 36  : [157437072, 16
Jan  1 00:12:48 H251 kernel: rx 000000f0: 36 34 32 34 30 39 36 2c 20 31 35 37 34 31 36 39  6424096, 1574169
Jan  1 00:12:48 H251 kernel: rx 00000100: 37 30 2c 20 31 39 33 34 36 35 34 36 36 5d 7d     70, 193465466]}


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-20 15:22 ath6kl_usb - ping problems when compiled for sh4 nick
@ 2013-03-20 15:34 ` Mohammed Shafi
  2013-03-20 16:06   ` nick
  0 siblings, 1 reply; 13+ messages in thread
From: Mohammed Shafi @ 2013-03-20 15:34 UTC (permalink / raw)
  To: nick; +Cc: linux-wireless

+ ath6kl-devel

On Wed, Mar 20, 2013 at 8:52 PM,  <nick@nhthomas.freeserve.co.uk> wrote:
> Hi
> I tried a wek or so ago to get some help with my ping problems.
>
> Essentially, the problem I see is that my AR6004 based USB wifi adaptor can associate with an AP OK, and gets an IP address via DHCP just fine.
> But, pings don't work.
>
> I can't ping to the device from another PC on the same subnet, and I can't ping out.
>
> And, I think my problem has something to do with MAC addresses.
>
> According to wireshark, pings are received by the USB wifi device OK, but the echo reply is going back out to the wrong MAC address - so it's never received by the ping originator.
>
> Attached is some debug from the driver - which hopefully someone will understand.
>
> Someone suggested that my problem might be endianness related - but I can see that myself - because Association with the AP, and DHCP wouldn't work if that was the case.
> The problem looks to me more like a problem with structure alignment - where the MAC address table is shifted over.
>
>
> You will see in the attached file that the ping originator MAC address is 20:CF:30:94:83:7B
> And, the MAC address of the wifi adaptor itself is 00:03:7F:20:50:59
>
> According to wireshark the MAC address which the echo reply is going back to is neither of these.
>
> Any ideas what's wrong?

care to check with the latest driver and firmware
https://github.com/cernekee/linux-firmware/tree/master/ath6k/AR6004
http://linuxwireless.org/download/compat-wireless-2.6/

AR6004 is pretty decent working.

>
>
> Regards
>
> Nick



-- 
thanks,
shafi

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-20 15:34 ` Mohammed Shafi
@ 2013-03-20 16:06   ` nick
  2013-03-20 17:03     ` nick
  0 siblings, 1 reply; 13+ messages in thread
From: nick @ 2013-03-20 16:06 UTC (permalink / raw)
  To: Mohammed Shafi; +Cc: linux-wireless


> + ath6kl-devel
>
>
> care to check with the latest driver and firmware
> https://github.com/cernekee/linux-firmware/tree/master/ath6k/AR6004
> http://linuxwireless.org/download/compat-wireless-2.6/
>
> AR6004 is pretty decent working.
>

Hi, Yes, I have the latest driver - from Qualcomm.

I think my problem is that I've compiled it for 'sh4' - and it's not guaranteed to work on that platform.

And, indeed it doesn't.

I've just sent out a ping from the wifi adaptor to a PC on the local subnet.
Wireshark says that a ping request was sent out from Src=00:03:7f:20:50:59 (which is correct),
And the destination is Dst=7f:20:50:59:00:5c (which is wrong).

The destination MAC address should be 20:cf:30:94:83:7b .

But, look at the two Src and Dst MAC addresses - they are very similar ! !!?!?!?!

I don't understand where the Dst MAC comes from. That's my bug I think.


Regards

Nick

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-20 16:06   ` nick
@ 2013-03-20 17:03     ` nick
  2013-03-21 11:41       ` Mohammed Shafi
  0 siblings, 1 reply; 13+ messages in thread
From: nick @ 2013-03-20 17:03 UTC (permalink / raw)
  To: Mohammed Shafi; +Cc: linux-wireless


Here is another example, taken from Wireshark.
It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59

This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.

7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
20 cf 30 94 83 7b c0 a8 00 65

What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
But that's wrong. It should be 20:cf:30:94:83:7b .

The other parts look right though:
00:03:7f:20:50:59 is the MAC of the wifi device.
c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
c0 a8 00 07 is the IP address of the wifi adaptor itself.

So, where in the code is the first 6 bytes generated ?


Regards

Nick

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-20 17:03     ` nick
@ 2013-03-21 11:41       ` Mohammed Shafi
  2013-03-21 13:34         ` nick
  0 siblings, 1 reply; 13+ messages in thread
From: Mohammed Shafi @ 2013-03-21 11:41 UTC (permalink / raw)
  To: nick; +Cc: linux-wireless

On Wed, Mar 20, 2013 at 10:33 PM,  <nick@nhthomas.freeserve.co.uk> wrote:
>
> Here is another example, taken from Wireshark.
> It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
>
> This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
>
> 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
> 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
> 20 cf 30 94 83 7b c0 a8 00 65
>
> What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
> But that's wrong. It should be 20:cf:30:94:83:7b .
>
> The other parts look right though:
> 00:03:7f:20:50:59 is the MAC of the wifi device.
> c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
> c0 a8 00 07 is the IP address of the wifi adaptor itself.

let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.

>
> So, where in the code is the first 6 bytes generated ?
>
>
> Regards
>
> Nick



-- 
thanks,
shafi

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-21 11:41       ` Mohammed Shafi
@ 2013-03-21 13:34         ` nick
  2013-03-21 14:09           ` nick
  0 siblings, 1 reply; 13+ messages in thread
From: nick @ 2013-03-21 13:34 UTC (permalink / raw)
  To: Mohammed Shafi; +Cc: linux-wireless

Hi Mohammed,

What do you need to me to do on this?
I see that function in the wmi.c file.

Do you want me to add some debug printk's in there somewhere?

Regards

Nick

> Message Received: Mar 21 2013, 11:42 AM
> From: "Mohammed Shafi"
> To: nick@nhthomas.freeserve.co.uk
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>
> On Wed, Mar 20, 2013 at 10:33 PM, wrote:
> >
> > Here is another example, taken from Wireshark.
> > It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
> >
> > This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
> >
> > 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
> > 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
> > 20 cf 30 94 83 7b c0 a8 00 65
> >
> > What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
> > But that's wrong. It should be 20:cf:30:94:83:7b .
> >
> > The other parts look right though:
> > 00:03:7f:20:50:59 is the MAC of the wifi device.
> > c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
> > c0 a8 00 07 is the IP address of the wifi adaptor itself.
>
> let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.
>
> >
> > So, where in the code is the first 6 bytes generated ?
> >
> >
> > Regards
> >
> > Nick
>
>
>
> --
> thanks,
> shafi
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-21 13:34         ` nick
@ 2013-03-21 14:09           ` nick
  2013-03-21 14:25             ` nick
  0 siblings, 1 reply; 13+ messages in thread
From: nick @ 2013-03-21 14:09 UTC (permalink / raw)
  To: Mohammed Shafi; +Cc: linux-wireless


Hi Mohammed,

I've added some debug at the top of ath6kl_wmi_dix_2_dot3 function.

Just after:

eth_hdr = (struct ethhdr *) skb->data;
type = eth_hdr->h_proto;

I added some debug to print all the values of eth_hdr->h_dest and eth_hdr->h_source .
And, all look correct at that point.

Regards

Nick


> Message Received: Mar 21 2013, 01:35 PM
> From: nick@nhthomas.freeserve.co.uk
> To: "Mohammed Shafi"
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>
> Hi Mohammed,
>
> What do you need to me to do on this?
> I see that function in the wmi.c file.
>
> Do you want me to add some debug printk's in there somewhere?
>
> Regards
>
> Nick
>
> > Message Received: Mar 21 2013, 11:42 AM
> > From: "Mohammed Shafi"
> > To: nick@nhthomas.freeserve.co.uk
> > Cc: linux-wireless@vger.kernel.org
> > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >
> > On Wed, Mar 20, 2013 at 10:33 PM, wrote:
> > >
> > > Here is another example, taken from Wireshark.
> > > It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
> > >
> > > This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
> > >
> > > 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
> > > 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
> > > 20 cf 30 94 83 7b c0 a8 00 65
> > >
> > > What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
> > > But that's wrong. It should be 20:cf:30:94:83:7b .
> > >
> > > The other parts look right though:
> > > 00:03:7f:20:50:59 is the MAC of the wifi device.
> > > c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
> > > c0 a8 00 07 is the IP address of the wifi adaptor itself.
> >
> > let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.
> >
> > >
> > > So, where in the code is the first 6 bytes generated ?
> > >
> > >
> > > Regards
> > >
> > > Nick
> >
> >
> >
> > --
> > thanks,
> > shafi
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-21 14:09           ` nick
@ 2013-03-21 14:25             ` nick
  2013-03-22  5:28               ` Mohammed Shafi
  0 siblings, 1 reply; 13+ messages in thread
From: nick @ 2013-03-21 14:25 UTC (permalink / raw)
  To: Mohammed Shafi; +Cc: linux-wireless

Hi Mohammed,

OK, so I added the same printks further down in that function.
There is a memcpy in there, and I added the same debug just after the memcpy.

And, the eth_hdr->h_dest has been changed to a wrong MAC address - by something.

And, it must be something wrong in skb_push .


Regards

Nick




> Message Received: Mar 21 2013, 02:09 PM
> From: nick@nhthomas.freeserve.co.uk
> To: "Mohammed Shafi"
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>
>
> Hi Mohammed,
>
> I've added some debug at the top of ath6kl_wmi_dix_2_dot3 function.
>
> Just after:
>
> eth_hdr = (struct ethhdr *) skb->data;
> type = eth_hdr->h_proto;
>
> I added some debug to print all the values of eth_hdr->h_dest and eth_hdr->h_source .
> And, all look correct at that point.
>
> Regards
>
> Nick
>
>
> > Message Received: Mar 21 2013, 01:35 PM
> > From: nick@nhthomas.freeserve.co.uk
> > To: "Mohammed Shafi"
> > Cc: linux-wireless@vger.kernel.org
> > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >
> > Hi Mohammed,
> >
> > What do you need to me to do on this?
> > I see that function in the wmi.c file.
> >
> > Do you want me to add some debug printk's in there somewhere?
> >
> > Regards
> >
> > Nick
> >
> > > Message Received: Mar 21 2013, 11:42 AM
> > > From: "Mohammed Shafi"
> > > To: nick@nhthomas.freeserve.co.uk
> > > Cc: linux-wireless@vger.kernel.org
> > > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> > >
> > > On Wed, Mar 20, 2013 at 10:33 PM, wrote:
> > > >
> > > > Here is another example, taken from Wireshark.
> > > > It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
> > > >
> > > > This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
> > > >
> > > > 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
> > > > 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
> > > > 20 cf 30 94 83 7b c0 a8 00 65
> > > >
> > > > What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
> > > > But that's wrong. It should be 20:cf:30:94:83:7b .
> > > >
> > > > The other parts look right though:
> > > > 00:03:7f:20:50:59 is the MAC of the wifi device.
> > > > c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
> > > > c0 a8 00 07 is the IP address of the wifi adaptor itself.
> > >
> > > let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.
> > >
> > > >
> > > > So, where in the code is the first 6 bytes generated ?
> > > >
> > > >
> > > > Regards
> > > >
> > > > Nick
> > >
> > >
> > >
> > > --
> > > thanks,
> > > shafi
> > > --
> > > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> > > the body of a message to majordomo@vger.kernel.org
> > > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > >
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-21 14:25             ` nick
@ 2013-03-22  5:28               ` Mohammed Shafi
  2013-03-22  7:10                 ` nick
                                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: Mohammed Shafi @ 2013-03-22  5:28 UTC (permalink / raw)
  To: nick; +Cc: linux-wireless

On Thu, Mar 21, 2013 at 7:55 PM,  <nick@nhthomas.freeserve.co.uk> wrote:
> Hi Mohammed,
>
> OK, so I added the same printks further down in that function.
> There is a memcpy in there, and I added the same debug just after the memcpy.
>
> And, the eth_hdr->h_dest has been changed to a wrong MAC address - by something.
>
> And, it must be something wrong in skb_push .

good Nick, I' ll try to analyze this.
what platform are you using ? (is it a big/little endian)

>
>
> Regards
>
> Nick
>
>
>
>
>> Message Received: Mar 21 2013, 02:09 PM
>> From: nick@nhthomas.freeserve.co.uk
>> To: "Mohammed Shafi"
>> Cc: linux-wireless@vger.kernel.org
>> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>>
>>
>> Hi Mohammed,
>>
>> I've added some debug at the top of ath6kl_wmi_dix_2_dot3 function.
>>
>> Just after:
>>
>> eth_hdr = (struct ethhdr *) skb->data;
>> type = eth_hdr->h_proto;
>>
>> I added some debug to print all the values of eth_hdr->h_dest and eth_hdr->h_source .
>> And, all look correct at that point.
>>
>> Regards
>>
>> Nick
>>
>>
>> > Message Received: Mar 21 2013, 01:35 PM
>> > From: nick@nhthomas.freeserve.co.uk
>> > To: "Mohammed Shafi"
>> > Cc: linux-wireless@vger.kernel.org
>> > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>> >
>> > Hi Mohammed,
>> >
>> > What do you need to me to do on this?
>> > I see that function in the wmi.c file.
>> >
>> > Do you want me to add some debug printk's in there somewhere?
>> >
>> > Regards
>> >
>> > Nick
>> >
>> > > Message Received: Mar 21 2013, 11:42 AM
>> > > From: "Mohammed Shafi"
>> > > To: nick@nhthomas.freeserve.co.uk
>> > > Cc: linux-wireless@vger.kernel.org
>> > > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>> > >
>> > > On Wed, Mar 20, 2013 at 10:33 PM, wrote:
>> > > >
>> > > > Here is another example, taken from Wireshark.
>> > > > It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
>> > > >
>> > > > This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
>> > > >
>> > > > 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
>> > > > 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
>> > > > 20 cf 30 94 83 7b c0 a8 00 65
>> > > >
>> > > > What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
>> > > > But that's wrong. It should be 20:cf:30:94:83:7b .
>> > > >
>> > > > The other parts look right though:
>> > > > 00:03:7f:20:50:59 is the MAC of the wifi device.
>> > > > c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
>> > > > c0 a8 00 07 is the IP address of the wifi adaptor itself.
>> > >
>> > > let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.
>> > >
>> > > >
>> > > > So, where in the code is the first 6 bytes generated ?
>> > > >
>> > > >
>> > > > Regards
>> > > >
>> > > > Nick
>> > >
>> > >
>> > >
>> > > --
>> > > thanks,
>> > > shafi
>> > > --
>> > > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>> > > the body of a message to majordomo@vger.kernel.org
>> > > More majordomo info at http://vger.kernel.org/majordomo-info.html
>> > >
>> >
>> > --
>> > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>> > the body of a message to majordomo@vger.kernel.org
>> > More majordomo info at http://vger.kernel.org/majordomo-info.html
>> >
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
>



-- 
thanks,
shafi

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-22  5:28               ` Mohammed Shafi
@ 2013-03-22  7:10                 ` nick
  2013-03-22  7:15                 ` nick
                                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 13+ messages in thread
From: nick @ 2013-03-22  7:10 UTC (permalink / raw)
  To: Mohammed Shafi; +Cc: linux-wireless


Hi Mohammed.

The platform is H251, made by ST MicroElectronics.

The H251 is an intergrated chip, which has an ST7105 inside.
The ST7105 has a ST40-300, which has an SH4 CPU at its core.

The SH4 can be run in big or little endian mode.
I will try to find out what mode we are using.


Regards

Nick




> Message Received: Mar 22 2013, 05:28 AM
> From: "Mohammed Shafi"
> To: nick@nhthomas.freeserve.co.uk
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>
> On Thu, Mar 21, 2013 at 7:55 PM, wrote:
> > Hi Mohammed,
> >
> > OK, so I added the same printks further down in that function.
> > There is a memcpy in there, and I added the same debug just after the memcpy.
> >
> > And, the eth_hdr->h_dest has been changed to a wrong MAC address - by something.
> >
> > And, it must be something wrong in skb_push .
>
> good Nick, I' ll try to analyze this.
> what platform are you using ? (is it a big/little endian)
>
> >
> >
> > Regards
> >
> > Nick
> >
> >
> >
> >
> >> Message Received: Mar 21 2013, 02:09 PM
> >> From: nick@nhthomas.freeserve.co.uk
> >> To: "Mohammed Shafi"
> >> Cc: linux-wireless@vger.kernel.org
> >> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >>
> >>
> >> Hi Mohammed,
> >>
> >> I've added some debug at the top of ath6kl_wmi_dix_2_dot3 function.
> >>
> >> Just after:
> >>
> >> eth_hdr = (struct ethhdr *) skb->data;
> >> type = eth_hdr->h_proto;
> >>
> >> I added some debug to print all the values of eth_hdr->h_dest and eth_hdr->h_source .
> >> And, all look correct at that point.
> >>
> >> Regards
> >>
> >> Nick
> >>
> >>
> >> > Message Received: Mar 21 2013, 01:35 PM
> >> > From: nick@nhthomas.freeserve.co.uk
> >> > To: "Mohammed Shafi"
> >> > Cc: linux-wireless@vger.kernel.org
> >> > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >> >
> >> > Hi Mohammed,
> >> >
> >> > What do you need to me to do on this?
> >> > I see that function in the wmi.c file.
> >> >
> >> > Do you want me to add some debug printk's in there somewhere?
> >> >
> >> > Regards
> >> >
> >> > Nick
> >> >
> >> > > Message Received: Mar 21 2013, 11:42 AM
> >> > > From: "Mohammed Shafi"
> >> > > To: nick@nhthomas.freeserve.co.uk
> >> > > Cc: linux-wireless@vger.kernel.org
> >> > > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >> > >
> >> > > On Wed, Mar 20, 2013 at 10:33 PM, wrote:
> >> > > >
> >> > > > Here is another example, taken from Wireshark.
> >> > > > It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
> >> > > >
> >> > > > This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
> >> > > >
> >> > > > 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
> >> > > > 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
> >> > > > 20 cf 30 94 83 7b c0 a8 00 65
> >> > > >
> >> > > > What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
> >> > > > But that's wrong. It should be 20:cf:30:94:83:7b .
> >> > > >
> >> > > > The other parts look right though:
> >> > > > 00:03:7f:20:50:59 is the MAC of the wifi device.
> >> > > > c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
> >> > > > c0 a8 00 07 is the IP address of the wifi adaptor itself.
> >> > >
> >> > > let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.
> >> > >
> >> > > >
> >> > > > So, where in the code is the first 6 bytes generated ?
> >> > > >
> >> > > >
> >> > > > Regards
> >> > > >
> >> > > > Nick
> >> > >
> >> > >
> >> > >
> >> > > --
> >> > > thanks,
> >> > > shafi
> >> > > --
> >> > > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> > > the body of a message to majordomo@vger.kernel.org
> >> > > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> > >
> >> >
> >> > --
> >> > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> > the body of a message to majordomo@vger.kernel.org
> >> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> >
> >>
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at http://vger.kernel.org/majordomo-info.html
> >>
> >
>
>
>
> --
> thanks,
> shafi
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-22  5:28               ` Mohammed Shafi
  2013-03-22  7:10                 ` nick
@ 2013-03-22  7:15                 ` nick
  2013-04-15 10:20                 ` nick
  2013-04-19 16:02                 ` nick
  3 siblings, 0 replies; 13+ messages in thread
From: nick @ 2013-03-22  7:15 UTC (permalink / raw)
  To: Mohammed Shafi; +Cc: linux-wireless


Hi Mohammed,

We are using the SH4 in little endian mode.


Regards

Nick

> Message Received: Mar 22 2013, 05:28 AM
> From: "Mohammed Shafi"
> To: nick@nhthomas.freeserve.co.uk
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>
> On Thu, Mar 21, 2013 at 7:55 PM, wrote:
> > Hi Mohammed,
> >
> > OK, so I added the same printks further down in that function.
> > There is a memcpy in there, and I added the same debug just after the memcpy.
> >
> > And, the eth_hdr->h_dest has been changed to a wrong MAC address - by something.
> >
> > And, it must be something wrong in skb_push .
>
> good Nick, I' ll try to analyze this.
> what platform are you using ? (is it a big/little endian)
>
> >
> >
> > Regards
> >
> > Nick
> >
> >
> >
> >
> >> Message Received: Mar 21 2013, 02:09 PM
> >> From: nick@nhthomas.freeserve.co.uk
> >> To: "Mohammed Shafi"
> >> Cc: linux-wireless@vger.kernel.org
> >> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >>
> >>
> >> Hi Mohammed,
> >>
> >> I've added some debug at the top of ath6kl_wmi_dix_2_dot3 function.
> >>
> >> Just after:
> >>
> >> eth_hdr = (struct ethhdr *) skb->data;
> >> type = eth_hdr->h_proto;
> >>
> >> I added some debug to print all the values of eth_hdr->h_dest and eth_hdr->h_source .
> >> And, all look correct at that point.
> >>
> >> Regards
> >>
> >> Nick
> >>
> >>
> >> > Message Received: Mar 21 2013, 01:35 PM
> >> > From: nick@nhthomas.freeserve.co.uk
> >> > To: "Mohammed Shafi"
> >> > Cc: linux-wireless@vger.kernel.org
> >> > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >> >
> >> > Hi Mohammed,
> >> >
> >> > What do you need to me to do on this?
> >> > I see that function in the wmi.c file.
> >> >
> >> > Do you want me to add some debug printk's in there somewhere?
> >> >
> >> > Regards
> >> >
> >> > Nick
> >> >
> >> > > Message Received: Mar 21 2013, 11:42 AM
> >> > > From: "Mohammed Shafi"
> >> > > To: nick@nhthomas.freeserve.co.uk
> >> > > Cc: linux-wireless@vger.kernel.org
> >> > > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >> > >
> >> > > On Wed, Mar 20, 2013 at 10:33 PM, wrote:
> >> > > >
> >> > > > Here is another example, taken from Wireshark.
> >> > > > It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
> >> > > >
> >> > > > This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
> >> > > >
> >> > > > 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
> >> > > > 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
> >> > > > 20 cf 30 94 83 7b c0 a8 00 65
> >> > > >
> >> > > > What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
> >> > > > But that's wrong. It should be 20:cf:30:94:83:7b .
> >> > > >
> >> > > > The other parts look right though:
> >> > > > 00:03:7f:20:50:59 is the MAC of the wifi device.
> >> > > > c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
> >> > > > c0 a8 00 07 is the IP address of the wifi adaptor itself.
> >> > >
> >> > > let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.
> >> > >
> >> > > >
> >> > > > So, where in the code is the first 6 bytes generated ?
> >> > > >
> >> > > >
> >> > > > Regards
> >> > > >
> >> > > > Nick
> >> > >
> >> > >
> >> > >
> >> > > --
> >> > > thanks,
> >> > > shafi
> >> > > --
> >> > > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> > > the body of a message to majordomo@vger.kernel.org
> >> > > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> > >
> >> >
> >> > --
> >> > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> > the body of a message to majordomo@vger.kernel.org
> >> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> >
> >>
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at http://vger.kernel.org/majordomo-info.html
> >>
> >
>
>
>
> --
> thanks,
> shafi
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-22  5:28               ` Mohammed Shafi
  2013-03-22  7:10                 ` nick
  2013-03-22  7:15                 ` nick
@ 2013-04-15 10:20                 ` nick
  2013-04-19 16:02                 ` nick
  3 siblings, 0 replies; 13+ messages in thread
From: nick @ 2013-04-15 10:20 UTC (permalink / raw)
  To: Mohammed Shafi, nick; +Cc: linux-wireless


Hi Mohammed, did you get chance to look at the corrupted MAC address problem?

Regards

Nick Thomas


> Message Received: Mar 22 2013, 05:28 AM
> From: "Mohammed Shafi" 
> To: nick@nhthomas.freeserve.co.uk
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> 
> On Thu, Mar 21, 2013 at 7:55 PM,  wrote:
> > Hi Mohammed,
> >
> > OK, so I added the same printks further down in that function.
> > There is a memcpy in there, and I added the same debug just after the memcpy.
> >
> > And, the eth_hdr->h_dest has been changed to a wrong MAC address - by something.
> >
> > And, it must be something wrong in skb_push .
> 
> good Nick, I' ll try to analyze this.
> what platform are you using ? (is it a big/little endian)
> 
> >
> >
> > Regards
> >
> > Nick
> >
> >
> >
> >
> >> Message Received: Mar 21 2013, 02:09 PM
> >> From: nick@nhthomas.freeserve.co.uk
> >> To: "Mohammed Shafi"
> >> Cc: linux-wireless@vger.kernel.org
> >> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >>
> >>
> >> Hi Mohammed,
> >>
> >> I've added some debug at the top of ath6kl_wmi_dix_2_dot3 function.
> >>
> >> Just after:
> >>
> >> eth_hdr = (struct ethhdr *) skb->data;
> >> type = eth_hdr->h_proto;
> >>
> >> I added some debug to print all the values of eth_hdr->h_dest and eth_hdr->h_source .
> >> And, all look correct at that point.
> >>
> >> Regards
> >>
> >> Nick
> >>
> >>
> >> > Message Received: Mar 21 2013, 01:35 PM
> >> > From: nick@nhthomas.freeserve.co.uk
> >> > To: "Mohammed Shafi"
> >> > Cc: linux-wireless@vger.kernel.org
> >> > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >> >
> >> > Hi Mohammed,
> >> >
> >> > What do you need to me to do on this?
> >> > I see that function in the wmi.c file.
> >> >
> >> > Do you want me to add some debug printk's in there somewhere?
> >> >
> >> > Regards
> >> >
> >> > Nick
> >> >
> >> > > Message Received: Mar 21 2013, 11:42 AM
> >> > > From: "Mohammed Shafi"
> >> > > To: nick@nhthomas.freeserve.co.uk
> >> > > Cc: linux-wireless@vger.kernel.org
> >> > > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >> > >
> >> > > On Wed, Mar 20, 2013 at 10:33 PM, wrote:
> >> > > >
> >> > > > Here is another example, taken from Wireshark.
> >> > > > It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
> >> > > >
> >> > > > This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
> >> > > >
> >> > > > 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
> >> > > > 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
> >> > > > 20 cf 30 94 83 7b c0 a8 00 65
> >> > > >
> >> > > > What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
> >> > > > But that's wrong. It should be 20:cf:30:94:83:7b .
> >> > > >
> >> > > > The other parts look right though:
> >> > > > 00:03:7f:20:50:59 is the MAC of the wifi device.
> >> > > > c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
> >> > > > c0 a8 00 07 is the IP address of the wifi adaptor itself.
> >> > >
> >> > > let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.
> >> > >
> >> > > >
> >> > > > So, where in the code is the first 6 bytes generated ?
> >> > > >
> >> > > >
> >> > > > Regards
> >> > > >
> >> > > > Nick
> >> > >
> >> > >
> >> > >
> >> > > --
> >> > > thanks,
> >> > > shafi
> >> > > --
> >> > > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> > > the body of a message to majordomo@vger.kernel.org
> >> > > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> > >
> >> >
> >> > --
> >> > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> > the body of a message to majordomo@vger.kernel.org
> >> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> >
> >>
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at http://vger.kernel.org/majordomo-info.html
> >>
> >
> 
> 
> 
> -- 
> thanks,
> shafi
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> 


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: ath6kl_usb - ping problems when compiled for sh4.
  2013-03-22  5:28               ` Mohammed Shafi
                                   ` (2 preceding siblings ...)
  2013-04-15 10:20                 ` nick
@ 2013-04-19 16:02                 ` nick
  3 siblings, 0 replies; 13+ messages in thread
From: nick @ 2013-04-19 16:02 UTC (permalink / raw)
  To: Mohammed Shafi, nick; +Cc: linux-wireless


I see a problem with the ath6kl driver in wmi.c.
In the ath6kl_wmi_dix_2_dot3 function there is a memcpy being used with overlapping memory pointers.

I see that skb_push is used to add 8 bytes of llc_snap header space.
Then, a memcpy is used to copy the original 14bytes of Destination MAC + Source MAC + Type fields.

But, that 14 byte block is longer than the 8 byte new area.

Effectively, what is happening is that a new block of 8 bytes is added to the head.
Then the exising eth_hdr data is moved up by 8 bytes to take up the new space, but there is ovelap of memory pointers.
And, memcpy doesn't behave properly like that.

It's causing MAC address corruption.

Anyone else agree with this?


Regards

Nick

> Message Received: Mar 22 2013, 05:28 AM
> From: "Mohammed Shafi"
> To: nick@nhthomas.freeserve.co.uk
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
>
> On Thu, Mar 21, 2013 at 7:55 PM, wrote:
> > Hi Mohammed,
> >
> > OK, so I added the same printks further down in that function.
> > There is a memcpy in there, and I added the same debug just after the memcpy.
> >
> > And, the eth_hdr->h_dest has been changed to a wrong MAC address - by something.
> >
> > And, it must be something wrong in skb_push .
>
> good Nick, I' ll try to analyze this.
> what platform are you using ? (is it a big/little endian)
>
> >
> >
> > Regards
> >
> > Nick
> >
> >
> >
> >
> >> Message Received: Mar 21 2013, 02:09 PM
> >> From: nick@nhthomas.freeserve.co.uk
> >> To: "Mohammed Shafi"
> >> Cc: linux-wireless@vger.kernel.org
> >> Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >>
> >>
> >> Hi Mohammed,
> >>
> >> I've added some debug at the top of ath6kl_wmi_dix_2_dot3 function.
> >>
> >> Just after:
> >>
> >> eth_hdr = (struct ethhdr *) skb->data;
> >> type = eth_hdr->h_proto;
> >>
> >> I added some debug to print all the values of eth_hdr->h_dest and eth_hdr->h_source .
> >> And, all look correct at that point.
> >>
> >> Regards
> >>
> >> Nick
> >>
> >>
> >> > Message Received: Mar 21 2013, 01:35 PM
> >> > From: nick@nhthomas.freeserve.co.uk
> >> > To: "Mohammed Shafi"
> >> > Cc: linux-wireless@vger.kernel.org
> >> > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >> >
> >> > Hi Mohammed,
> >> >
> >> > What do you need to me to do on this?
> >> > I see that function in the wmi.c file.
> >> >
> >> > Do you want me to add some debug printk's in there somewhere?
> >> >
> >> > Regards
> >> >
> >> > Nick
> >> >
> >> > > Message Received: Mar 21 2013, 11:42 AM
> >> > > From: "Mohammed Shafi"
> >> > > To: nick@nhthomas.freeserve.co.uk
> >> > > Cc: linux-wireless@vger.kernel.org
> >> > > Subject: Re: ath6kl_usb - ping problems when compiled for sh4.
> >> > >
> >> > > On Wed, Mar 20, 2013 at 10:33 PM, wrote:
> >> > > >
> >> > > > Here is another example, taken from Wireshark.
> >> > > > It's an ARP response, effectively saying IP address 192.168.0.107 is at 00:03:7f:20:50:59
> >> > > >
> >> > > > This is a message coming out of the wifi adaptor, and the above numbers are the IP address, and MAC address of the wifi device.
> >> > > >
> >> > > > 7f 20 50 59 00 24 00 03 7f 20 50 59 08 06 00 01
> >> > > > 08 00 06 04 00 02 00 03 7f 20 50 59 c0 a8 00 07
> >> > > > 20 cf 30 94 83 7b c0 a8 00 65
> >> > > >
> >> > > > What we see here is the Destination MAC address is 7f:20:50:59:00:24 (first 6 bytes).
> >> > > > But that's wrong. It should be 20:cf:30:94:83:7b .
> >> > > >
> >> > > > The other parts look right though:
> >> > > > 00:03:7f:20:50:59 is the MAC of the wifi device.
> >> > > > c0 a8 00 65 is 192.168.0.101 which is the IP address of the destination.
> >> > > > c0 a8 00 07 is the IP address of the wifi adaptor itself.
> >> > >
> >> > > let us check in ath6kl_wmi_dix_2_dot3, that should give us some clue.
> >> > >
> >> > > >
> >> > > > So, where in the code is the first 6 bytes generated ?
> >> > > >
> >> > > >
> >> > > > Regards
> >> > > >
> >> > > > Nick
> >> > >
> >> > >
> >> > >
> >> > > --
> >> > > thanks,
> >> > > shafi
> >> > > --
> >> > > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> > > the body of a message to majordomo@vger.kernel.org
> >> > > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> > >
> >> >
> >> > --
> >> > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> > the body of a message to majordomo@vger.kernel.org
> >> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> >
> >>
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at http://vger.kernel.org/majordomo-info.html
> >>
> >
>
>
>
> --
> thanks,
> shafi
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2013-04-19 16:02 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-20 15:22 ath6kl_usb - ping problems when compiled for sh4 nick
2013-03-20 15:34 ` Mohammed Shafi
2013-03-20 16:06   ` nick
2013-03-20 17:03     ` nick
2013-03-21 11:41       ` Mohammed Shafi
2013-03-21 13:34         ` nick
2013-03-21 14:09           ` nick
2013-03-21 14:25             ` nick
2013-03-22  5:28               ` Mohammed Shafi
2013-03-22  7:10                 ` nick
2013-03-22  7:15                 ` nick
2013-04-15 10:20                 ` nick
2013-04-19 16:02                 ` nick

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.