forked from lkl/linux
-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
lkl: Add offload (TSO4, CSUM) support to LKL device, #1 of 2
This patch prepares the LKL device code for the offload support. The gist of it is to change the tx() and rx() interfaces to accept a vector of buffers (like iovec) rather than just a single one. This allows the support of sg list originated from skb's frags that come down from the stack above to be passed to a backend device without the need to copy. The patch introduces a new environment variable "LKL_HIJACK_OFFLOAD" to the hijack code to allow easy enabling of any combination of offload features. Once the desirable offload features are decided, the code will program the tap device accordingly, e.g., to properly translate offload flags, and decide whether IFF_VNET_HDR needs to be enabled. It will also program the selected features into LKL kernel's virtio driver. Note that the actual code to program the ring properly for various offload flavors is in the 2nd commit. The patch also allows an existing env var "LKL_HIJACK_DEBUG" to take on a hex value, e.g., "export LKL_HIJACK_DEBUG=0x100". This is used to set an internal debug flag "lkl_debug" in the hijack code for diagnosis purpose. The above export statement, for example, will cause the LKL kernel to pause after the hijack'ed app exits. This allows one to debug or collect info from the LKL kernel before it quits. Signed-off-by: H.K. Jerry Chu <hkchu@google.com>
- Loading branch information
Hsiao-keng Jerry Chu
committed
Jul 30, 2016
1 parent
35df18a
commit b8f6fad
Showing
11 changed files
with
147 additions
and
74 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.