[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20140515.233301.1125896512771744526.davem@davemloft.net>
Date: Thu, 15 May 2014 23:33:01 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: zoltan.kiss@...rix.com
Cc: xen-devel@...ts.xenproject.org, ian.campbell@...rix.com,
wei.liu2@...rix.com, linux@...elenboom.it, paul.durrant@...rix.com,
netdev@...r.kernel.org, david.vrabel@...rix.com
Subject: Re: [PATCH net v4] xen-netback: Fix grant ref resolution in RX path
From: Zoltan Kiss <zoltan.kiss@...rix.com>
Date: Thu, 15 May 2014 11:08:34 +0100
> The original series for reintroducing grant mapping for netback had a patch [1]
> to handle receiving of packets from an another VIF. Grant copy on the receiving
> side needs the grant ref of the page to set up the op.
> The original patch assumed (wrongly) that the frags array haven't changed. In
> the case reported by Sander, the sending guest sent a packet where the linear
> buffer and the first frag were under PKT_PROT_LEN (=128) bytes.
> xenvif_tx_submit() then pulled up the linear area to 128 bytes, and ditched the
> first frag. The receiving side had an off-by-one problem when gathered the grant
> refs.
> This patch fixes that by checking whether the actual frag's page pointer is the
> same as the page in the original frag list. It can handle any kind of changes on
> the original frags array, like:
> - removing granted frags from the array at any point
> - adding local pages to the frags list anywhere
> - reordering the frags
> It's optimized to the most common case, when there is 1:1 relation between the
> frags and the list, plus works optimal when frags are removed from the end or
> the beginning.
>
> [1]: 3e2234: xen-netback: Handle foreign mapped pages on the guest RX path
>
> Reported-by: Sander Eikelenboom <linux@...elenboom.it>
> Signed-off-by: Zoltan Kiss <zoltan.kiss@...rix.com>
Applied, thanks everyone.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists