diff mbox

[Vivid,SRU] hv_netvsc: Clean up two unused variables

Message ID 1449199149-5078-2-git-send-email-seyeong.kim@canonical.com
State New
Headers show

Commit Message

Seyeong Kim Dec. 4, 2015, 3:19 a.m. UTC
From: Haiyang Zhang <haiyangz@microsoft.com>

BugLink: http://bugs.launchpad.net/bugs/1521053

The commit

hv_netvsc: Clean up two unused variables

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(backported from commit 0d158852a8089099a6959ae235b20f230871982f)
Signed-off-by: Seyeong Kim <seyeong.kim@canonical.com>
---
 drivers/net/hyperv/hyperv_net.h   | 1 -
 drivers/net/hyperv/netvsc.c       | 1 -
 drivers/net/hyperv/rndis_filter.c | 2 --
 3 files changed, 4 deletions(-)

Comments

Andy Whitcroft Dec. 4, 2015, 12:02 p.m. UTC | #1
On Fri, Dec 04, 2015 at 12:19:09PM +0900, Seyeong Kim wrote:
> From: Haiyang Zhang <haiyangz@microsoft.com>
> 
> BugLink: http://bugs.launchpad.net/bugs/1521053
> 
> The commit
> 
> hv_netvsc: Clean up two unused variables

As this commit only removes unused variables, it is not at all clear how
this could cause or fix network slowdowns.  The net effect is to remove
64 bytes from one structure, but this seems unlikely enough to cause
significant performance issues.

How was it determined that this was the fix?

-apw

> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
> Signed-off-by: David S. Miller <davem@davemloft.net>
> (backported from commit 0d158852a8089099a6959ae235b20f230871982f)
> Signed-off-by: Seyeong Kim <seyeong.kim@canonical.com>
> ---
>  drivers/net/hyperv/hyperv_net.h   | 1 -
>  drivers/net/hyperv/netvsc.c       | 1 -
>  drivers/net/hyperv/rndis_filter.c | 2 --
>  3 files changed, 4 deletions(-)
> 
> diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
> index bf2604b..ce9d49b 100644
> --- a/drivers/net/hyperv/hyperv_net.h
> +++ b/drivers/net/hyperv/hyperv_net.h
> @@ -129,7 +129,6 @@ struct hv_netvsc_packet {
>  	/* Bookkeeping stuff */
>  	u32 status;
>  
> -	struct hv_device *device;
>  	bool is_data_pkt;
>  	bool xmit_more; /* from skb */
>  	bool cp_partial; /* partial copy into send buffer */
> diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
> index b15041b..9e4a86f 100644
> --- a/drivers/net/hyperv/netvsc.c
> +++ b/drivers/net/hyperv/netvsc.c
> @@ -1037,7 +1037,6 @@ static void netvsc_receive(struct netvsc_device *net_device,
>  	}
>  
>  	count = vmxferpage_packet->range_cnt;
> -	netvsc_packet->device = device;
>  	netvsc_packet->channel = channel;
>  
>  	/* Each range represents 1 RNDIS pkt that contains 1 ethernet frame */
> diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
> index 524cb82..11598f0 100644
> --- a/drivers/net/hyperv/rndis_filter.c
> +++ b/drivers/net/hyperv/rndis_filter.c
> @@ -47,8 +47,6 @@ struct rndis_request {
>  
>  	/* Simplify allocation by having a netvsc packet inline */
>  	struct hv_netvsc_packet	pkt;
> -	/* Set 2 pages for rndis requests crossing page boundary */
> -	struct hv_page_buffer buf[2];
>  
>  	struct rndis_message request_msg;
>  	/*
> -- 
> 2.1.4
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
Tim Gardner Dec. 4, 2015, 1:56 p.m. UTC | #2
On 12/04/2015 05:02 AM, Andy Whitcroft wrote:
> On Fri, Dec 04, 2015 at 12:19:09PM +0900, Seyeong Kim wrote:
>> From: Haiyang Zhang <haiyangz@microsoft.com>
>>
>> BugLink: http://bugs.launchpad.net/bugs/1521053
>>
>> The commit
>>
>> hv_netvsc: Clean up two unused variables
> 
> As this commit only removes unused variables, it is not at all clear how
> this could cause or fix network slowdowns.  The net effect is to remove
> 64 bytes from one structure, but this seems unlikely enough to cause
> significant performance issues.
> 
> How was it determined that this was the fix?
> 
> -apw

I'm with Andy on this one. How does this really fix the problem ?

rtg
Andy Whitcroft Dec. 7, 2015, 5:07 p.m. UTC | #3
On Fri, Dec 04, 2015 at 06:56:08AM -0700, Tim Gardner wrote:
> On 12/04/2015 05:02 AM, Andy Whitcroft wrote:
> > On Fri, Dec 04, 2015 at 12:19:09PM +0900, Seyeong Kim wrote:
> >> From: Haiyang Zhang <haiyangz@microsoft.com>
> >>
> >> BugLink: http://bugs.launchpad.net/bugs/1521053
> >>
> >> The commit
> >>
> >> hv_netvsc: Clean up two unused variables
> > 
> > As this commit only removes unused variables, it is not at all clear how
> > this could cause or fix network slowdowns.  The net effect is to remove
> > 64 bytes from one structure, but this seems unlikely enough to cause
> > significant performance issues.
> > 
> > How was it determined that this was the fix?
> > 
> > -apw
> 
> I'm with Andy on this one. How does this really fix the problem ?

It is sounding like this does actually fix something.  For that to be
true this layout change would need to radically affect cache
performance.  But if the testing can be confirmed then it has my ack.

Acked-by: Andy Whitcroft <apw@canonical.com>

-apw
Tim Gardner Dec. 7, 2015, 7:23 p.m. UTC | #4
On 12/07/2015 10:07 AM, Andy Whitcroft wrote:
> On Fri, Dec 04, 2015 at 06:56:08AM -0700, Tim Gardner wrote:
>> On 12/04/2015 05:02 AM, Andy Whitcroft wrote:
>>> On Fri, Dec 04, 2015 at 12:19:09PM +0900, Seyeong Kim wrote:
>>>> From: Haiyang Zhang <haiyangz@microsoft.com>
>>>>
>>>> BugLink: http://bugs.launchpad.net/bugs/1521053
>>>>
>>>> The commit
>>>>
>>>> hv_netvsc: Clean up two unused variables
>>>
>>> As this commit only removes unused variables, it is not at all clear how
>>> this could cause or fix network slowdowns.  The net effect is to remove
>>> 64 bytes from one structure, but this seems unlikely enough to cause
>>> significant performance issues.
>>>
>>> How was it determined that this was the fix?
>>>
>>> -apw
>>
>> I'm with Andy on this one. How does this really fix the problem ?
> 
> It is sounding like this does actually fix something.  For that to be
> true this layout change would need to radically affect cache
> performance.  But if the testing can be confirmed then it has my ack.
> 
> Acked-by: Andy Whitcroft <apw@canonical.com>
> 
> -apw
> 

Given the carnage required to revert 'hv_netvsc: Implement partial copy
into send buffer' I'm inclined to ACK this as well. It is a harmless fix
and appears to have a real impact on performance.
Andy Whitcroft Dec. 10, 2015, 6:43 p.m. UTC | #5
On Mon, Dec 07, 2015 at 05:07:35PM +0000, Andy Whitcroft wrote:
> On Fri, Dec 04, 2015 at 06:56:08AM -0700, Tim Gardner wrote:
> > On 12/04/2015 05:02 AM, Andy Whitcroft wrote:
> > > On Fri, Dec 04, 2015 at 12:19:09PM +0900, Seyeong Kim wrote:
> > >> From: Haiyang Zhang <haiyangz@microsoft.com>
> > >>
> > >> BugLink: http://bugs.launchpad.net/bugs/1521053
> > >>
> > >> The commit
> > >>
> > >> hv_netvsc: Clean up two unused variables
> > > 
> > > As this commit only removes unused variables, it is not at all clear how
> > > this could cause or fix network slowdowns.  The net effect is to remove
> > > 64 bytes from one structure, but this seems unlikely enough to cause
> > > significant performance issues.
> > > 
> > > How was it determined that this was the fix?
> > > 
> > > -apw
> > 
> > I'm with Andy on this one. How does this really fix the problem ?
> 
> It is sounding like this does actually fix something.  For that to be
> true this layout change would need to radically affect cache
> performance.  But if the testing can be confirmed then it has my ack.
> 
> Acked-by: Andy Whitcroft <apw@canonical.com>

Confirmed that removing these four bytes reduce the header size such
that it fits into the standard packet headroom and we no longer have to
copy the packet headers every time.

-apw
Jay Vosburgh Dec. 10, 2015, 7:08 p.m. UTC | #6
Andy Whitcroft <apw@canonical.com> wrote:

>On Mon, Dec 07, 2015 at 05:07:35PM +0000, Andy Whitcroft wrote:
>> On Fri, Dec 04, 2015 at 06:56:08AM -0700, Tim Gardner wrote:
>> > On 12/04/2015 05:02 AM, Andy Whitcroft wrote:
>> > > On Fri, Dec 04, 2015 at 12:19:09PM +0900, Seyeong Kim wrote:
>> > >> From: Haiyang Zhang <haiyangz@microsoft.com>
>> > >>
>> > >> BugLink: http://bugs.launchpad.net/bugs/1521053
>> > >>
>> > >> The commit
>> > >>
>> > >> hv_netvsc: Clean up two unused variables
>> > > 
>> > > As this commit only removes unused variables, it is not at all clear how
>> > > this could cause or fix network slowdowns.  The net effect is to remove
>> > > 64 bytes from one structure, but this seems unlikely enough to cause
>> > > significant performance issues.
>> > > 
>> > > How was it determined that this was the fix?
>> > > 
>> > > -apw
>> > 
>> > I'm with Andy on this one. How does this really fix the problem ?
>> 
>> It is sounding like this does actually fix something.  For that to be
>> true this layout change would need to radically affect cache
>> performance.  But if the testing can be confirmed then it has my ack.
>> 
>> Acked-by: Andy Whitcroft <apw@canonical.com>
>
>Confirmed that removing these four bytes reduce the header size such
>that it fits into the standard packet headroom and we no longer have to
>copy the packet headers every time.

	We also would like to request that this patch be applied as an
SRU for the Wily kernel as well to avoid regression during upgrades.

	-J

---
	-Jay Vosburgh, jay.vosburgh@canonical.com
Brad Figg Dec. 16, 2015, 6:11 p.m. UTC | #7
On Thu, Dec 10, 2015 at 11:08:22AM -0800, Jay Vosburgh wrote:
> Andy Whitcroft <apw@canonical.com> wrote:
> 
> >On Mon, Dec 07, 2015 at 05:07:35PM +0000, Andy Whitcroft wrote:
> >> On Fri, Dec 04, 2015 at 06:56:08AM -0700, Tim Gardner wrote:
> >> > On 12/04/2015 05:02 AM, Andy Whitcroft wrote:
> >> > > On Fri, Dec 04, 2015 at 12:19:09PM +0900, Seyeong Kim wrote:
> >> > >> From: Haiyang Zhang <haiyangz@microsoft.com>
> >> > >>
> >> > >> BugLink: http://bugs.launchpad.net/bugs/1521053
> >> > >>
> >> > >> The commit
> >> > >>
> >> > >> hv_netvsc: Clean up two unused variables
> >> > > 
> >> > > As this commit only removes unused variables, it is not at all clear how
> >> > > this could cause or fix network slowdowns.  The net effect is to remove
> >> > > 64 bytes from one structure, but this seems unlikely enough to cause
> >> > > significant performance issues.
> >> > > 
> >> > > How was it determined that this was the fix?
> >> > > 
> >> > > -apw
> >> > 
> >> > I'm with Andy on this one. How does this really fix the problem ?
> >> 
> >> It is sounding like this does actually fix something.  For that to be
> >> true this layout change would need to radically affect cache
> >> performance.  But if the testing can be confirmed then it has my ack.
> >> 
> >> Acked-by: Andy Whitcroft <apw@canonical.com>
> >
> >Confirmed that removing these four bytes reduce the header size such
> >that it fits into the standard packet headroom and we no longer have to
> >copy the packet headers every time.
> 
> 	We also would like to request that this patch be applied as an
> SRU for the Wily kernel as well to avoid regression during upgrades.
> 
> 	-J

Wily already contains this commit.

> 
> ---
> 	-Jay Vosburgh, jay.vosburgh@canonical.com
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team

Brad
diff mbox

Patch

diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index bf2604b..ce9d49b 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -129,7 +129,6 @@  struct hv_netvsc_packet {
 	/* Bookkeeping stuff */
 	u32 status;
 
-	struct hv_device *device;
 	bool is_data_pkt;
 	bool xmit_more; /* from skb */
 	bool cp_partial; /* partial copy into send buffer */
diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
index b15041b..9e4a86f 100644
--- a/drivers/net/hyperv/netvsc.c
+++ b/drivers/net/hyperv/netvsc.c
@@ -1037,7 +1037,6 @@  static void netvsc_receive(struct netvsc_device *net_device,
 	}
 
 	count = vmxferpage_packet->range_cnt;
-	netvsc_packet->device = device;
 	netvsc_packet->channel = channel;
 
 	/* Each range represents 1 RNDIS pkt that contains 1 ethernet frame */
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index 524cb82..11598f0 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -47,8 +47,6 @@  struct rndis_request {
 
 	/* Simplify allocation by having a netvsc packet inline */
 	struct hv_netvsc_packet	pkt;
-	/* Set 2 pages for rndis requests crossing page boundary */
-	struct hv_page_buffer buf[2];
 
 	struct rndis_message request_msg;
 	/*