[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Fix the request size for a full page-sized skbuff in netfront
# HG changeset patch # User kaf24@xxxxxxxxxxxxxxxxxxxx # Node ID d64dbb48684c4a6cc84f778a4faf1ba7fc75b9f0 # Parent 7a03820bbbf32636ee539d6fca9ae45c25a84b78 Fix the request size for a full page-sized skbuff in netfront driver (must allow 16 bytes for dev_alloc_skb headroom). Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> xen-unstable cset: c976c1ff806aa46c989fb5b1d84b311519fb0456 committer: Robert Read <robert@xxxxxxxxxxxxx> diff -r 7a03820bbbf3 -r d64dbb48684c linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c --- a/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c Tue Dec 6 06:02:54 2005 +++ b/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c Tue Dec 6 06:52:15 2005 @@ -535,8 +535,12 @@ */ batch_target = np->rx_target - (req_prod - np->rx.rsp_cons); for (i = skb_queue_len(&np->rx_batch); i < batch_target; i++) { + /* + * Subtract dev_alloc_skb headroom (16 bytes) and shared info + * tailroom then round down to SKB_DATA_ALIGN boundary. + */ skb = alloc_xen_skb( - (PAGE_SIZE - sizeof(struct skb_shared_info)) & + (PAGE_SIZE - 16 - sizeof(struct skb_shared_info)) & (-SKB_DATA_ALIGN(1))); if (skb == NULL) break; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |