Subject: Re: [PATCH net-next 01/10] hv_netvsc: Resize some of the variables in hv_netvsc_packet

From: Vitaly Kuznetsov <[email-masked]>
Date: Tue, 24 Nov 2015 09:48:12 +0100

"K. Y. Srinivasan" <[email-masked]> writes:

> As part of reducing the size of the hv_netvsc_packet, resize some of the
> variables based on their usage.
>
> Signed-off-by: K. Y. Srinivasan <[email-masked]>
> Reviewed-by: Haiyang Zhang <[email-masked]>
> ---
>  drivers/net/hyperv/hyperv_net.h |   14 +++++++-------
>  1 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
> index 5fa98f5..972e562 100644
> --- a/drivers/net/hyperv/hyperv_net.h
> +++ b/drivers/net/hyperv/hyperv_net.h
> @@ -127,11 +127,11 @@ struct ndis_tcp_ip_checksum_info;
>   */
>  struct hv_netvsc_packet {
>  	/* Bookkeeping stuff */
> -	u32 status;
> +	u8 status;
>
> -	bool is_data_pkt;
> -	bool xmit_more; /* from skb */
> -	bool cp_partial; /* partial copy into send buffer */
> +	u8 is_data_pkt;
> +	u8 xmit_more; /* from skb */
> +	u8 cp_partial; /* partial copy into send buffer */

These are flags so we can make them bitfields and save even more space.

>
>  	u16 vlan_tci;
>
> @@ -147,13 +147,13 @@ struct hv_netvsc_packet {
>  	/* This points to the memory after page_buf */
>  	struct rndis_message *rndis_msg;
>
> -	u32 rmsg_size; /* RNDIS header and PPI size */
> -	u32 rmsg_pgcnt; /* page count of RNDIS header and PPI */
> +	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;
> -	u32 page_buf_cnt;
> +	u8 page_buf_cnt;
>  	struct hv_page_buffer *page_buf;
>  };

-- 
  Vitaly