Displaying 2 results from an estimated 2 matches for "copy_off".
Did you mean:
code_off
2013 Jul 10
13
[PATCH v2 1/1] xen/netback: correctly calculate required slots of skb.
...ts we''re going to need to send @skb to
- * the guest. This function is essentially a dry run of
- * netbk_gop_frag_copy.
- */
-unsigned int xen_netbk_count_skb_slots(struct xenvif *vif, struct sk_buff *skb)
+static int netbk_count_slots(struct xenvif *vif, struct sk_buff *skb,
+ int *copy_off, unsigned long size,
+ unsigned long offset, int *head)
{
- unsigned int count;
- int i, copy_off;
+ unsigned long bytes;
+ int count = 0;
- count = DIV_ROUND_UP(skb_headlen(skb), PAGE_SIZE);
+ offset &= ~PAGE_MASK;
- copy_off = skb_headlen(skb) % PAGE_SIZE;
+ while (size > 0) {
+...
2013 Jul 09
20
[PATCH 1/1] xen/netback: correctly calculate required slots of skb.
...unsigned long size, int head)
* the guest. This function is essentially a dry run of
* netbk_gop_frag_copy.
*/
-unsigned int xen_netbk_count_skb_slots(struct xenvif *vif, struct sk_buff *skb)
+static void netbk_get_slots(struct xenvif *vif, struct sk_buff *skb,
+ struct page *page, int *copy_off,
+ unsigned long size, unsigned long offset,
+ int *head, int *count)
{
- unsigned int count;
- int i, copy_off;
+ unsigned long bytes;
- count = DIV_ROUND_UP(skb_headlen(skb), PAGE_SIZE);
+ /* Data must not cross a page boundary. */
+ BUG_ON(size + offset > PAGE_SIZE<<compo...