Messages in this thread Patch in this message | | | Date | Sun, 16 Dec 2007 12:45:01 +0100 | From | Eric Dumazet <> | Subject | [RANDOM] Move two variables to read_mostly section to save memory |
| |
While examining vmlinux namelist on i686, I noticed :
c0581300 D random_table c0581480 d input_pool c0581580 d random_read_wakeup_thresh c0581584 d random_write_wakeup_thresh c0581600 d blocking_pool
That means that the two integers random_read_wakeup_thresh and random_write_wakeup_thresh use a full cache entry (128 bytes).
Moving them to read_mostly section can shrinks vmlinux by 120 bytes.
# size vmlinux* text data bss dec hex filename 4835553 450210 610304 5896067 59f783 vmlinux.after_patch 4835553 450330 610304 5896187 59f7fb vmlinux.before_patch
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> diff --git a/drivers/char/random.c b/drivers/char/random.c index 5fee056..af48e86 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -256,14 +256,14 @@ * The minimum number of bits of entropy before we wake up a read on * /dev/random. Should be enough to do a significant reseed. */ -static int random_read_wakeup_thresh = 64; +static int random_read_wakeup_thresh __read_mostly = 64; /* * If the entropy count falls under this number of bits, then we * should wake up processes which are selecting or polling on write * access to /dev/random. */ -static int random_write_wakeup_thresh = 128; +static int random_write_wakeup_thresh __read_mostly = 128; /* * When the input pool goes over trickle_thresh, start dropping most | |