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