[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20080819.014350.79505195.davem@davemloft.net>
Date: Tue, 19 Aug 2008 01:43:50 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: harvey.harrison@...il.com
Cc: akpm@...ux-foundation.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 18/23] sparc: use the new byteorder headers
From: Harvey Harrison <harvey.harrison@...il.com>
Date: Mon, 18 Aug 2008 17:48:17 -0700
> Signed-off-by: Harvey Harrison <harvey.harrison@...il.com>
I'm not so sure about this.
If I understand the ___swab*() inlines in linux/swab.h,
it has the following priority of swapping methods:
1) If arch defines __arch_swab*(), this is used.
2) If arch defines __arch_swab*p(), variable is popped onto
the stack and we do the pointer based operation.
3) Else normal C version is used.
Case #2 is totally disagree with.
Especially for small swaps such as 16-bit the inline expansion
of the portable C code is going to be much better than popping
the variable onto and then back off the stack.
Sparc 64-bit only provides the __arch_swab*p() routines so
#2 is what will in fact be used here.
So NACK based upon that analysis.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists