diff --git a/debian/arch/ia64/config.itanium b/debian/arch/ia64/config.itanium index 7ba6069fb..715800ed9 100644 --- a/debian/arch/ia64/config.itanium +++ b/debian/arch/ia64/config.itanium @@ -1,18 +1,12 @@ -CONFIG_BROKEN_ON_SMP=y +CONFIG_LOCK_KERNEL=y +# CONFIG_CPUSETS is not set +CONFIG_STOP_MACHINE=y CONFIG_ITANIUM=y # CONFIG_MCKINLEY is not set CONFIG_IA64_BRL_EMU=y CONFIG_IA64_L1_CACHE_SHIFT=6 -# CONFIG_SMP is not set -# CONFIG_MTD_XIP is not set -# CONFIG_MKISS is not set -# CONFIG_IRPORT_SIR is not set -# CONFIG_PCMCIA_XIRTULIP is not set -# CONFIG_COMPUTONE is not set -# CONFIG_DIGIEPCA is not set -# CONFIG_MOXA_INTELLIO is not set -# CONFIG_RISCOM8 is not set -# CONFIG_RIO is not set -# CONFIG_STALLION is not set -# CONFIG_ISTALLION is not set -# CONFIG_USB_SERIAL_WHITEHEAT is not set +CONFIG_SMP=y +CONFIG_NR_CPUS=64 +# CONFIG_HOTPLUG_CPU is not set +# CONFIG_SCHED_SMT is not set +CONFIG_HAVE_DEC_LOCK=y diff --git a/debian/arch/ia64/config.mckinley b/debian/arch/ia64/config.mckinley index 8545d46e2..2e657e4c3 100644 --- a/debian/arch/ia64/config.mckinley +++ b/debian/arch/ia64/config.mckinley @@ -1,17 +1,11 @@ -CONFIG_BROKEN_ON_SMP=y +CONFIG_LOCK_KERNEL=y +# CONFIG_CPUSETS is not set +CONFIG_STOP_MACHINE=y # CONFIG_ITANIUM is not set CONFIG_MCKINLEY=y CONFIG_IA64_L1_CACHE_SHIFT=7 -# CONFIG_SMP is not set -# CONFIG_MTD_XIP is not set -# CONFIG_MKISS is not set -# CONFIG_IRPORT_SIR is not set -# CONFIG_PCMCIA_XIRTULIP is not set -# CONFIG_COMPUTONE is not set -# CONFIG_DIGIEPCA is not set -# CONFIG_MOXA_INTELLIO is not set -# CONFIG_RISCOM8 is not set -# CONFIG_RIO is not set -# CONFIG_STALLION is not set -# CONFIG_ISTALLION is not set -# CONFIG_USB_SERIAL_WHITEHEAT is not set +CONFIG_SMP=y +CONFIG_NR_CPUS=64 +# CONFIG_HOTPLUG_CPU is not set +# CONFIG_SCHED_SMT is not set +CONFIG_HAVE_DEC_LOCK=y diff --git a/debian/changelog b/debian/changelog index 0f139df9d..fbe36ea5a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -100,8 +100,14 @@ linux-2.6 (2.6.13-1) UNRELEASED; urgency=low [ dann frazier ] * Add a note to README.Debian that explains where users can find the .config files used to generate the linux-image packages. Closes: #316809 + * [ia64] Workaround #325070 until upstream works out an acceptable solution. + This bug breaks module loading on non-SMP ia64 kernels. The workaround + is to temporarily use an SMP config for the non-SMP kernels. (Note that + John Wright is running benchmarks to determine the overhead of running + an SMP kernel on UP systems to help decide if this should be a + permanent change). - -- dann frazier Tue, 27 Sep 2005 22:57:24 -0600 + -- dann frazier Wed, 5 Oct 2005 15:17:05 -0600 linux-2.6 (2.6.12-6) unstable; urgency=high diff --git a/debian/patches-debian/mempolicy-check-mode.patch b/debian/patches-debian/mempolicy-check-mode.patch new file mode 100644 index 000000000..4b14fc001 --- /dev/null +++ b/debian/patches-debian/mempolicy-check-mode.patch @@ -0,0 +1,33 @@ +diff -Naru a/mm/mempolicy.c b/mm/mempolicy.c +--- a/mm/mempolicy.c 2005-09-27 13:25:44 -07:00 ++++ b/mm/mempolicy.c 2005-09-27 13:25:44 -07:00 +@@ -443,7 +443,7 @@ + struct mempolicy *new; + DECLARE_BITMAP(nodes, MAX_NUMNODES); + +- if (mode > MPOL_MAX) ++ if (mode < 0 || mode > MPOL_MAX) + return -EINVAL; + err = get_nodes(nodes, nmask, maxnode, mode); + if (err) +# This is a BitKeeper generated diff -Nru style patch. +# +# ChangeSet +# 2005/08/01 21:38:00-07:00 dada1@cosmosbay.com +# [PATCH] sys_set_mempolicy() doesnt check if mode < 0 +# +# A kernel BUG() is triggered by a call to set_mempolicy() with a negative +# first argument. This is because the mode is declared as an int, and the +# validity check doesnt check < 0 values. Alternatively, mode could be +# declared as unsigned int or unsigned long. +# +# Signed-off-by: Eric Dumazet +# Cc: Andi Kleen +# Signed-off-by: Andrew Morton +# Signed-off-by: Linus Torvalds +# +# GIT: ba17101b41977f124948e0a7797fdcbb59e19f3e +# +# mm/mempolicy.c +# 2005/08/01 21:38:00-07:00 dada1@cosmosbay.com +1 -1 +#