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

Re: [Xen-devel] PCI passthrough issue



On Fri, 2011-02-04 at 08:43 +0000, Jean Baptiste Favre wrote:

> >From Konrad:
> diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
> index 7d85a38..37c0631 100644
> --- a/drivers/net/sky2.c
> +++ b/drivers/net/sky2.c
> @@ -2331,7 +2331,7 @@ static struct sk_buff *receive_copy(struct
> sky2_port *sky2,
>       if (likely(skb)) {
>               pci_dma_sync_single_for_cpu(sky2->hw->pdev, re->data_addr,
>                                           length, PCI_DMA_FROMDEVICE);
> -             skb_copy_from_linear_data(re->skb, skb->data, length);
> +             skb_copy_from_linear_data(skb, re->skb->data, length);
>               skb->ip_summed = re->skb->ip_summed;
>               skb->csum = re->skb->csum;
>               pci_dma_sync_single_for_device(sky2->hw->pdev, re->data_addr,

Please don't apply this bit, the argument order to skb_copy.... can be a
bit surprising if you assume it it is like memcpy. The original code is
correct. This is probably where your L2 issue came from.

Please can you try again with the just the WARN patch.

Ian.



_______________________________________________
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®.