[kernel] r7585 - in dists/trunk/linux-2.6/debian: .
patches/bugfix/mips patches/series
Martin Michlmayr
tbm at costa.debian.org
Mon Oct 9 10:04:56 UTC 2006
Author: tbm
Date: Mon Oct 9 10:04:54 2006
New Revision: 7585
Added:
dists/trunk/linux-2.6/debian/patches/bugfix/mips/
dists/trunk/linux-2.6/debian/patches/bugfix/mips/cobalt_hz.patch
dists/trunk/linux-2.6/debian/patches/bugfix/mips/fstatat_syscall_names.patch
dists/trunk/linux-2.6/debian/patches/bugfix/mips/headers_install-add.patch
dists/trunk/linux-2.6/debian/patches/bugfix/mips/o32_fstatat_syscall.patch
dists/trunk/linux-2.6/debian/patches/bugfix/mips/real-cpu-cpuinfo.patch
dists/trunk/linux-2.6/debian/patches/bugfix/mips/sb1250_interrupt_fixes.patch
dists/trunk/linux-2.6/debian/patches/bugfix/mips/sb1480_interrupt_fixes.patch
Modified:
dists/trunk/linux-2.6/debian/changelog
dists/trunk/linux-2.6/debian/patches/series/3
Log:
Apply some patches from linux-mips' linux-2.6.18-stable GIT tree
Modified: dists/trunk/linux-2.6/debian/changelog
==============================================================================
--- dists/trunk/linux-2.6/debian/changelog (original)
+++ dists/trunk/linux-2.6/debian/changelog Mon Oct 9 10:04:54 2006
@@ -15,6 +15,16 @@
[ maximilian attems ]
* [mipsel] Disable CONFIG_SECURITY_SECLVL on DECstations too.
+ [ Martin Michlmayr ]
+ * [mips] Apply some patches from linux-mips' linux-2.6.18-stable GIT tree:
+ - The o32 fstatat syscall behaves differently on 32 and 64 bit kernels
+ - fstatat syscall names
+ - Have headers_install install <asm/cachectl.h> and <asm/sysmips.h>.
+ - SB1250: Interrupt handler fixes
+ - BCM1480: Mask pending interrupts against c0_status.im.
+ - Cobalt: Time runs too quickly
+ - Show actual CPU information in /proc/cpuinfo
+
-- maximilian attems <maks at sternwelten.at> Thu, 5 Oct 2006 17:10:46 +0200
linux-2.6 (2.6.18-2) unstable; urgency=low
Added: dists/trunk/linux-2.6/debian/patches/bugfix/mips/cobalt_hz.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/mips/cobalt_hz.patch Mon Oct 9 10:04:54 2006
@@ -0,0 +1,29 @@
+From: Scott Ashcroft <scott.ashcroft at talk21.com>
+Date: Fri, 6 Oct 2006 15:54:54 +0000 (+0100)
+Subject: [MIPS] Cobalt: Time runs too quickly
+X-Git-Tag: linux-1.1.68
+X-Git-Url: http://www.linux-mips.org/git?p=linux.git;a=commitdiff;h=57d3404f99d0b3848131e1467d7d2467f2415e4a
+
+[MIPS] Cobalt: Time runs too quickly
+
+A kernel built with HZ==250 runs about 4 four times too quickly on a
+Cobalt RaQ2.
+
+Signed-off-by: Scott Ashcroft <scott.ashcroft at talk21.com>
+Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
+(cherry picked from a49ead7800722591d9862c1d7f075fed9c767bc5 commit)
+---
+
+--- a/arch/mips/cobalt/setup.c
++++ b/arch/mips/cobalt/setup.c
+@@ -51,8 +51,8 @@ const char *get_system_type(void)
+
+ void __init plat_timer_setup(struct irqaction *irq)
+ {
+- /* Load timer value for 1KHz (TCLK is 50MHz) */
+- GALILEO_OUTL(50*1000*1000 / 1000, GT_TC0_OFS);
++ /* Load timer value for HZ (TCLK is 50MHz) */
++ GALILEO_OUTL(50*1000*1000 / HZ, GT_TC0_OFS);
+
+ /* Enable timer */
+ GALILEO_OUTL(GALILEO_ENTC0 | GALILEO_SELTC0, GT_TC_CONTROL_OFS);
Added: dists/trunk/linux-2.6/debian/patches/bugfix/mips/fstatat_syscall_names.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/mips/fstatat_syscall_names.patch Mon Oct 9 10:04:54 2006
@@ -0,0 +1,57 @@
+From: Richard Sandiford <richard at codesourcery.com>
+Date: Sun, 17 Sep 2006 19:38:39 +0000 (+0100)
+Subject: [MIPS] fstatat syscall names
+X-Git-Tag: linux-1.1.68
+X-Git-Url: http://www.linux-mips.org/git?p=linux.git;a=commitdiff;h=7b2b78a2e0960138002f01a2e5d63a961180dd5c
+
+[MIPS] fstatat syscall names
+
+MIPS is the only port to call its fstatat()-related syscalls
+"__NR_fstatat". Now I can see why that might be seen as every
+other port being wrong, but I think for o32, it is at best confusing.
+__NR_fstat provides a plain (32-bit) stat while __NR_fstatat provides a
+64-bit stat. Changing the name to __NR_fstatat64 would make things more
+explicit, match x86, and make the glibc port slightly easier.
+
+The current name is more appropriate for n32 and n64, but it would be
+appropriate for other 64-bit targets too, and those targets have chosen
+to call it __NR_newfstatat instead. Using the same name for MIPS would
+again be more consistent and make the glibc port slightly easier.
+
+I'm not wedded to this idea if the current names are preferred,
+but FWIW...
+
+Signed-off-by: Richard Sandiford <richard at codesourcery.com>
+Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
+(cherry picked from 3e60ebf8d477c95168708c64ed60823a08f559f0 commit)
+---
+
+--- a/include/asm-mips/unistd.h
++++ b/include/asm-mips/unistd.h
+@@ -313,7 +313,7 @@
+ #define __NR_mknodat (__NR_Linux + 290)
+ #define __NR_fchownat (__NR_Linux + 291)
+ #define __NR_futimesat (__NR_Linux + 292)
+-#define __NR_fstatat (__NR_Linux + 293)
++#define __NR_fstatat64 (__NR_Linux + 293)
+ #define __NR_unlinkat (__NR_Linux + 294)
+ #define __NR_renameat (__NR_Linux + 295)
+ #define __NR_linkat (__NR_Linux + 296)
+@@ -600,7 +600,7 @@
+ #define __NR_mknodat (__NR_Linux + 249)
+ #define __NR_fchownat (__NR_Linux + 250)
+ #define __NR_futimesat (__NR_Linux + 251)
+-#define __NR_fstatat (__NR_Linux + 252)
++#define __NR_newfstatat (__NR_Linux + 252)
+ #define __NR_unlinkat (__NR_Linux + 253)
+ #define __NR_renameat (__NR_Linux + 254)
+ #define __NR_linkat (__NR_Linux + 255)
+@@ -891,7 +891,7 @@
+ #define __NR_mknodat (__NR_Linux + 253)
+ #define __NR_fchownat (__NR_Linux + 254)
+ #define __NR_futimesat (__NR_Linux + 255)
+-#define __NR_fstatat (__NR_Linux + 256)
++#define __NR_newfstatat (__NR_Linux + 256)
+ #define __NR_unlinkat (__NR_Linux + 257)
+ #define __NR_renameat (__NR_Linux + 258)
+ #define __NR_linkat (__NR_Linux + 259)
Added: dists/trunk/linux-2.6/debian/patches/bugfix/mips/headers_install-add.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/mips/headers_install-add.patch Mon Oct 9 10:04:54 2006
@@ -0,0 +1,19 @@
+From: Ralf Baechle <ralf at linux-mips.org>
+Date: Sat, 23 Sep 2006 17:08:36 +0000 (+0100)
+Subject: [MIPS] Have headers_install install <asm/cachectl.h> and <asm/sysmips.h>.
+X-Git-Tag: linux-1.1.68
+X-Git-Url: http://www.linux-mips.org/git?p=linux.git;a=commitdiff;h=e70d9b79a35ac822ec5913278d2472aa728d1476
+
+[MIPS] Have headers_install install <asm/cachectl.h> and <asm/sysmips.h>.
+
+Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
+(cherry picked from 2ff556ab120549346660fd7e0cd25782ebe5381d commit)
+---
+
+--- a/include/asm-mips/Kbuild
++++ b/include/asm-mips/Kbuild
+@@ -1,3 +1,3 @@
+ include include/asm-generic/Kbuild.asm
+
+-header-y += sgidefs.h
++header-y += cachectl.h sgidefs.h sysmips.h
Added: dists/trunk/linux-2.6/debian/patches/bugfix/mips/o32_fstatat_syscall.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/mips/o32_fstatat_syscall.patch Mon Oct 9 10:04:54 2006
@@ -0,0 +1,34 @@
+From: Richard Sandiford <richard at codesourcery.com>
+Date: Sun, 17 Sep 2006 19:30:46 +0000 (+0100)
+Subject: [MIPS] The o32 fstatat syscall behaves differently on 32 and 64 bit kernels
+X-Git-Tag: linux-1.1.68
+X-Git-Url: http://www.linux-mips.org/git?p=linux.git;a=commitdiff;h=ee0e97c8177cdc1362f34ac64445671c8ba3a813
+
+[MIPS] The o32 fstatat syscall behaves differently on 32 and 64 bit kernels
+
+While working on a glibc patch to support the fstatat() functions[1],
+I noticed that the o32 implementation behaves differently on 32-bit and
+64-bit kernels; the former provides a stat64 while the latter provides
+a plain (o32) stat. I think the former is what's intended, as there is
+no separate fstatat64. It's also what x86 does.
+
+I think this is just a case of a compat too far.
+
+[1] I've seen Khem's patch, but I don't think it's right.
+
+Signed-off-by: Richard Sandiford <richard at codesourcery.com>
+Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
+(cherry picked from c38c8f19bd7566743fd80c1d42f54c9a5a5d1443 commit)
+---
+
+--- a/arch/mips/kernel/scall64-o32.S
++++ b/arch/mips/kernel/scall64-o32.S
+@@ -498,7 +498,7 @@ sys_call_table:
+ PTR sys_mknodat /* 4290 */
+ PTR sys_fchownat
+ PTR compat_sys_futimesat
+- PTR compat_sys_newfstatat
++ PTR sys_newfstatat
+ PTR sys_unlinkat
+ PTR sys_renameat /* 4295 */
+ PTR sys_linkat
Added: dists/trunk/linux-2.6/debian/patches/bugfix/mips/real-cpu-cpuinfo.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/mips/real-cpu-cpuinfo.patch Mon Oct 9 10:04:54 2006
@@ -0,0 +1,52 @@
+From: Karl-Johan Karlsson <creideiki+linux-mips at ferretporn.se>
+Date: Sat, 7 Oct 2006 23:15:02 +0000 (+0200)
+Subject: [MIPS] Show actual CPU information in /proc/cpuinfo
+X-Git-Tag: linux-1.1.68
+X-Git-Url: http://www.linux-mips.org/git?p=linux.git;a=commitdiff;h=fc3dee0744865746ad02824e241442edc6ce7a07
+
+[MIPS] Show actual CPU information in /proc/cpuinfo
+
+Currently, /proc/cpuinfo contains several copies of the information for
+whatever processor we happen to be scheduled on. This patch makes it contain
+the proper information for each CPU, which is particularly useful on mixed
+R12k/R10k IP27 machines.
+
+Signed-off-by: Karl-Johan Karlsson <creideiki at lysator.liu.se>
+Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
+(cherry picked from fa91b67b68a484c0cd69f29ef9acb3683bc82928 commit)
+---
+
+--- a/arch/mips/kernel/proc.c
++++ b/arch/mips/kernel/proc.c
+@@ -89,9 +89,9 @@ static const char *cpu_name[] = {
+
+ static int show_cpuinfo(struct seq_file *m, void *v)
+ {
+- unsigned int version = current_cpu_data.processor_id;
+- unsigned int fp_vers = current_cpu_data.fpu_id;
+ unsigned long n = (unsigned long) v - 1;
++ unsigned int version = cpu_data[n].processor_id;
++ unsigned int fp_vers = cpu_data[n].fpu_id;
+ char fmt [64];
+
+ #ifdef CONFIG_SMP
+@@ -108,8 +108,8 @@ static int show_cpuinfo(struct seq_file
+ seq_printf(m, "processor\t\t: %ld\n", n);
+ sprintf(fmt, "cpu model\t\t: %%s V%%d.%%d%s\n",
+ cpu_has_fpu ? " FPU V%d.%d" : "");
+- seq_printf(m, fmt, cpu_name[current_cpu_data.cputype <= CPU_LAST ?
+- current_cpu_data.cputype : CPU_UNKNOWN],
++ seq_printf(m, fmt, cpu_name[cpu_data[n].cputype <= CPU_LAST ?
++ cpu_data[n].cputype : CPU_UNKNOWN],
+ (version >> 4) & 0x0f, version & 0x0f,
+ (fp_vers >> 4) & 0x0f, fp_vers & 0x0f);
+ seq_printf(m, "BogoMIPS\t\t: %lu.%02lu\n",
+@@ -118,7 +118,7 @@ static int show_cpuinfo(struct seq_file
+ seq_printf(m, "wait instruction\t: %s\n", cpu_wait ? "yes" : "no");
+ seq_printf(m, "microsecond timers\t: %s\n",
+ cpu_has_counter ? "yes" : "no");
+- seq_printf(m, "tlb_entries\t\t: %d\n", current_cpu_data.tlbsize);
++ seq_printf(m, "tlb_entries\t\t: %d\n", cpu_data[n].tlbsize);
+ seq_printf(m, "extra interrupt vector\t: %s\n",
+ cpu_has_divec ? "yes" : "no");
+ seq_printf(m, "hardware watchpoint\t: %s\n",
Added: dists/trunk/linux-2.6/debian/patches/bugfix/mips/sb1250_interrupt_fixes.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/mips/sb1250_interrupt_fixes.patch Mon Oct 9 10:04:54 2006
@@ -0,0 +1,37 @@
+From: Maciej W. Rozycki <macro at linux-mips.org>
+Date: Tue, 3 Oct 2006 11:42:02 +0000 (+0100)
+Subject: [MIPS] SB1250: Interrupt handler fixes
+X-Git-Tag: linux-1.1.68
+X-Git-Url: http://www.linux-mips.org/git?p=linux.git;a=commitdiff;h=c9477be2bb9e9a1885630627f439d19d7df6d33a
+
+[MIPS] SB1250: Interrupt handler fixes
+
+Mask cp0.status against cp0.cause. Additionally, spurious interrupts are
+not recorded.
+
+Signed-off-by: Maciej W. Rozycki <macro at linux-mips.org>
+Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
+(cherry picked from 0196782e2ac607a19cfc88d9d2bd3f3f03e5908b commit)
+---
+
+--- a/arch/mips/sibyte/sb1250/irq.c
++++ b/arch/mips/sibyte/sb1250/irq.c
+@@ -442,7 +442,7 @@ asmlinkage void plat_irq_dispatch(struct
+ * blasting the high 32 bits.
+ */
+
+- pending = read_c0_cause();
++ pending = read_c0_cause() & read_c0_status();
+
+ #ifdef CONFIG_SIBYTE_SB1250_PROF
+ if (pending & CAUSEF_IP7) /* Cpu performance counter interrupt */
+@@ -476,5 +476,8 @@ asmlinkage void plat_irq_dispatch(struct
+ R_IMR_INTERRUPT_STATUS_BASE)));
+ if (mask)
+ do_IRQ(fls64(mask) - 1, regs);
+- }
++ else
++ spurious_interrupt(regs);
++ } else
++ spurious_interrupt(regs);
+ }
Added: dists/trunk/linux-2.6/debian/patches/bugfix/mips/sb1480_interrupt_fixes.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/mips/sb1480_interrupt_fixes.patch Mon Oct 9 10:04:54 2006
@@ -0,0 +1,23 @@
+From: Ralf Baechle <ralf at linux-mips.org>
+Date: Tue, 3 Oct 2006 13:42:02 +0000 (+0100)
+Subject: [MIPS] BCM1480: Mask pending interrupts against c0_status.im.
+X-Git-Tag: linux-1.1.68
+X-Git-Url: http://www.linux-mips.org/git?p=linux.git;a=commitdiff;h=b1f4fee6a18b48da275920df71b312e01ba973b9
+
+[MIPS] BCM1480: Mask pending interrupts against c0_status.im.
+
+Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
+(cherry picked from f2268c74623b9d82e4fe9b1e0951706c2360109e commit)
+---
+
+--- a/arch/mips/sibyte/bcm1480/irq.c
++++ b/arch/mips/sibyte/bcm1480/irq.c
+@@ -482,7 +482,7 @@ asmlinkage void plat_irq_dispatch(struct
+ write_c0_compare(read_c0_count());
+ #endif
+
+- pending = read_c0_cause();
++ pending = read_c0_cause() & read_c0_status();
+
+ #ifdef CONFIG_SIBYTE_BCM1480_PROF
+ if (pending & CAUSEF_IP7) /* Cpu performance counter interrupt */
Modified: dists/trunk/linux-2.6/debian/patches/series/3
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/series/3 (original)
+++ dists/trunk/linux-2.6/debian/patches/series/3 Mon Oct 9 10:04:54 2006
@@ -1 +1,8 @@
+ alpha-prctl.patch
++ bugfix/mips/o32_fstatat_syscall.patch
++ bugfix/mips/fstatat_syscall_names.patch
++ bugfix/mips/headers_install-add.patch
++ bugfix/mips/sb1250_interrupt_fixes.patch
++ bugfix/mips/sb1480_interrupt_fixes.patch
++ bugfix/mips/cobalt_hz.patch
++ bugfix/mips/real-cpu-cpuinfo.patch
More information about the Kernel-svn-changes
mailing list