← Back to team overview

kernel-packages team mailing list archive

[Bug 1452074] Re: [Hyper-V] hv_netvsc: Eliminate memory allocation in the packet send path

 

I was able to build a test kernel with the three requested commits.  The test kernel can be downloaded from:
http://kernel.ubuntu.com/~jsalisbury/lp1452074/


However, the three requested commits required three additional commits as  prerequisites.    Here are the details:

Prereq for hv_netvsc_packet->xmit_more:
7c3877fhv_netvsc: Implement batching in send buffer

Requested:
cbacec7 hv_netvsc: Cleanup the test for freeing skb when we use sendbuf mechanism
Requested:
b08cc79 hv_netvsc: Eliminate memory allocation in the packet send path

Prereq for definition of netvsc_xmit_completion:
ee90b81 hv_netvsc: Fix the packet free when it is in skb headroom

Prereq for implementing partial copies.
aa0a34b hv_netvsc: Implement partial copy into send buffer


Requested:
b56fc3c hv_netvsc: Fix a bug in netvsc_start_xmit()



Can you see if the test kernel resolves the bug?

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1452074

Title:
  [Hyper-V] hv_netvsc: Eliminate memory allocation in the packet send
  path

Status in linux package in Ubuntu:
  Triaged
Status in linux source package in Trusty:
  Triaged
Status in linux source package in Utopic:
  Triaged
Status in linux source package in Vivid:
  Triaged
Status in linux source package in Wily:
  Triaged

Bug description:
  K. Y. Srinivasan (2):
    hyperv: Cleanup the test for freeing skb when we use sendbuf
      mechanism
    hyperv: Eliminate memory allocation in the packet send path

   drivers/net/hyperv/hyperv_net.h | 3 +-
   drivers/net/hyperv/netvsc.c | 9 ++++-
   drivers/net/hyperv/netvsc_drv.c | 70 ++++++++++++++++++++++++++----------
   drivers/net/hyperv/rndis_filter.c | 2 +
   4 files changed, 61 insertions(+), 23 deletions(-)

  These have landed in net-next by David Miller

  https://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=3271e4f18d9a4ec9ac5568f94444dac08f29c5a0
  https://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=b08cc79155fc26d0d112b1470d1ece5034651a4b
  https://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=cbacec76bcd03ff21b37ac331e652b5a8f3ea644

  Patch to a patch ->

  Commit b08cc79155fc26d0d112b1470d1ece5034651a4b eliminated memory
  allocation in the packet send path:

      "hv_netvsc: Eliminate memory allocation in the packet send path

      The network protocol used to communicate with the host is the remote ndis (rndis)
      protocol. We need to decorate each outgoing packet with a rndis header and
      additional rndis state (rndis per-packet state). To manage this state, we
      currently allocate memory in the transmit path. Eliminate this allocation by
      requesting additional head room in the skb."

  This commit introduced a bug since it did not account for the case if the skb
  was cloned. Fix this bug.

  https://git.kernel.org/cgit/linux/kernel/git/davem/net-
  next.git/commit/?id=b56fc3c536541c8081cd5f1f1d101a16c002a365

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1452074/+subscriptions


References