Patchwork 2.6.27-rc9 QGLE make unsupported page size explicit compile failure

login
register
mail settings
Submitter Ron Mercer
Date Oct. 14, 2008, 1:54 a.m.
Message ID <20081014015455.GA25385@susedev.qlogic.org>
Download mbox | patch
Permalink /patch/4384/
State Rejected
Delegated to: David Miller
Headers show

Comments

Ron Mercer - Oct. 14, 2008, 1:54 a.m.
Dave/Grant,
I sent this earlier today but didn't see it on the netdev list.
Thanks, Ron

This ASIC does support all page sizes. For 4k and 8k page size the TX control block needs an external scatter gather list.  For page sizes larger than 8k the max frags is satisfied by the original TX control block.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
---
 drivers/net/qlge/qlge.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
David Miller - Oct. 14, 2008, 2:03 a.m.
From: Ron Mercer <ron.mercer@qlogic.com>
Date: Mon, 13 Oct 2008 18:54:55 -0700

> Dave/Grant,
> I sent this earlier today but didn't see it on the netdev list.
> Thanks, Ron
> 
> This ASIC does support all page sizes. For 4k and 8k page size the TX control block needs an external scatter gather list.  For page sizes larger than 8k the max frags is satisfied by the original TX control block.
> 
> Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>

I'm not applying this.  I _explicitly_ said I would not apply a
solution like this.

I waited for you guys all day for this?!?!

We need to find a way to make this a Kconfig dependency.

Build failures are absolutely unacceptable.

People do randconfig, allyesconfig, allmodconfig, etc. for build
regression testing and that has to work no matter what page size gets
selected or is the default for a given platform.

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Matthew Wilcox - Oct. 14, 2008, 2:19 a.m.
On Mon, Oct 13, 2008 at 07:03:45PM -0700, David Miller wrote:
> From: Ron Mercer <ron.mercer@qlogic.com>
> Date: Mon, 13 Oct 2008 18:54:55 -0700
> 
> > This ASIC does support all page sizes. For 4k and 8k page size the TX control block needs an external scatter gather list.  For page sizes larger than 8k the max frags is satisfied by the original TX control block.
> 
> I'm not applying this.  I _explicitly_ said I would not apply a
> solution like this.
> 
> I waited for you guys all day for this?!?!
> 
> We need to find a way to make this a Kconfig dependency.
> 
> Build failures are absolutely unacceptable.

Um, Dave, I think you misread his patch.

All it does it make the '64k case' the 'every other size case'.  There's
no build failure with Ron's patch.
David Miller - Oct. 14, 2008, 2:31 a.m.
From: Matthew Wilcox <matthew@wil.cx>
Date: Mon, 13 Oct 2008 20:19:02 -0600

> On Mon, Oct 13, 2008 at 07:03:45PM -0700, David Miller wrote:
> > From: Ron Mercer <ron.mercer@qlogic.com>
> > Date: Mon, 13 Oct 2008 18:54:55 -0700
> > 
> > > This ASIC does support all page sizes. For 4k and 8k page size the TX control block needs an external scatter gather list.  For page sizes larger than 8k the max frags is satisfied by the original TX control block.
> > 
> > I'm not applying this.  I _explicitly_ said I would not apply a
> > solution like this.
> > 
> > I waited for you guys all day for this?!?!
> > 
> > We need to find a way to make this a Kconfig dependency.
> > 
> > Build failures are absolutely unacceptable.
> 
> Um, Dave, I think you misread his patch.
> 
> All it does it make the '64k case' the 'every other size case'.  There's
> no build failure with Ron's patch.

Thanks for the correction, I'll look at this again :)
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Ron Mercer - Oct. 14, 2008, 2:53 a.m.
On Mon, Oct 13, 2008 at 07:31:53PM -0700, David Miller wrote:
> From: Matthew Wilcox <matthew@wil.cx>
> Date: Mon, 13 Oct 2008 20:19:02 -0600
> 
> > On Mon, Oct 13, 2008 at 07:03:45PM -0700, David Miller wrote:
> > > From: Ron Mercer <ron.mercer@qlogic.com>
> > > Date: Mon, 13 Oct 2008 18:54:55 -0700
> > > 
> > > > This ASIC does support all page sizes. For 4k and 8k page size the TX control block needs an external scatter gather list.  For page sizes larger than 8k the max frags is satisfied by the original TX control block.
> > > 
> > > I'm not applying this.  I _explicitly_ said I would not apply a
> > > solution like this.
> > > 
> > > I waited for you guys all day for this?!?!
> > > 
> > > We need to find a way to make this a Kconfig dependency.
> > > 
> > > Build failures are absolutely unacceptable.
> > 
> > Um, Dave, I think you misread his patch.
> > 
> > All it does it make the '64k case' the 'every other size case'.  There's
> > no build failure with Ron's patch.
> 
> Thanks for the correction, I'll look at this again :)

My explanation might not have been very good.  What I was trying to say
is that the macro in question determines the size of a scatter/gathter
list that is external to the TX descriptor.  The size is based on
MAX_SKB_FRAGS and PAGE_SIZE.  When PAGE_SIZE is larger than 8k I don't
need the external scatter/gather list because all frags will fit in the
native TX descriptor.

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller - Oct. 14, 2008, 5:56 a.m.
From: Ron Mercer <ron.mercer@qlogic.com>
Date: Mon, 13 Oct 2008 19:53:29 -0700

> My explanation might not have been very good.  What I was trying to say
> is that the macro in question determines the size of a scatter/gathter
> list that is external to the TX descriptor.  The size is based on
> MAX_SKB_FRAGS and PAGE_SIZE.  When PAGE_SIZE is larger than 8k I don't
> need the external scatter/gather list because all frags will fit in the
> native TX descriptor.

Yes, it all makes sense now, thanks Ron.

Patch applied.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/net/qlge/qlge.h b/drivers/net/qlge/qlge.h
index c37ea43..38116f9 100644
--- a/drivers/net/qlge/qlge.h
+++ b/drivers/net/qlge/qlge.h
@@ -58,7 +58,7 @@ 
  */
 #if (PAGE_SHIFT == 12) || (PAGE_SHIFT == 13)	/* 4k & 8k pages */
 #define TX_DESC_PER_OAL ((MAX_SKB_FRAGS - TX_DESC_PER_IOCB) + 2)
-#elif (PAGE_SHIFT == 16)	/* 64k pages */
+#else /* all other page sizes */
 #define TX_DESC_PER_OAL 0
 #endif