From 57445428488a2862840c4d7c96d7746c11031aaf Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Tue, 8 Aug 2000 19:25:53 +0000 Subject: Merge with Linu 2.4.0-test6-pre6. --- kernel/kmod.c | 3 ++- kernel/softirq.c | 1 + kernel/timer.c | 4 ++++ 3 files changed, 7 insertions(+), 1 deletion(-) (limited to 'kernel') diff --git a/kernel/kmod.c b/kernel/kmod.c index 348210c3b..4941840a7 100644 --- a/kernel/kmod.c +++ b/kernel/kmod.c @@ -111,7 +111,8 @@ int exec_usermodehelper(char *program_path, char *argv[], char *envp[]) { struct user_struct *user = current->user; current->user = INIT_USER; - atomic_inc(¤t->user->__count); + atomic_inc(&INIT_USER->__count); + atomic_inc(&INIT_USER->processes); atomic_dec(&user->processes); free_uid(user); } diff --git a/kernel/softirq.c b/kernel/softirq.c index 8c5410315..12a82399d 100644 --- a/kernel/softirq.c +++ b/kernel/softirq.c @@ -9,6 +9,7 @@ * Rewritten. Old one was good in 2.2, but in 2.3 it was immoral. --ANK (990903) */ +#include #include #include #include diff --git a/kernel/timer.c b/kernel/timer.c index 108ca240f..92d8af4b5 100644 --- a/kernel/timer.c +++ b/kernel/timer.c @@ -22,6 +22,7 @@ #include #include #include +#include #include @@ -599,6 +600,9 @@ void update_process_times(int user_tick) kstat.per_cpu_system[cpu] += system; } else if (local_bh_count(cpu) || local_irq_count(cpu) > 1) kstat.per_cpu_system[cpu] += system; + + if (slab_cache_drain_mask & (1UL << cpu)) + slab_drain_local_cache(); } /* -- cgit v1.2.3