Mercurial > hg > aboriginal
view sources/patches/linux-2.6.25-rc1-noperl.patch @ 380:d840968ff9a3
Added tag 0.9.0 for changeset 2925f71bce99
author | Rob Landley <rob@landley.net> |
---|---|
date | Wed, 06 Aug 2008 16:44:02 -0500 |
parents | a791ca629d9c |
children | 9b36b9dbfc4c |
line wrap: on
line source
diff -ru linux-2.6.25-rc1/kernel/timeconst.pl linux-2.6.25-new/kernel/timeconst.pl --- linux-2.6.25-rc1/kernel/timeconst.pl 2008-02-10 16:18:14.000000000 -0600 +++ linux-2.6.25-new/kernel/timeconst.pl 2008-02-15 17:52:02.000000000 -0600 @@ -11,210 +11,10 @@ # # -# Usage: timeconst.pl HZ > timeconst.h +# Usage: timeconst.pl HZ... > timeconst.h # -# Precomputed values for systems without Math::BigInt -# Generated by: # timeconst.pl --can 24 32 48 64 100 122 128 200 250 256 300 512 1000 1024 1200 -%canned_values = ( - 24 => [ - '0xa6aaaaab','0x2aaaaaa',26, - '0xa6aaaaaaaaaaaaab','0x2aaaaaaaaaaaaaa',58, - 125,3, - '0xc49ba5e4','0x1fbe76c8b4',37, - '0xc49ba5e353f7ceda','0x1fbe76c8b439581062',69, - 3,125, - '0xa2c2aaab','0xaaaa',16, - '0xa2c2aaaaaaaaaaab','0xaaaaaaaaaaaa',48, - 125000,3, - '0xc9539b89','0x7fffbce4217d',47, - '0xc9539b8887229e91','0x7fffbce4217d2849cb25',79, - 3,125000, - ], 32 => [ - '0xfa000000','0x6000000',27, - '0xfa00000000000000','0x600000000000000',59, - 125,4, - '0x83126e98','0xfdf3b645a',36, - '0x83126e978d4fdf3c','0xfdf3b645a1cac0831',68, - 4,125, - '0xf4240000','0x0',17, - '0xf424000000000000','0x0',49, - 31250,1, - '0x8637bd06','0x3fff79c842fa',46, - '0x8637bd05af6c69b6','0x3fff79c842fa5093964a',78, - 1,31250, - ], 48 => [ - '0xa6aaaaab','0x6aaaaaa',27, - '0xa6aaaaaaaaaaaaab','0x6aaaaaaaaaaaaaa',59, - 125,6, - '0xc49ba5e4','0xfdf3b645a',36, - '0xc49ba5e353f7ceda','0xfdf3b645a1cac0831',68, - 6,125, - '0xa2c2aaab','0x15555',17, - '0xa2c2aaaaaaaaaaab','0x1555555555555',49, - 62500,3, - '0xc9539b89','0x3fffbce4217d',46, - '0xc9539b8887229e91','0x3fffbce4217d2849cb25',78, - 3,62500, - ], 64 => [ - '0xfa000000','0xe000000',28, - '0xfa00000000000000','0xe00000000000000',60, - 125,8, - '0x83126e98','0x7ef9db22d',35, - '0x83126e978d4fdf3c','0x7ef9db22d0e560418',67, - 8,125, - '0xf4240000','0x0',18, - '0xf424000000000000','0x0',50, - 15625,1, - '0x8637bd06','0x1fff79c842fa',45, - '0x8637bd05af6c69b6','0x1fff79c842fa5093964a',77, - 1,15625, - ], 100 => [ - '0xa0000000','0x0',28, - '0xa000000000000000','0x0',60, - 10,1, - '0xcccccccd','0x733333333',35, - '0xcccccccccccccccd','0x73333333333333333',67, - 1,10, - '0x9c400000','0x0',18, - '0x9c40000000000000','0x0',50, - 10000,1, - '0xd1b71759','0x1fff2e48e8a7',45, - '0xd1b71758e219652c','0x1fff2e48e8a71de69ad4',77, - 1,10000, - ], 122 => [ - '0x8325c53f','0xfbcda3a',28, - '0x8325c53ef368eb05','0xfbcda3ac10c9714',60, - 500,61, - '0xf9db22d1','0x7fbe76c8b',35, - '0xf9db22d0e560418a','0x7fbe76c8b43958106',67, - 61,500, - '0x8012e2a0','0x3ef36',18, - '0x8012e29f79b47583','0x3ef368eb04325',50, - 500000,61, - '0xffda4053','0x1ffffbce4217',45, - '0xffda4052d666a983','0x1ffffbce4217d2849cb2',77, - 61,500000, - ], 128 => [ - '0xfa000000','0x1e000000',29, - '0xfa00000000000000','0x1e00000000000000',61, - 125,16, - '0x83126e98','0x3f7ced916',34, - '0x83126e978d4fdf3c','0x3f7ced916872b020c',66, - 16,125, - '0xf4240000','0x40000',19, - '0xf424000000000000','0x4000000000000',51, - 15625,2, - '0x8637bd06','0xfffbce4217d',44, - '0x8637bd05af6c69b6','0xfffbce4217d2849cb25',76, - 2,15625, - ], 200 => [ - '0xa0000000','0x0',29, - '0xa000000000000000','0x0',61, - 5,1, - '0xcccccccd','0x333333333',34, - '0xcccccccccccccccd','0x33333333333333333',66, - 1,5, - '0x9c400000','0x0',19, - '0x9c40000000000000','0x0',51, - 5000,1, - '0xd1b71759','0xfff2e48e8a7',44, - '0xd1b71758e219652c','0xfff2e48e8a71de69ad4',76, - 1,5000, - ], 250 => [ - '0x80000000','0x0',29, - '0x8000000000000000','0x0',61, - 4,1, - '0x80000000','0x180000000',33, - '0x8000000000000000','0x18000000000000000',65, - 1,4, - '0xfa000000','0x0',20, - '0xfa00000000000000','0x0',52, - 4000,1, - '0x83126e98','0x7ff7ced9168',43, - '0x83126e978d4fdf3c','0x7ff7ced916872b020c4',75, - 1,4000, - ], 256 => [ - '0xfa000000','0x3e000000',30, - '0xfa00000000000000','0x3e00000000000000',62, - 125,32, - '0x83126e98','0x1fbe76c8b',33, - '0x83126e978d4fdf3c','0x1fbe76c8b43958106',65, - 32,125, - '0xf4240000','0xc0000',20, - '0xf424000000000000','0xc000000000000',52, - 15625,4, - '0x8637bd06','0x7ffde7210be',43, - '0x8637bd05af6c69b6','0x7ffde7210be9424e592',75, - 4,15625, - ], 300 => [ - '0xd5555556','0x2aaaaaaa',30, - '0xd555555555555556','0x2aaaaaaaaaaaaaaa',62, - 10,3, - '0x9999999a','0x1cccccccc',33, - '0x999999999999999a','0x1cccccccccccccccc',65, - 3,10, - '0xd0555556','0xaaaaa',20, - '0xd055555555555556','0xaaaaaaaaaaaaa',52, - 10000,3, - '0x9d495183','0x7ffcb923a29',43, - '0x9d495182a9930be1','0x7ffcb923a29c779a6b5',75, - 3,10000, - ], 512 => [ - '0xfa000000','0x7e000000',31, - '0xfa00000000000000','0x7e00000000000000',63, - 125,64, - '0x83126e98','0xfdf3b645',32, - '0x83126e978d4fdf3c','0xfdf3b645a1cac083',64, - 64,125, - '0xf4240000','0x1c0000',21, - '0xf424000000000000','0x1c000000000000',53, - 15625,8, - '0x8637bd06','0x3ffef39085f',42, - '0x8637bd05af6c69b6','0x3ffef39085f4a1272c9',74, - 8,15625, - ], 1000 => [ - '0x80000000','0x0',31, - '0x8000000000000000','0x0',63, - 1,1, - '0x80000000','0x0',31, - '0x8000000000000000','0x0',63, - 1,1, - '0xfa000000','0x0',22, - '0xfa00000000000000','0x0',54, - 1000,1, - '0x83126e98','0x1ff7ced9168',41, - '0x83126e978d4fdf3c','0x1ff7ced916872b020c4',73, - 1,1000, - ], 1024 => [ - '0xfa000000','0xfe000000',32, - '0xfa00000000000000','0xfe00000000000000',64, - 125,128, - '0x83126e98','0x7ef9db22',31, - '0x83126e978d4fdf3c','0x7ef9db22d0e56041',63, - 128,125, - '0xf4240000','0x3c0000',22, - '0xf424000000000000','0x3c000000000000',54, - 15625,16, - '0x8637bd06','0x1fff79c842f',41, - '0x8637bd05af6c69b6','0x1fff79c842fa5093964',73, - 16,15625, - ], 1200 => [ - '0xd5555556','0xd5555555',32, - '0xd555555555555556','0xd555555555555555',64, - 5,6, - '0x9999999a','0x66666666',31, - '0x999999999999999a','0x6666666666666666',63, - 6,5, - '0xd0555556','0x2aaaaa',22, - '0xd055555555555556','0x2aaaaaaaaaaaaa',54, - 2500,3, - '0x9d495183','0x1ffcb923a29',41, - '0x9d495182a9930be1','0x1ffcb923a29c779a6b5',73, - 3,2500, - ] -); $has_bigint = eval 'use Math::BigInt qw(bgcd); 1;'; @@ -305,8 +105,7 @@ my $s, $m, $a, $g; if (!$has_bigint) { - die "$0: HZ == $hz not canned and ". - "Math::BigInt not available\n"; + die "$0: Math::BigInt not available\n"; } # MSEC conversions @@ -323,19 +122,7 @@ my($hz, @val) = @_; my $pfx, $bit, $suf, $s, $m, $a; - print "/* Automatically generated by kernel/timeconst.pl */\n"; - print "/* Conversion constants for HZ == $hz */\n"; - print "\n"; - print "#ifndef KERNEL_TIMECONST_H\n"; - print "#define KERNEL_TIMECONST_H\n"; - print "\n"; - - print "#include <linux/param.h>\n"; - - print "\n"; - print "#if HZ != $hz\n"; - print "#error \"kernel/timeconst.h has the wrong HZ value!\"\n"; - print "#endif\n"; + print "HZ == $hz\n"; print "\n"; foreach $pfx ('HZ_TO_MSEC','MSEC_TO_HZ', @@ -352,51 +139,37 @@ } } - print "\n"; - print "#endif /* KERNEL_TIMECONST_H */\n"; + print "\n#elif " } -($hz) = @ARGV; +#($hz) = @ARGV; -# Use this to generate the %canned_values structure -if ($hz eq '--can') { - shift(@ARGV); - @hzlist = sort {$a <=> $b} (@ARGV); - - print "# Precomputed values for systems without Math::BigInt\n"; - print "# Generated by:\n"; - print "# timeconst.pl --can ", join(' ', @hzlist), "\n"; - print "\%canned_values = (\n"; - my $pf = "\t"; - foreach $hz (@hzlist) { - my @values = compute_values($hz); - print "$pf$hz => [\n"; - while (scalar(@values)) { - my $bit; - foreach $bit (32, 64) { - my $m = shift(@values); - my $a = shift(@values); - my $s = shift(@values); - print "\t\t\'",$m,"\',\'",$a,"\',",$s,",\n"; - } - my $n = shift(@values); - my $d = shift(@values); - print "\t\t",$n,',',$d,",\n"; - } - print "\t]"; - $pf = ', '; - } - print "\n);\n"; -} else { - $hz += 0; # Force to number +print "/* Automatically generated by kernel/timeconst.pl */\n"; +print "/* Conversion constants for HZ */\n"; +print "\n"; +print "#ifndef KERNEL_TIMECONST_H\n"; +print "#define KERNEL_TIMECONST_H\n"; +print "\n"; + +print "#include <linux/param.h>\n"; + +print "#if "; + +foreach $hz (@ARGV) +{ + #$hz += 0; # Force to number if ($hz < 1) { die "Usage: $0 HZ\n"; } - @val = @{$canned_values{$hz}}; - if (!defined(@val)) { - @val = compute_values($hz); - } + @val = compute_values($hz); output($hz, @val); } + +print "1\n"; +print "#error \"kernel/timeconst.h has unknown HZ value!\"\n"; +print "#endif\n"; +print "\n"; +print "#endif /* KERNEL_TIMECONST_H */\n"; + exit 0; --- /dev/null 2007-10-16 17:06:33.000000000 -0500 +++ linux-new/kernel/timeconst.h 2008-02-15 18:39:01.000000000 -0600 @@ -0,0 +1,537 @@ +/* Automatically generated by kernel/timeconst.pl */ +/* Conversion constants for HZ */ + +#ifndef KERNEL_TIMECONST_H +#define KERNEL_TIMECONST_H + +#include <linux/param.h> +#if HZ == 24 + +#define HZ_TO_MSEC_MUL32 0xa6aaaaab +#define HZ_TO_MSEC_ADJ32 0x2aaaaaa +#define HZ_TO_MSEC_SHR32 26 +#define HZ_TO_MSEC_MUL64 0xa6aaaaaaaaaaaaab +#define HZ_TO_MSEC_ADJ64 0x2aaaaaaaaaaaaaa +#define HZ_TO_MSEC_SHR64 58 +#define HZ_TO_MSEC_NUM 125 +#define HZ_TO_MSEC_DEN 3 +#define MSEC_TO_HZ_MUL32 0xc49ba5e4 +#define MSEC_TO_HZ_ADJ32 0x1fbe76c8b4 +#define MSEC_TO_HZ_SHR32 37 +#define MSEC_TO_HZ_MUL64 0xc49ba5e353f7ceda +#define MSEC_TO_HZ_ADJ64 0x1fbe76c8b439581062 +#define MSEC_TO_HZ_SHR64 69 +#define MSEC_TO_HZ_NUM 3 +#define MSEC_TO_HZ_DEN 125 +#define HZ_TO_USEC_MUL32 0xa2c2aaab +#define HZ_TO_USEC_ADJ32 0xaaaa +#define HZ_TO_USEC_SHR32 16 +#define HZ_TO_USEC_MUL64 0xa2c2aaaaaaaaaaab +#define HZ_TO_USEC_ADJ64 0xaaaaaaaaaaaa +#define HZ_TO_USEC_SHR64 48 +#define HZ_TO_USEC_NUM 125000 +#define HZ_TO_USEC_DEN 3 +#define USEC_TO_HZ_MUL32 0xc9539b89 +#define USEC_TO_HZ_ADJ32 0x7fffbce4217d +#define USEC_TO_HZ_SHR32 47 +#define USEC_TO_HZ_MUL64 0xc9539b8887229e91 +#define USEC_TO_HZ_ADJ64 0x7fffbce4217d2849cb25 +#define USEC_TO_HZ_SHR64 79 +#define USEC_TO_HZ_NUM 3 +#define USEC_TO_HZ_DEN 125000 + +#elif HZ == 32 + +#define HZ_TO_MSEC_MUL32 0xfa000000 +#define HZ_TO_MSEC_ADJ32 0x6000000 +#define HZ_TO_MSEC_SHR32 27 +#define HZ_TO_MSEC_MUL64 0xfa00000000000000 +#define HZ_TO_MSEC_ADJ64 0x600000000000000 +#define HZ_TO_MSEC_SHR64 59 +#define HZ_TO_MSEC_NUM 125 +#define HZ_TO_MSEC_DEN 4 +#define MSEC_TO_HZ_MUL32 0x83126e98 +#define MSEC_TO_HZ_ADJ32 0xfdf3b645a +#define MSEC_TO_HZ_SHR32 36 +#define MSEC_TO_HZ_MUL64 0x83126e978d4fdf3c +#define MSEC_TO_HZ_ADJ64 0xfdf3b645a1cac0831 +#define MSEC_TO_HZ_SHR64 68 +#define MSEC_TO_HZ_NUM 4 +#define MSEC_TO_HZ_DEN 125 +#define HZ_TO_USEC_MUL32 0xf4240000 +#define HZ_TO_USEC_ADJ32 0x0 +#define HZ_TO_USEC_SHR32 17 +#define HZ_TO_USEC_MUL64 0xf424000000000000 +#define HZ_TO_USEC_ADJ64 0x0 +#define HZ_TO_USEC_SHR64 49 +#define HZ_TO_USEC_NUM 31250 +#define HZ_TO_USEC_DEN 1 +#define USEC_TO_HZ_MUL32 0x8637bd06 +#define USEC_TO_HZ_ADJ32 0x3fff79c842fa +#define USEC_TO_HZ_SHR32 46 +#define USEC_TO_HZ_MUL64 0x8637bd05af6c69b6 +#define USEC_TO_HZ_ADJ64 0x3fff79c842fa5093964a +#define USEC_TO_HZ_SHR64 78 +#define USEC_TO_HZ_NUM 1 +#define USEC_TO_HZ_DEN 31250 + +#elif HZ == 48 + +#define HZ_TO_MSEC_MUL32 0xa6aaaaab +#define HZ_TO_MSEC_ADJ32 0x6aaaaaa +#define HZ_TO_MSEC_SHR32 27 +#define HZ_TO_MSEC_MUL64 0xa6aaaaaaaaaaaaab +#define HZ_TO_MSEC_ADJ64 0x6aaaaaaaaaaaaaa +#define HZ_TO_MSEC_SHR64 59 +#define HZ_TO_MSEC_NUM 125 +#define HZ_TO_MSEC_DEN 6 +#define MSEC_TO_HZ_MUL32 0xc49ba5e4 +#define MSEC_TO_HZ_ADJ32 0xfdf3b645a +#define MSEC_TO_HZ_SHR32 36 +#define MSEC_TO_HZ_MUL64 0xc49ba5e353f7ceda +#define MSEC_TO_HZ_ADJ64 0xfdf3b645a1cac0831 +#define MSEC_TO_HZ_SHR64 68 +#define MSEC_TO_HZ_NUM 6 +#define MSEC_TO_HZ_DEN 125 +#define HZ_TO_USEC_MUL32 0xa2c2aaab +#define HZ_TO_USEC_ADJ32 0x15555 +#define HZ_TO_USEC_SHR32 17 +#define HZ_TO_USEC_MUL64 0xa2c2aaaaaaaaaaab +#define HZ_TO_USEC_ADJ64 0x1555555555555 +#define HZ_TO_USEC_SHR64 49 +#define HZ_TO_USEC_NUM 62500 +#define HZ_TO_USEC_DEN 3 +#define USEC_TO_HZ_MUL32 0xc9539b89 +#define USEC_TO_HZ_ADJ32 0x3fffbce4217d +#define USEC_TO_HZ_SHR32 46 +#define USEC_TO_HZ_MUL64 0xc9539b8887229e91 +#define USEC_TO_HZ_ADJ64 0x3fffbce4217d2849cb25 +#define USEC_TO_HZ_SHR64 78 +#define USEC_TO_HZ_NUM 3 +#define USEC_TO_HZ_DEN 62500 + +#elif HZ == 64 + +#define HZ_TO_MSEC_MUL32 0xfa000000 +#define HZ_TO_MSEC_ADJ32 0xe000000 +#define HZ_TO_MSEC_SHR32 28 +#define HZ_TO_MSEC_MUL64 0xfa00000000000000 +#define HZ_TO_MSEC_ADJ64 0xe00000000000000 +#define HZ_TO_MSEC_SHR64 60 +#define HZ_TO_MSEC_NUM 125 +#define HZ_TO_MSEC_DEN 8 +#define MSEC_TO_HZ_MUL32 0x83126e98 +#define MSEC_TO_HZ_ADJ32 0x7ef9db22d +#define MSEC_TO_HZ_SHR32 35 +#define MSEC_TO_HZ_MUL64 0x83126e978d4fdf3c +#define MSEC_TO_HZ_ADJ64 0x7ef9db22d0e560418 +#define MSEC_TO_HZ_SHR64 67 +#define MSEC_TO_HZ_NUM 8 +#define MSEC_TO_HZ_DEN 125 +#define HZ_TO_USEC_MUL32 0xf4240000 +#define HZ_TO_USEC_ADJ32 0x0 +#define HZ_TO_USEC_SHR32 18 +#define HZ_TO_USEC_MUL64 0xf424000000000000 +#define HZ_TO_USEC_ADJ64 0x0 +#define HZ_TO_USEC_SHR64 50 +#define HZ_TO_USEC_NUM 15625 +#define HZ_TO_USEC_DEN 1 +#define USEC_TO_HZ_MUL32 0x8637bd06 +#define USEC_TO_HZ_ADJ32 0x1fff79c842fa +#define USEC_TO_HZ_SHR32 45 +#define USEC_TO_HZ_MUL64 0x8637bd05af6c69b6 +#define USEC_TO_HZ_ADJ64 0x1fff79c842fa5093964a +#define USEC_TO_HZ_SHR64 77 +#define USEC_TO_HZ_NUM 1 +#define USEC_TO_HZ_DEN 15625 + +#elif HZ == 100 + +#define HZ_TO_MSEC_MUL32 0xa0000000 +#define HZ_TO_MSEC_ADJ32 0x0 +#define HZ_TO_MSEC_SHR32 28 +#define HZ_TO_MSEC_MUL64 0xa000000000000000 +#define HZ_TO_MSEC_ADJ64 0x0 +#define HZ_TO_MSEC_SHR64 60 +#define HZ_TO_MSEC_NUM 10 +#define HZ_TO_MSEC_DEN 1 +#define MSEC_TO_HZ_MUL32 0xcccccccd +#define MSEC_TO_HZ_ADJ32 0x733333333 +#define MSEC_TO_HZ_SHR32 35 +#define MSEC_TO_HZ_MUL64 0xcccccccccccccccd +#define MSEC_TO_HZ_ADJ64 0x73333333333333333 +#define MSEC_TO_HZ_SHR64 67 +#define MSEC_TO_HZ_NUM 1 +#define MSEC_TO_HZ_DEN 10 +#define HZ_TO_USEC_MUL32 0x9c400000 +#define HZ_TO_USEC_ADJ32 0x0 +#define HZ_TO_USEC_SHR32 18 +#define HZ_TO_USEC_MUL64 0x9c40000000000000 +#define HZ_TO_USEC_ADJ64 0x0 +#define HZ_TO_USEC_SHR64 50 +#define HZ_TO_USEC_NUM 10000 +#define HZ_TO_USEC_DEN 1 +#define USEC_TO_HZ_MUL32 0xd1b71759 +#define USEC_TO_HZ_ADJ32 0x1fff2e48e8a7 +#define USEC_TO_HZ_SHR32 45 +#define USEC_TO_HZ_MUL64 0xd1b71758e219652c +#define USEC_TO_HZ_ADJ64 0x1fff2e48e8a71de69ad4 +#define USEC_TO_HZ_SHR64 77 +#define USEC_TO_HZ_NUM 1 +#define USEC_TO_HZ_DEN 10000 + +#elif HZ == 122 + +#define HZ_TO_MSEC_MUL32 0x8325c53f +#define HZ_TO_MSEC_ADJ32 0xfbcda3a +#define HZ_TO_MSEC_SHR32 28 +#define HZ_TO_MSEC_MUL64 0x8325c53ef368eb05 +#define HZ_TO_MSEC_ADJ64 0xfbcda3ac10c9714 +#define HZ_TO_MSEC_SHR64 60 +#define HZ_TO_MSEC_NUM 500 +#define HZ_TO_MSEC_DEN 61 +#define MSEC_TO_HZ_MUL32 0xf9db22d1 +#define MSEC_TO_HZ_ADJ32 0x7fbe76c8b +#define MSEC_TO_HZ_SHR32 35 +#define MSEC_TO_HZ_MUL64 0xf9db22d0e560418a +#define MSEC_TO_HZ_ADJ64 0x7fbe76c8b43958106 +#define MSEC_TO_HZ_SHR64 67 +#define MSEC_TO_HZ_NUM 61 +#define MSEC_TO_HZ_DEN 500 +#define HZ_TO_USEC_MUL32 0x8012e2a0 +#define HZ_TO_USEC_ADJ32 0x3ef36 +#define HZ_TO_USEC_SHR32 18 +#define HZ_TO_USEC_MUL64 0x8012e29f79b47583 +#define HZ_TO_USEC_ADJ64 0x3ef368eb04325 +#define HZ_TO_USEC_SHR64 50 +#define HZ_TO_USEC_NUM 500000 +#define HZ_TO_USEC_DEN 61 +#define USEC_TO_HZ_MUL32 0xffda4053 +#define USEC_TO_HZ_ADJ32 0x1ffffbce4217 +#define USEC_TO_HZ_SHR32 45 +#define USEC_TO_HZ_MUL64 0xffda4052d666a983 +#define USEC_TO_HZ_ADJ64 0x1ffffbce4217d2849cb2 +#define USEC_TO_HZ_SHR64 77 +#define USEC_TO_HZ_NUM 61 +#define USEC_TO_HZ_DEN 500000 + +#elif HZ == 128 + +#define HZ_TO_MSEC_MUL32 0xfa000000 +#define HZ_TO_MSEC_ADJ32 0x1e000000 +#define HZ_TO_MSEC_SHR32 29 +#define HZ_TO_MSEC_MUL64 0xfa00000000000000 +#define HZ_TO_MSEC_ADJ64 0x1e00000000000000 +#define HZ_TO_MSEC_SHR64 61 +#define HZ_TO_MSEC_NUM 125 +#define HZ_TO_MSEC_DEN 16 +#define MSEC_TO_HZ_MUL32 0x83126e98 +#define MSEC_TO_HZ_ADJ32 0x3f7ced916 +#define MSEC_TO_HZ_SHR32 34 +#define MSEC_TO_HZ_MUL64 0x83126e978d4fdf3c +#define MSEC_TO_HZ_ADJ64 0x3f7ced916872b020c +#define MSEC_TO_HZ_SHR64 66 +#define MSEC_TO_HZ_NUM 16 +#define MSEC_TO_HZ_DEN 125 +#define HZ_TO_USEC_MUL32 0xf4240000 +#define HZ_TO_USEC_ADJ32 0x40000 +#define HZ_TO_USEC_SHR32 19 +#define HZ_TO_USEC_MUL64 0xf424000000000000 +#define HZ_TO_USEC_ADJ64 0x4000000000000 +#define HZ_TO_USEC_SHR64 51 +#define HZ_TO_USEC_NUM 15625 +#define HZ_TO_USEC_DEN 2 +#define USEC_TO_HZ_MUL32 0x8637bd06 +#define USEC_TO_HZ_ADJ32 0xfffbce4217d +#define USEC_TO_HZ_SHR32 44 +#define USEC_TO_HZ_MUL64 0x8637bd05af6c69b6 +#define USEC_TO_HZ_ADJ64 0xfffbce4217d2849cb25 +#define USEC_TO_HZ_SHR64 76 +#define USEC_TO_HZ_NUM 2 +#define USEC_TO_HZ_DEN 15625 + +#elif HZ == 200 + +#define HZ_TO_MSEC_MUL32 0xa0000000 +#define HZ_TO_MSEC_ADJ32 0x0 +#define HZ_TO_MSEC_SHR32 29 +#define HZ_TO_MSEC_MUL64 0xa000000000000000 +#define HZ_TO_MSEC_ADJ64 0x0 +#define HZ_TO_MSEC_SHR64 61 +#define HZ_TO_MSEC_NUM 5 +#define HZ_TO_MSEC_DEN 1 +#define MSEC_TO_HZ_MUL32 0xcccccccd +#define MSEC_TO_HZ_ADJ32 0x333333333 +#define MSEC_TO_HZ_SHR32 34 +#define MSEC_TO_HZ_MUL64 0xcccccccccccccccd +#define MSEC_TO_HZ_ADJ64 0x33333333333333333 +#define MSEC_TO_HZ_SHR64 66 +#define MSEC_TO_HZ_NUM 1 +#define MSEC_TO_HZ_DEN 5 +#define HZ_TO_USEC_MUL32 0x9c400000 +#define HZ_TO_USEC_ADJ32 0x0 +#define HZ_TO_USEC_SHR32 19 +#define HZ_TO_USEC_MUL64 0x9c40000000000000 +#define HZ_TO_USEC_ADJ64 0x0 +#define HZ_TO_USEC_SHR64 51 +#define HZ_TO_USEC_NUM 5000 +#define HZ_TO_USEC_DEN 1 +#define USEC_TO_HZ_MUL32 0xd1b71759 +#define USEC_TO_HZ_ADJ32 0xfff2e48e8a7 +#define USEC_TO_HZ_SHR32 44 +#define USEC_TO_HZ_MUL64 0xd1b71758e219652c +#define USEC_TO_HZ_ADJ64 0xfff2e48e8a71de69ad4 +#define USEC_TO_HZ_SHR64 76 +#define USEC_TO_HZ_NUM 1 +#define USEC_TO_HZ_DEN 5000 + +#elif HZ == 250 + +#define HZ_TO_MSEC_MUL32 0x80000000 +#define HZ_TO_MSEC_ADJ32 0x0 +#define HZ_TO_MSEC_SHR32 29 +#define HZ_TO_MSEC_MUL64 0x8000000000000000 +#define HZ_TO_MSEC_ADJ64 0x0 +#define HZ_TO_MSEC_SHR64 61 +#define HZ_TO_MSEC_NUM 4 +#define HZ_TO_MSEC_DEN 1 +#define MSEC_TO_HZ_MUL32 0x80000000 +#define MSEC_TO_HZ_ADJ32 0x180000000 +#define MSEC_TO_HZ_SHR32 33 +#define MSEC_TO_HZ_MUL64 0x8000000000000000 +#define MSEC_TO_HZ_ADJ64 0x18000000000000000 +#define MSEC_TO_HZ_SHR64 65 +#define MSEC_TO_HZ_NUM 1 +#define MSEC_TO_HZ_DEN 4 +#define HZ_TO_USEC_MUL32 0xfa000000 +#define HZ_TO_USEC_ADJ32 0x0 +#define HZ_TO_USEC_SHR32 20 +#define HZ_TO_USEC_MUL64 0xfa00000000000000 +#define HZ_TO_USEC_ADJ64 0x0 +#define HZ_TO_USEC_SHR64 52 +#define HZ_TO_USEC_NUM 4000 +#define HZ_TO_USEC_DEN 1 +#define USEC_TO_HZ_MUL32 0x83126e98 +#define USEC_TO_HZ_ADJ32 0x7ff7ced9168 +#define USEC_TO_HZ_SHR32 43 +#define USEC_TO_HZ_MUL64 0x83126e978d4fdf3c +#define USEC_TO_HZ_ADJ64 0x7ff7ced916872b020c4 +#define USEC_TO_HZ_SHR64 75 +#define USEC_TO_HZ_NUM 1 +#define USEC_TO_HZ_DEN 4000 + +#elif HZ == 256 + +#define HZ_TO_MSEC_MUL32 0xfa000000 +#define HZ_TO_MSEC_ADJ32 0x3e000000 +#define HZ_TO_MSEC_SHR32 30 +#define HZ_TO_MSEC_MUL64 0xfa00000000000000 +#define HZ_TO_MSEC_ADJ64 0x3e00000000000000 +#define HZ_TO_MSEC_SHR64 62 +#define HZ_TO_MSEC_NUM 125 +#define HZ_TO_MSEC_DEN 32 +#define MSEC_TO_HZ_MUL32 0x83126e98 +#define MSEC_TO_HZ_ADJ32 0x1fbe76c8b +#define MSEC_TO_HZ_SHR32 33 +#define MSEC_TO_HZ_MUL64 0x83126e978d4fdf3c +#define MSEC_TO_HZ_ADJ64 0x1fbe76c8b43958106 +#define MSEC_TO_HZ_SHR64 65 +#define MSEC_TO_HZ_NUM 32 +#define MSEC_TO_HZ_DEN 125 +#define HZ_TO_USEC_MUL32 0xf4240000 +#define HZ_TO_USEC_ADJ32 0xc0000 +#define HZ_TO_USEC_SHR32 20 +#define HZ_TO_USEC_MUL64 0xf424000000000000 +#define HZ_TO_USEC_ADJ64 0xc000000000000 +#define HZ_TO_USEC_SHR64 52 +#define HZ_TO_USEC_NUM 15625 +#define HZ_TO_USEC_DEN 4 +#define USEC_TO_HZ_MUL32 0x8637bd06 +#define USEC_TO_HZ_ADJ32 0x7ffde7210be +#define USEC_TO_HZ_SHR32 43 +#define USEC_TO_HZ_MUL64 0x8637bd05af6c69b6 +#define USEC_TO_HZ_ADJ64 0x7ffde7210be9424e592 +#define USEC_TO_HZ_SHR64 75 +#define USEC_TO_HZ_NUM 4 +#define USEC_TO_HZ_DEN 15625 + +#elif HZ == 300 + +#define HZ_TO_MSEC_MUL32 0xd5555556 +#define HZ_TO_MSEC_ADJ32 0x2aaaaaaa +#define HZ_TO_MSEC_SHR32 30 +#define HZ_TO_MSEC_MUL64 0xd555555555555556 +#define HZ_TO_MSEC_ADJ64 0x2aaaaaaaaaaaaaaa +#define HZ_TO_MSEC_SHR64 62 +#define HZ_TO_MSEC_NUM 10 +#define HZ_TO_MSEC_DEN 3 +#define MSEC_TO_HZ_MUL32 0x9999999a +#define MSEC_TO_HZ_ADJ32 0x1cccccccc +#define MSEC_TO_HZ_SHR32 33 +#define MSEC_TO_HZ_MUL64 0x999999999999999a +#define MSEC_TO_HZ_ADJ64 0x1cccccccccccccccc +#define MSEC_TO_HZ_SHR64 65 +#define MSEC_TO_HZ_NUM 3 +#define MSEC_TO_HZ_DEN 10 +#define HZ_TO_USEC_MUL32 0xd0555556 +#define HZ_TO_USEC_ADJ32 0xaaaaa +#define HZ_TO_USEC_SHR32 20 +#define HZ_TO_USEC_MUL64 0xd055555555555556 +#define HZ_TO_USEC_ADJ64 0xaaaaaaaaaaaaa +#define HZ_TO_USEC_SHR64 52 +#define HZ_TO_USEC_NUM 10000 +#define HZ_TO_USEC_DEN 3 +#define USEC_TO_HZ_MUL32 0x9d495183 +#define USEC_TO_HZ_ADJ32 0x7ffcb923a29 +#define USEC_TO_HZ_SHR32 43 +#define USEC_TO_HZ_MUL64 0x9d495182a9930be1 +#define USEC_TO_HZ_ADJ64 0x7ffcb923a29c779a6b5 +#define USEC_TO_HZ_SHR64 75 +#define USEC_TO_HZ_NUM 3 +#define USEC_TO_HZ_DEN 10000 + +#elif HZ == 512 + +#define HZ_TO_MSEC_MUL32 0xfa000000 +#define HZ_TO_MSEC_ADJ32 0x7e000000 +#define HZ_TO_MSEC_SHR32 31 +#define HZ_TO_MSEC_MUL64 0xfa00000000000000 +#define HZ_TO_MSEC_ADJ64 0x7e00000000000000 +#define HZ_TO_MSEC_SHR64 63 +#define HZ_TO_MSEC_NUM 125 +#define HZ_TO_MSEC_DEN 64 +#define MSEC_TO_HZ_MUL32 0x83126e98 +#define MSEC_TO_HZ_ADJ32 0xfdf3b645 +#define MSEC_TO_HZ_SHR32 32 +#define MSEC_TO_HZ_MUL64 0x83126e978d4fdf3c +#define MSEC_TO_HZ_ADJ64 0xfdf3b645a1cac083 +#define MSEC_TO_HZ_SHR64 64 +#define MSEC_TO_HZ_NUM 64 +#define MSEC_TO_HZ_DEN 125 +#define HZ_TO_USEC_MUL32 0xf4240000 +#define HZ_TO_USEC_ADJ32 0x1c0000 +#define HZ_TO_USEC_SHR32 21 +#define HZ_TO_USEC_MUL64 0xf424000000000000 +#define HZ_TO_USEC_ADJ64 0x1c000000000000 +#define HZ_TO_USEC_SHR64 53 +#define HZ_TO_USEC_NUM 15625 +#define HZ_TO_USEC_DEN 8 +#define USEC_TO_HZ_MUL32 0x8637bd06 +#define USEC_TO_HZ_ADJ32 0x3ffef39085f +#define USEC_TO_HZ_SHR32 42 +#define USEC_TO_HZ_MUL64 0x8637bd05af6c69b6 +#define USEC_TO_HZ_ADJ64 0x3ffef39085f4a1272c9 +#define USEC_TO_HZ_SHR64 74 +#define USEC_TO_HZ_NUM 8 +#define USEC_TO_HZ_DEN 15625 + +#elif HZ == 1000 + +#define HZ_TO_MSEC_MUL32 0x80000000 +#define HZ_TO_MSEC_ADJ32 0x0 +#define HZ_TO_MSEC_SHR32 31 +#define HZ_TO_MSEC_MUL64 0x8000000000000000 +#define HZ_TO_MSEC_ADJ64 0x0 +#define HZ_TO_MSEC_SHR64 63 +#define HZ_TO_MSEC_NUM 1 +#define HZ_TO_MSEC_DEN 1 +#define MSEC_TO_HZ_MUL32 0x80000000 +#define MSEC_TO_HZ_ADJ32 0x0 +#define MSEC_TO_HZ_SHR32 31 +#define MSEC_TO_HZ_MUL64 0x8000000000000000 +#define MSEC_TO_HZ_ADJ64 0x0 +#define MSEC_TO_HZ_SHR64 63 +#define MSEC_TO_HZ_NUM 1 +#define MSEC_TO_HZ_DEN 1 +#define HZ_TO_USEC_MUL32 0xfa000000 +#define HZ_TO_USEC_ADJ32 0x0 +#define HZ_TO_USEC_SHR32 22 +#define HZ_TO_USEC_MUL64 0xfa00000000000000 +#define HZ_TO_USEC_ADJ64 0x0 +#define HZ_TO_USEC_SHR64 54 +#define HZ_TO_USEC_NUM 1000 +#define HZ_TO_USEC_DEN 1 +#define USEC_TO_HZ_MUL32 0x83126e98 +#define USEC_TO_HZ_ADJ32 0x1ff7ced9168 +#define USEC_TO_HZ_SHR32 41 +#define USEC_TO_HZ_MUL64 0x83126e978d4fdf3c +#define USEC_TO_HZ_ADJ64 0x1ff7ced916872b020c4 +#define USEC_TO_HZ_SHR64 73 +#define USEC_TO_HZ_NUM 1 +#define USEC_TO_HZ_DEN 1000 + +#elif HZ == 1024 + +#define HZ_TO_MSEC_MUL32 0xfa000000 +#define HZ_TO_MSEC_ADJ32 0xfe000000 +#define HZ_TO_MSEC_SHR32 32 +#define HZ_TO_MSEC_MUL64 0xfa00000000000000 +#define HZ_TO_MSEC_ADJ64 0xfe00000000000000 +#define HZ_TO_MSEC_SHR64 64 +#define HZ_TO_MSEC_NUM 125 +#define HZ_TO_MSEC_DEN 128 +#define MSEC_TO_HZ_MUL32 0x83126e98 +#define MSEC_TO_HZ_ADJ32 0x7ef9db22 +#define MSEC_TO_HZ_SHR32 31 +#define MSEC_TO_HZ_MUL64 0x83126e978d4fdf3c +#define MSEC_TO_HZ_ADJ64 0x7ef9db22d0e56041 +#define MSEC_TO_HZ_SHR64 63 +#define MSEC_TO_HZ_NUM 128 +#define MSEC_TO_HZ_DEN 125 +#define HZ_TO_USEC_MUL32 0xf4240000 +#define HZ_TO_USEC_ADJ32 0x3c0000 +#define HZ_TO_USEC_SHR32 22 +#define HZ_TO_USEC_MUL64 0xf424000000000000 +#define HZ_TO_USEC_ADJ64 0x3c000000000000 +#define HZ_TO_USEC_SHR64 54 +#define HZ_TO_USEC_NUM 15625 +#define HZ_TO_USEC_DEN 16 +#define USEC_TO_HZ_MUL32 0x8637bd06 +#define USEC_TO_HZ_ADJ32 0x1fff79c842f +#define USEC_TO_HZ_SHR32 41 +#define USEC_TO_HZ_MUL64 0x8637bd05af6c69b6 +#define USEC_TO_HZ_ADJ64 0x1fff79c842fa5093964 +#define USEC_TO_HZ_SHR64 73 +#define USEC_TO_HZ_NUM 16 +#define USEC_TO_HZ_DEN 15625 + +#elif HZ == 1200 + +#define HZ_TO_MSEC_MUL32 0xd5555556 +#define HZ_TO_MSEC_ADJ32 0xd5555555 +#define HZ_TO_MSEC_SHR32 32 +#define HZ_TO_MSEC_MUL64 0xd555555555555556 +#define HZ_TO_MSEC_ADJ64 0xd555555555555555 +#define HZ_TO_MSEC_SHR64 64 +#define HZ_TO_MSEC_NUM 5 +#define HZ_TO_MSEC_DEN 6 +#define MSEC_TO_HZ_MUL32 0x9999999a +#define MSEC_TO_HZ_ADJ32 0x66666666 +#define MSEC_TO_HZ_SHR32 31 +#define MSEC_TO_HZ_MUL64 0x999999999999999a +#define MSEC_TO_HZ_ADJ64 0x6666666666666666 +#define MSEC_TO_HZ_SHR64 63 +#define MSEC_TO_HZ_NUM 6 +#define MSEC_TO_HZ_DEN 5 +#define HZ_TO_USEC_MUL32 0xd0555556 +#define HZ_TO_USEC_ADJ32 0x2aaaaa +#define HZ_TO_USEC_SHR32 22 +#define HZ_TO_USEC_MUL64 0xd055555555555556 +#define HZ_TO_USEC_ADJ64 0x2aaaaaaaaaaaaa +#define HZ_TO_USEC_SHR64 54 +#define HZ_TO_USEC_NUM 2500 +#define HZ_TO_USEC_DEN 3 +#define USEC_TO_HZ_MUL32 0x9d495183 +#define USEC_TO_HZ_ADJ32 0x1ffcb923a29 +#define USEC_TO_HZ_SHR32 41 +#define USEC_TO_HZ_MUL64 0x9d495182a9930be1 +#define USEC_TO_HZ_ADJ64 0x1ffcb923a29c779a6b5 +#define USEC_TO_HZ_SHR64 73 +#define USEC_TO_HZ_NUM 3 +#define USEC_TO_HZ_DEN 2500 + +#elif 1 +#error "kernel/timeconst.h has unknown HZ value!" +#endif + +#endif /* KERNEL_TIMECONST_H */ --- linux/hg/kernel/Makefile 2008-02-08 19:06:59.000000000 -0600 +++ linux-new/kernel/Makefile 2008-02-15 19:32:08.000000000 -0600 @@ -95,7 +95,7 @@ $(obj)/time.o: $(obj)/timeconst.h quiet_cmd_timeconst = TIMEC $@ - cmd_timeconst = $(PERL) $< $(CONFIG_HZ) > $@ -targets += timeconst.h -$(obj)/timeconst.h: $(src)/timeconst.pl FORCE + cmd_timeconst = $(PERL) $< \ + 24 32 48 64 100 122 128 200 250 256 300 512 1000 1024 1200 > $@ +$(obj)/timeconst.h: $(call if_changed,timeconst)