* 2.5.64-mm2 @ 2003-03-08 2:51 Andrew Morton 2003-03-08 3:44 ` [patch] updated scheduler-tunables for 2.5.64-mm2 Robert Love 2003-03-08 3:49 ` 2.5.64-mm2 Shawn 0 siblings, 2 replies; 13+ messages in thread From: Andrew Morton @ 2003-03-08 2:51 UTC (permalink / raw) To: linux-kernel, linux-mm http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.64/2.5.64-mm2/ Just lots of little stuff here. Mainly a resync with various people. Note: there is a change to the console handling code in Linus's tree which means that if you have both VT console and serial console enabled in kernel config, the serial console now wins. Nothing comes out on the screen during bootup. It used to be the case that the VT console was initialised first. If this happens you will need to specify the console device on the boot command line. We appear to have at least three use-after-free bugs. One is fixed here, and there are extra debugging goodies which may help us find the others. Please enable memory debugging and keep an eye open. Changes since 2.5.64-mm1: linus.patch Latest -bk -balance_irq-cleanup.patch -balance_irq-fix.patch -rpc_rmdir-fix.patch -aic-makefile-fix.patch -flock-fix.patch -rtc-locking-fix.patch -sk98-build-fix.patch -cciss-pci-hotplug-fix.patch -export-pfn_to_nid.patch -move-CONFIG_SWAP.patch -random-stack-use.patch -inode-pruning-fix.patch -remove-__pgd_offset.patch -remove-__pmd_offset.patch -remove-__pte_offset.patch -htree-lock_kernel-fix.patch -pci-1.patch -pci-2.patch -pci-3.patch -pci-4.patch -pci-5.patch -elf_core_dump-stack-size-reduction.patch -uninline-binfmt_elf.patch Merged +register_blkdev-cleanups.patch Toward 32-bit dev-t. -shared-irq-warning.patch Dropped. Need to do something different here. +as-state-tracking-and-debug.patch +as-state-tracking-fix.patch +as-nr_dispatched-atomic-fix.patch Anticipatory scheduler work. -sched-b3.patch Sort-of merged. +vm_area-use-after-free-fix.patch Fix the use-after-free in the vma slab cache. +slab-caller-tracking.patch Record the calling function inside slab objects, and report that on use-after-free erfors. +slab-caller-tracking-symbolic.patch Teach the above about kallsyms. +CONFIG_SWAP-fix.patch Fix up CONFIG_SWAP menus +hugh-nonlinear-fixes.patch Try to make nonlinear VMAs and objrmap play better together. +readdir-usercopy-check.patch Add some missing copy_to_user() checks. +gcc3-inline-fix.patch Apply a club to gcc-3.x's head. +pirq_enable_irq-warning-fix.patch Fix a compiler warning +hugetlb-unmap_vmas-fix.patch Fix an oops with hugetlb pages, CONFIG_SMP && CONFIG_PREEMPT +ext2-double-free-bug.patch Fix an error-path double-free. +load_elf_binary-memleak-fix.patch Fix an error-path memory leak +xattr-bug-fixes.patch Extended Attribute fixes +noirqbalance-fix.patch Make the noirqalance boot option work +show_interrupts-locking-fix.patch Put some locking into the /proc/interrupts handler code. +eepro100-lockup-fix.patch Fix an eepro100 deadlock +task_prio-fix.patch Scheduler fix for SCHED_RR tasks +remove-kernel_flag.patch Eliminate lock_kernel() All 79 patches: linus.patch Latest from Linus register_blkdev-cleanups.patch register_blkdev cleanups mm.patch add -mmN to EXTRAVERSION ppc64-reloc_hide.patch ppc64-pci-patch.patch Subject: pci patch ppc64-aio-32bit-emulation.patch 32/64bit emulation for aio ppc64-64-bit-exec-fix.patch Subject: 64bit exec ppc64-scruffiness.patch Fix some PPC64 compile warnings sym-do-160.patch make the SYM driver do 160 MB/sec kgdb.patch nfsd-disable-softirq.patch Fix race in svcsock.c in 2.5.61 report-lost-ticks.patch make lost-tick detection more informative ptrace-flush.patch cache flushing in the ptrace code buffer-debug.patch buffer.c debugging warn-null-wakeup.patch ext3-truncate-ordered-pages.patch ext3: explicitly free truncated pages limit-write-latency.patch fix possible latency in balance_dirty_pages() reiserfs_file_write-5.patch tcp-wakeups.patch Use fast wakeups in TCP/IPV4 lockd-lockup-fix-2.patch Subject: Re: Fw: Re: 2.4.20 NFS server lock-up (SMP) rcu-stats.patch RCU statistics reporting ext3-journalled-data-assertion-fix.patch Remove incorrect assertion from ext3 nfs-speedup.patch nfs-oom-fix.patch nfs oom fix sk-allocation.patch Subject: Re: nfs oom nfs-more-oom-fix.patch nfs-sendfile.patch Implement sendfile() for NFS rpciod-atomic-allocations.patch Make rcpiod use atomic allocations linux-isp.patch isp-update-1.patch remove-unused-congestion-stuff.patch Subject: [PATCH] remove unused congestion stuff atm_dev_sem.patch convert atm_dev_lock from spinlock to semaphore as-iosched.patch anticipatory I/O scheduler as-random-fixes.patch Subject: [PATCH] important fixes as-comment-fix.patch AS: comment fix as-naming-comments-BUG.patch AS: fix up naming, comments, add more BUGs as-unnecessary-test.patch as-atomicity-fix.patch as-state-tracking-and-debug.patch AS: state tracking fix and debug additions as-state-tracking-fix.patch AS: state tracking fix as-nr_dispatched-atomic-fix.patch readahead-shrink-to-zero.patch Allow VFS readahead to fall to zero cfq-2.patch CFQ scheduler, #2 smalldevfs.patch smalldevfs objrmap-2.5.62-5.patch object-based rmap objrmap-X-fix.patch objrmap fix for X objrmap-nr_mapped-fix.patch objrmap: fix /proc/meminfo:Mapped objrmap-mapped-mem-fix-2.patch fix objrmap mapped mem accounting again objrmap-atomic_t-fix.patch Make objrmap mapcount non-atomic per-cpu-disk-stats.patch Make diskstats per-cpu using kmalloc_percpu scheduler-tunables.patch scheduler tunables show_task-free-stack-fix.patch show_task() fix and cleanup vm_area-use-after-free-fix.patch Fix vm_area_struct slab corruption use-after-free-check.patch slab use-after-free detector slab-caller-tracking.patch slab debug: track caller program counter slab-caller-tracking-symbolic.patch slab debug: symbolic output in caller tracking reiserfs-fix-memleaks.patch ReiserFS: fix memleaks on journal opening failures copy_page_range-invalid-page-fix.patch Fix copy_page_range()'s handling of invalid pages yellowfin-set_bit-fix.patch yellowfin driver set_bit fix CONFIG_SWAP-fix.patch move CONFIG_SWAP around remap-file-pages-2.5.63-a1.patch Subject: [patch] remap-file-pages-2.5.63-A1 pte_file-always.patch enable file-offset-in-pte's for all mappings hugh-nonlinear-fixes.patch Fix nonlinear oddities htree-nfs-fix.patch Fix ext3 htree / NFS compatibility problems bonding-zerodiv-fix.patch Subject: [PATCH][bonding] division by zero bug update_atime-ng.patch inode a/c/mtime modification speedup one-sec-times.patch Implement a/c/time speedup in ext2 & ext3 readdir-usercopy-check.patch usercopy checks in old_readdir() gcc3-inline-fix.patch work around gcc-3.x inlining bugs pirq_enable_irq-warning-fix.patch fix return value in arch/i386/pci/irq.c hugetlb-unmap_vmas-fix.patch hugetlb unmap_vmas() SMP && PREEMPT fix ext2-double-free-bug.patch ext2: fix error-path double-free load_elf_binary-memleak-fix.patch fix memory leak in load_elf_binary() xattr-bug-fixes.patch Extended attribute sharing and debug macro typo fixes noirqbalance-fix.patch Fix noirqbalance show_interrupts-locking-fix.patch protect 'action' in show_interrupts eepro100-lockup-fix.patch fix SMP lockup in eepro100 with ethtool on unused interface task_prio-fix.patch simple task_prio() fix remove-kernel_flag.patch no need for kernel_flag on UP -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* [patch] updated scheduler-tunables for 2.5.64-mm2 2003-03-08 2:51 2.5.64-mm2 Andrew Morton @ 2003-03-08 3:44 ` Robert Love 2003-03-08 3:50 ` Robert Love 2003-03-08 18:25 ` Martin J. Bligh 2003-03-08 3:49 ` 2.5.64-mm2 Shawn 1 sibling, 2 replies; 13+ messages in thread From: Robert Love @ 2003-03-08 3:44 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm On Fri, 2003-03-07 at 21:51, Andrew Morton wrote: > Just lots of little stuff here. Mainly a resync with various people. Whoops. Someone edited the scheduler-tunables.patch so it applied on top of the interactivity changes, but then did not carry over those changes to the tunable parameters in the patch ;) So we end up with the usual values, and not the tuned parameters from mainline. Which is a shame, you know? Attached patch is a complete replacement for the old patch. It defaults the tunable parameters to the new values in 2.5-bk. I also added a tuning knob for the NUMA node threshold stuff. So we end up with: [22:42:31]rml@phantasy:~$ pef /proc/sys/sched child_penalty=50 exit_weight=3 interactive_delta=2 max_sleep_avg=10000 max_timeslice=200 min_timeslice=10 node_threshold=125 parent_penalty=100 prio_bonus_ratio=25 starvation_limit=10000 Which looks good to me. Andrew, please replace this for that stinky old one. Thanks. Robert Love Documentation/filesystems/proc.txt | 87 +++++++++++++++++++++++++++++++++++++ include/linux/sysctl.h | 16 ++++++ kernel/sched.c | 34 ++++++++++---- kernel/sysctl.c | 48 +++++++++++++++++++- 4 files changed, 173 insertions(+), 12 deletions(-) diff -urN linux-2.5.64-mm2/Documentation/filesystems/proc.txt linux/Documentation/filesystems/proc.txt --- linux-2.5.64-mm2/Documentation/filesystems/proc.txt 2003-03-07 22:40:27.885874664 -0500 +++ linux/Documentation/filesystems/proc.txt 2003-03-07 22:02:58.000000000 -0500 @@ -37,6 +37,7 @@ 2.8 /proc/sys/net/ipv4 - IPV4 settings 2.9 Appletalk 2.10 IPX + 2.11 /proc/sys/sched - scheduler tunables ------------------------------------------------------------------------------ Preface @@ -1667,6 +1668,92 @@ gives the destination network, the router node (or Directly) and the network address of the router (or Connected) for internal networks. +2.11 /proc/sys/sched - scheduler tunables +----------------------------------------- + +Useful knobs for tuning the scheduler live in /proc/sys/sched. + +child_penalty +------------- + +Percentage of the parent's sleep_avg that children inherit. sleep_avg is +a running average of the time a process spends sleeping. Tasks with high +sleep_avg values are considered interactive and given a higher dynamic +priority and a larger timeslice. You typically want this some value just +under 100. + +exit_weight +----------- + +When a CPU hog task exits, its parent's sleep_avg is reduced by a factor of +exit_weight against the exiting task's sleep_avg. + +interactive_delta +----------------- + +If a task is "interactive" it is reinserted into the active array after it +has expired its timeslice, instead of being inserted into the expired array. +How "interactive" a task must be in order to be deemed interactive is a +function of its nice value. This interactive limit is scaled linearly by nice +value and is offset by the interactive_delta. + +max_sleep_avg +------------- + +max_sleep_avg is the largest value (in ms) stored for a task's running sleep +average. The larger this value, the longer a task needs to sleep to be +considered interactive (maximum interactive bonus is a function of +max_sleep_avg). + +max_timeslice +------------- + +Maximum timeslice, in milliseconds. This is the value given to tasks of the +highest dynamic priority. + +min_timeslice +------------- + +Minimum timeslice, in milliseconds. This is the value given to tasks of the +lowest dynamic priority. Every task gets at least this slice of the processor +per array switch. + +parent_penalty +-------------- + +Percentage of the parent's sleep_avg that it retains across a fork(). +sleep_avg is a running average of the time a process spends sleeping. Tasks +with high sleep_avg values are considered interactive and given a higher +dynamic priority and a larger timeslice. Normally, this value is 100 and thus +task's retain their sleep_avg on fork. If you want to punish interactive +tasks for forking, set this below 100. + +prio_bonus_ratio +---------------- + +Middle percentage of the priority range that tasks can receive as a dynamic +priority. The default value of 25% ensures that nice values at the +extremes are still enforced. For example, nice +19 interactive tasks will +never be able to preempt a nice 0 CPU hog. Setting this higher will increase +the size of the priority range the tasks can receive as a bonus. Setting +this lower will decrease this range, making the interactivity bonus less +apparent and user nice values more applicable. + +starvation_limit +---------------- + +Sufficiently interactive tasks are reinserted into the active array when they +run out of timeslice. Normally, tasks are inserted into the expired array. +Reinserting interactive tasks into the active array allows them to remain +runnable, which is important to interactive performance. This could starve +expired tasks, however, since the interactive task could prevent the array +switch. To prevent starving the tasks on the expired array for too long. the +starvation_limit is the longest (in ms) we will let the expired array starve +at the expense of reinserting interactive tasks back into active. Higher +values here give more preferance to running interactive tasks, at the expense +of expired tasks. Lower values provide more fair scheduling behavior, at the +expense of interactivity. The units are in milliseconds. + ------------------------------------------------------------------------------ Summary ------------------------------------------------------------------------------ diff -urN linux-2.5.64-mm2/include/linux/sysctl.h linux/include/linux/sysctl.h --- linux-2.5.64-mm2/include/linux/sysctl.h 2003-03-07 22:40:27.000000000 -0500 +++ linux/include/linux/sysctl.h 2003-03-07 22:08:19.000000000 -0500 @@ -66,7 +66,8 @@ CTL_DEV=7, /* Devices */ CTL_BUS=8, /* Busses */ CTL_ABI=9, /* Binary emulation */ - CTL_CPU=10 /* CPU stuff (speed scaling, etc) */ + CTL_CPU=10, /* CPU stuff (speed scaling, etc) */ + CTL_SCHED=11, /* scheduler tunables */ }; /* CTL_BUS names: */ @@ -157,6 +158,19 @@ VM_LOWER_ZONE_PROTECTION=20,/* Amount of protection of lower zones */ }; +/* Tunable scheduler parameters in /proc/sys/sched/ */ +enum { + SCHED_MIN_TIMESLICE=1, /* minimum process timeslice */ + SCHED_MAX_TIMESLICE=2, /* maximum process timeslice */ + SCHED_CHILD_PENALTY=3, /* penalty on fork to child */ + SCHED_PARENT_PENALTY=4, /* penalty on fork to parent */ + SCHED_EXIT_WEIGHT=5, /* penalty to parent of CPU hog child */ + SCHED_PRIO_BONUS_RATIO=6, /* percent of max prio given as bonus */ + SCHED_INTERACTIVE_DELTA=7, /* delta used to scale interactivity */ + SCHED_MAX_SLEEP_AVG=8, /* maximum sleep avg attainable */ + SCHED_STARVATION_LIMIT=9, /* no re-active if expired is starved */ + SCHED_NODE_THRESHOLD=10, /* NUMA node rebalance threshold */ +}; /* CTL_NET names: */ enum diff -urN linux-2.5.64-mm2/kernel/sched.c linux/kernel/sched.c --- linux-2.5.64-mm2/kernel/sched.c 2003-03-07 22:40:27.000000000 -0500 +++ linux/kernel/sched.c 2003-03-07 22:10:00.000000000 -0500 @@ -57,17 +57,31 @@ * Minimum timeslice is 10 msecs, default timeslice is 100 msecs, * maximum timeslice is 200 msecs. Timeslices get refilled after * they expire. + * + * They are configurable via /proc/sys/sched */ -#define MIN_TIMESLICE ( 10 * HZ / 1000) -#define MAX_TIMESLICE (200 * HZ / 1000) -#define CHILD_PENALTY 50 -#define PARENT_PENALTY 100 -#define EXIT_WEIGHT 3 -#define PRIO_BONUS_RATIO 25 -#define INTERACTIVE_DELTA 2 -#define MAX_SLEEP_AVG (10*HZ) -#define STARVATION_LIMIT (10*HZ) -#define NODE_THRESHOLD 125 + +int min_timeslice = (10 * HZ) / 1000; +int max_timeslice = (200 * HZ) / 1000; +int child_penalty = 50; +int parent_penalty = 100; +int exit_weight = 3; +int prio_bonus_ratio = 25; +int interactive_delta = 2; +int max_sleep_avg = 10 * HZ; +int starvation_limit = 10 * HZ; +int node_threshold = 125; + +#define MIN_TIMESLICE (min_timeslice) +#define MAX_TIMESLICE (max_timeslice) +#define CHILD_PENALTY (child_penalty) +#define PARENT_PENALTY (parent_penalty) +#define EXIT_WEIGHT (exit_weight) +#define PRIO_BONUS_RATIO (prio_bonus_ratio) +#define INTERACTIVE_DELTA (interactive_delta) +#define MAX_SLEEP_AVG (max_sleep_avg) +#define STARVATION_LIMIT (starvation_limit) +#define NODE_THRESHOLD (node_threshold) /* * If a task is 'interactive' then we reinsert it in the active diff -urN linux-2.5.64-mm2/kernel/sysctl.c linux/kernel/sysctl.c --- linux-2.5.64-mm2/kernel/sysctl.c 2003-03-07 22:40:27.000000000 -0500 +++ linux/kernel/sysctl.c 2003-03-07 22:09:19.000000000 -0500 @@ -55,6 +55,16 @@ extern int cad_pid; extern int pid_max; extern int sysctl_lower_zone_protection; +extern int min_timeslice; +extern int max_timeslice; +extern int child_penalty; +extern int parent_penalty; +extern int exit_weight; +extern int prio_bonus_ratio; +extern int interactive_delta; +extern int max_sleep_avg; +extern int starvation_limit; +extern int node_threshold; /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */ static int maxolduid = 65535; @@ -112,6 +122,7 @@ static ctl_table kern_table[]; static ctl_table vm_table[]; +static ctl_table sched_table[]; #ifdef CONFIG_NET extern ctl_table net_table[]; #endif @@ -156,6 +167,7 @@ {CTL_FS, "fs", NULL, 0, 0555, fs_table}, {CTL_DEBUG, "debug", NULL, 0, 0555, debug_table}, {CTL_DEV, "dev", NULL, 0, 0555, dev_table}, + {CTL_SCHED, "sched", NULL, 0, 0555, sched_table}, {0} }; @@ -358,7 +370,41 @@ static ctl_table dev_table[] = { {0} -}; +}; + +static ctl_table sched_table[] = { + {SCHED_MAX_TIMESLICE, "max_timeslice", &max_timeslice, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &one, NULL}, + {SCHED_MIN_TIMESLICE, "min_timeslice", &min_timeslice, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &one, NULL}, + {SCHED_CHILD_PENALTY, "child_penalty", &child_penalty, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_PARENT_PENALTY, "parent_penalty", &parent_penalty, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_EXIT_WEIGHT, "exit_weight", &exit_weight, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_PRIO_BONUS_RATIO, "prio_bonus_ratio", &prio_bonus_ratio, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_INTERACTIVE_DELTA, "interactive_delta", &interactive_delta, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_MAX_SLEEP_AVG, "max_sleep_avg", &max_sleep_avg, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &one, NULL}, + {SCHED_STARVATION_LIMIT, "starvation_limit", &starvation_limit, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_NODE_THRESHOLD, "node_threshold", &node_threshold, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &one, NULL}, + {0} +}; extern void init_irq_proc (void); -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [patch] updated scheduler-tunables for 2.5.64-mm2 2003-03-08 3:44 ` [patch] updated scheduler-tunables for 2.5.64-mm2 Robert Love @ 2003-03-08 3:50 ` Robert Love 2003-03-08 18:25 ` Martin J. Bligh 1 sibling, 0 replies; 13+ messages in thread From: Robert Love @ 2003-03-08 3:50 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm On Fri, 2003-03-07 at 22:44, Robert Love wrote: > Attached patch is a complete replacement for the old patch. It defaults > the tunable parameters to the new values in 2.5-bk. I also added a > tuning knob for the NUMA node threshold stuff. I am in an accommodating mood... while the first patch was most likely easiest for Andrew to use (swap out the old for the new), an incremental diff is probably easier for the users to just apply on top of 2.5.64-mm2. So here is an incremental diff, which has the following changes over what is in 2.5-mm now: - update the tunable parameters to have the new defaults Linus applied to 2.5-bk. These defaults are similar to the values in the sched-rml-updates.patch Andrew had in here for awhile, and I like them. - add tuning for the node_threshold parameter for NUMA folks I encourage users to apply this, since we are getting close to sniffing out the last of the interactivity woes and these updated parameters are a large part of the solution. Enjoy, Robert Love include/linux/sysctl.h | 1 + kernel/sched.c | 11 ++++++----- kernel/sysctl.c | 4 ++++ 3 files changed, 11 insertions(+), 5 deletions(-) diff -urN linux-2.5.64-mm2/include/linux/sysctl.h linux/include/linux/sysctl.h --- linux-2.5.64-mm2/include/linux/sysctl.h 2003-03-07 22:08:04.000000000 -0500 +++ linux/include/linux/sysctl.h 2003-03-07 22:08:19.000000000 -0500 @@ -169,6 +169,7 @@ SCHED_INTERACTIVE_DELTA=7, /* delta used to scale interactivity */ SCHED_MAX_SLEEP_AVG=8, /* maximum sleep avg attainable */ SCHED_STARVATION_LIMIT=9, /* no re-active if expired is starved */ + SCHED_NODE_THRESHOLD=10, /* NUMA node rebalance threshold */ }; /* CTL_NET names: */ diff -urN linux-2.5.64-mm2/kernel/sched.c linux/kernel/sched.c --- linux-2.5.64-mm2/kernel/sched.c 2003-03-07 22:08:04.000000000 -0500 +++ linux/kernel/sched.c 2003-03-07 22:10:00.000000000 -0500 @@ -62,14 +62,15 @@ */ int min_timeslice = (10 * HZ) / 1000; -int max_timeslice = (300 * HZ) / 1000; -int child_penalty = 95; +int max_timeslice = (200 * HZ) / 1000; +int child_penalty = 50; int parent_penalty = 100; int exit_weight = 3; int prio_bonus_ratio = 25; int interactive_delta = 2; -int max_sleep_avg = 2 * HZ; -int starvation_limit = 2 * HZ; +int max_sleep_avg = 10 * HZ; +int starvation_limit = 10 * HZ; +int node_threshold = 125; #define MIN_TIMESLICE (min_timeslice) #define MAX_TIMESLICE (max_timeslice) @@ -80,7 +81,7 @@ #define INTERACTIVE_DELTA (interactive_delta) #define MAX_SLEEP_AVG (max_sleep_avg) #define STARVATION_LIMIT (starvation_limit) -#define NODE_THRESHOLD 125 +#define NODE_THRESHOLD (node_threshold) /* * If a task is 'interactive' then we reinsert it in the active diff -urN linux-2.5.64-mm2/kernel/sysctl.c linux/kernel/sysctl.c --- linux-2.5.64-mm2/kernel/sysctl.c 2003-03-07 22:08:04.000000000 -0500 +++ linux/kernel/sysctl.c 2003-03-07 22:09:19.000000000 -0500 @@ -64,6 +64,7 @@ extern int interactive_delta; extern int max_sleep_avg; extern int starvation_limit; +extern int node_threshold; /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */ static int maxolduid = 65535; @@ -399,6 +400,9 @@ {SCHED_STARVATION_LIMIT, "starvation_limit", &starvation_limit, sizeof(int), 0644, NULL, &proc_dointvec_minmax, &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_NODE_THRESHOLD, "node_threshold", &node_threshold, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &one, NULL}, {0} }; -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [patch] updated scheduler-tunables for 2.5.64-mm2 2003-03-08 3:44 ` [patch] updated scheduler-tunables for 2.5.64-mm2 Robert Love 2003-03-08 3:50 ` Robert Love @ 2003-03-08 18:25 ` Martin J. Bligh 2003-03-09 1:54 ` Robert Love 1 sibling, 1 reply; 13+ messages in thread From: Martin J. Bligh @ 2003-03-08 18:25 UTC (permalink / raw) To: Robert Love, Andrew Morton; +Cc: linux-kernel, linux-mm Cool ... do you want to add the other two NUMA parameters as well to your stack? (the idle and busy rebalance rates). Here's what I had before with those in. diff -urpN -X /home/fletch/.diff.exclude 143-schedstat-scripts/Documentation/filesystems/proc.txt 144-sched_tunables/Documentation/filesystems/proc.txt --- 143-schedstat-scripts/Documentation/filesystems/proc.txt Thu Feb 13 11:08:01 2003 +++ 144-sched_tunables/Documentation/filesystems/proc.txt Wed Mar 5 10:22:46 2003 @@ -37,6 +37,7 @@ Table of Contents 2.8 /proc/sys/net/ipv4 - IPV4 settings 2.9 Appletalk 2.10 IPX + 2.11 /proc/sys/sched - scheduler tunables ------------------------------------------------------------------------------ Preface @@ -1662,6 +1663,104 @@ IPX. The /proc/net/ipx_route table holds a list of IPX routes. For each route it gives the destination network, the router node (or Directly) and the network address of the router (or Connected) for internal networks. + +2.11 /proc/sys/sched - scheduler tunables +----------------------------------------- + +Useful knobs for tuning the scheduler live in /proc/sys/sched. + +child_penalty +------------- + +Percentage of the parent's sleep_avg that children inherit. sleep_avg is +a running average of the time a process spends sleeping. Tasks with high +sleep_avg values are considered interactive and given a higher dynamic +priority and a larger timeslice. You typically want this some value just +under 100. + +exit_weight +----------- + +When a CPU hog task exits, its parent's sleep_avg is reduced by a factor of +exit_weight against the exiting task's sleep_avg. + +interactive_delta +----------------- + +If a task is "interactive" it is reinserted into the active array after it +has expired its timeslice, instead of being inserted into the expired array. +How "interactive" a task must be in order to be deemed interactive is a +function of its nice value. This interactive limit is scaled linearly by nice +value and is offset by the interactive_delta. + +max_sleep_avg +------------- + +max_sleep_avg is the largest value (in ms) stored for a task's running sleep +average. The larger this value, the longer a task needs to sleep to be +considered interactive (maximum interactive bonus is a function of +max_sleep_avg). + +max_timeslice +------------- + +Maximum timeslice, in milliseconds. This is the value given to tasks of the +highest dynamic priority. + +min_timeslice +------------- + +Minimum timeslice, in milliseconds. This is the value given to tasks of the +lowest dynamic priority. Every task gets at least this slice of the processor +per array switch. + +parent_penalty +-------------- + +Percentage of the parent's sleep_avg that it retains across a fork(). +sleep_avg is a running average of the time a process spends sleeping. Tasks +with high sleep_avg values are considered interactive and given a higher +dynamic priority and a larger timeslice. Normally, this value is 100 and thus +task's retain their sleep_avg on fork. If you want to punish interactive +tasks for forking, set this below 100. + +prio_bonus_ratio +---------------- + +Middle percentage of the priority range that tasks can receive as a dynamic +priority. The default value of 25% ensures that nice values at the +extremes are still enforced. For example, nice +19 interactive tasks will +never be able to preempt a nice 0 CPU hog. Setting this higher will increase +the size of the priority range the tasks can receive as a bonus. Setting +this lower will decrease this range, making the interactivity bonus less +apparent and user nice values more applicable. + +starvation_limit +---------------- + +Sufficiently interactive tasks are reinserted into the active array when they +run out of timeslice. Normally, tasks are inserted into the expired array. +Reinserting interactive tasks into the active array allows them to remain +runnable, which is important to interactive performance. This could starve +expired tasks, however, since the interactive task could prevent the array +switch. To prevent starving the tasks on the expired array for too long. the +starvation_limit is the longest (in ms) we will let the expired array starve +at the expense of reinserting interactive tasks back into active. Higher +values here give more preferance to running interactive tasks, at the expense +of expired tasks. Lower values provide more fair scheduling behavior, at the +expense of interactivity. The units are in milliseconds. + +idle_node_rebalance_ratio +------------------------- + +On NUMA machines, we normally rebalance within nodes, but we also rebalance +globally every N idle rebalance ticks, where N = idle_node_rebalance_ratio. + +busy_node_rebalance_ratio +------------------------- + +On NUMA machines, we normally rebalance within nodes, but we also rebalance +globally every N busy rebalance ticks, where N = busy_node_rebalance_ratio. ------------------------------------------------------------------------------ Summary diff -urpN -X /home/fletch/.diff.exclude 143-schedstat-scripts/include/linux/sysctl.h 144-sched_tunables/include/linux/sysctl.h --- 143-schedstat-scripts/include/linux/sysctl.h Tue Feb 25 23:03:51 2003 +++ 144-sched_tunables/include/linux/sysctl.h Wed Mar 5 10:22:46 2003 @@ -66,7 +66,8 @@ enum CTL_DEV=7, /* Devices */ CTL_BUS=8, /* Busses */ CTL_ABI=9, /* Binary emulation */ - CTL_CPU=10 /* CPU stuff (speed scaling, etc) */ + CTL_CPU=10, /* CPU stuff (speed scaling, etc) */ + CTL_SCHED=11, /* scheduler tunables */ }; /* CTL_BUS names: */ @@ -157,6 +158,20 @@ enum VM_LOWER_ZONE_PROTECTION=20,/* Amount of protection of lower zones */ }; +/* Tunable scheduler parameters in /proc/sys/sched/ */ +enum { + SCHED_MIN_TIMESLICE=1, /* minimum process timeslice */ + SCHED_MAX_TIMESLICE=2, /* maximum process timeslice */ + SCHED_CHILD_PENALTY=3, /* penalty on fork to child */ + SCHED_PARENT_PENALTY=4, /* penalty on fork to parent */ + SCHED_EXIT_WEIGHT=5, /* penalty to parent of CPU hog child */ + SCHED_PRIO_BONUS_RATIO=6, /* percent of max prio given as bonus */ + SCHED_INTERACTIVE_DELTA=7, /* delta used to scale interactivity */ + SCHED_MAX_SLEEP_AVG=8, /* maximum sleep avg attainable */ + SCHED_STARVATION_LIMIT=9, /* no re-active if expired is starved */ + SCHED_IDLE_NODE_REBALANCE_RATIO=10, /* how often to global balance */ + SCHED_BUSY_NODE_REBALANCE_RATIO=11, /* how often to global balance */ +}; /* CTL_NET names: */ enum diff -urpN -X /home/fletch/.diff.exclude 143-schedstat-scripts/kernel/sched.c 144-sched_tunables/kernel/sched.c --- 143-schedstat-scripts/kernel/sched.c Wed Mar 5 10:22:45 2003 +++ 144-sched_tunables/kernel/sched.c Wed Mar 5 10:22:46 2003 @@ -63,16 +63,30 @@ * Minimum timeslice is 10 msecs, default timeslice is 150 msecs, * maximum timeslice is 300 msecs. Timeslices get refilled after * they expire. + * + * They are configurable via /proc/sys/sched */ -#define MIN_TIMESLICE ( 10 * HZ / 1000) -#define MAX_TIMESLICE (300 * HZ / 1000) -#define CHILD_PENALTY 95 -#define PARENT_PENALTY 100 -#define EXIT_WEIGHT 3 -#define PRIO_BONUS_RATIO 25 -#define INTERACTIVE_DELTA 2 -#define MAX_SLEEP_AVG (2*HZ) -#define STARVATION_LIMIT (2*HZ) + +int min_timeslice = (10 * HZ) / 1000; +int max_timeslice = (300 * HZ) / 1000; +int child_penalty = 95; +int parent_penalty = 100; +int exit_weight = 3; +int prio_bonus_ratio = 25; +int interactive_delta = 2; +int max_sleep_avg = 2 * HZ; +int starvation_limit = 2 * HZ; + +#define MIN_TIMESLICE (min_timeslice) +#define MAX_TIMESLICE (max_timeslice) +#define CHILD_PENALTY (child_penalty) +#define PARENT_PENALTY (parent_penalty) +#define EXIT_WEIGHT (exit_weight) +#define PRIO_BONUS_RATIO (prio_bonus_ratio) +#define INTERACTIVE_DELTA (interactive_delta) +#define MAX_SLEEP_AVG (max_sleep_avg) +#define STARVATION_LIMIT (starvation_limit) + #define NODE_THRESHOLD 125 /* @@ -917,6 +931,9 @@ static int find_busiest_node(int this_no #endif /* CONFIG_NUMA */ +int idle_node_rebalance_ratio = 10; +int busy_node_rebalance_ratio = 100; + #if CONFIG_SMP /* @@ -1149,8 +1166,9 @@ out: */ #define IDLE_REBALANCE_TICK (HZ/1000 ?: 1) #define BUSY_REBALANCE_TICK (HZ/5 ?: 1) -#define IDLE_NODE_REBALANCE_TICK (IDLE_REBALANCE_TICK * 5) -#define BUSY_NODE_REBALANCE_TICK (BUSY_REBALANCE_TICK * 100) + +#define IDLE_NODE_REBALANCE_TICK (IDLE_REBALANCE_TICK * idle_node_rebalance_ratio) +#define BUSY_NODE_REBALANCE_TICK (BUSY_REBALANCE_TICK * busy_node_rebalance_ratio) #if CONFIG_NUMA static void balance_node(runqueue_t *this_rq, int idle, int this_cpu) diff -urpN -X /home/fletch/.diff.exclude 143-schedstat-scripts/kernel/sysctl.c 144-sched_tunables/kernel/sysctl.c --- 143-schedstat-scripts/kernel/sysctl.c Mon Dec 16 21:50:51 2002 +++ 144-sched_tunables/kernel/sysctl.c Wed Mar 5 10:22:46 2003 @@ -55,6 +55,17 @@ extern char core_pattern[]; extern int cad_pid; extern int pid_max; extern int sysctl_lower_zone_protection; +extern int min_timeslice; +extern int max_timeslice; +extern int child_penalty; +extern int parent_penalty; +extern int exit_weight; +extern int prio_bonus_ratio; +extern int interactive_delta; +extern int max_sleep_avg; +extern int starvation_limit; +extern int idle_node_rebalance_ratio; +extern int busy_node_rebalance_ratio; /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */ static int maxolduid = 65535; @@ -112,6 +123,7 @@ static struct ctl_table_header root_tabl static ctl_table kern_table[]; static ctl_table vm_table[]; +static ctl_table sched_table[]; #ifdef CONFIG_NET extern ctl_table net_table[]; #endif @@ -156,6 +168,7 @@ static ctl_table root_table[] = { {CTL_FS, "fs", NULL, 0, 0555, fs_table}, {CTL_DEBUG, "debug", NULL, 0, 0555, debug_table}, {CTL_DEV, "dev", NULL, 0, 0555, dev_table}, + {CTL_SCHED, "sched", NULL, 0, 0555, sched_table}, {0} }; @@ -358,7 +371,46 @@ static ctl_table debug_table[] = { static ctl_table dev_table[] = { {0} -}; +}; + +static ctl_table sched_table[] = { + {SCHED_MAX_TIMESLICE, "max_timeslice", &max_timeslice, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &one, NULL}, + {SCHED_MIN_TIMESLICE, "min_timeslice", &min_timeslice, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &one, NULL}, + {SCHED_CHILD_PENALTY, "child_penalty", &child_penalty, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_PARENT_PENALTY, "parent_penalty", &parent_penalty, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_EXIT_WEIGHT, "exit_weight", &exit_weight, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_PRIO_BONUS_RATIO, "prio_bonus_ratio", &prio_bonus_ratio, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_INTERACTIVE_DELTA, "interactive_delta", &interactive_delta, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_MAX_SLEEP_AVG, "max_sleep_avg", &max_sleep_avg, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &one, NULL}, + {SCHED_STARVATION_LIMIT, "starvation_limit", &starvation_limit, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_IDLE_NODE_REBALANCE_RATIO, "idle_node_rebalance_ratio", + &idle_node_rebalance_ratio, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {SCHED_BUSY_NODE_REBALANCE_RATIO, "busy_node_rebalance_ratio", + &busy_node_rebalance_ratio, + sizeof(int), 0644, NULL, &proc_dointvec_minmax, + &sysctl_intvec, NULL, &zero, NULL}, + {0} +}; extern void init_irq_proc (void); -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [patch] updated scheduler-tunables for 2.5.64-mm2 2003-03-08 18:25 ` Martin J. Bligh @ 2003-03-09 1:54 ` Robert Love 2003-03-09 2:18 ` Martin J. Bligh 0 siblings, 1 reply; 13+ messages in thread From: Robert Love @ 2003-03-09 1:54 UTC (permalink / raw) To: Martin J. Bligh; +Cc: Andrew Morton, linux-kernel, linux-mm On Sat, 2003-03-08 at 13:25, Martin J. Bligh wrote: > Cool ... do you want to add the other two NUMA parameters as well to > your stack? (the idle and busy rebalance rates). Here's what I had > before with those in. Sure. But at least in 2.5.64 and 2.5.64-mm3, I do not see those parameters. There is no {IDLE|BUSY}_NODE_REBALANCE_TICK define. Robert Love -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [patch] updated scheduler-tunables for 2.5.64-mm2 2003-03-09 1:54 ` Robert Love @ 2003-03-09 2:18 ` Martin J. Bligh 0 siblings, 0 replies; 13+ messages in thread From: Martin J. Bligh @ 2003-03-09 2:18 UTC (permalink / raw) To: Robert Love; +Cc: Andrew Morton, linux-kernel, linux-mm >> Cool ... do you want to add the other two NUMA parameters as well to >> your stack? (the idle and busy rebalance rates). Here's what I had >> before with those in. > > Sure. > > But at least in 2.5.64 and 2.5.64-mm3, I do not see those parameters. > There is no {IDLE|BUSY}_NODE_REBALANCE_TICK define. Ooops. Sorry ... we have to merge Ingo's NUMA sched updates first ;-) /me goes back to swinging about in his own tree ... M. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: 2.5.64-mm2 2003-03-08 2:51 2.5.64-mm2 Andrew Morton 2003-03-08 3:44 ` [patch] updated scheduler-tunables for 2.5.64-mm2 Robert Love @ 2003-03-08 3:49 ` Shawn 2003-03-08 4:05 ` 2.5.64-mm2 Robert Love 1 sibling, 1 reply; 13+ messages in thread From: Shawn @ 2003-03-08 3:49 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm This mean anything to you? make -f scripts/Makefile.build obj=arch/i386/lib GEN include/linux/compile.h (updated) gcc2953 -Wp,-MD,init/.version.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -malign-functions=4 -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=version -DKBUILD_MODNAME=version -c -o init/.tmp_version.o init/version.c ld -m elf_i386 -r -o init/built-in.o init/main.o init/version.o init/mounts.o init/initramfs.o kernel/built-in.o(__ksymtab+0xd00): undefined reference to `kernel_flag' make: *** [.tmp_vmlinux1] Error 1 On Fri, 2003-03-07 at 20:51, Andrew Morton wrote: > http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.64/2.5.64-mm2/ > > Just lots of little stuff here. Mainly a resync with various people. > > Note: there is a change to the console handling code in Linus's tree which > means that if you have both VT console and serial console enabled in kernel > config, the serial console now wins. Nothing comes out on the screen during > bootup. It used to be the case that the VT console was initialised first. > > If this happens you will need to specify the console device on the boot > command line. > > We appear to have at least three use-after-free bugs. One is fixed here, and > there are extra debugging goodies which may help us find the others. Please > enable memory debugging and keep an eye open. > > > > Changes since 2.5.64-mm1: > > > linus.patch > > Latest -bk > > -balance_irq-cleanup.patch > -balance_irq-fix.patch > -rpc_rmdir-fix.patch > -aic-makefile-fix.patch > -flock-fix.patch > -rtc-locking-fix.patch > -sk98-build-fix.patch > -cciss-pci-hotplug-fix.patch > -export-pfn_to_nid.patch > -move-CONFIG_SWAP.patch > -random-stack-use.patch > -inode-pruning-fix.patch > -remove-__pgd_offset.patch > -remove-__pmd_offset.patch > -remove-__pte_offset.patch > -htree-lock_kernel-fix.patch > -pci-1.patch > -pci-2.patch > -pci-3.patch > -pci-4.patch > -pci-5.patch > -elf_core_dump-stack-size-reduction.patch > -uninline-binfmt_elf.patch > > Merged > > +register_blkdev-cleanups.patch > > Toward 32-bit dev-t. > > -shared-irq-warning.patch > > Dropped. Need to do something different here. > > +as-state-tracking-and-debug.patch > +as-state-tracking-fix.patch > +as-nr_dispatched-atomic-fix.patch > > Anticipatory scheduler work. > > -sched-b3.patch > > Sort-of merged. > > +vm_area-use-after-free-fix.patch > > Fix the use-after-free in the vma slab cache. > > +slab-caller-tracking.patch > > Record the calling function inside slab objects, and report that on > use-after-free erfors. > > +slab-caller-tracking-symbolic.patch > > Teach the above about kallsyms. > > +CONFIG_SWAP-fix.patch > > Fix up CONFIG_SWAP menus > > +hugh-nonlinear-fixes.patch > > Try to make nonlinear VMAs and objrmap play better together. > > +readdir-usercopy-check.patch > > Add some missing copy_to_user() checks. > > +gcc3-inline-fix.patch > > Apply a club to gcc-3.x's head. > > +pirq_enable_irq-warning-fix.patch > > Fix a compiler warning > > +hugetlb-unmap_vmas-fix.patch > > Fix an oops with hugetlb pages, CONFIG_SMP && CONFIG_PREEMPT > > +ext2-double-free-bug.patch > > Fix an error-path double-free. > > +load_elf_binary-memleak-fix.patch > > Fix an error-path memory leak > > +xattr-bug-fixes.patch > > Extended Attribute fixes > > +noirqbalance-fix.patch > > Make the noirqalance boot option work > > +show_interrupts-locking-fix.patch > > Put some locking into the /proc/interrupts handler code. > > +eepro100-lockup-fix.patch > > Fix an eepro100 deadlock > > +task_prio-fix.patch > > Scheduler fix for SCHED_RR tasks > > +remove-kernel_flag.patch > > Eliminate lock_kernel() > > > > All 79 patches: > > linus.patch > Latest from Linus > > register_blkdev-cleanups.patch > register_blkdev cleanups > > mm.patch > add -mmN to EXTRAVERSION > > ppc64-reloc_hide.patch > > ppc64-pci-patch.patch > Subject: pci patch > > ppc64-aio-32bit-emulation.patch > 32/64bit emulation for aio > > ppc64-64-bit-exec-fix.patch > Subject: 64bit exec > > ppc64-scruffiness.patch > Fix some PPC64 compile warnings > > sym-do-160.patch > make the SYM driver do 160 MB/sec > > kgdb.patch > > nfsd-disable-softirq.patch > Fix race in svcsock.c in 2.5.61 > > report-lost-ticks.patch > make lost-tick detection more informative > > ptrace-flush.patch > cache flushing in the ptrace code > > buffer-debug.patch > buffer.c debugging > > warn-null-wakeup.patch > > ext3-truncate-ordered-pages.patch > ext3: explicitly free truncated pages > > limit-write-latency.patch > fix possible latency in balance_dirty_pages() > > reiserfs_file_write-5.patch > > tcp-wakeups.patch > Use fast wakeups in TCP/IPV4 > > lockd-lockup-fix-2.patch > Subject: Re: Fw: Re: 2.4.20 NFS server lock-up (SMP) > > rcu-stats.patch > RCU statistics reporting > > ext3-journalled-data-assertion-fix.patch > Remove incorrect assertion from ext3 > > nfs-speedup.patch > > nfs-oom-fix.patch > nfs oom fix > > sk-allocation.patch > Subject: Re: nfs oom > > nfs-more-oom-fix.patch > > nfs-sendfile.patch > Implement sendfile() for NFS > > rpciod-atomic-allocations.patch > Make rcpiod use atomic allocations > > linux-isp.patch > > isp-update-1.patch > > remove-unused-congestion-stuff.patch > Subject: [PATCH] remove unused congestion stuff > > atm_dev_sem.patch > convert atm_dev_lock from spinlock to semaphore > > as-iosched.patch > anticipatory I/O scheduler > > as-random-fixes.patch > Subject: [PATCH] important fixes > > as-comment-fix.patch > AS: comment fix > > as-naming-comments-BUG.patch > AS: fix up naming, comments, add more BUGs > > as-unnecessary-test.patch > > as-atomicity-fix.patch > > as-state-tracking-and-debug.patch > AS: state tracking fix and debug additions > > as-state-tracking-fix.patch > AS: state tracking fix > > as-nr_dispatched-atomic-fix.patch > > readahead-shrink-to-zero.patch > Allow VFS readahead to fall to zero > > cfq-2.patch > CFQ scheduler, #2 > > smalldevfs.patch > smalldevfs > > objrmap-2.5.62-5.patch > object-based rmap > > objrmap-X-fix.patch > objrmap fix for X > > objrmap-nr_mapped-fix.patch > objrmap: fix /proc/meminfo:Mapped > > objrmap-mapped-mem-fix-2.patch > fix objrmap mapped mem accounting again > > objrmap-atomic_t-fix.patch > Make objrmap mapcount non-atomic > > per-cpu-disk-stats.patch > Make diskstats per-cpu using kmalloc_percpu > > scheduler-tunables.patch > scheduler tunables > > show_task-free-stack-fix.patch > show_task() fix and cleanup > > vm_area-use-after-free-fix.patch > Fix vm_area_struct slab corruption > > use-after-free-check.patch > slab use-after-free detector > > slab-caller-tracking.patch > slab debug: track caller program counter > > slab-caller-tracking-symbolic.patch > slab debug: symbolic output in caller tracking > > reiserfs-fix-memleaks.patch > ReiserFS: fix memleaks on journal opening failures > > copy_page_range-invalid-page-fix.patch > Fix copy_page_range()'s handling of invalid pages > > yellowfin-set_bit-fix.patch > yellowfin driver set_bit fix > > CONFIG_SWAP-fix.patch > move CONFIG_SWAP around > > remap-file-pages-2.5.63-a1.patch > Subject: [patch] remap-file-pages-2.5.63-A1 > > pte_file-always.patch > enable file-offset-in-pte's for all mappings > > hugh-nonlinear-fixes.patch > Fix nonlinear oddities > > htree-nfs-fix.patch > Fix ext3 htree / NFS compatibility problems > > bonding-zerodiv-fix.patch > Subject: [PATCH][bonding] division by zero bug > > update_atime-ng.patch > inode a/c/mtime modification speedup > > one-sec-times.patch > Implement a/c/time speedup in ext2 & ext3 > > readdir-usercopy-check.patch > usercopy checks in old_readdir() > > gcc3-inline-fix.patch > work around gcc-3.x inlining bugs > > pirq_enable_irq-warning-fix.patch > fix return value in arch/i386/pci/irq.c > > hugetlb-unmap_vmas-fix.patch > hugetlb unmap_vmas() SMP && PREEMPT fix > > ext2-double-free-bug.patch > ext2: fix error-path double-free > > load_elf_binary-memleak-fix.patch > fix memory leak in load_elf_binary() > > xattr-bug-fixes.patch > Extended attribute sharing and debug macro typo fixes > > noirqbalance-fix.patch > Fix noirqbalance > > show_interrupts-locking-fix.patch > protect 'action' in show_interrupts > > eepro100-lockup-fix.patch > fix SMP lockup in eepro100 with ethtool on unused interface > > task_prio-fix.patch > simple task_prio() fix > > remove-kernel_flag.patch > no need for kernel_flag on UP > > > > - > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: 2.5.64-mm2 2003-03-08 3:49 ` 2.5.64-mm2 Shawn @ 2003-03-08 4:05 ` Robert Love 2003-03-08 4:01 ` 2.5.64-mm2 Shawn 0 siblings, 1 reply; 13+ messages in thread From: Robert Love @ 2003-03-08 4:05 UTC (permalink / raw) To: Shawn; +Cc: Andrew Morton, linux-kernel, linux-mm On Fri, 2003-03-07 at 22:49, Shawn wrote: > make -f scripts/Makefile.build obj=arch/i386/lib > GEN include/linux/compile.h (updated) > gcc2953 -Wp,-MD,init/.version.o.d -D__KERNEL__ -Iinclude -Wall > -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common > -pipe -mpreferred-stack-boundary=2 -march=i686 -malign-functions=4 > -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc > -iwithprefix include -DKBUILD_BASENAME=version > -DKBUILD_MODNAME=version -c -o init/.tmp_version.o init/version.c > ld -m elf_i386 -r -o init/built-in.o init/main.o init/version.o > init/mounts.o init/initramfs.o > kernel/built-in.o(__ksymtab+0xd00): undefined reference to `kernel_flag' > make: *** [.tmp_vmlinux1] Error 1 Did you do a `make distclean' before building? If not, can you? And what combination of SMP + PREEMPT are you? I assume you are UP+PREEMPT, since that was what we changed. It should not matter, though... I think you just need to clean. Let me know. Robert Love -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: 2.5.64-mm2 2003-03-08 4:05 ` 2.5.64-mm2 Robert Love @ 2003-03-08 4:01 ` Shawn 2003-03-08 4:22 ` 2.5.64-mm2 Robert Love 0 siblings, 1 reply; 13+ messages in thread From: Shawn @ 2003-03-08 4:01 UTC (permalink / raw) To: Robert Love; +Cc: Andrew Morton, linux-kernel, linux-mm [-- Attachment #1: Type: text/plain, Size: 1293 bytes --] Here's my .config. I am not SMP. I suspected the distclean thing, but I made "Mr. Proper" too just in case. Check it out. I also just tryed redhat's gcc 2.96, same results. On Fri, 2003-03-07 at 22:05, Robert Love wrote: > On Fri, 2003-03-07 at 22:49, Shawn wrote: > > > make -f scripts/Makefile.build obj=arch/i386/lib > > GEN include/linux/compile.h (updated) > > gcc2953 -Wp,-MD,init/.version.o.d -D__KERNEL__ -Iinclude -Wall > > -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common > > -pipe -mpreferred-stack-boundary=2 -march=i686 -malign-functions=4 > > -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc > > -iwithprefix include -DKBUILD_BASENAME=version > > -DKBUILD_MODNAME=version -c -o init/.tmp_version.o init/version.c > > ld -m elf_i386 -r -o init/built-in.o init/main.o init/version.o > > init/mounts.o init/initramfs.o > > kernel/built-in.o(__ksymtab+0xd00): undefined reference to `kernel_flag' > > make: *** [.tmp_vmlinux1] Error 1 > > Did you do a `make distclean' before building? If not, can you? > > And what combination of SMP + PREEMPT are you? I assume you are > UP+PREEMPT, since that was what we changed. It should not matter, > though... I think you just need to clean. > > Let me know. > > Robert Love > [-- Attachment #2: .config --] [-- Type: text/plain, Size: 24373 bytes --] # # Automatically generated make config: don't edit # CONFIG_X86=y CONFIG_MMU=y CONFIG_UID16=y CONFIG_GENERIC_ISA_DMA=y # # Code maturity level options # CONFIG_EXPERIMENTAL=y # # General setup # CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_SYSCTL=y CONFIG_LOG_BUF_SHIFT=15 # # Loadable module support # CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_FORCE_UNLOAD=y CONFIG_OBSOLETE_MODPARM=y CONFIG_MODVERSIONS=y CONFIG_KMOD=y # # Processor type and features # CONFIG_X86_PC=y # CONFIG_X86_VOYAGER is not set # CONFIG_X86_NUMAQ is not set # CONFIG_X86_SUMMIT is not set # CONFIG_X86_BIGSMP is not set # CONFIG_X86_VISWS is not set # CONFIG_M386 is not set # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMII is not set # CONFIG_MPENTIUMIII is not set # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set CONFIG_MK7=y # CONFIG_MK8 is not set # CONFIG_MELAN is not set # CONFIG_MCRUSOE is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set # CONFIG_MCYRIXIII is not set # CONFIG_MVIAC3_2 is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_GOOD_APIC=y CONFIG_X86_USE_PPRO_CHECKSUM=y CONFIG_X86_USE_3DNOW=y # CONFIG_HUGETLB_PAGE is not set # CONFIG_SMP is not set CONFIG_PREEMPT=y CONFIG_X86_UP_APIC=y CONFIG_X86_UP_IOAPIC=y CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y CONFIG_X86_TSC=y CONFIG_X86_MCE=y CONFIG_X86_MCE_NONFATAL=y # CONFIG_X86_MCE_P4THERMAL is not set # CONFIG_TOSHIBA is not set # CONFIG_I8K is not set # CONFIG_MICROCODE is not set CONFIG_X86_MSR=m CONFIG_X86_CPUID=m CONFIG_EDD=y # CONFIG_NOHIGHMEM is not set CONFIG_HIGHMEM4G=y # CONFIG_HIGHMEM64G is not set CONFIG_HIGHMEM=y CONFIG_HIGHPTE=y # CONFIG_MATH_EMULATION is not set CONFIG_MTRR=y CONFIG_HAVE_DEC_LOCK=y # # Power management options (ACPI, APM) # CONFIG_PM=y # CONFIG_SOFTWARE_SUSPEND is not set # # ACPI Support # CONFIG_ACPI=y # CONFIG_ACPI_HT_ONLY is not set CONFIG_ACPI_BOOT=y CONFIG_ACPI_AC=y CONFIG_ACPI_BATTERY=y CONFIG_ACPI_BUTTON=y CONFIG_ACPI_FAN=y CONFIG_ACPI_PROCESSOR=y CONFIG_ACPI_THERMAL=y # CONFIG_ACPI_TOSHIBA is not set # CONFIG_ACPI_DEBUG is not set CONFIG_ACPI_BUS=y CONFIG_ACPI_INTERPRETER=y CONFIG_ACPI_EC=y CONFIG_ACPI_POWER=y CONFIG_ACPI_PCI=y CONFIG_ACPI_SYSTEM=y # CONFIG_APM is not set # # CPU Frequency scaling # # CONFIG_CPU_FREQ is not set # # Bus options (PCI, PCMCIA, EISA, MCA, ISA) # CONFIG_PCI=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y # CONFIG_SCx200 is not set # CONFIG_PCI_LEGACY_PROC is not set CONFIG_PCI_NAMES=y # CONFIG_ISA is not set # CONFIG_MCA is not set # CONFIG_HOTPLUG is not set # # Executable file formats # CONFIG_KCORE_ELF=y # CONFIG_KCORE_AOUT is not set CONFIG_BINFMT_AOUT=m CONFIG_BINFMT_ELF=y CONFIG_BINFMT_MISC=m # # Memory Technology Devices (MTD) # # CONFIG_MTD is not set # # Parallel port support # CONFIG_PARPORT=m CONFIG_PARPORT_PC=m CONFIG_PARPORT_PC_CML1=m # CONFIG_PARPORT_SERIAL is not set # CONFIG_PARPORT_PC_FIFO is not set # CONFIG_PARPORT_PC_SUPERIO is not set # CONFIG_PARPORT_OTHER is not set CONFIG_PARPORT_1284=y # # Plug and Play support # CONFIG_PNP=y CONFIG_PNP_NAMES=y CONFIG_PNP_CARD=y CONFIG_PNP_DEBUG=y # # Protocols # CONFIG_ISAPNP=y CONFIG_PNPBIOS=y # # Block devices # # CONFIG_BLK_DEV_FD is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=m # CONFIG_BLK_DEV_NBD is not set CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=4096 CONFIG_BLK_DEV_INITRD=y # CONFIG_LBD is not set # # ATA/ATAPI/MFM/RLL device support # CONFIG_IDE=y # # IDE, ATA and ATAPI Block devices # CONFIG_BLK_DEV_IDE=y # # Please see Documentation/ide.txt for help/info on IDE drives # # CONFIG_BLK_DEV_HD_IDE is not set # CONFIG_BLK_DEV_HD is not set CONFIG_BLK_DEV_IDEDISK=y # CONFIG_IDEDISK_MULTI_MODE is not set # CONFIG_IDEDISK_STROKE is not set CONFIG_BLK_DEV_IDECD=m CONFIG_BLK_DEV_IDEFLOPPY=m CONFIG_IDE_TASK_IOCTL=y # # IDE chipset support/bugfixes # CONFIG_BLK_DEV_CMD640=y CONFIG_BLK_DEV_CMD640_ENHANCED=y # CONFIG_BLK_DEV_IDEPNP is not set CONFIG_BLK_DEV_IDEPCI=y CONFIG_BLK_DEV_GENERIC=y CONFIG_IDEPCI_SHARE_IRQ=y CONFIG_BLK_DEV_IDEDMA_PCI=y CONFIG_BLK_DEV_IDE_TCQ=y CONFIG_BLK_DEV_IDE_TCQ_DEFAULT=y CONFIG_BLK_DEV_IDE_TCQ_DEPTH=8 CONFIG_BLK_DEV_OFFBOARD=y # CONFIG_BLK_DEV_IDEDMA_FORCED is not set CONFIG_IDEDMA_PCI_AUTO=y # CONFIG_IDEDMA_ONLYDISK is not set CONFIG_BLK_DEV_IDEDMA=y # CONFIG_IDEDMA_PCI_WIP is not set CONFIG_BLK_DEV_ADMA=y # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set # CONFIG_BLK_DEV_AMD74XX is not set CONFIG_BLK_DEV_CMD64X=y # CONFIG_BLK_DEV_TRIFLEX is not set # CONFIG_BLK_DEV_CY82C693 is not set # CONFIG_BLK_DEV_CS5520 is not set # CONFIG_BLK_DEV_HPT34X is not set # CONFIG_BLK_DEV_HPT366 is not set # CONFIG_BLK_DEV_SC1200 is not set # CONFIG_BLK_DEV_PIIX is not set # CONFIG_BLK_DEV_NS87415 is not set # CONFIG_BLK_DEV_OPTI621 is not set # CONFIG_BLK_DEV_PDC202XX_OLD is not set # CONFIG_BLK_DEV_PDC202XX_NEW is not set # CONFIG_BLK_DEV_RZ1000 is not set # CONFIG_BLK_DEV_SVWKS is not set # CONFIG_BLK_DEV_SIIMAGE is not set # CONFIG_BLK_DEV_SIS5513 is not set # CONFIG_BLK_DEV_SLC90E66 is not set # CONFIG_BLK_DEV_TRM290 is not set CONFIG_BLK_DEV_VIA82CXXX=y CONFIG_IDEDMA_AUTO=y # CONFIG_IDEDMA_IVB is not set CONFIG_BLK_DEV_IDE_MODES=y # # SCSI device support # # CONFIG_SCSI is not set # # Multi-device support (RAID and LVM) # CONFIG_MD=y CONFIG_BLK_DEV_MD=m CONFIG_MD_LINEAR=m CONFIG_MD_RAID0=m CONFIG_MD_RAID1=m CONFIG_MD_RAID5=m CONFIG_MD_MULTIPATH=m CONFIG_BLK_DEV_DM=m # # Fusion MPT device support # # # IEEE 1394 (FireWire) support (EXPERIMENTAL) # CONFIG_IEEE1394=m # # Subsystem Options # # CONFIG_IEEE1394_VERBOSEDEBUG is not set CONFIG_IEEE1394_OUI_DB=y # # Device Drivers # # CONFIG_IEEE1394_PCILYNX is not set CONFIG_IEEE1394_OHCI1394=m # # Protocol Drivers # CONFIG_IEEE1394_VIDEO1394=m CONFIG_IEEE1394_ETH1394=m CONFIG_IEEE1394_DV1394=m CONFIG_IEEE1394_RAWIO=m CONFIG_IEEE1394_CMP=m CONFIG_IEEE1394_AMDTP=m # # I2O device support # CONFIG_I2O=m CONFIG_I2O_PCI=m CONFIG_I2O_BLOCK=m CONFIG_I2O_PROC=m # # Networking support # CONFIG_NET=y # # Networking options # CONFIG_PACKET=m CONFIG_PACKET_MMAP=y # CONFIG_NETLINK_DEV is not set CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set CONFIG_FILTER=y CONFIG_UNIX=y CONFIG_NET_KEY=y CONFIG_INET=y CONFIG_IP_MULTICAST=y CONFIG_IP_ADVANCED_ROUTER=y CONFIG_IP_MULTIPLE_TABLES=y CONFIG_IP_ROUTE_FWMARK=y CONFIG_IP_ROUTE_NAT=y CONFIG_IP_ROUTE_MULTIPATH=y CONFIG_IP_ROUTE_TOS=y CONFIG_IP_ROUTE_VERBOSE=y CONFIG_IP_ROUTE_LARGE_TABLES=y # CONFIG_IP_PNP is not set CONFIG_NET_IPIP=m # CONFIG_NET_IPGRE is not set CONFIG_IP_MROUTE=y CONFIG_IP_PIMSM_V1=y CONFIG_IP_PIMSM_V2=y # CONFIG_ARPD is not set CONFIG_INET_ECN=y # CONFIG_SYN_COOKIES is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set CONFIG_XFRM_USER=m # # IP: Netfilter Configuration # CONFIG_IP_NF_CONNTRACK=m CONFIG_IP_NF_FTP=m CONFIG_IP_NF_IRC=m CONFIG_IP_NF_QUEUE=m CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_LIMIT=m CONFIG_IP_NF_MATCH_MAC=m CONFIG_IP_NF_MATCH_PKTTYPE=m CONFIG_IP_NF_MATCH_MARK=m CONFIG_IP_NF_MATCH_MULTIPORT=m CONFIG_IP_NF_MATCH_TOS=m CONFIG_IP_NF_MATCH_ECN=m CONFIG_IP_NF_MATCH_DSCP=m CONFIG_IP_NF_MATCH_AH_ESP=m CONFIG_IP_NF_MATCH_LENGTH=m CONFIG_IP_NF_MATCH_TTL=m CONFIG_IP_NF_MATCH_TCPMSS=m CONFIG_IP_NF_MATCH_HELPER=m CONFIG_IP_NF_MATCH_STATE=m CONFIG_IP_NF_MATCH_CONNTRACK=m CONFIG_IP_NF_MATCH_UNCLEAN=m CONFIG_IP_NF_MATCH_OWNER=m CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_TARGET_MIRROR=m CONFIG_IP_NF_NAT=m CONFIG_IP_NF_NAT_NEEDED=y CONFIG_IP_NF_TARGET_MASQUERADE=m CONFIG_IP_NF_TARGET_REDIRECT=m # CONFIG_IP_NF_NAT_LOCAL is not set CONFIG_IP_NF_NAT_SNMP_BASIC=m CONFIG_IP_NF_NAT_IRC=m CONFIG_IP_NF_NAT_FTP=m CONFIG_IP_NF_MANGLE=m CONFIG_IP_NF_TARGET_TOS=m CONFIG_IP_NF_TARGET_ECN=m CONFIG_IP_NF_TARGET_DSCP=m CONFIG_IP_NF_TARGET_MARK=m CONFIG_IP_NF_TARGET_LOG=m CONFIG_IP_NF_TARGET_ULOG=m CONFIG_IP_NF_TARGET_TCPMSS=m CONFIG_IP_NF_ARPTABLES=m CONFIG_IP_NF_ARPFILTER=m CONFIG_IP_NF_COMPAT_IPCHAINS=m CONFIG_IP_NF_COMPAT_IPFWADM=m # CONFIG_IPV6 is not set # # SCTP Configuration (EXPERIMENTAL) # CONFIG_IPV6_SCTP__=y # CONFIG_IP_SCTP is not set # CONFIG_ATM is not set CONFIG_VLAN_8021Q=m CONFIG_LLC=m CONFIG_LLC_UI=y CONFIG_IPX=m CONFIG_IPX_INTERN=y CONFIG_ATALK=m CONFIG_DEV_APPLETALK=y CONFIG_IPDDP=m CONFIG_IPDDP_ENCAP=y CONFIG_IPDDP_DECAP=y # CONFIG_DECNET is not set # CONFIG_BRIDGE is not set # CONFIG_X25 is not set CONFIG_LAPB=m # CONFIG_NET_DIVERT is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_FASTROUTE is not set CONFIG_NET_HW_FLOWCONTROL=y # # QoS and/or fair queueing # CONFIG_NET_SCHED=y CONFIG_NET_SCH_CBQ=m CONFIG_NET_SCH_HTB=m CONFIG_NET_SCH_CSZ=m CONFIG_NET_SCH_PRIO=m CONFIG_NET_SCH_RED=m CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m CONFIG_NET_SCH_INGRESS=m CONFIG_NET_QOS=y CONFIG_NET_ESTIMATOR=y CONFIG_NET_CLS=y CONFIG_NET_CLS_TCINDEX=m CONFIG_NET_CLS_ROUTE4=m CONFIG_NET_CLS_ROUTE=y CONFIG_NET_CLS_FW=m CONFIG_NET_CLS_U32=m CONFIG_NET_CLS_RSVP=m CONFIG_NET_CLS_RSVP6=m # CONFIG_NET_CLS_POLICE is not set # # Network testing # # CONFIG_NET_PKTGEN is not set CONFIG_NETDEVICES=y # # ARCnet devices # # CONFIG_ARCNET is not set CONFIG_DUMMY=m # CONFIG_BONDING is not set CONFIG_EQUALIZER=m CONFIG_TUN=m # CONFIG_ETHERTAP is not set # CONFIG_NET_SB1000 is not set # # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y # CONFIG_MII is not set # CONFIG_HAPPYMEAL is not set # CONFIG_SUNGEM is not set CONFIG_NET_VENDOR_3COM=y CONFIG_VORTEX=m # CONFIG_TYPHOON is not set # # Tulip family network device support # # CONFIG_NET_TULIP is not set # CONFIG_HP100 is not set CONFIG_NET_PCI=y # CONFIG_PCNET32 is not set # CONFIG_AMD8111_ETH is not set # CONFIG_ADAPTEC_STARFIRE is not set # CONFIG_B44 is not set # CONFIG_DGRS is not set # CONFIG_EEPRO100 is not set # CONFIG_E100 is not set # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set # CONFIG_NE2K_PCI is not set CONFIG_8139CP=m CONFIG_8139TOO=m # CONFIG_8139TOO_PIO is not set CONFIG_8139TOO_TUNE_TWISTER=y CONFIG_8139TOO_8129=y # CONFIG_8139_OLD_RX_RESET is not set # CONFIG_SIS900 is not set # CONFIG_EPIC100 is not set # CONFIG_SUNDANCE is not set # CONFIG_TLAN is not set CONFIG_VIA_RHINE=m # CONFIG_VIA_RHINE_MMIO is not set # # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set # CONFIG_DL2K is not set # CONFIG_E1000 is not set # CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set # CONFIG_SK98LIN is not set # CONFIG_TIGON3 is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set CONFIG_PLIP=m CONFIG_PPP=m CONFIG_PPP_MULTILINK=y CONFIG_PPP_FILTER=y CONFIG_PPP_ASYNC=m CONFIG_PPP_SYNC_TTY=m CONFIG_PPP_DEFLATE=m CONFIG_PPP_BSDCOMP=m CONFIG_PPPOE=m # CONFIG_SLIP is not set # # Wireless LAN (non-hamradio) # # CONFIG_NET_RADIO is not set # # Token Ring devices (depends on LLC=y) # # CONFIG_RCPCI is not set # CONFIG_SHAPER is not set # # Wan interfaces # # CONFIG_WAN is not set # # Amateur Radio support # # CONFIG_HAMRADIO is not set # # IrDA (infrared) support # # CONFIG_IRDA is not set # # ISDN subsystem # # CONFIG_ISDN_BOOL is not set # # Telephony Support # # CONFIG_PHONE is not set # # Input device support # CONFIG_INPUT=y # # Userland interfaces # CONFIG_INPUT_MOUSEDEV=y CONFIG_INPUT_MOUSEDEV_PSAUX=y CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 CONFIG_INPUT_JOYDEV=m CONFIG_INPUT_TSDEV=m CONFIG_INPUT_TSDEV_SCREEN_X=240 CONFIG_INPUT_TSDEV_SCREEN_Y=320 CONFIG_INPUT_EVDEV=y # CONFIG_INPUT_EVBUG is not set # # Input I/O drivers # # CONFIG_GAMEPORT is not set CONFIG_SOUND_GAMEPORT=y CONFIG_SERIO=y CONFIG_SERIO_I8042=y CONFIG_SERIO_SERPORT=y CONFIG_SERIO_CT82C710=y CONFIG_SERIO_PARKBD=m # # Input Device Drivers # CONFIG_INPUT_KEYBOARD=y CONFIG_KEYBOARD_ATKBD=y # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_XTKBD is not set # CONFIG_KEYBOARD_NEWTON is not set CONFIG_INPUT_MOUSE=y CONFIG_MOUSE_PS2=y # CONFIG_MOUSE_SERIAL is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set CONFIG_INPUT_MISC=y CONFIG_INPUT_PCSPKR=m CONFIG_INPUT_UINPUT=m # # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_HW_CONSOLE=y # CONFIG_SERIAL_NONSTANDARD is not set # # Serial drivers # CONFIG_SERIAL_8250=y # CONFIG_SERIAL_8250_CONSOLE is not set # CONFIG_SERIAL_8250_EXTENDED is not set # # Non-8250 serial port support # CONFIG_SERIAL_CORE=y CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTY_COUNT=256 CONFIG_PRINTER=m # CONFIG_LP_CONSOLE is not set # CONFIG_PPDEV is not set # CONFIG_TIPAR is not set # # I2C support # CONFIG_I2C=m CONFIG_I2C_ALGOBIT=m CONFIG_I2C_PHILIPSPAR=m CONFIG_I2C_ELV=m CONFIG_I2C_VELLEMAN=m CONFIG_SCx200_ACB=m CONFIG_I2C_ALGOPCF=m CONFIG_I2C_ELEKTOR=m CONFIG_I2C_CHARDEV=m CONFIG_I2C_PROC=m # # I2C Hardware Sensors Mainboard support # CONFIG_I2C_AMD756=m CONFIG_I2C_AMD8111=m # # I2C Hardware Sensors Chip support # CONFIG_SENSORS_ADM1021=m CONFIG_SENSORS_LM75=m # # Mice # CONFIG_BUSMOUSE=m # CONFIG_QIC02_TAPE is not set # # IPMI # CONFIG_IPMI_HANDLER=m # CONFIG_IPMI_PANIC_EVENT is not set CONFIG_IPMI_DEVICE_INTERFACE=m CONFIG_IPMI_KCS=m CONFIG_IPMI_WATCHDOG=m # # Watchdog Cards # CONFIG_WATCHDOG=y # CONFIG_WATCHDOG_NOWAYOUT is not set CONFIG_SOFT_WATCHDOG=m CONFIG_WDT=m CONFIG_WDTPCI=m # CONFIG_WDT_501 is not set # CONFIG_PCWATCHDOG is not set # CONFIG_ACQUIRE_WDT is not set # CONFIG_ADVANTECH_WDT is not set # CONFIG_EUROTECH_WDT is not set # CONFIG_IB700_WDT is not set # CONFIG_I810_TCO is not set # CONFIG_MIXCOMWD is not set # CONFIG_SCx200_WDT is not set # CONFIG_60XX_WDT is not set # CONFIG_W83877F_WDT is not set # CONFIG_MACHZ_WDT is not set # CONFIG_SC520_WDT is not set # CONFIG_AMD7XX_TCO is not set # CONFIG_ALIM7101_WDT is not set # CONFIG_SC1200_WDT is not set # CONFIG_WAFER_WDT is not set # CONFIG_CPU5_WDT is not set CONFIG_INTEL_RNG=m CONFIG_AMD_RNG=m CONFIG_NVRAM=m CONFIG_RTC=y # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver # # CONFIG_FTAPE is not set CONFIG_AGP=m CONFIG_AGP3=y CONFIG_AGP_INTEL=m CONFIG_AGP_VIA=m CONFIG_AGP_AMD=m CONFIG_AGP_SIS=m CONFIG_AGP_ALI=m CONFIG_AGP_SWORKS=m CONFIG_AGP_AMD_8151=m CONFIG_AGP_I7505=m CONFIG_DRM=y CONFIG_DRM_TDFX=m CONFIG_DRM_R128=m CONFIG_DRM_RADEON=m CONFIG_DRM_I810=m CONFIG_DRM_I830=m CONFIG_DRM_MGA=m # CONFIG_MWAVE is not set CONFIG_RAW_DRIVER=y CONFIG_HANGCHECK_TIMER=y # # Multimedia devices # # CONFIG_VIDEO_DEV is not set # # File systems # CONFIG_QUOTA=y CONFIG_QFMT_V1=m CONFIG_QFMT_V2=m CONFIG_QUOTACTL=y CONFIG_AUTOFS_FS=m CONFIG_AUTOFS4_FS=m CONFIG_REISERFS_FS=y # CONFIG_REISERFS_CHECK is not set CONFIG_REISERFS_PROC_INFO=y # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set CONFIG_EXT3_FS=m CONFIG_EXT3_FS_XATTR=y CONFIG_EXT3_FS_POSIX_ACL=y CONFIG_JBD=y CONFIG_JBD_DEBUG=y CONFIG_FAT_FS=m CONFIG_MSDOS_FS=m CONFIG_VFAT_FS=m # CONFIG_EFS_FS is not set # CONFIG_CRAMFS is not set CONFIG_TMPFS=y CONFIG_RAMFS=y CONFIG_ISO9660_FS=m CONFIG_JOLIET=y CONFIG_ZISOFS=y CONFIG_JFS_FS=m CONFIG_JFS_POSIX_ACL=y # CONFIG_JFS_DEBUG is not set CONFIG_JFS_STATISTICS=y CONFIG_MINIX_FS=m # CONFIG_VXFS_FS is not set CONFIG_NTFS_FS=m # CONFIG_NTFS_DEBUG is not set # CONFIG_NTFS_RW is not set # CONFIG_HPFS_FS is not set CONFIG_PROC_FS=y # CONFIG_DEVFS_FS is not set CONFIG_DEVPTS_FS=y # CONFIG_QNX4FS_FS is not set CONFIG_ROMFS_FS=m CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y CONFIG_EXT2_FS_POSIX_ACL=y # CONFIG_SYSV_FS is not set CONFIG_UDF_FS=m # CONFIG_UFS_FS is not set # CONFIG_XFS_FS is not set # # Network File Systems # CONFIG_CODA_FS=m # CONFIG_INTERMEZZO_FS is not set CONFIG_NFS_FS=m CONFIG_NFS_V3=y CONFIG_NFS_V4=y CONFIG_NFSD=m CONFIG_NFSD_V3=y CONFIG_NFSD_V4=y CONFIG_NFSD_TCP=y CONFIG_SUNRPC=m CONFIG_SUNRPC_GSS=m CONFIG_LOCKD=m CONFIG_LOCKD_V4=y CONFIG_EXPORTFS=m CONFIG_CIFS=m CONFIG_SMB_FS=m CONFIG_SMB_NLS_DEFAULT=y CONFIG_SMB_NLS_REMOTE="cp437" # CONFIG_NCP_FS is not set # CONFIG_AFS_FS is not set CONFIG_ZISOFS_FS=m CONFIG_FS_MBCACHE=y CONFIG_FS_POSIX_ACL=y # # Partition Types # CONFIG_PARTITION_ADVANCED=y CONFIG_ACORN_PARTITION=y CONFIG_ACORN_PARTITION_ICS=y CONFIG_ACORN_PARTITION_ADFS=y CONFIG_ACORN_PARTITION_POWERTEC=y CONFIG_ACORN_PARTITION_RISCIX=y CONFIG_OSF_PARTITION=y CONFIG_AMIGA_PARTITION=y CONFIG_ATARI_PARTITION=y CONFIG_MAC_PARTITION=y CONFIG_MSDOS_PARTITION=y CONFIG_BSD_DISKLABEL=y CONFIG_MINIX_SUBPARTITION=y CONFIG_SOLARIS_X86_PARTITION=y CONFIG_UNIXWARE_DISKLABEL=y CONFIG_LDM_PARTITION=y CONFIG_LDM_DEBUG=y CONFIG_SGI_PARTITION=y CONFIG_ULTRIX_PARTITION=y CONFIG_SUN_PARTITION=y CONFIG_EFI_PARTITION=y CONFIG_SMB_NLS=y CONFIG_NLS=y # # Native Language Support # CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_CODEPAGE_437=y # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_775 is not set # CONFIG_NLS_CODEPAGE_850 is not set # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_857 is not set # CONFIG_NLS_CODEPAGE_860 is not set # CONFIG_NLS_CODEPAGE_861 is not set # CONFIG_NLS_CODEPAGE_862 is not set # CONFIG_NLS_CODEPAGE_863 is not set # CONFIG_NLS_CODEPAGE_864 is not set # CONFIG_NLS_CODEPAGE_865 is not set # CONFIG_NLS_CODEPAGE_866 is not set # CONFIG_NLS_CODEPAGE_869 is not set # CONFIG_NLS_CODEPAGE_936 is not set # CONFIG_NLS_CODEPAGE_950 is not set # CONFIG_NLS_CODEPAGE_932 is not set # CONFIG_NLS_CODEPAGE_949 is not set # CONFIG_NLS_CODEPAGE_874 is not set # CONFIG_NLS_ISO8859_8 is not set # CONFIG_NLS_CODEPAGE_1250 is not set # CONFIG_NLS_CODEPAGE_1251 is not set CONFIG_NLS_ISO8859_1=y # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_4 is not set # CONFIG_NLS_ISO8859_5 is not set # CONFIG_NLS_ISO8859_6 is not set # CONFIG_NLS_ISO8859_7 is not set # CONFIG_NLS_ISO8859_9 is not set # CONFIG_NLS_ISO8859_13 is not set # CONFIG_NLS_ISO8859_14 is not set # CONFIG_NLS_ISO8859_15 is not set # CONFIG_NLS_KOI8_R is not set # CONFIG_NLS_KOI8_U is not set # CONFIG_NLS_UTF8 is not set # # Graphics support # CONFIG_FB=y # CONFIG_FB_CLGEN is not set # CONFIG_FB_PM2 is not set # CONFIG_FB_CYBER2000 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB_VGA16 is not set CONFIG_FB_VESA=y CONFIG_VIDEO_SELECT=y # CONFIG_FB_HGA is not set # CONFIG_FB_RIVA is not set # CONFIG_FB_I810 is not set # CONFIG_FB_MATROX is not set # CONFIG_FB_RADEON is not set # CONFIG_FB_ATY128 is not set # CONFIG_FB_ATY is not set # CONFIG_FB_SIS is not set # CONFIG_FB_NEOMAGIC is not set # CONFIG_FB_3DFX is not set # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_TRIDENT is not set # CONFIG_FB_PM3 is not set # CONFIG_FB_VIRTUAL is not set # # Console display driver support # CONFIG_VGA_CONSOLE=y # CONFIG_MDA_CONSOLE is not set CONFIG_DUMMY_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_PCI_CONSOLE=y CONFIG_FBCON_ADVANCED=y CONFIG_FONT_SUN8x16=y # CONFIG_FONT_SUN12x22 is not set CONFIG_FONTS=y # CONFIG_FONT_8x8 is not set # CONFIG_FONT_8x16 is not set # CONFIG_FONT_6x11 is not set # CONFIG_FONT_PEARL_8x8 is not set # CONFIG_FONT_ACORN_8x8 is not set # CONFIG_FONT_MINI_4x6 is not set # # Sound # CONFIG_SOUND=y # # Advanced Linux Sound Architecture # CONFIG_SND=m CONFIG_SND_SEQUENCER=m # CONFIG_SND_SEQ_DUMMY is not set CONFIG_SND_OSSEMUL=y CONFIG_SND_MIXER_OSS=m CONFIG_SND_PCM_OSS=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_RTCTIMER=m CONFIG_SND_VERBOSE_PRINTK=y # CONFIG_SND_DEBUG is not set # # Generic devices # CONFIG_SND_DUMMY=m CONFIG_SND_VIRMIDI=m CONFIG_SND_MTPAV=m CONFIG_SND_SERIAL_U16550=m CONFIG_SND_MPU401=m # # PCI devices # # CONFIG_SND_ALI5451 is not set # CONFIG_SND_CS46XX is not set # CONFIG_SND_CS4281 is not set CONFIG_SND_EMU10K1=m # CONFIG_SND_KORG1212 is not set # CONFIG_SND_NM256 is not set # CONFIG_SND_RME32 is not set # CONFIG_SND_RME96 is not set # CONFIG_SND_RME9652 is not set # CONFIG_SND_HDSP is not set # CONFIG_SND_TRIDENT is not set # CONFIG_SND_YMFPCI is not set # CONFIG_SND_ALS4000 is not set # CONFIG_SND_CMIPCI is not set # CONFIG_SND_ENS1370 is not set # CONFIG_SND_ENS1371 is not set # CONFIG_SND_ES1938 is not set # CONFIG_SND_ES1968 is not set # CONFIG_SND_MAESTRO3 is not set # CONFIG_SND_FM801 is not set # CONFIG_SND_ICE1712 is not set # CONFIG_SND_INTEL8X0 is not set # CONFIG_SND_SONICVIBES is not set CONFIG_SND_VIA82XX=m # # ALSA USB devices # # CONFIG_SND_USB_AUDIO is not set # # Open Sound System # # CONFIG_SOUND_PRIME is not set # # USB support # CONFIG_USB=y CONFIG_USB_DEBUG=y # # Miscellaneous USB options # CONFIG_USB_DEVICEFS=y CONFIG_USB_BANDWIDTH=y CONFIG_USB_DYNAMIC_MINORS=y # # USB Host Controller Drivers # CONFIG_USB_EHCI_HCD=m CONFIG_USB_OHCI_HCD=m CONFIG_USB_UHCI_HCD=m # # USB Device Class drivers # CONFIG_USB_AUDIO=m CONFIG_USB_BLUETOOTH_TTY=m CONFIG_USB_MIDI=m CONFIG_USB_ACM=m CONFIG_USB_PRINTER=m # # SCSI support is needed for USB Storage # # # USB Human Interface Devices (HID) # CONFIG_USB_HID=m CONFIG_USB_HIDINPUT=y # CONFIG_HID_FF is not set CONFIG_USB_HIDDEV=y # # USB HID Boot Protocol drivers # CONFIG_USB_KBD=m CONFIG_USB_MOUSE=m # CONFIG_USB_AIPTEK is not set # CONFIG_USB_WACOM is not set # CONFIG_USB_KBTAB is not set # CONFIG_USB_POWERMATE is not set # CONFIG_USB_XPAD is not set # # USB Imaging devices # CONFIG_USB_MDC800=m CONFIG_USB_SCANNER=m # # USB Multimedia devices # CONFIG_USB_DABUSB=m # # Video4Linux support is needed for USB Multimedia device support # # # USB Network adaptors # CONFIG_USB_CATC=m CONFIG_USB_CDCETHER=m CONFIG_USB_KAWETH=m CONFIG_USB_PEGASUS=m CONFIG_USB_RTL8150=m CONFIG_USB_USBNET=m # # USB port drivers # CONFIG_USB_USS720=m # # USB Serial Converter support # # CONFIG_USB_SERIAL is not set # # USB Miscellaneous drivers # CONFIG_USB_EMI26=m CONFIG_USB_TIGL=m CONFIG_USB_AUERSWALD=m CONFIG_USB_RIO500=m CONFIG_USB_BRLVGER=m CONFIG_USB_LCD=m CONFIG_USB_TEST=m # # Bluetooth support # # CONFIG_BT is not set # # Profiling support # # CONFIG_PROFILING is not set # # Kernel hacking # CONFIG_DEBUG_KERNEL=y # CONFIG_DEBUG_STACKOVERFLOW is not set # CONFIG_DEBUG_SLAB is not set # CONFIG_X86_REMOTE_DEBUG is not set # CONFIG_DEBUG_IOVIRT is not set CONFIG_MAGIC_SYSRQ=y # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_HIGHMEM is not set CONFIG_KALLSYMS=y # CONFIG_DEBUG_SPINLOCK_SLEEP is not set # CONFIG_FRAME_POINTER is not set CONFIG_X86_EXTRA_IRQS=y CONFIG_X86_FIND_SMP_CONFIG=y CONFIG_X86_MPPARSE=y # # Security options # # CONFIG_SECURITY is not set # # Cryptographic options # # CONFIG_CRYPTO is not set # # Library routines # # CONFIG_CRC32 is not set CONFIG_ZLIB_INFLATE=m CONFIG_ZLIB_DEFLATE=m CONFIG_X86_BIOS_REBOOT=y ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: 2.5.64-mm2 2003-03-08 4:01 ` 2.5.64-mm2 Shawn @ 2003-03-08 4:22 ` Robert Love 2003-03-08 13:59 ` 2.5.64-mm2 Shawn 0 siblings, 1 reply; 13+ messages in thread From: Robert Love @ 2003-03-08 4:22 UTC (permalink / raw) To: Shawn, Andrew Morton; +Cc: linux-kernel, linux-mm On Fri, 2003-03-07 at 23:01, Shawn wrote: > Here's my .config. I am not SMP. > > I suspected the distclean thing, but I made "Mr. Proper" too just in > case. Oh. Its those damn modules. The bane of my existence. Problem is, ksyms.c is exporting kernel_flag under PREEMPT. Now we just need it exported under SMP. Andrew, would you mind appending this to the current patch? Sorry. Everyone else, you need this if you are UP+PREEMPT+MODULES. Robert Love kernel/ksyms.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -urN linux-2.5.64-mm2/kernel/ksyms.c linux/kernel/ksyms.c --- linux-2.5.64-mm2/kernel/ksyms.c 2003-03-07 22:08:04.000000000 -0500 +++ linux/kernel/ksyms.c 2003-03-07 23:19:32.098500176 -0500 @@ -488,7 +488,7 @@ #if CONFIG_SMP EXPORT_SYMBOL_GPL(set_cpus_allowed); #endif -#if CONFIG_SMP || CONFIG_PREEMPT +#if CONFIG_SMP EXPORT_SYMBOL(kernel_flag); #endif EXPORT_SYMBOL(jiffies); -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: 2.5.64-mm2 2003-03-08 4:22 ` 2.5.64-mm2 Robert Love @ 2003-03-08 13:59 ` Shawn 2003-03-08 14:45 ` 2.5.64-mm2 Shawn 0 siblings, 1 reply; 13+ messages in thread From: Shawn @ 2003-03-08 13:59 UTC (permalink / raw) To: Robert Love; +Cc: Andrew Morton, linux-kernel, linux-mm Now I oops on boot justt when it trys to mount root (reiserfs), unfortunately, I cannot page up to see the oops text. I'll try booting with vesa fbcon to see if I can't see more. On Fri, 2003-03-07 at 22:22, Robert Love wrote: > On Fri, 2003-03-07 at 23:01, Shawn wrote: > > Here's my .config. I am not SMP. > > > > I suspected the distclean thing, but I made "Mr. Proper" too just in > > case. > > Oh. Its those damn modules. The bane of my existence. > > Problem is, ksyms.c is exporting kernel_flag under PREEMPT. Now we just > need it exported under SMP. > > Andrew, would you mind appending this to the current patch? Sorry. > > Everyone else, you need this if you are UP+PREEMPT+MODULES. > > Robert Love > > > kernel/ksyms.c | 2 +- > 1 files changed, 1 insertion(+), 1 deletion(-) > > > diff -urN linux-2.5.64-mm2/kernel/ksyms.c linux/kernel/ksyms.c > --- linux-2.5.64-mm2/kernel/ksyms.c 2003-03-07 22:08:04.000000000 -0500 > +++ linux/kernel/ksyms.c 2003-03-07 23:19:32.098500176 -0500 > @@ -488,7 +488,7 @@ > #if CONFIG_SMP > EXPORT_SYMBOL_GPL(set_cpus_allowed); > #endif > -#if CONFIG_SMP || CONFIG_PREEMPT > +#if CONFIG_SMP > EXPORT_SYMBOL(kernel_flag); > #endif > EXPORT_SYMBOL(jiffies); > > > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: 2.5.64-mm2 2003-03-08 13:59 ` 2.5.64-mm2 Shawn @ 2003-03-08 14:45 ` Shawn 2003-03-08 19:49 ` 2.5.64-mm2 Robert Love 0 siblings, 1 reply; 13+ messages in thread From: Shawn @ 2003-03-08 14:45 UTC (permalink / raw) To: Robert Love; +Cc: Andrew Morton, linux-kernel, linux-mm Eliminate initrd (eliminate using it, not support for it) and oops goes away. Weird. On Sat, 2003-03-08 at 07:59, Shawn wrote: > Now I oops on boot justt when it trys to mount root (reiserfs), > unfortunately, I cannot page up to see the oops text. > > I'll try booting with vesa fbcon to see if I can't see more. > > On Fri, 2003-03-07 at 22:22, Robert Love wrote: > > On Fri, 2003-03-07 at 23:01, Shawn wrote: > > > Here's my .config. I am not SMP. > > > > > > I suspected the distclean thing, but I made "Mr. Proper" too just in > > > case. > > > > Oh. Its those damn modules. The bane of my existence. > > > > Problem is, ksyms.c is exporting kernel_flag under PREEMPT. Now we just > > need it exported under SMP. > > > > Andrew, would you mind appending this to the current patch? Sorry. > > > > Everyone else, you need this if you are UP+PREEMPT+MODULES. > > > > Robert Love > > > > > > kernel/ksyms.c | 2 +- > > 1 files changed, 1 insertion(+), 1 deletion(-) > > > > > > diff -urN linux-2.5.64-mm2/kernel/ksyms.c linux/kernel/ksyms.c > > --- linux-2.5.64-mm2/kernel/ksyms.c 2003-03-07 22:08:04.000000000 -0500 > > +++ linux/kernel/ksyms.c 2003-03-07 23:19:32.098500176 -0500 > > @@ -488,7 +488,7 @@ > > #if CONFIG_SMP > > EXPORT_SYMBOL_GPL(set_cpus_allowed); > > #endif > > -#if CONFIG_SMP || CONFIG_PREEMPT > > +#if CONFIG_SMP > > EXPORT_SYMBOL(kernel_flag); > > #endif > > EXPORT_SYMBOL(jiffies); > > > > > > > - > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: 2.5.64-mm2 2003-03-08 14:45 ` 2.5.64-mm2 Shawn @ 2003-03-08 19:49 ` Robert Love 0 siblings, 0 replies; 13+ messages in thread From: Robert Love @ 2003-03-08 19:49 UTC (permalink / raw) To: Shawn; +Cc: Andrew Morton, linux-kernel, linux-mm On Sat, 2003-03-08 at 09:45, Shawn wrote: > Eliminate initrd (eliminate using it, not support for it) and oops goes > away. Weird. Almost certainly not related to the previous problem. Robert Love -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2003-03-09 2:18 UTC | newest] Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2003-03-08 2:51 2.5.64-mm2 Andrew Morton 2003-03-08 3:44 ` [patch] updated scheduler-tunables for 2.5.64-mm2 Robert Love 2003-03-08 3:50 ` Robert Love 2003-03-08 18:25 ` Martin J. Bligh 2003-03-09 1:54 ` Robert Love 2003-03-09 2:18 ` Martin J. Bligh 2003-03-08 3:49 ` 2.5.64-mm2 Shawn 2003-03-08 4:05 ` 2.5.64-mm2 Robert Love 2003-03-08 4:01 ` 2.5.64-mm2 Shawn 2003-03-08 4:22 ` 2.5.64-mm2 Robert Love 2003-03-08 13:59 ` 2.5.64-mm2 Shawn 2003-03-08 14:45 ` 2.5.64-mm2 Shawn 2003-03-08 19:49 ` 2.5.64-mm2 Robert Love
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox