[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 3/6] net: TAP uses NetClientInfo offloading callb
From: |
Vincenzo Maffione |
Subject: |
[Qemu-devel] [PATCH v4 3/6] net: TAP uses NetClientInfo offloading callbacks |
Date: |
Thu, 6 Feb 2014 17:02:17 +0100 |
The TAP NetClientInfo structure is inizialized with the TAP-specific
functions that manipulates offloading features.
Signed-off-by: Vincenzo Maffione <address@hidden>
---
net/tap-win32.c | 92 ++++++++++++++++++++++++++++++---------------------------
net/tap.c | 6 ++++
2 files changed, 55 insertions(+), 43 deletions(-)
diff --git a/net/tap-win32.c b/net/tap-win32.c
index edf26c4..924ca55 100644
--- a/net/tap-win32.c
+++ b/net/tap-win32.c
@@ -669,11 +669,60 @@ static void tap_win32_send(void *opaque)
}
}
+bool tap_has_ufo(NetClientState *nc)
+{
+ return false;
+}
+
+bool tap_has_vnet_hdr(NetClientState *nc)
+{
+ return false;
+}
+
+int tap_probe_vnet_hdr_len(int fd, int len)
+{
+ return 0;
+}
+
+void tap_fd_set_vnet_hdr_len(int fd, int len)
+{
+}
+
+void tap_using_vnet_hdr(NetClientState *nc, bool using_vnet_hdr)
+{
+}
+
+void tap_set_offload(NetClientState *nc, int csum, int tso4,
+ int tso6, int ecn, int ufo)
+{
+}
+
+struct vhost_net *tap_get_vhost_net(NetClientState *nc)
+{
+ return NULL;
+}
+
+bool tap_has_vnet_hdr_len(NetClientState *nc, int len)
+{
+ return false;
+}
+
+void tap_set_vnet_hdr_len(NetClientState *nc, int len)
+{
+ abort();
+}
+
static NetClientInfo net_tap_win32_info = {
.type = NET_CLIENT_OPTIONS_KIND_TAP,
.size = sizeof(TAPState),
.receive = tap_receive,
.cleanup = tap_cleanup,
+ .has_ufo = tap_has_ufo,
+ .has_vnet_hdr = tap_has_vnet_hdr,
+ .has_vnet_hdr_len = tap_has_vnet_hdr_len,
+ .using_vnet_hdr = tap_using_vnet_hdr,
+ .set_offload = tap_set_offload,
+ .set_vnet_hdr_len = tap_set_vnet_hdr_len,
};
static int tap_win32_init(NetClientState *peer, const char *model,
@@ -722,49 +771,6 @@ int net_init_tap(const NetClientOptions *opts, const char
*name,
return 0;
}
-bool tap_has_ufo(NetClientState *nc)
-{
- return false;
-}
-
-bool tap_has_vnet_hdr(NetClientState *nc)
-{
- return false;
-}
-
-int tap_probe_vnet_hdr_len(int fd, int len)
-{
- return 0;
-}
-
-void tap_fd_set_vnet_hdr_len(int fd, int len)
-{
-}
-
-void tap_using_vnet_hdr(NetClientState *nc, bool using_vnet_hdr)
-{
-}
-
-void tap_set_offload(NetClientState *nc, int csum, int tso4,
- int tso6, int ecn, int ufo)
-{
-}
-
-struct vhost_net *tap_get_vhost_net(NetClientState *nc)
-{
- return NULL;
-}
-
-bool tap_has_vnet_hdr_len(NetClientState *nc, int len)
-{
- return false;
-}
-
-void tap_set_vnet_hdr_len(NetClientState *nc, int len)
-{
- abort();
-}
-
int tap_enable(NetClientState *nc)
{
abort();
diff --git a/net/tap.c b/net/tap.c
index c805f3c..d34ec88 100644
--- a/net/tap.c
+++ b/net/tap.c
@@ -314,6 +314,12 @@ static NetClientInfo net_tap_info = {
.receive_iov = tap_receive_iov,
.poll = tap_poll,
.cleanup = tap_cleanup,
+ .has_ufo = tap_has_ufo,
+ .has_vnet_hdr = tap_has_vnet_hdr,
+ .has_vnet_hdr_len = tap_has_vnet_hdr_len,
+ .using_vnet_hdr = tap_using_vnet_hdr,
+ .set_offload = tap_set_offload,
+ .set_vnet_hdr_len = tap_set_vnet_hdr_len,
};
static TAPState *net_tap_fd_init(NetClientState *peer,
--
1.8.5.3
- [Qemu-devel] [PATCH v4 0/6] Add netmap backend offloadings support, Vincenzo Maffione, 2014/02/06
- [Qemu-devel] [PATCH v4 1/6] net: change vnet-hdr TAP prototypes, Vincenzo Maffione, 2014/02/06
- [Qemu-devel] [PATCH v4 2/6] net: extend NetClientInfo for offloading, Vincenzo Maffione, 2014/02/06
- [Qemu-devel] [PATCH v4 3/6] net: TAP uses NetClientInfo offloading callbacks,
Vincenzo Maffione <=
- [Qemu-devel] [PATCH v4 5/6] net: make tap offloading callbacks static, Vincenzo Maffione, 2014/02/06
- [Qemu-devel] [PATCH v4 6/6] net: add offloading support to netmap backend, Vincenzo Maffione, 2014/02/06
- [Qemu-devel] [PATCH v4 4/6] net: virtio-net and vmxnet3 use offloading API, Vincenzo Maffione, 2014/02/06
- Re: [Qemu-devel] [PATCH v4 0/6] Add netmap backend offloadings support, Stefan Hajnoczi, 2014/02/19