Cool... This way you dont have to copy and paste!!!

Thanks for the Link :)

Joe

> the correct link , to this is :
> http://www.kernel.org/pub/linux/kernel/people/rml/variable-HZ/v2.4/
>
> any future updates to variable hz will be found there.
>
> Matt H.
>
>
> On Thursday 16 October 2003 05:13 pm, [EMAIL PROTECTED] wrote:
>> Here is the patch that I found. It was created by Rober Love... Here is
>> the link to the article:
>>
>> http://www.geocrawler.com/mail/thread.php3?subject=%5BPATCH%5D+2.4%3A+varia
>>ble+HZ&list=9215
>>
>>
>>
>> diff -urN linux-2.4.20-pre10-ac2/arch/i386/config.in
>> linux/arch/i386/config.in
>> --- linux-2.4.20-pre10-ac2/arch/i386/config.in       2002-10-14
>> 01:43:05.000000000 -0400
>> +++ linux/arch/i386/config.in        2002-10-15 02:41:39.000000000 -0400
>> @@ -244,6 +244,7 @@
>>  mainmenu_option next_comment
>>  comment 'General setup'
>>
>> +int 'Timer frequency (HZ) (100)' CONFIG_HZ 100
>>  bool 'Networking support' CONFIG_NET
>>
>>  # Visual Workstation support is utterly broken.
>> diff -urN linux-2.4.20-pre10-ac2/Documentation/Configure.help
>> linux/Documentation/Configure.help
>> --- linux-2.4.20-pre10-ac2/Documentation/Configure.help      2002-10-14
>> 01:43:06.000000000
>> -0400
>> +++ linux/Documentation/Configure.help       2002-10-15 02:41:40.000000000
>> -0400
>> @@ -2411,6 +2411,18 @@
>>    behaviour is platform-dependent, but normally the flash frequency is
>>    a hyperbolic function of the 5-minute load average.
>>
>> +Timer frequency
>> +CONFIG_HZ
>> +  The frequency the system timer interrupt pops.  Higher tick values
>> provide +  improved granularity of timers, improved select() and poll()
>> performance, +  and lower scheduling latency.  Higher values, however,
>> increase interrupt +  overhead and will allow jiffie wraparound sooner.
>> For compatibility, the +  tick count is always exported as if HZ=100.
>> +
>> +  The default value, which was the value for all of eternity, is 100.
>> If
>> +  you are looking to provide better timer granularity or increased
>> desktop
>> +  performance, try 500 or 1000.  In unsure, go with the default of 100.
>> +
>>  Networking support
>>  CONFIG_NET
>>    Unless you really know what you are doing, you should say Y here.
>> diff -urN linux-2.4.20-pre10-ac2/fs/proc/array.c linux/fs/proc/array.c
>> --- linux-2.4.20-pre10-ac2/fs/proc/array.c   2002-10-14 01:43:10.000000000
>> -0400
>> +++ linux/fs/proc/array.c    2002-10-14 18:24:48.000000000 -0400
>> @@ -360,15 +360,15 @@
>>              task->cmin_flt,
>>              task->maj_flt,
>>              task->cmaj_flt,
>> -            task->times.tms_utime,
>> -            task->times.tms_stime,
>> -            task->times.tms_cutime,
>> -            task->times.tms_cstime,
>> +            jiffies_to_clock_t(task->times.tms_utime),
>> +            jiffies_to_clock_t(task->times.tms_stime),
>> +            jiffies_to_clock_t(task->times.tms_cutime),
>> +            jiffies_to_clock_t(task->times.tms_cstime),
>>              priority,
>>              nice,
>>              0UL /* removed */,
>> -            task->it_real_value,
>> -            task->start_time,
>> +            jiffies_to_clock_t(task->it_real_value),
>> +            jiffies_to_clock_t(task->start_time),
>>              vsize,
>>              mm ? mm->rss : 0, /* you might want to shift this left 3 */
>>              task->rlim[RLIMIT_RSS].rlim_cur,
>> @@ -686,14 +686,14 @@
>>
>>      len = sprintf(buffer,
>>              "cpu  %lu %lu\n",
>> -            task->times.tms_utime,
>> -            task->times.tms_stime);
>> +            jiffies_to_clock_t(task->times.tms_utime),
>> +            jiffies_to_clock_t(task->times.tms_stime));
>>
>>      for (i = 0 ; i < smp_num_cpus; i++)
>>              len += sprintf(buffer + len, "cpu%d %lu %lu\n",
>>                      i,
>> -                    task->per_cpu_utime[cpu_logical_map(i)],
>> -                    task->per_cpu_stime[cpu_logical_map(i)]);
>> +                    jiffies_to_clock_t(task->per_cpu_utime[cpu_logical_map(i)]),
>> +                    jiffies_to_clock_t(task->per_cpu_stime[cpu_logical_map(i)]));
>>
>>      return len;
>>  }
>> diff -urN linux-2.4.20-pre10-ac2/fs/proc/proc_misc.c
>> linux/fs/proc/proc_misc.c
>> --- linux-2.4.20-pre10-ac2/fs/proc/proc_misc.c       2002-10-14
>> 01:43:10.000000000 -0400
>> +++ linux/fs/proc/proc_misc.c        2002-10-15 02:29:21.000000000 -0400
>> @@ -317,16 +317,16 @@
>>  {
>>      int i, len = 0;
>>      extern unsigned long total_forks;
>> -    unsigned long jif = jiffies;
>> +    unsigned long jif = jiffies_to_clock_t(jiffies);
>>      unsigned int sum = 0, user = 0, nice = 0, system = 0;
>>      int major, disk;
>>
>>      for (i = 0 ; i < smp_num_cpus; i++) {
>>              int cpu = cpu_logical_map(i), j;
>>
>> -            user += kstat.per_cpu_user[cpu];
>> -            nice += kstat.per_cpu_nice[cpu];
>> -            system += kstat.per_cpu_system[cpu];
>> +            user += jiffies_to_clock_t(kstat.per_cpu_user[cpu]);
>> +            nice += jiffies_to_clock_t(kstat.per_cpu_nice[cpu]);
>> +            system += jiffies_to_clock_t(kstat.per_cpu_system[cpu]);
>>  #if !defined(CONFIG_ARCH_S390)
>>              for (j = 0 ; j < NR_IRQS ; j++)
>>                      sum += kstat.irqs[cpu][j];
>> @@ -340,10 +340,10 @@
>>              proc_sprintf(page, &off, &len,
>>                      "cpu%d %u %u %u %lu\n",
>>                      i,
>> -                    kstat.per_cpu_user[cpu_logical_map(i)],
>> -                    kstat.per_cpu_nice[cpu_logical_map(i)],
>> -                    kstat.per_cpu_system[cpu_logical_map(i)],
>> -                    jif - (  kstat.per_cpu_user[cpu_logical_map(i)] \
>> +                    jiffies_to_clock_t(kstat.per_cpu_user[cpu_logical_map(i)]),
>> +                    jiffies_to_clock_t(kstat.per_cpu_nice[cpu_logical_map(i)]),
>> +                    jiffies_to_clock_t(kstat.per_cpu_system[cpu_logical_map(i)]),
>> +                    jif - 
>> jiffies_to_clock_t(kstat.per_cpu_user[cpu_logical_map(i)] \
>>                                 + kstat.per_cpu_nice[cpu_logical_map(i)] \
>>                                 + kstat.per_cpu_system[cpu_logical_map(i)]));
>>      proc_sprintf(page, &off, &len,
>> diff -urN linux-2.4.20-pre10-ac2/include/asm-i386/param.h
>> linux/include/asm-i386/param.h
>> --- linux-2.4.20-pre10-ac2/include/asm-i386/param.h  2002-10-14
>> 01:33:16.000000000 -0400
>> +++ linux/include/asm-i386/param.h   2002-10-14 18:46:32.000000000 -0400
>> @@ -1,8 +1,17 @@
>>  #ifndef _ASMi386_PARAM_H
>>  #define _ASMi386_PARAM_H
>>
>> +#include <linux/config.h>
>> +
>> +#ifdef __KERNEL__
>> +# define HZ         CONFIG_HZ       /* internal kernel timer frequency */
>> +# define USER_HZ    100             /* some user interfaces are in ticks */
>> +# define CLOCKS_PER_SEC     (USER_HZ)       /* like times() */
>> +# define jiffies_to_clock_t(x)      ((x) / ((HZ) / (USER_HZ)))
>> +#endif
>> +
>>  #ifndef HZ
>> -#define HZ 100
>> +#define HZ 100                              /* if userspace cheats, give them 100 
>> */
>>  #endif
>>
>>  #define EXEC_PAGESIZE       4096
>> @@ -17,8 +26,4 @@
>>
>>  #define MAXHOSTNAMELEN      64      /* max length of hostname */
>>
>> -#ifdef __KERNEL__
>> -# define CLOCKS_PER_SEC     100     /* frequency at which times() counts */
>> -#endif
>> -
>>  #endif
>> diff -urN linux-2.4.20-pre10-ac2/kernel/signal.c linux/kernel/signal.c
>> --- linux-2.4.20-pre10-ac2/kernel/signal.c   2002-10-14 01:43:11.000000000
>> -0400
>> +++ linux/kernel/signal.c    2002-10-14 18:24:49.000000000 -0400
>> @@ -13,7 +13,7 @@
>>  #include <linux/smp_lock.h>
>>  #include <linux/init.h>
>>  #include <linux/sched.h>
>> -
>> +#include <asm/param.h>
>>  #include <asm/uaccess.h>
>>
>>  /*
>> @@ -775,8 +775,8 @@
>>      info.si_uid = tsk->uid;
>>
>>      /* FIXME: find out whether or not this is supposed to be c*time. */
>> -    info.si_utime = tsk->times.tms_utime;
>> -    info.si_stime = tsk->times.tms_stime;
>> +    info.si_utime = jiffies_to_clock_t(tsk->times.tms_utime);
>> +    info.si_stime = jiffies_to_clock_t(tsk->times.tms_stime);
>>
>>      status = tsk->exit_code & 0x7f;
>>      why = SI_KERNEL;        /* shouldn't happen */
>> diff -urN linux-2.4.20-pre10-ac2/kernel/sys.c linux/kernel/sys.c
>> --- linux-2.4.20-pre10-ac2/kernel/sys.c      2002-10-14 01:43:11.000000000
>> -0400
>> +++ linux/kernel/sys.c       2002-10-14 18:24:49.000000000 -0400
>> @@ -15,7 +15,7 @@
>>  #include <linux/prctl.h>
>>  #include <linux/init.h>
>>  #include <linux/highuid.h>
>> -
>> +#include <asm/param.h>
>>  #include <asm/uaccess.h>
>>  #include <asm/io.h>
>>
>> @@ -792,16 +792,23 @@
>>
>>  asmlinkage long sys_times(struct tms * tbuf)
>>  {
>> +    struct tms temp;
>> +
>>      /*
>>       *      In the SMP world we might just be unlucky and have one of
>>       *      the times increment as we use it. Since the value is an
>>       *      atomically safe type this is just fine. Conceptually its
>>       *      as if the syscall took an instant longer to occur.
>>       */
>> -    if (tbuf)
>> -            if (copy_to_user(tbuf, �t->times, sizeof(struct tms)))
>> +    if (tbuf) {
>> +            temp.tms_utime = jiffies_to_clock_t(current->times.tms_utime);
>> +            temp.tms_stime = jiffies_to_clock_t(current->times.tms_stime);
>> +            temp.tms_cutime = jiffies_to_clock_t(current->times.tms_cutime);
>> +            temp.tms_cstime = jiffies_to_clock_t(current->times.tms_cstime);
>> +            if (copy_to_user(tbuf, &temp, sizeof(struct tms)))
>>                      return -EFAULT;
>> -    return jiffies;
>> +    }
>> +    return jiffies_to_clock_t(jiffies);
>>  }
>>
>>  /*
>>
>> > to do it correctly, and not have it screw other aspects up, you need
>> to
>> > find
>> > a hz .patch file
>> >
>> > kev
>> >
>> > ->-----Original Message-----
>> > ->From: [EMAIL PROTECTED]
>> > ->[mailto:[EMAIL PROTECTED] Behalf Of
>> > ->[EMAIL PROTECTED]
>> > ->Sent: Thursday, October 16, 2003 4:35 PM
>> > ->To: [EMAIL PROTECTED]
>> > ->Subject: [hlds_linux] Hz Value?
>> > ->
>> > ->
>> > ->Hmm I forgot where do I put the HZ line again? I forgot which
>> > ->file :( to make it 1000HZ :)
>> > ->
>> > ->Any help will be cool
>> > ->
>> > ->Thanks!
>> > ->Jackson
>> > ->
>> > ->_______________________________________________
>> > ->To unsubscribe, edit your list preferences, or view the list
>> > ->archives, please visit:
>> > ->http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>> >
>> >
>> > _______________________________________________
>> > To unsubscribe, edit your list preferences, or view the list archives,
>> > please visit:
>> > http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>>
>> _______________________________________________
>> To unsubscribe, edit your list preferences, or view the list archives,
>> please visit: http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives,
> please visit:
> http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>


_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please visit:
http://list.valvesoftware.com/mailman/listinfo/hlds_linux

Reply via email to