asm-{alpha,h8300,um,v850,xtensa}/param.h: unbreak HZ for userspace
authorMike Frysinger <vapier@gentoo.org>
Wed, 14 May 2008 23:05:42 +0000 (16:05 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 15 May 2008 02:11:14 +0000 (19:11 -0700)
I noticed this because alpha was broken due to the recent commit commit
bdc807871d58285737d50dc6163d0feb72cb0dc2 ("avoid overflows in
kernel/time.c").  Most arches do something like this in their
asm/param.h:

#ifdef __KERNEL__
# define HZ CONFIG_HZ
#else
# define HZ 100
#endif

A few arches though (namely alpha/h8300/um/v850/xtensa) either do no set
HZ at all for !__KERNEL__, or they set it wrongly.  This should bring all
arches in line by setting up HZ for userspace.

Without this currently perl 5.10 doesn't build on alpha:

perl.c: In function 'perl_construct':
perl.c:388: error: 'CONFIG_HZ' undeclared (first use in this function)
-> http://buildd.debian.org/fetch.cgi?pkg=perl;ver=5.10.0-10;arch=alpha;stamp=1210252894

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Jeff Dike <jdike@addtoit.com>
Cc: Chris Zankel <chris@zankel.net>
Cc: maximilian attems <max@stro.at>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
[ HZ on alpha is 1024 for historical reasons.  - Linus ]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/asm-alpha/param.h
include/asm-h8300/param.h
include/asm-um/param.h
include/asm-v850/param.h
include/asm-xtensa/param.h

index 0982f1d39499fbe337b440cc995913e2fbbb792d..e691ecfedb2ce93b7544596487f8abf9f9fff652 100644 (file)
@@ -5,8 +5,12 @@
    hardware ignores reprogramming.  We also need userland buy-in to the 
    change in HZ, since this is visible in the wait4 resources etc.  */
 
+#ifdef __KERNEL__
 #define HZ             CONFIG_HZ
 #define USER_HZ                HZ
+#else
+#define HZ             1024
+#endif
 
 #define EXEC_PAGESIZE  8192
 
index 04f64f1003792b77c4a6be5a8da51f3f7b2e9b93..1c72fb8080ff645dffeb799d052283014bc2e535 100644 (file)
@@ -1,14 +1,12 @@
 #ifndef _H8300_PARAM_H
 #define _H8300_PARAM_H
 
-
-#ifndef HZ
-#define HZ CONFIG_HZ
-#endif
-
 #ifdef __KERNEL__
+#define HZ             CONFIG_HZ
 #define        USER_HZ         HZ
 #define        CLOCKS_PER_SEC  (USER_HZ)
+#else
+#define HZ             100
 #endif
 
 #define EXEC_PAGESIZE  4096
index 4cd4a226f8c125d07668b15fbf239370baa58ebe..e44f4e60d16d387a9c7fb6ac72a1e5231e1205da 100644 (file)
@@ -13,6 +13,8 @@
 #define HZ CONFIG_HZ
 #define USER_HZ        100        /* .. some user interfaces are in "ticks" */
 #define CLOCKS_PER_SEC (USER_HZ)  /* frequency at which times() counts */
+#else
+#define HZ 100
 #endif
 
 #endif
index 281832690290536007c861a8362634cb673b7f43..4391f5fe0204129be5aa0b96f28514e799e336ca 100644 (file)
@@ -26,6 +26,8 @@
 # define HZ            CONFIG_HZ
 # define USER_HZ       100
 # define CLOCKS_PER_SEC        USER_HZ
+#else
+# define HZ            100
 #endif
 
 #endif /* __V850_PARAM_H__ */
index 82ad34d92d359746de497c9a680306a7a661f45f..ba03d5aeab6b085d21bd0b14db47163552f04be7 100644 (file)
@@ -15,6 +15,8 @@
 # define HZ            CONFIG_HZ       /* internal timer frequency */
 # define USER_HZ       100             /* for user interfaces in "ticks" */
 # define CLOCKS_PER_SEC (USER_HZ)      /* frequnzy at which times() counts */
+#else
+# define HZ            100
 #endif
 
 #define EXEC_PAGESIZE  4096