[kernel] r11251 - in dists/sid/linux-2.6/debian/patches: bugfix/m68k/2.6.25 series
Christian T. Steigies
cts at alioth.debian.org
Sat May 3 21:04:26 UTC 2008
Author: cts
Date: Sat May 3 21:04:24 2008
New Revision: 11251
Log:
more m68k patches for 2.6.25
Added:
dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/m68k-export-m68k_mmutype.diff
dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/m68k-handle-68040-bus-faults.diff
dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/proc-convert-proc-bus-nubus-to-seq_file-interface.diff
dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/serial167-switch-to-int-put_char-method-update.diff
dists/sid/linux-2.6/debian/patches/series/2-extra
Added: dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/m68k-export-m68k_mmutype.diff
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/m68k-export-m68k_mmutype.diff Sat May 3 21:04:24 2008
@@ -0,0 +1,38 @@
+
+UIO needs m68k_mmutype:
+
+ERROR: "m68k_mmutype" [drivers/uio/uio.ko] undefined!
+
+(noticed by Christian T. Steigies)
+---
+ arch/m68k/kernel/setup.c | 3 ++-
+ include/asm-m68k/setup.h | 2 +-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+--- a/arch/m68k/kernel/setup.c
++++ b/arch/m68k/kernel/setup.c
+@@ -48,11 +48,12 @@
+ #endif
+
+ unsigned long m68k_machtype;
+-unsigned long m68k_cputype;
+ EXPORT_SYMBOL(m68k_machtype);
++unsigned long m68k_cputype;
+ EXPORT_SYMBOL(m68k_cputype);
+ unsigned long m68k_fputype;
+ unsigned long m68k_mmutype;
++EXPORT_SYMBOL(m68k_mmutype);
+ #ifdef CONFIG_VME
+ unsigned long vme_brdtype;
+ EXPORT_SYMBOL(vme_brdtype);
+--- a/include/asm-m68k/setup.h
++++ b/include/asm-m68k/setup.h
+@@ -248,7 +248,7 @@ extern unsigned long m68k_machtype;
+ #ifndef __ASSEMBLY__
+ extern unsigned long m68k_cputype;
+ extern unsigned long m68k_fputype;
+-extern unsigned long m68k_mmutype; /* Not really used yet */
++extern unsigned long m68k_mmutype;
+ #ifdef CONFIG_VME
+ extern unsigned long vme_brdtype;
+ #endif
Added: dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/m68k-handle-68040-bus-faults.diff
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/m68k-handle-68040-bus-faults.diff Sat May 3 21:04:24 2008
@@ -0,0 +1,47 @@
+Subject: [PATCH] m68k: Handle 68040 bus faults
+
+From: Roman Zippel <zippel at linux-m68k.org>
+
+Fix 68040 bus fault handling, so the standard kernel exception handling
+can be used for i/o probing.
+Contrary to normal access faults there is nothing to fix, but at least
+we have to disable writebacks to avoid recursive faults.
+
+Signed-off-by: Roman Zippel <zippel at linux-m68k.org>
+Signed-off-by: Geert Uytterhoeven <geert at linux-m68k.org>
+---
+ arch/m68k/kernel/traps.c | 17 ++++++++++++++---
+ 1 file changed, 14 insertions(+), 3 deletions(-)
+
+--- a/arch/m68k/kernel/traps.c
++++ b/arch/m68k/kernel/traps.c
+@@ -468,15 +468,26 @@ static inline void access_error040(struc
+ * (if do_page_fault didn't fix the mapping,
+ * the writeback won't do good)
+ */
++disable_wb:
+ #ifdef DEBUG
+ printk(".. disabling wb2\n");
+ #endif
+ if (fp->un.fmt7.wb2a == fp->un.fmt7.faddr)
+ fp->un.fmt7.wb2s &= ~WBV_040;
++ if (fp->un.fmt7.wb3a == fp->un.fmt7.faddr)
++ fp->un.fmt7.wb3s &= ~WBV_040;
+ }
+- } else if (send_fault_sig(&fp->ptregs) > 0) {
+- printk("68040 access error, ssw=%x\n", ssw);
+- trap_c(fp);
++ } else {
++ /* In case of a bus error we either kill the process or expect
++ * the kernel to catch the fault, which then is also responsible
++ * for cleaning up the mess.
++ */
++ current->thread.signo = SIGBUS;
++ current->thread.faddr = fp->un.fmt7.faddr;
++ if (send_fault_sig(&fp->ptregs) >= 0)
++ printk("68040 bus error (ssw=%x, faddr=%lx)\n", ssw,
++ fp->un.fmt7.faddr);
++ goto disable_wb;
+ }
+
+ do_040writebacks(fp);
Added: dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/proc-convert-proc-bus-nubus-to-seq_file-interface.diff
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/proc-convert-proc-bus-nubus-to-seq_file-interface.diff Sat May 3 21:04:24 2008
@@ -0,0 +1,99 @@
+From akpm at linux-foundation.org Thu Apr 10 23:46:00 2008
+Date: Thu, 10 Apr 2008 14:34:55 -0700
+From: akpm at linux-foundation.org
+To: mm-commits at vger.kernel.org
+Cc: adobriyan at sw.ru, geert at linux-m68k.org
+Subject: + proc-convert-proc-bus-nubus-to-seq_file-interface.patch added to -mm tree
+
+
+The patch titled
+ proc: convert /proc/bus/nubus to seq_file interface
+has been added to the -mm tree. Its filename is
+ proc-convert-proc-bus-nubus-to-seq_file-interface.patch
+
+Before you just go and hit "reply", please:
+ a) Consider who else should be cc'ed
+ b) Prefer to cc a suitable mailing list as well
+ c) Ideally: find the original patch on the mailing list and do a
+ reply-to-all to that, adding suitable additional cc's
+
+---
+ drivers/nubus/proc.c | 42 ++++++++++++++++++++----------------------
+ 1 file changed, 20 insertions(+), 22 deletions(-)
+
+--- a/drivers/nubus/proc.c
++++ b/drivers/nubus/proc.c
+@@ -21,6 +21,7 @@
+ #include <linux/kernel.h>
+ #include <linux/nubus.h>
+ #include <linux/proc_fs.h>
++#include <linux/seq_file.h>
+ #include <linux/init.h>
+ #include <linux/module.h>
+
+@@ -28,38 +29,36 @@
+ #include <asm/byteorder.h>
+
+ static int
+-get_nubus_dev_info(char *buf, char **start, off_t pos, int count)
++nubus_devices_proc_show(struct seq_file *m, void *v)
+ {
+ struct nubus_dev *dev = nubus_devices;
+- off_t at = 0;
+- int len, cnt;
+
+- cnt = 0;
+- while (dev && count > cnt) {
+- len = sprintf(buf, "%x\t%04x %04x %04x %04x",
++ while (dev) {
++ seq_printf(m, "%x\t%04x %04x %04x %04x",
+ dev->board->slot,
+ dev->category,
+ dev->type,
+ dev->dr_sw,
+ dev->dr_hw);
+- len += sprintf(buf+len,
+- "\t%08lx",
+- dev->board->slot_addr);
+- buf[len++] = '\n';
+- at += len;
+- if (at >= pos) {
+- if (!*start) {
+- *start = buf + (pos - (at - len));
+- cnt = at - pos;
+- } else
+- cnt += len;
+- buf += len;
+- }
++ seq_printf(m, "\t%08lx\n", dev->board->slot_addr);
+ dev = dev->next;
+ }
+- return (count > cnt) ? cnt : count;
++ return 0;
++}
++
++static int nubus_devices_proc_open(struct inode *inode, struct file *file)
++{
++ return single_open(file, nubus_devices_proc_show, NULL);
+ }
+
++static const struct file_operations nubus_devices_proc_fops = {
++ .owner = THIS_MODULE,
++ .open = nubus_devices_proc_open,
++ .read = seq_read,
++ .llseek = seq_lseek,
++ .release = single_release,
++};
++
+ static struct proc_dir_entry *proc_bus_nubus_dir;
+
+ static void nubus_proc_subdir(struct nubus_dev* dev,
+@@ -172,7 +171,6 @@ void __init nubus_proc_init(void)
+ if (!MACH_IS_MAC)
+ return;
+ proc_bus_nubus_dir = proc_mkdir("nubus", proc_bus);
+- create_proc_info_entry("devices", 0, proc_bus_nubus_dir,
+- get_nubus_dev_info);
++ proc_create("devices", 0, proc_bus_nubus_dir, &nubus_devices_proc_fops);
+ proc_bus_nubus_add_devices();
+ }
Added: dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/serial167-switch-to-int-put_char-method-update.diff
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/bugfix/m68k/2.6.25/serial167-switch-to-int-put_char-method-update.diff Sat May 3 21:04:24 2008
@@ -0,0 +1,21 @@
+
+commit a5b08c66194fba02a865b397579b7204688bcb1e
+Author: Alan Cox <alan at lxorguk.ukuu.org.uk>
+Date: Wed Apr 30 00:54:05 2008 -0700
+
+serial167: switch to int put_char method
+---
+ drivers/char/serial167.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/char/serial167.c
++++ b/drivers/char/serial167.c
+@@ -1073,7 +1073,7 @@ static int cy_put_char(struct tty_struct
+ return 0;
+
+ if (!info->xmit_buf)
+- return;
++ return 0;
+
+ local_irq_save(flags);
+ if (info->xmit_cnt >= PAGE_SIZE - 1) {
Added: dists/sid/linux-2.6/debian/patches/series/2-extra
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/series/2-extra Sat May 3 21:04:24 2008
@@ -0,0 +1,70 @@
+# --- integrated in 2.6.26-rc1 ---
+# fails to apply + bugfix/m68k/2.6.25/HTC_PASIC3-depends-on-ARCH_PXA.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-new-mac_esp-driver.diff arch=m68k
++ bugfix/m68k/2.6.25/proc-convert-proc-bus-nubus-to-seq_file-interface.diff arch=m68k
++ bugfix/m68k/2.6.25/proc-switch-proc-bus-zorro-devices-to-seq_file-interface.diff arch=m68k
+
+# --- submitted for 2.6.26 ---
++ bugfix/m68k/2.6.25/m68k-convert-access_ok-to-inline-func.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-kill-CONFIG_FB_DAFB.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-correct-FB_HP300-dependencies.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-whippet-serial-no-longer-exists.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-vme_scc-globals.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-silence-BUG-can-return-warnings.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-hp300-breaks-multi-platform.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-macide-breaks-multi-platform.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-dnfb-breaks-multi-platform.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-net-drivers-break-multiplatform.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-input-drivers-break-multiplatform.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-initcalls-should-return-ENODEV-if-device-not-found.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-q40-floppy-is-broken.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-update-defconfig.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-add-multi_defconfig.diff arch=m68k
+
+# --- pending ---
++ bugfix/m68k/2.6.25/m68k-initrd-fix.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-replace-linux-68k-by-linux-m68k.diff arch=m68k
++ bugfix/m68k/2.6.25/633-atari_scc.diff arch=m68k
++ bugfix/m68k/2.6.25/130-adbraw.diff arch=m68k
++ bugfix/m68k/2.6.25/134-atari-fat.diff arch=m68k
++ bugfix/m68k/2.6.25/141-ide.diff arch=m68k
++ bugfix/m68k/2.6.25/143-ioext.diff arch=m68k
++ bugfix/m68k/2.6.25/149-mc68681.diff arch=m68k
++ bugfix/m68k/2.6.25/152-pci.diff arch=m68k
++ bugfix/m68k/2.6.25/478-serial.diff arch=m68k
++ bugfix/m68k/2.6.25/atari-rom-isa.diff arch=m68k
++ bugfix/m68k/2.6.25/atari-ethernec.diff arch=m68k
++ bugfix/m68k/2.6.25/atari-aranym.diff arch=m68k
++ bugfix/m68k/2.6.25/atari-ethernat.diff arch=m68k
++ bugfix/m68k/2.6.25/falconide_intr_lock-ratelimit.diff arch=m68k
++ bugfix/m68k/2.6.25/zorro-module-device-table.diff arch=m68k
++ bugfix/m68k/2.6.25/blinux-list-is-subscribers-only.diff arch=m68k
++ bugfix/m68k/2.6.25/b43-depends-on-HAS_DMA.diff arch=m68k
++ bugfix/m68k/2.6.25/amiga-debug=mem.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-scsi-HOST_C-cleanup.diff arch=m68k
++ bugfix/m68k/2.6.25/amiga-platform-device.diff arch=m68k
++ bugfix/m68k/2.6.25/atari-platform-device.diff arch=m68k
++ bugfix/m68k/2.6.25/mac-platform-device.diff arch=m68k
++ bugfix/m68k/2.6.25/amiga-platform-device2.diff arch=m68k
++ bugfix/m68k/2.6.25/ext4-bitops-fix.diff arch=m68k
++ bugfix/m68k/2.6.25/net-b44-no-pci.diff arch=m68k
++ bugfix/m68k/2.6.25/amifb-add-ami_modedb-to-modelist.diff arch=m68k
++ bugfix/m68k/2.6.25/atafb-cfb16.diff arch=m68k
++ bugfix/m68k/2.6.25/atafb-line_length.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-vmlinux-std_sun3.lds.S_cleanup_use_PAGE_SIZE_macro.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-allnoconfig.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-noswap-linux-swap-h-needs-linux-pagemap-h.diff arch=m68k
++ bugfix/m68k/2.6.25/fb-CONFIG_FB_DEFERRED_IO-should-default-to-n.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-isa-type-name-conflicts.diff arch=m68k
++ bugfix/m68k/2.6.25/ext4-adilger-bounces.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-ethernec-dynamic.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-ethernat-breaks-multi-platform.diff arch=m68k
++ bugfix/m68k/2.6.25/atari-ethernat-updates.diff arch=m68k
+# fails to apply + bugfix/m68k/2.6.25/m68k-remove-traditional.diff arch=m68k
++ bugfix/m68k/2.6.25/drivers-input-serio-hp_sdc.c-needs-linux-semaphore.h.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-update-defconfig-latest.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-handle-68040-bus-faults.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-skip-writebacks-for-bus-errors.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-remove-old-mac_esp-cruft.diff arch=m68k
++ bugfix/m68k/2.6.25/serial167-switch-to-int-put_char-method-update.diff arch=m68k
++ bugfix/m68k/2.6.25/m68k-export-m68k_mmutype.diff arch=m68k
More information about the Kernel-svn-changes
mailing list