From: "K. Y. Srinivasan" <kys@microsoft.com>
To: davem@davemloft.net, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org, devel@linuxdriverproject.org,
olaf@aepfle.de, apw@canonical.com, jasowang@redhat.com
Cc: "K. Y. Srinivasan" <kys@microsoft.com>
Subject: [PATCH net-next 02/10] hv_netvsc: Rearrange the hv_negtvsc_packet to be space efficient
Date: Mon, 23 Nov 2015 15:28:58 -0800 [thread overview]
Message-ID: <1448321346-21357-2-git-send-email-kys@microsoft.com> (raw)
In-Reply-To: <1448321346-21357-1-git-send-email-kys@microsoft.com>
Rearrange the elements of struct hv_negtvsc_packet for optimal layout -
eliminate unnecessary padding.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
---
drivers/net/hyperv/hyperv_net.h | 18 ++++++++++--------
1 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index 972e562..7435673 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -128,32 +128,34 @@ struct ndis_tcp_ip_checksum_info;
struct hv_netvsc_packet {
/* Bookkeeping stuff */
u8 status;
-
u8 is_data_pkt;
u8 xmit_more; /* from skb */
u8 cp_partial; /* partial copy into send buffer */
- u16 vlan_tci;
+ u8 rmsg_size; /* RNDIS header and PPI size */
+ u8 rmsg_pgcnt; /* page count of RNDIS header and PPI */
+ u8 page_buf_cnt;
+ u8 pad0;
+ u16 vlan_tci;
u16 q_idx;
+ u32 send_buf_index;
+
+ u32 total_data_buflen;
+ u32 pad1;
+
struct vmbus_channel *channel;
u64 send_completion_tid;
void *send_completion_ctx;
void (*send_completion)(void *context);
- u32 send_buf_index;
/* This points to the memory after page_buf */
struct rndis_message *rndis_msg;
- u8 rmsg_size; /* RNDIS header and PPI size */
- u8 rmsg_pgcnt; /* page count of RNDIS header and PPI */
-
- u32 total_data_buflen;
/* Points to the send/receive buffer where the ethernet frame is */
void *data;
- u8 page_buf_cnt;
struct hv_page_buffer *page_buf;
};
--
1.7.4.1
WARNING: multiple messages have this Message-ID (diff)
From: "K. Y. Srinivasan" <kys@microsoft.com>
To: davem@davemloft.net, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org, devel@linuxdriverproject.org,
olaf@aepfle.de, apw@canonical.com, jasowang@redhat.com
Subject: [PATCH net-next 02/10] hv_netvsc: Rearrange the hv_negtvsc_packet to be space efficient
Date: Mon, 23 Nov 2015 15:28:58 -0800 [thread overview]
Message-ID: <1448321346-21357-2-git-send-email-kys@microsoft.com> (raw)
In-Reply-To: <1448321346-21357-1-git-send-email-kys@microsoft.com>
Rearrange the elements of struct hv_negtvsc_packet for optimal layout -
eliminate unnecessary padding.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
---
drivers/net/hyperv/hyperv_net.h | 18 ++++++++++--------
1 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index 972e562..7435673 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -128,32 +128,34 @@ struct ndis_tcp_ip_checksum_info;
struct hv_netvsc_packet {
/* Bookkeeping stuff */
u8 status;
-
u8 is_data_pkt;
u8 xmit_more; /* from skb */
u8 cp_partial; /* partial copy into send buffer */
- u16 vlan_tci;
+ u8 rmsg_size; /* RNDIS header and PPI size */
+ u8 rmsg_pgcnt; /* page count of RNDIS header and PPI */
+ u8 page_buf_cnt;
+ u8 pad0;
+ u16 vlan_tci;
u16 q_idx;
+ u32 send_buf_index;
+
+ u32 total_data_buflen;
+ u32 pad1;
+
struct vmbus_channel *channel;
u64 send_completion_tid;
void *send_completion_ctx;
void (*send_completion)(void *context);
- u32 send_buf_index;
/* This points to the memory after page_buf */
struct rndis_message *rndis_msg;
- u8 rmsg_size; /* RNDIS header and PPI size */
- u8 rmsg_pgcnt; /* page count of RNDIS header and PPI */
-
- u32 total_data_buflen;
/* Points to the send/receive buffer where the ethernet frame is */
void *data;
- u8 page_buf_cnt;
struct hv_page_buffer *page_buf;
};
--
1.7.4.1
next prev parent reply other threads:[~2015-11-23 21:57 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-23 23:28 [PATCH net-next 00/10] hv_netvsc: Eliminate the additional head room K. Y. Srinivasan
2015-11-23 23:28 ` [PATCH net-next 01/10] hv_netvsc: Resize some of the variables in hv_netvsc_packet K. Y. Srinivasan
2015-11-23 23:28 ` K. Y. Srinivasan
2015-11-23 23:28 ` K. Y. Srinivasan [this message]
2015-11-23 23:28 ` [PATCH net-next 02/10] hv_netvsc: Rearrange the hv_negtvsc_packet to be space efficient K. Y. Srinivasan
2015-11-23 23:28 ` [PATCH net-next 03/10] hv_netvsc: Eliminate the channel field in hv_netvsc_packet structure K. Y. Srinivasan
2015-11-23 23:28 ` K. Y. Srinivasan
2015-11-23 23:29 ` [PATCH net-next 04/10] hv_netvsc: Eliminate rndis_msg pointer from " K. Y. Srinivasan
2015-11-23 23:29 ` K. Y. Srinivasan
2015-11-23 23:29 ` [PATCH net-next 05/10] hv_netvsc: Eliminatte the data field from struct hv_netvsc_packet K. Y. Srinivasan
2015-11-23 23:29 ` K. Y. Srinivasan
2015-11-23 23:29 ` [PATCH net-next 06/10] hv_netvsc: Eliminate send_completion " K. Y. Srinivasan
2015-11-23 23:29 ` K. Y. Srinivasan
2015-11-23 23:29 ` [PATCH net-next 07/10] hv_netvsc: Eliminate send_completion_ctx " K. Y. Srinivasan
2015-11-23 23:29 ` K. Y. Srinivasan
2015-11-23 23:29 ` [PATCH net-next 08/10] hv_netvsc: Don't ask for additional head room in the skb K. Y. Srinivasan
2015-11-23 23:29 ` K. Y. Srinivasan
2015-11-24 8:55 ` Florian Westphal
2015-11-24 16:39 ` KY Srinivasan
2015-11-24 16:39 ` KY Srinivasan
2015-11-24 8:56 ` Vitaly Kuznetsov
2015-11-24 16:27 ` KY Srinivasan
2015-11-24 16:27 ` KY Srinivasan
2015-11-23 23:29 ` [PATCH net-next 09/10] hv_netvsc: move subchannel existence check to netvsc_select_queue() K. Y. Srinivasan
2015-11-23 23:29 ` K. Y. Srinivasan
2015-11-23 23:29 ` [PATCH net-next 10/10] hv_netvsc: remove locking in netvsc_send() K. Y. Srinivasan
2015-11-23 23:29 ` K. Y. Srinivasan
2015-11-24 8:48 ` [PATCH net-next 01/10] hv_netvsc: Resize some of the variables in hv_netvsc_packet Vitaly Kuznetsov
2015-11-24 16:29 ` KY Srinivasan
2015-11-24 16:29 ` KY Srinivasan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1448321346-21357-2-git-send-email-kys@microsoft.com \
--to=kys@microsoft.com \
--cc=apw@canonical.com \
--cc=davem@davemloft.net \
--cc=devel@linuxdriverproject.org \
--cc=jasowang@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=olaf@aepfle.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.