[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] PCI passthrough issue



Hello,

Le 04/02/2011 12:04, Ian Campbell a Ãcrit :
> On Fri, 2011-02-04 at 10:12 +0000, Jean Baptiste Favre wrote:
>> Hello Ian,
>> Applyed your patches.
> 
> Thanks.
> 
>> Now, I've:
>> # ping -s86 10.0.0.1
>> PING 10.0.0.1 (10.0.0.1): 86 data bytes
>> __netif_receive_skb dropping skb proto 0x20
>>
>>
>> So problem seems to occur in net/core/dev.c file, according to the patch
>> bellow
> 
> Interesting. the number printed in the warning is type == skb->protocol
> == 0x20 which is not a valid protocol that I can find anywhere (nor is
> 0x2000 in case I'm mixing my endianesses up). Neither is 0x20 it a valid
> Ethernet frame length (min 64) so it's not that sort of confusion
> AFAICT.
> 
> skb->protocol is initialised in sky2_status_intr with the return value
> of "eth_type_trans(skb, dev)" which as far as I can tell cannot return
> 0x20.
> 
> The domU network configuration is using the sky2 device directly, no
> bridging, VLAN, tunnels or anything else like that?
At boot it uses bridge.
For the test, I delete bridge and set IP address directly on eth0

root@OpenWrt:/# ifconfig br-lan down
br-lan: port 1(eth0) entering forwarding state

root@OpenWrt:/# brctl delbr br-lan
device eth0 left promiscuous mode
br-lan: port 1(eth0) entering disabled state

root@OpenWrt:/# ifconfig eth0 10.0.0.8 netmask 255.255.255.0
root@OpenWrt:/# ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1): 56 data bytes
64 bytes from 10.0.0.1: seq=0 ttl=64 time=10.455 ms
64 bytes from 10.0.0.1: seq=1 ttl=64 time=0.870 ms
^C
--- 10.0.0.1 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.870/5.662/10.455 ms
root@OpenWrt:/# ping -s86 10.0.0.1
PING 10.0.0.1 (10.0.0.1): 86 data bytes
^C
--- 10.0.0.1 ping statistics ---
12 packets transmitted, 0 packets received, 100% packet loss


> 
> Please can you post the output of "ethtool -k <sky2-device>".
root@OpenWrt:/# ethtool -k eth0
Offload parameters for eth0:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp-segmentation-offload: on
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: on
large-receive-offload: off
ntuple-filters: off
receive-hashing: on


> If either tx or rx checksumming are enabled please can you try disabling
> them ("ethtool -K <sky2-device> [tx|rx] off"). This setting controls the
> code path in sky2_skb_rx which can go either to netif_receive_skb or
> napi_gro_receive.
root@OpenWrt:/# ethtool -K eth0 tx off
root@OpenWrt:/# ethtool -K eth0 rx off
root@OpenWrt:/# ping -s86 10.0.0.1
PING 10.0.0.1 (10.0.0.1): 86 data bytes
^C
--- 10.0.0.1 ping statistics ---
3 packets transmitted, 0 packets received, 100% packet loss
root@OpenWrt:/# ethtool -k eth0
Offload parameters for eth0:
rx-checksumming: off
tx-checksumming: off
scatter-gather: off
tcp-segmentation-offload: off
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: off
large-receive-offload: off
ntuple-filters: off
receive-hashing: on


> The tcpdump captures from both ends would still be interesting to see.
> 
> The following patch enhances the previous one with a few checks for
> protocol 0x20 getting set.
> 
> Ian.
What is a bit strange here is that I don't any more the KERN_CRIT printk
message.
Could be a false positive ?

I'm currently compiling new kernel with your last patch. will keep you
updated

Regards,
JB

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.