r3933 - in people/waldi/kernel/source/linux-2.6: . debian
debian/arch/ia64 debian/arch/powerpc debian/bin
debian/patches-debian debian/patches-debian/series debian/templates
Bastian Blank
waldi at costa.debian.org
Tue Aug 16 16:56:16 UTC 2005
Author: waldi
Date: 2005-08-16 16:56:13 +0000 (Tue, 16 Aug 2005)
New Revision: 3933
Added:
people/waldi/kernel/source/linux-2.6/debian/patches-debian/patch-2.6.12.5
people/waldi/kernel/source/linux-2.6/debian/patches-debian/powerpc-serial-of.patch
Removed:
people/waldi/kernel/source/linux-2.6/debian/patches-debian/security-keys-destructor-oops.patch
people/waldi/kernel/source/linux-2.6/debian/patches-debian/security-keys-session-join.patch
Modified:
people/waldi/kernel/source/linux-2.6/
people/waldi/kernel/source/linux-2.6/debian/
people/waldi/kernel/source/linux-2.6/debian/arch/ia64/defines
people/waldi/kernel/source/linux-2.6/debian/arch/powerpc/config.powerpc64
people/waldi/kernel/source/linux-2.6/debian/arch/powerpc/defines
people/waldi/kernel/source/linux-2.6/debian/bin/apply
people/waldi/kernel/source/linux-2.6/debian/changelog
people/waldi/kernel/source/linux-2.6/debian/patches-debian/series/2.6.12-3
people/waldi/kernel/source/linux-2.6/debian/rules.real
people/waldi/kernel/source/linux-2.6/debian/templates/control.extra.in
people/waldi/kernel/source/linux-2.6/debian/templates/control.source.in
Log:
Merge /trunk/kernel/source/linux-2.6.
Property changes on: people/waldi/kernel/source/linux-2.6
___________________________________________________________________
Name: svk:merge
- 510b9475-24dd-0310-9b6c-e0eefe99d49f:/trunk/kernel/source/linux-2.6:3871
+ 510b9475-24dd-0310-9b6c-e0eefe99d49f:/branches/kernel/source/linux-2.6/release-2.6.12-2:3782
510b9475-24dd-0310-9b6c-e0eefe99d49f:/trunk/kernel/source/linux-2.6:3932
Property changes on: people/waldi/kernel/source/linux-2.6/debian
___________________________________________________________________
Name: svk:merge
+
Modified: people/waldi/kernel/source/linux-2.6/debian/arch/ia64/defines
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/arch/ia64/defines 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/arch/ia64/defines 2005-08-16 16:56:13 UTC (rev 3933)
@@ -2,14 +2,14 @@
suggests: elilo, fdutils
[itanium]
-class: Itanium"
+class: Itanium
[itanium-smp]
-class: multi-processor Itanium"
+class: multi-processor Itanium
[mckinley]
-class: Itanium II"
+class: Itanium II
[mckinley-smp]
-class: multi-processor Itanium II"
+class: multi-processor Itanium II
Modified: people/waldi/kernel/source/linux-2.6/debian/arch/powerpc/config.powerpc64
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/arch/powerpc/config.powerpc64 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/arch/powerpc/config.powerpc64 2005-08-16 16:56:13 UTC (rev 3933)
@@ -60,5 +60,5 @@
# CONFIG_SND_POWERMAC is not set
CONFIG_STOP_MACHINE=y
CONFIG_SYSVIPC_COMPAT=y
-# CONFIG_THERM_PM72 is not set
+CONFIG_THERM_PM72=y
CONFIG_U3_DART=y
Modified: people/waldi/kernel/source/linux-2.6/debian/arch/powerpc/defines
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/arch/powerpc/defines 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/arch/powerpc/defines 2005-08-16 16:56:13 UTC (rev 3933)
@@ -1,4 +1,5 @@
[DEFAULT]
+kpkg-subarch: powerpc
[powerpc]
depends: mkvmlinuz (>= 13)
Modified: people/waldi/kernel/source/linux-2.6/debian/bin/apply
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/bin/apply 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/bin/apply 2005-08-16 16:56:13 UTC (rev 3933)
@@ -40,7 +40,7 @@
apply_patch() {
patch=$(find_patch $home/$1)
base=$1
- if uncompress_patch "$patch" | patch -p1 -f -s -t --no-backup-if-mismatch; then
+ if uncompress_patch "$patch" | patch -p1 --fuzz=1 -f -s -t --no-backup-if-mismatch; then
printf "%-${length}s\tOK (+)\n" "$base"
else
printf "%-${length}s\tFAIL (+)\n" "$base"
Modified: people/waldi/kernel/source/linux-2.6/debian/changelog
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/changelog 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/changelog 2005-08-16 16:56:13 UTC (rev 3933)
@@ -1,5 +1,28 @@
-linux-2.6 (2.6.12-3) UNRELEASED; urgency=low
+linux-2.6 (2.6.12-5) UNRELEASED; urgency=low
+ * Change ARM to use GCC 3.3 to avoid FTBFS errors with GCC 4
+ (dann frazier)
+
+ * Remove spurious double quote character from ia64 package descriptions.
+ (dann frazier)
+
+ * Add transitional meta packages (kernel-image-2.6-*) for ia64.
+ (dann frazier)
+
+ * Change fuzz factor to 1, stricter patch appliance. (Maximilian Attems)
+
+ * Enabled CONFIG_THERM_PM72 on powerpc64 flavour. (Sven Luther)
+
+ -- Sven Luther <luther at debian.org> Tue, 16 Aug 2005 18:50:03 +0200
+
+linux-2.6 (2.6.12-4) unstable; urgency=low
+
+ * Supply correct subarch values for the powerpc images.
+
+ -- Bastian Blank <waldi at debian.org> Mon, 15 Aug 2005 21:06:18 +0200
+
+linux-2.6 (2.6.12-3) unstable; urgency=low
+
* Added reference to old kernel-* package names to make
transition a little more obvious to end users.
A Dan Jacobson special. (Simon Horman) Closes: #321167
@@ -34,20 +57,23 @@
toolchain in sid. Many thanks go to GOTO Masanori and Matthias Klose as
well as any other who worked on the biarch toolchain to make this happen.
- * [security]
- security-keys-destructor-oops.patch
- Fix keyring destructor
- See CAN-2005-2099 (Simon Horman)
+ * Added 2.6.12.5 (Simon Horman)
+ - Fix BUG() is triggered by a call to set_mempolicy() with a negativ
+ first argument.
+ - [amd64] Fix a SRAT handling on systems with dual cores.
+ - [amd64] SMP timing problem
+ - [security] Zlib fixes See CAN-2005-2458, CAN-2005-2459
+ http://sources.redhat.com/ml/bug-gnu-utils/1999-06/msg00183.html
+ http://bugs.gentoo.org/show_bug.cgi
+ - Add zlib deflateBound()
+ - [security] Fix error during session join. See CAN-2005-2098
+ - [security] Fix keyring destructor. See CAN-2005-2099
+ - Module per-cpu alignment cannot always be met
+ http://www.ussg.iu.edu/hypermail/linux/kernel/0409.0/0768.html
Closes: #323039
- * [security]
- security-keys-session-join.patch
- Fix error during session join
- See CAN-2005-2098 (Simon Horman)
- Closes: #323039
+ -- Bastian Blank <waldi at debian.org> Mon, 15 Aug 2005 16:42:05 +0200
- -- Simon Horman <horms at debian.org> Mon, 15 Aug 2005 17:41:42 +0900
-
linux-2.6 (2.6.12-2) unstable; urgency=low
* The Kernel Team offers its condolences to the family of Jens Schmalzing
Added: people/waldi/kernel/source/linux-2.6/debian/patches-debian/patch-2.6.12.5
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/patches-debian/patch-2.6.12.5 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/patches-debian/patch-2.6.12.5 2005-08-16 16:56:13 UTC (rev 3933)
@@ -0,0 +1,352 @@
+diff --git a/arch/ppc64/boot/zlib.c b/arch/ppc64/boot/zlib.c
+--- a/arch/ppc64/boot/zlib.c
++++ b/arch/ppc64/boot/zlib.c
+@@ -1307,7 +1307,7 @@ local int huft_build(
+ {
+ *t = (inflate_huft *)Z_NULL;
+ *m = 0;
+- return Z_OK;
++ return Z_DATA_ERROR;
+ }
+
+
+@@ -1351,6 +1351,7 @@ local int huft_build(
+ if ((j = *p++) != 0)
+ v[x[j]++] = i;
+ } while (++i < n);
++ n = x[g]; /* set n to length of v */
+
+
+ /* Generate the Huffman codes and for each, make the table entries */
+diff --git a/arch/x86_64/kernel/setup.c b/arch/x86_64/kernel/setup.c
+--- a/arch/x86_64/kernel/setup.c
++++ b/arch/x86_64/kernel/setup.c
+@@ -729,8 +729,6 @@ static void __init amd_detect_cmp(struct
+ int cpu = smp_processor_id();
+ int node = 0;
+ unsigned bits;
+- if (c->x86_num_cores == 1)
+- return;
+
+ bits = 0;
+ while ((1 << bits) < c->x86_num_cores)
+diff --git a/arch/x86_64/kernel/smp.c b/arch/x86_64/kernel/smp.c
+--- a/arch/x86_64/kernel/smp.c
++++ b/arch/x86_64/kernel/smp.c
+@@ -284,6 +284,71 @@ struct call_data_struct {
+ static struct call_data_struct * call_data;
+
+ /*
++ * this function sends a 'generic call function' IPI to one other CPU
++ * in the system.
++ */
++static void __smp_call_function_single (int cpu, void (*func) (void *info), void *info,
++ int nonatomic, int wait)
++{
++ struct call_data_struct data;
++ int cpus = 1;
++
++ data.func = func;
++ data.info = info;
++ atomic_set(&data.started, 0);
++ data.wait = wait;
++ if (wait)
++ atomic_set(&data.finished, 0);
++
++ call_data = &data;
++ wmb();
++ /* Send a message to all other CPUs and wait for them to respond */
++ send_IPI_mask(cpumask_of_cpu(cpu), CALL_FUNCTION_VECTOR);
++
++ /* Wait for response */
++ while (atomic_read(&data.started) != cpus)
++ cpu_relax();
++
++ if (!wait)
++ return;
++
++ while (atomic_read(&data.finished) != cpus)
++ cpu_relax();
++}
++
++/*
++ * Run a function on another CPU
++ * <func> The function to run. This must be fast and non-blocking.
++ * <info> An arbitrary pointer to pass to the function.
++ * <nonatomic> Currently unused.
++ * <wait> If true, wait until function has completed on other CPUs.
++ * [RETURNS] 0 on success, else a negative status code.
++ *
++ * Does not return until the remote CPU is nearly ready to execute <func>
++ * or is or has executed.
++ */
++
++int smp_call_function_single (int cpu, void (*func) (void *info), void *info,
++ int nonatomic, int wait)
++{
++
++ int me = get_cpu(); /* prevent preemption and reschedule on another processor */
++
++ if (cpu == me) {
++ printk("%s: trying to call self\n", __func__);
++ put_cpu();
++ return -EBUSY;
++ }
++ spin_lock_bh(&call_lock);
++
++ __smp_call_function_single(cpu, func,info,nonatomic,wait);
++
++ spin_unlock_bh(&call_lock);
++ put_cpu();
++ return 0;
++}
++
++/*
+ * this function sends a 'generic call function' IPI to all other CPUs
+ * in the system.
+ */
+diff --git a/arch/x86_64/kernel/smpboot.c b/arch/x86_64/kernel/smpboot.c
+--- a/arch/x86_64/kernel/smpboot.c
++++ b/arch/x86_64/kernel/smpboot.c
+@@ -202,9 +202,6 @@ static __cpuinit void sync_master(void *
+ {
+ unsigned long flags, i;
+
+- if (smp_processor_id() != boot_cpu_id)
+- return;
+-
+ go[MASTER] = 0;
+
+ local_irq_save(flags);
+@@ -253,7 +250,7 @@ get_delta(long *rt, long *master)
+ return tcenter - best_tm;
+ }
+
+-static __cpuinit void sync_tsc(void)
++static __cpuinit void sync_tsc(unsigned int master)
+ {
+ int i, done = 0;
+ long delta, adj, adjust_latency = 0;
+@@ -267,9 +264,17 @@ static __cpuinit void sync_tsc(void)
+ } t[NUM_ROUNDS] __cpuinitdata;
+ #endif
+
++ printk(KERN_INFO "CPU %d: Syncing TSC to CPU %u.\n",
++ smp_processor_id(), master);
++
+ go[MASTER] = 1;
+
+- smp_call_function(sync_master, NULL, 1, 0);
++ /* It is dangerous to broadcast IPI as cpus are coming up,
++ * as they may not be ready to accept them. So since
++ * we only need to send the ipi to the boot cpu direct
++ * the message, and avoid the race.
++ */
++ smp_call_function_single(master, sync_master, NULL, 1, 0);
+
+ while (go[MASTER]) /* wait for master to be ready */
+ no_cpu_relax();
+@@ -313,16 +318,14 @@ static __cpuinit void sync_tsc(void)
+ printk(KERN_INFO
+ "CPU %d: synchronized TSC with CPU %u (last diff %ld cycles, "
+ "maxerr %lu cycles)\n",
+- smp_processor_id(), boot_cpu_id, delta, rt);
++ smp_processor_id(), master, delta, rt);
+ }
+
+ static void __cpuinit tsc_sync_wait(void)
+ {
+ if (notscsync || !cpu_has_tsc)
+ return;
+- printk(KERN_INFO "CPU %d: Syncing TSC to CPU %u.\n", smp_processor_id(),
+- boot_cpu_id);
+- sync_tsc();
++ sync_tsc(0);
+ }
+
+ static __init int notscsync_setup(char *s)
+diff --git a/fs/isofs/compress.c b/fs/isofs/compress.c
+--- a/fs/isofs/compress.c
++++ b/fs/isofs/compress.c
+@@ -129,8 +129,14 @@ static int zisofs_readpage(struct file *
+ cend = le32_to_cpu(*(__le32 *)(bh->b_data + (blockendptr & bufmask)));
+ brelse(bh);
+
++ if (cstart > cend)
++ goto eio;
++
+ csize = cend-cstart;
+
++ if (csize > deflateBound(1UL << zisofs_block_shift))
++ goto eio;
++
+ /* Now page[] contains an array of pages, any of which can be NULL,
+ and the locks on which we hold. We should now read the data and
+ release the pages. If the pages are NULL the decompressed data
+diff --git a/include/asm-x86_64/smp.h b/include/asm-x86_64/smp.h
+--- a/include/asm-x86_64/smp.h
++++ b/include/asm-x86_64/smp.h
+@@ -46,6 +46,8 @@ extern int pic_mode;
+ extern int smp_num_siblings;
+ extern void smp_flush_tlb(void);
+ extern void smp_message_irq(int cpl, void *dev_id, struct pt_regs *regs);
++extern int smp_call_function_single (int cpuid, void (*func) (void *info), void *info,
++ int retry, int wait);
+ extern void smp_send_reschedule(int cpu);
+ extern void smp_invalidate_rcv(void); /* Process an NMI */
+ extern void zap_low_mappings(void);
+diff --git a/include/linux/zlib.h b/include/linux/zlib.h
+--- a/include/linux/zlib.h
++++ b/include/linux/zlib.h
+@@ -506,6 +506,11 @@ extern int zlib_deflateReset (z_streamp
+ stream state was inconsistent (such as zalloc or state being NULL).
+ */
+
++static inline unsigned long deflateBound(unsigned long s)
++{
++ return s + ((s + 7) >> 3) + ((s + 63) >> 6) + 11;
++}
++
+ extern int zlib_deflateParams (z_streamp strm, int level, int strategy);
+ /*
+ Dynamically update the compression level and compression strategy. The
+diff --git a/kernel/module.c b/kernel/module.c
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -249,13 +249,18 @@ static inline unsigned int block_size(in
+ /* Created by linker magic */
+ extern char __per_cpu_start[], __per_cpu_end[];
+
+-static void *percpu_modalloc(unsigned long size, unsigned long align)
++static void *percpu_modalloc(unsigned long size, unsigned long align,
++ const char *name)
+ {
+ unsigned long extra;
+ unsigned int i;
+ void *ptr;
+
+- BUG_ON(align > SMP_CACHE_BYTES);
++ if (align > SMP_CACHE_BYTES) {
++ printk(KERN_WARNING "%s: per-cpu alignment %li > %i\n",
++ name, align, SMP_CACHE_BYTES);
++ align = SMP_CACHE_BYTES;
++ }
+
+ ptr = __per_cpu_start;
+ for (i = 0; i < pcpu_num_used; ptr += block_size(pcpu_size[i]), i++) {
+@@ -347,7 +352,8 @@ static int percpu_modinit(void)
+ }
+ __initcall(percpu_modinit);
+ #else /* ... !CONFIG_SMP */
+-static inline void *percpu_modalloc(unsigned long size, unsigned long align)
++static inline void *percpu_modalloc(unsigned long size, unsigned long align,
++ const char *name)
+ {
+ return NULL;
+ }
+@@ -1554,7 +1560,8 @@ static struct module *load_module(void _
+ if (pcpuindex) {
+ /* We have a special allocation for this section. */
+ percpu = percpu_modalloc(sechdrs[pcpuindex].sh_size,
+- sechdrs[pcpuindex].sh_addralign);
++ sechdrs[pcpuindex].sh_addralign,
++ mod->name);
+ if (!percpu) {
+ err = -ENOMEM;
+ goto free_mod;
+diff --git a/lib/inflate.c b/lib/inflate.c
+--- a/lib/inflate.c
++++ b/lib/inflate.c
+@@ -326,7 +326,7 @@ DEBG("huft1 ");
+ {
+ *t = (struct huft *)NULL;
+ *m = 0;
+- return 0;
++ return 2;
+ }
+
+ DEBG("huft2 ");
+@@ -374,6 +374,7 @@ DEBG("huft5 ");
+ if ((j = *p++) != 0)
+ v[x[j]++] = i;
+ } while (++i < n);
++ n = x[g]; /* set n to length of v */
+
+ DEBG("h6 ");
+
+@@ -410,12 +411,13 @@ DEBG1("1 ");
+ DEBG1("2 ");
+ f -= a + 1; /* deduct codes from patterns left */
+ xp = c + k;
+- while (++j < z) /* try smaller tables up to z bits */
+- {
+- if ((f <<= 1) <= *++xp)
+- break; /* enough codes to use up j bits */
+- f -= *xp; /* else deduct codes from patterns */
+- }
++ if (j < z)
++ while (++j < z) /* try smaller tables up to z bits */
++ {
++ if ((f <<= 1) <= *++xp)
++ break; /* enough codes to use up j bits */
++ f -= *xp; /* else deduct codes from patterns */
++ }
+ }
+ DEBG1("3 ");
+ z = 1 << j; /* table entries for j-bit table */
+diff --git a/lib/zlib_inflate/inftrees.c b/lib/zlib_inflate/inftrees.c
+--- a/lib/zlib_inflate/inftrees.c
++++ b/lib/zlib_inflate/inftrees.c
+@@ -141,7 +141,7 @@ static int huft_build(
+ {
+ *t = NULL;
+ *m = 0;
+- return Z_OK;
++ return Z_DATA_ERROR;
+ }
+
+
+diff --git a/mm/mempolicy.c b/mm/mempolicy.c
+--- a/mm/mempolicy.c
++++ b/mm/mempolicy.c
+@@ -409,7 +409,7 @@ asmlinkage long sys_set_mempolicy(int mo
+ 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)
+diff --git a/security/keys/keyring.c b/security/keys/keyring.c
+--- a/security/keys/keyring.c
++++ b/security/keys/keyring.c
+@@ -188,7 +188,11 @@ static void keyring_destroy(struct key *
+
+ if (keyring->description) {
+ write_lock(&keyring_name_lock);
+- list_del(&keyring->type_data.link);
++
++ if (keyring->type_data.link.next != NULL &&
++ !list_empty(&keyring->type_data.link))
++ list_del(&keyring->type_data.link);
++
+ write_unlock(&keyring_name_lock);
+ }
+
+diff --git a/security/keys/process_keys.c b/security/keys/process_keys.c
+--- a/security/keys/process_keys.c
++++ b/security/keys/process_keys.c
+@@ -641,7 +641,7 @@ long join_session_keyring(const char *na
+ keyring = keyring_alloc(name, tsk->uid, tsk->gid, 0, NULL);
+ if (IS_ERR(keyring)) {
+ ret = PTR_ERR(keyring);
+- goto error;
++ goto error2;
+ }
+ }
+ else if (IS_ERR(keyring)) {
+-
+To unsubscribe from this list: send the line "unsubscribe linux-kernel-announce" in
+the body of a message to majordomo at vger.kernel.org
+More majordomo info at http://vger.kernel.org/majordomo-info.html
Added: people/waldi/kernel/source/linux-2.6/debian/patches-debian/powerpc-serial-of.patch
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/patches-debian/powerpc-serial-of.patch 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/patches-debian/powerpc-serial-of.patch 2005-08-16 16:56:13 UTC (rev 3933)
@@ -0,0 +1,442 @@
+# Description: Adds a new OF-based serial driver instead of the bit-banging # one.
+# Patch author: David Woodhouse <dwmw2 at infradead.org>
+# Upstream status: Well, this should replace the hacky workaround
+# introduced in the powerpc-serial patch. not yet enabled though as i am
+# unsure how this will work on PReP hardware.
+
+--- linux-2.6.12/drivers/serial/Makefile~ 2005-08-11 13:51:50.000000000 +0100
++++ linux-2.6.12/drivers/serial/Makefile 2005-08-15 21:08:49.000000000 +0100
+@@ -22,6 +22,7 @@ obj-$(CONFIG_SERIAL_8250_ACCENT) += 8250
+ obj-$(CONFIG_SERIAL_8250_BOCA) += 8250_boca.o
+ obj-$(CONFIG_SERIAL_8250_HUB6) += 8250_hub6.o
+ obj-$(CONFIG_SERIAL_8250_MCA) += 8250_mca.o
++obj-$(CONFIG_SERIAL_8250_OF) += 8250_of.o
+ obj-$(CONFIG_SERIAL_AMBA_PL010) += amba-pl010.o
+ obj-$(CONFIG_SERIAL_AMBA_PL011) += amba-pl011.o
+ obj-$(CONFIG_SERIAL_CLPS711X) += clps711x.o
+--- linux-2.6.12/drivers/serial/8250_of.c~ 2005-08-15 21:14:27.000000000 +0100
++++ linux-2.6.12/drivers/serial/8250_of.c 2005-08-15 21:20:59.000000000 +0100
+@@ -0,0 +1,199 @@
++#include <linux/kernel.h>
++#include <linux/serial.h>
++#include <linux/serial_8250.h>
++#include <linux/config.h>
++#include <linux/module.h>
++#include <linux/init.h>
++#include <linux/pci.h>
++#include <asm/serial.h>
++#include <asm/prom.h>
++
++#if 0
++#define DBG(fmt...) printk(KERN_DEBUG fmt)
++#else
++#define DBG(fmt) do { } while (0)
++#endif
++
++/*
++ * This function can be used by platforms to "find" legacy serial ports.
++ * It works for "serial" nodes under an "isa" node, and will try to
++ * respect the "ibm,aix-loc" property if any. It works with up to 8
++ * ports.
++ */
++
++#define MAX_LEGACY_SERIAL_PORTS 8
++static int ports_probed = 0;
++
++static struct plat_serial8250_port serial_ports[MAX_LEGACY_SERIAL_PORTS+1];
++static unsigned int old_serial_count;
++
++void __init generic_find_legacy_serial_ports(u64 *physport,
++ unsigned int *default_speed)
++{
++ struct device_node *np;
++ u32 *sizeprop;
++
++ struct isa_reg_property {
++ u32 space;
++ u32 address;
++ u32 size;
++ };
++
++ DBG(" -> generic_find_legacy_serial_port()\n");
++ ports_probed = 1;
++
++ *physport = 0;
++ if (default_speed)
++ *default_speed = 0;
++
++ np = of_find_node_by_path("/");
++ if (!np)
++ return;
++
++ /* First fill our array */
++ for (np = NULL; (np = of_find_node_by_type(np, "serial"));) {
++ struct device_node *isa, *pci;
++ struct isa_reg_property *reg;
++ unsigned long phys_size, addr_size;
++ u64 io_base;
++ u32 *rangesp;
++ u32 *interrupts, *clk, *spd;
++ char *typep;
++ int index, rlen, rentsize;
++
++ /* Ok, first check if it's under an "isa" parent */
++ isa = of_get_parent(np);
++ if (!isa || strcmp(isa->name, "isa")) {
++ DBG("%s: no isa parent found\n", np->full_name);
++ continue;
++ }
++
++ /* Now look for an "ibm,aix-loc" property that gives us ordering
++ * if any...
++ */
++ typep = (char *)get_property(np, "ibm,aix-loc", NULL);
++
++ /* Get the ISA port number */
++ reg = (struct isa_reg_property *)get_property(np, "reg", NULL);
++ if (reg == NULL)
++ goto next_port;
++ /* We assume the interrupt number isn't translated ... */
++ interrupts = (u32 *)get_property(np, "interrupts", NULL);
++ /* get clock freq. if present */
++ clk = (u32 *)get_property(np, "clock-frequency", NULL);
++ /* get default speed if present */
++ spd = (u32 *)get_property(np, "current-speed", NULL);
++ /* Default to locate at end of array */
++ index = old_serial_count; /* end of the array by default */
++
++ /* If we have a location index, then use it */
++ if (typep && *typep == 'S') {
++ index = simple_strtol(typep+1, NULL, 0) - 1;
++ /* if index is out of range, use end of array instead */
++ if (index >= MAX_LEGACY_SERIAL_PORTS)
++ index = old_serial_count;
++ /* if our index is still out of range, that mean that
++ * array is full, we could scan for a free slot but that
++ * make little sense to bother, just skip the port
++ */
++ if (index >= MAX_LEGACY_SERIAL_PORTS)
++ goto next_port;
++ if (index >= old_serial_count)
++ old_serial_count = index + 1;
++ /* Check if there is a port who already claimed our slot */
++ if (serial_ports[index].iobase != 0) {
++ /* if we still have some room, move it, else override */
++ if (old_serial_count < MAX_LEGACY_SERIAL_PORTS) {
++ DBG("Moved legacy port %d -> %d\n", index,
++ old_serial_count);
++ serial_ports[old_serial_count++] =
++ serial_ports[index];
++ } else {
++ DBG("Replacing legacy port %d\n", index);
++ }
++ }
++ }
++ if (index >= MAX_LEGACY_SERIAL_PORTS)
++ goto next_port;
++ if (index >= old_serial_count)
++ old_serial_count = index + 1;
++
++ /* Now fill the entry */
++ memset(&serial_ports[index], 0, sizeof(struct plat_serial8250_port));
++ serial_ports[index].uartclk = (clk && *clk) ? *clk : BASE_BAUD * 16;
++ serial_ports[index].iobase = reg->address;
++ serial_ports[index].irq = interrupts ? interrupts[0] : 0;
++ serial_ports[index].flags = ASYNC_BOOT_AUTOCONF;
++
++ DBG("Added legacy port, index: %d, port: %x, irq: %d, clk: %d\n",
++ index,
++ serial_ports[index].iobase,
++ serial_ports[index].irq,
++ serial_ports[index].uartclk);
++
++ /* Get phys address of IO reg for port 1 */
++ if (index != 0)
++ goto next_port;
++
++ pci = of_get_parent(isa);
++ if (!pci) {
++ DBG("%s: no pci parent found\n", np->full_name);
++ goto next_port;
++ }
++
++ rangesp = (u32 *)get_property(pci, "ranges", &rlen);
++ if (rangesp == NULL) {
++ of_node_put(pci);
++ goto next_port;
++ }
++ rlen /= 4;
++
++ /* we need the #size-cells of the PCI bridge node itself */
++ phys_size = 1;
++ sizeprop = (u32 *)get_property(pci, "#size-cells", NULL);
++ if (sizeprop != NULL)
++ phys_size = *sizeprop;
++ /* we need the parent #addr-cells */
++ addr_size = prom_n_addr_cells(pci);
++ rentsize = 3 + addr_size + phys_size;
++ io_base = 0;
++ for (;rlen >= rentsize; rlen -= rentsize,rangesp += rentsize) {
++ if (((rangesp[0] >> 24) & 0x3) != 1)
++ continue; /* not IO space */
++ io_base = rangesp[3];
++ if (addr_size == 2)
++ io_base = (io_base << 32) | rangesp[4];
++ }
++ if (io_base != 0) {
++ *physport = io_base + reg->address;
++ if (default_speed && spd)
++ *default_speed = *spd;
++ }
++ of_node_put(pci);
++ next_port:
++ of_node_put(isa);
++ }
++
++ DBG(" <- generic_find_legacy_serial_port()\n");
++}
++
++static struct platform_device serial_device = {
++ .name = "serial8250",
++ .id = 0,
++ .dev = {
++ .platform_data = serial_ports,
++ },
++};
++
++static int __init serial_dev_init(void)
++{
++ u64 phys;
++ unsigned int spd;
++
++ if (!ports_probed)
++ generic_find_legacy_serial_ports(&phys, &spd);
++ return platform_device_register(&serial_device);
++}
++arch_initcall(serial_dev_init);
++
++
+--- linux-2.6.12/drivers/serial/Kconfig~ 2005-08-11 13:51:50.000000000 +0100
++++ linux-2.6.12/drivers/serial/Kconfig 2005-08-15 21:13:41.000000000 +0100
+@@ -77,6 +77,11 @@ config SERIAL_8250_CS
+
+ If unsure, say N.
+
++config SERIAL_8250_OF
++ bool
++ default y
++ depends on PPC_OF && SERIAL_8250 != n
++
+ config SERIAL_8250_ACPI
+ bool "8250/16550 device discovery via ACPI namespace"
+ default y if IA64
+--- linux-2.6.12/arch/ppc64/kernel/setup.c~ 2005-08-11 13:52:04.000000000 +0100
++++ linux-2.6.12/arch/ppc64/kernel/setup.c 2005-08-15 20:27:25.000000000 +0100
+@@ -1147,186 +1147,6 @@ void __init setup_default_decr(void)
+ lpaca->next_jiffy_update_tb = get_tb() + tb_ticks_per_jiffy;
+ }
+
+-#ifndef CONFIG_PPC_ISERIES
+-/*
+- * This function can be used by platforms to "find" legacy serial ports.
+- * It works for "serial" nodes under an "isa" node, and will try to
+- * respect the "ibm,aix-loc" property if any. It works with up to 8
+- * ports.
+- */
+-
+-#define MAX_LEGACY_SERIAL_PORTS 8
+-static struct plat_serial8250_port serial_ports[MAX_LEGACY_SERIAL_PORTS+1];
+-static unsigned int old_serial_count;
+-
+-void __init generic_find_legacy_serial_ports(u64 *physport,
+- unsigned int *default_speed)
+-{
+- struct device_node *np;
+- u32 *sizeprop;
+-
+- struct isa_reg_property {
+- u32 space;
+- u32 address;
+- u32 size;
+- };
+- struct pci_reg_property {
+- struct pci_address addr;
+- u32 size_hi;
+- u32 size_lo;
+- };
+-
+- DBG(" -> generic_find_legacy_serial_port()\n");
+-
+- *physport = 0;
+- if (default_speed)
+- *default_speed = 0;
+-
+- np = of_find_node_by_path("/");
+- if (!np)
+- return;
+-
+- /* First fill our array */
+- for (np = NULL; (np = of_find_node_by_type(np, "serial"));) {
+- struct device_node *isa, *pci;
+- struct isa_reg_property *reg;
+- unsigned long phys_size, addr_size, io_base;
+- u32 *rangesp;
+- u32 *interrupts, *clk, *spd;
+- char *typep;
+- int index, rlen, rentsize;
+-
+- /* Ok, first check if it's under an "isa" parent */
+- isa = of_get_parent(np);
+- if (!isa || strcmp(isa->name, "isa")) {
+- DBG("%s: no isa parent found\n", np->full_name);
+- continue;
+- }
+-
+- /* Now look for an "ibm,aix-loc" property that gives us ordering
+- * if any...
+- */
+- typep = (char *)get_property(np, "ibm,aix-loc", NULL);
+-
+- /* Get the ISA port number */
+- reg = (struct isa_reg_property *)get_property(np, "reg", NULL);
+- if (reg == NULL)
+- goto next_port;
+- /* We assume the interrupt number isn't translated ... */
+- interrupts = (u32 *)get_property(np, "interrupts", NULL);
+- /* get clock freq. if present */
+- clk = (u32 *)get_property(np, "clock-frequency", NULL);
+- /* get default speed if present */
+- spd = (u32 *)get_property(np, "current-speed", NULL);
+- /* Default to locate at end of array */
+- index = old_serial_count; /* end of the array by default */
+-
+- /* If we have a location index, then use it */
+- if (typep && *typep == 'S') {
+- index = simple_strtol(typep+1, NULL, 0) - 1;
+- /* if index is out of range, use end of array instead */
+- if (index >= MAX_LEGACY_SERIAL_PORTS)
+- index = old_serial_count;
+- /* if our index is still out of range, that mean that
+- * array is full, we could scan for a free slot but that
+- * make little sense to bother, just skip the port
+- */
+- if (index >= MAX_LEGACY_SERIAL_PORTS)
+- goto next_port;
+- if (index >= old_serial_count)
+- old_serial_count = index + 1;
+- /* Check if there is a port who already claimed our slot */
+- if (serial_ports[index].iobase != 0) {
+- /* if we still have some room, move it, else override */
+- if (old_serial_count < MAX_LEGACY_SERIAL_PORTS) {
+- DBG("Moved legacy port %d -> %d\n", index,
+- old_serial_count);
+- serial_ports[old_serial_count++] =
+- serial_ports[index];
+- } else {
+- DBG("Replacing legacy port %d\n", index);
+- }
+- }
+- }
+- if (index >= MAX_LEGACY_SERIAL_PORTS)
+- goto next_port;
+- if (index >= old_serial_count)
+- old_serial_count = index + 1;
+-
+- /* Now fill the entry */
+- memset(&serial_ports[index], 0, sizeof(struct plat_serial8250_port));
+- serial_ports[index].uartclk = clk ? *clk : BASE_BAUD * 16;
+- serial_ports[index].iobase = reg->address;
+- serial_ports[index].irq = interrupts ? interrupts[0] : 0;
+- serial_ports[index].flags = ASYNC_BOOT_AUTOCONF;
+-
+- DBG("Added legacy port, index: %d, port: %x, irq: %d, clk: %d\n",
+- index,
+- serial_ports[index].iobase,
+- serial_ports[index].irq,
+- serial_ports[index].uartclk);
+-
+- /* Get phys address of IO reg for port 1 */
+- if (index != 0)
+- goto next_port;
+-
+- pci = of_get_parent(isa);
+- if (!pci) {
+- DBG("%s: no pci parent found\n", np->full_name);
+- goto next_port;
+- }
+-
+- rangesp = (u32 *)get_property(pci, "ranges", &rlen);
+- if (rangesp == NULL) {
+- of_node_put(pci);
+- goto next_port;
+- }
+- rlen /= 4;
+-
+- /* we need the #size-cells of the PCI bridge node itself */
+- phys_size = 1;
+- sizeprop = (u32 *)get_property(pci, "#size-cells", NULL);
+- if (sizeprop != NULL)
+- phys_size = *sizeprop;
+- /* we need the parent #addr-cells */
+- addr_size = prom_n_addr_cells(pci);
+- rentsize = 3 + addr_size + phys_size;
+- io_base = 0;
+- for (;rlen >= rentsize; rlen -= rentsize,rangesp += rentsize) {
+- if (((rangesp[0] >> 24) & 0x3) != 1)
+- continue; /* not IO space */
+- io_base = rangesp[3];
+- if (addr_size == 2)
+- io_base = (io_base << 32) | rangesp[4];
+- }
+- if (io_base != 0) {
+- *physport = io_base + reg->address;
+- if (default_speed && spd)
+- *default_speed = *spd;
+- }
+- of_node_put(pci);
+- next_port:
+- of_node_put(isa);
+- }
+-
+- DBG(" <- generic_find_legacy_serial_port()\n");
+-}
+-
+-static struct platform_device serial_device = {
+- .name = "serial8250",
+- .id = 0,
+- .dev = {
+- .platform_data = serial_ports,
+- },
+-};
+-
+-static int __init serial_dev_init(void)
+-{
+- return platform_device_register(&serial_device);
+-}
+-arch_initcall(serial_dev_init);
+-
+-#endif /* CONFIG_PPC_ISERIES */
+
+ int check_legacy_ioport(unsigned long base_port)
+ {
+--- linux-2.6.12/include/asm-ppc/pc_serial.h~ 2005-08-15 21:19:32.000000000 +0100
++++ linux-2.6.12/include/asm-ppc/pc_serial.h 2005-08-15 21:20:24.000000000 +0100
+@@ -26,18 +26,3 @@
+ #define RS_TABLE_SIZE 4
+ #endif
+
+-/* Standard COM flags (except for COM4, because of the 8514 problem) */
+-#ifdef CONFIG_SERIAL_DETECT_IRQ
+-#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ)
+-#define STD_COM4_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_AUTO_IRQ)
+-#else
+-#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST)
+-#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
+-#endif
+-
+-#define SERIAL_PORT_DFNS \
+- /* UART CLK PORT IRQ FLAGS */ \
+- { 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
+- { 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS }, /* ttyS1 */ \
+- { 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
+- { 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
Deleted: people/waldi/kernel/source/linux-2.6/debian/patches-debian/security-keys-destructor-oops.patch
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/patches-debian/security-keys-destructor-oops.patch 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/patches-debian/security-keys-destructor-oops.patch 2005-08-16 16:56:13 UTC (rev 3933)
@@ -1,55 +0,0 @@
-commit 94efe72f762e2c147d8146d637d5ece5614c8d94
-tree 002e4719541ad838342e01a5f8ff63ae0a618b29
-parent bcf945d36fa0598f41ac4ad46a9dc43135460263
-author David Howells <dhowells at redhat.com> 1123186027 -0700
-committer Linus Torvalds <torvalds at g5.osdl.org> 1123186274 -0700
-
-[PATCH] Destruction of failed keyring oopses
-
-The attached patch makes sure that a keyring that failed to instantiate
-properly is destroyed without oopsing [CAN-2005-2099].
-
-The problem occurs in three stages:
-
- (1) The key allocator initialises the type-specific data to all zeroes. In
- the case of a keyring, this will become a link in the keyring name list
- when the keyring is instantiated.
-
- (2) If a user (any user) attempts to add a keyring with anything other than
- an empty payload, the keyring instantiation function will fail with an
- error and won't add the keyring to the name list.
-
- (3) The keyring's destructor then sees that the keyring has a description
- (name) and tries to remove the keyring from the name list, which oopses
- because the link pointers are both zero.
-
-This bug permits any user to take down a box trivially.
-
-Signed-Off-By: David Howells <dhowells at redhat.com>
-Signed-off-by: Andrew Morton <akpm at osdl.org>
-Signed-off-by: Linus Torvalds <torvalds at osdl.org>
-
-I:100644 100644 a1f6bac647a1c3a673bfbb2b4b03d0556cc9be88 9c208c756df8136cbaa0a06f5442af60c712ae6d M security/keys/keyring.c
-
-Key:
-S: Skipped
-I: Included Included verbatim
-D: Deleted Manually deleted by subsequent user edit
-R: Revised Manually revised by subsequent user edit
-
-diff --git a/security/keys/keyring.c b/security/keys/keyring.c
---- a/security/keys/keyring.c
-+++ b/security/keys/keyring.c
-@@ -201,7 +201,11 @@ static void keyring_destroy(struct key *
-
- if (keyring->description) {
- write_lock(&keyring_name_lock);
-- list_del(&keyring->type_data.link);
-+
-+ if (keyring->type_data.link.next != NULL &&
-+ !list_empty(&keyring->type_data.link))
-+ list_del(&keyring->type_data.link);
-+
- write_unlock(&keyring_name_lock);
- }
-
Deleted: people/waldi/kernel/source/linux-2.6/debian/patches-debian/security-keys-session-join.patch
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/patches-debian/security-keys-session-join.patch 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/patches-debian/security-keys-session-join.patch 2005-08-16 16:56:13 UTC (rev 3933)
@@ -1,54 +0,0 @@
-commit bcf945d36fa0598f41ac4ad46a9dc43135460263
-tree 7a2aa188442bf863f20055a001baf85143d7a5b9
-parent 6fb0caa42308923d9e4ed7b36ec077b97c107e24
-author David Howells <dhowells at redhat.com> 1123186026 -0700
-committer Linus Torvalds <torvalds at g5.osdl.org> 1123186274 -0700
-
-[PATCH] Error during attempt to join key management session can leave semaphore pinned
-
-The attached patch prevents an error during the key session joining operation
-from hanging future joins in the D state [CAN-2005-2098].
-
-The problem is that the error handling path for the KEYCTL_JOIN_SESSION_KEYRING
-operation has one error path that doesn't release the session management
-semaphore. Further attempts to get the semaphore will then sleep for ever in
-the D state.
-
-This can happen in four situations, all involving an attempt to allocate a new
-session keyring:
-
- (1) ENOMEM.
-
- (2) The users key quota being reached.
-
- (3) A keyring name that is an empty string.
-
- (4) A keyring name that is too long.
-
-Any user may attempt this operation, and so any user can cause the problem to
-occur.
-
-Signed-Off-By: David Howells <dhowells at redhat.com>
-Signed-off-by: Andrew Morton <akpm at osdl.org>
-Signed-off-by: Linus Torvalds <torvalds at osdl.org>
-
-I:100644 100644 9b0369c5a223acbf951178e87ebbb0789458b507 c089f78fb94ec170dbd042f08a4a61b9915c526e M security/keys/process_keys.c
-
-Key:
-S: Skipped
-I: Included Included verbatim
-D: Deleted Manually deleted by subsequent user edit
-R: Revised Manually revised by subsequent user edit
-
-diff --git a/security/keys/process_keys.c b/security/keys/process_keys.c
---- a/security/keys/process_keys.c
-+++ b/security/keys/process_keys.c
-@@ -678,7 +678,7 @@ long join_session_keyring(const char *na
- keyring = keyring_alloc(name, tsk->uid, tsk->gid, 0, NULL);
- if (IS_ERR(keyring)) {
- ret = PTR_ERR(keyring);
-- goto error;
-+ goto error2;
- }
- }
- else if (IS_ERR(keyring)) {
Modified: people/waldi/kernel/source/linux-2.6/debian/patches-debian/series/2.6.12-3
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/patches-debian/series/2.6.12-3 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/patches-debian/series/2.6.12-3 2005-08-16 16:56:13 UTC (rev 3933)
@@ -1,2 +1 @@
-+ security-keys-destructor-oops.patch
-+ security-keys-session-join.patch
++ patch-2.6.12.5
Modified: people/waldi/kernel/source/linux-2.6/debian/rules.real
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/rules.real 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/rules.real 2005-08-16 16:56:13 UTC (rev 3933)
@@ -57,11 +57,12 @@
ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
kpkg_image += --cross-compile=$(DEB_HOST_GNU_TYPE)
endif
-setup_env := env -i
-setup_env += HOME=$(HOME) LOGNAME=$(LOGNAME) PATH=$(PATH)
+setup_env := env -u ABINAME -u ARCH -u SUBARCH -u FLAVOUR -u VERSION
setup_env += DEBIAN_ABINAME=$(ABINAME) DEBIAN_FLAVOUR=$(FLAVOUR) DEBIAN_VERSION=$(VERSION)
ifdef build_makeflags
setup_env += MAKEFLAGS=$(build_makeflags)
+else
+ setup_env += MAKEFLAGS=
endif
ifndef headers_dirs
headers_dirs = $(DEB_HOST_ARCH)
@@ -140,7 +141,7 @@
rm -rf $(DIR)
mkdir -p $(DIR)
cp -al $(srcfiles) $(DIR)
- cd $(DIR); override_version=$(SOURCE_VERSION) home=$(CURDIR)/debian/patches-debian $(CURDIR)/debian/bin/apply
+ cd $(DIR); override_version=$(SOURCE_VERSION) home=$(CURDIR)/debian/patches-debian sh $(CURDIR)/debian/bin/apply
#make-kpkg does this when building kernel-source.
mv $(DIR)/scripts/package/Makefile $(DIR)/scripts/package/Makefile.dist
mv $(DIR)/scripts/package/builddeb $(DIR)/scripts/package/builddeb.dist
Modified: people/waldi/kernel/source/linux-2.6/debian/templates/control.extra.in
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/templates/control.extra.in 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/templates/control.extra.in 2005-08-16 16:56:13 UTC (rev 3933)
@@ -61,6 +61,42 @@
Description: Linux kernel 2.6 image on AMD K7 SMP machines - transition package
This package is for transition only.
+Package: kernel-image-2.6-itanium
+X-Version-Overwrite-Epoch: 1
+Architecture: ia64
+Section: base
+Priority: extra
+Depends: linux-image-2.6-itanium
+Description: Linux kernel 2.6 image on Itanium machines - transition package
+ This package is for transition only.
+
+Package: kernel-image-2.6-itanium-smp
+X-Version-Overwrite-Epoch: 1
+Architecture: ia64
+Section: base
+Priority: extra
+Depends: linux-image-2.6-itanium-smp
+Description: Linux kernel 2.6 image on multi-processor Itanium machines - transition package
+ This package is for transition only.
+
+Package: kernel-image-2.6-mckinley
+X-Version-Overwrite-Epoch: 1
+Architecture: ia64
+Section: base
+Priority: extra
+Depends: linux-image-2.6-mckinley
+Description: Linux kernel 2.6 image on Itanium II machines - transition package
+ This package is for transition only.
+
+Package: kernel-image-2.6-mckinley-smp
+X-Version-Overwrite-Epoch: 1
+Architecture: ia64
+Section: base
+Priority: extra
+Depends: linux-image-2.6-mckinley-smp
+Description: Linux kernel 2.6 image on multi-processor Itanium II machines - transition package
+ This package is for transition only.
+
Package: kernel-image-powerpc
X-Version-Overwrite-Epoch: 1
Architecture: powerpc
Modified: people/waldi/kernel/source/linux-2.6/debian/templates/control.source.in
===================================================================
--- people/waldi/kernel/source/linux-2.6/debian/templates/control.source.in 2005-08-16 16:51:44 UTC (rev 3932)
+++ people/waldi/kernel/source/linux-2.6/debian/templates/control.source.in 2005-08-16 16:56:13 UTC (rev 3933)
@@ -4,5 +4,5 @@
Maintainer: Debian Kernel Team <debian-kernel at lists.debian.org>
Uploaders: Andres Salomon <dilinger at debian.org>, Bastian Blank <waldi at debian.org>
Standards-Version: 3.6.1.0
-Build-Depends: gcc (>= 4:4.0) [!sparc !alpha !m68k], gcc-3.3 [sparc alpha m68k], binutils-hppa64 [hppa], gcc-4.0-hppa64 [hppa], debhelper (>= 4.1.0), module-init-tools, dpkg-dev (>= 1.10.23), debianutils (>= 1.6), bzip2, console-tools [!s390], sparc-utils [sparc], kernel-package (>= 9.005)
+Build-Depends: gcc (>= 4:4.0) [!arm !sparc !alpha !m68k], gcc-3.3 [arm sparc alpha m68k], binutils-hppa64 [hppa], gcc-4.0-hppa64 [hppa], debhelper (>= 4.1.0), module-init-tools, dpkg-dev (>= 1.10.23), debianutils (>= 1.6), bzip2, console-tools [!s390], sparc-utils [sparc], kernel-package (>= 9.005)
Build-Depends-Indep: docbook-utils, gs, transfig, xmlto, dh-kpatches (>= 0.99.3)
More information about the Kernel-svn-changes
mailing list