This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] get_random_long() and AT_ENTROPY for auxv, kernel 2.6.21.5


On Sun, Jun 24, 2007 at 07:45:04PM +0200, Alexander Gabert wrote:
> Hi Linus,
> hi LKML,
> 
> i would like to thank LKML and especially Eric (thanks for the per_cpu 
> macro tips and design guidelines!) and the other contributors to this idea.
> 
> This time the patch is rather big because it also removes 
> get_random_int() and introduces get_random_long() throughout the kernel.

Stop right there. You still haven't answered my original question.
What is the point of this exercise in the first place, please?

Am I right in thinking you have three unrelated patches here?

- something to do with aux vector headers
- something to do with get_random_int repeating itself
- sweeping change of get_random_int to get_random_long for no obvious reason

These should be three completely separate patches.

> My findings with get_random_int was that when i called it two times very 
> fast after another because of setting up two SSP randomized guard values 
> for the same process, it returned the same, yet randomized, integer number.

Send me a patch that fixes the above and nothing else, please.

Then we can talk about another patch to change things to get_random_long.

> --- linux-2.6.21.5.ORIG/arch/sparc64/kernel/sys_sparc.c	2007-06-11 
> 20:37:06.000000000 +0200
> +++ linux-2.6.21.5/arch/sparc64/kernel/sys_sparc.c	2007-06-24 
> 19:01:44.000000000 +0200
> @@ -362,7 +362,7 @@
> 	unsigned long random_factor = 0UL;
> 
> 	if (current->flags & PF_RANDOMIZE) {
> -		random_factor = get_random_int();
> +		random_factor = get_random_long();

This probably breaks Sparc64.

-- 
Mathematics is the supreme nostalgia of our time.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]