Re-order structure entropy_store to remove 8 bytes of padding on
64 bit builds, so shrinking this structure from 72 to 64 bytes
and allowing it to fit into one cache line.
Signed-off-by: Richard Kennedy <[email protected]>
---
patch against v2.6.35-rc6
built & tested on x86_64
regards
Richard
diff --git a/drivers/char/random.c b/drivers/char/random.c
index 8d85587..caef35a 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -407,8 +407,8 @@ struct entropy_store {
struct poolinfo *poolinfo;
__u32 *pool;
const char *name;
- int limit;
struct entropy_store *pull;
+ int limit;
/* read-write data: */
spinlock_t lock;
On Wed, 2010-07-28 at 10:32 +0100, Richard Kennedy wrote:
> Re-order structure entropy_store to remove 8 bytes of padding on
> 64 bit builds, so shrinking this structure from 72 to 64 bytes
> and allowing it to fit into one cache line.
I have a vague memory that we reordered things so that the r/w bits
would be on a separate cache line than the r/o bits. But as we never
added the alignment primitives to actually enforce that, I guess it
doesn't matter much.
> Signed-off-by: Richard Kennedy <[email protected]>
Signed-off-by: Matt Mackall <[email protected]>
--
Mathematics is the supreme nostalgia of our time.
On Wed, Jul 28, 2010 at 11:02:28AM -0500, Matt Mackall wrote:
> On Wed, 2010-07-28 at 10:32 +0100, Richard Kennedy wrote:
> > Re-order structure entropy_store to remove 8 bytes of padding on
> > 64 bit builds, so shrinking this structure from 72 to 64 bytes
> > and allowing it to fit into one cache line.
>
> I have a vague memory that we reordered things so that the r/w bits
> would be on a separate cache line than the r/o bits. But as we never
> added the alignment primitives to actually enforce that, I guess it
> doesn't matter much.
>
> > Signed-off-by: Richard Kennedy <[email protected]>
>
> Signed-off-by: Matt Mackall <[email protected]>
Patch applied. Thanks!
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Sat, 2010-07-31 at 19:58 +0800, Herbert Xu wrote:
> On Wed, Jul 28, 2010 at 11:02:28AM -0500, Matt Mackall wrote:
> > On Wed, 2010-07-28 at 10:32 +0100, Richard Kennedy wrote:
> > > Re-order structure entropy_store to remove 8 bytes of padding on
> > > 64 bit builds, so shrinking this structure from 72 to 64 bytes
> > > and allowing it to fit into one cache line.
> >
> > I have a vague memory that we reordered things so that the r/w bits
> > would be on a separate cache line than the r/o bits. But as we never
> > added the alignment primitives to actually enforce that, I guess it
> > doesn't matter much.
> >
> > > Signed-off-by: Richard Kennedy <[email protected]>
> >
> > Signed-off-by: Matt Mackall <[email protected]>
>
> Patch applied. Thanks!
Oops, I forgot to cc: you on this and Andrew queued it. Andrew, I've
been queueing the RNG bits through Herbert's crypto tree lately.
--
Mathematics is the supreme nostalgia of our time.
On Sat, Jul 31, 2010 at 08:36:32AM -0500, Matt Mackall wrote:
>
> Oops, I forgot to cc: you on this and Andrew queued it. Andrew, I've
> been queueing the RNG bits through Herbert's crypto tree lately.
I think Andrew's scripts are clever enough to remove patches
once they show up in another tree.
Cheers,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt