Patch to make 2.4.13 compile on s390

From: Pete Zaitcev (zaitcev@redhat.com)
Date: Mon Oct 29 2001 - 01:52:10 EST


Someone broke s390 and s390x, it did not even compile.
Do we actually have a maintainer for that thing?
Or do we blindly apply whatever IBM bestows?

MAINTAINERS lists some e-mails and lists for s390, but I did
not receive any replies from those people. Must have
been eaten by evil Lotus or something...

-- Pete

diff -ur -X dontdiff linux-2.4.13-0.2/Makefile linux-2.4.13-0.2-t1/Makefile
--- linux-2.4.13-0.2/Makefile Mon Oct 29 04:28:50 2001
+++ linux-2.4.13-0.2-t1/Makefile Mon Oct 29 05:00:08 2001
diff -ur -X dontdiff linux-2.4.13-0.2/arch/s390/config.in linux-2.4.13-0.2-t1/arch/s390/config.in
--- linux-2.4.13-0.2/arch/s390/config.in Mon Oct 29 04:28:40 2001
+++ linux-2.4.13-0.2-t1/arch/s390/config.in Mon Oct 29 06:22:48 2001
@@ -10,6 +10,7 @@
 define_bool CONFIG_RWSEM_GENERIC_SPINLOCK y
 define_bool CONFIG_RWSEM_XCHGADD_ALGORITHM n
 define_bool CONFIG_GENERIC_BUST_SPINLOCK n
+define_bool CONFIG_GENERIC_ISA_DMA y
 
 mainmenu_name "Linux Kernel Configuration"
 define_bool CONFIG_ARCH_S390 y
diff -ur -X dontdiff linux-2.4.13-0.2/arch/s390/mm/fault.c linux-2.4.13-0.2-t1/arch/s390/mm/fault.c
--- linux-2.4.13-0.2/arch/s390/mm/fault.c Thu Oct 11 18:04:57 2001
+++ linux-2.4.13-0.2-t1/arch/s390/mm/fault.c Mon Oct 29 07:19:03 2001
@@ -30,6 +30,7 @@
 #include <asm/uaccess.h>
 #include <asm/pgtable.h>
 #include <asm/hardirq.h>
+#include <asm/setup.h>
 
 #ifdef CONFIG_SYSCTL
 extern int sysctl_userprocess_debug;
@@ -38,7 +39,9 @@
 extern void die(const char *,struct pt_regs *,long);
 static void force_sigsegv(struct task_struct *tsk, int code, void *address);
 
+#if 0 /* #ifdef CONFIG_HWC_CONSOLE */ /* Ask IBM to fix XXX */
 extern spinlock_t timerlist_lock;
+#endif
 
 /*
  * Unlock any spinlocks which will prevent us from getting the
@@ -47,13 +50,18 @@
  */
 void bust_spinlocks(int yes)
 {
- spin_lock_init(&timerlist_lock);
+#if 0 /* #ifdef CONFIG_HWC_CONSOLE */ /* Ask IBM to fix XXX */
+ spin_lock_init(&timerlist_lock); /* Does not link... */
+#endif
         if (yes) {
                 oops_in_progress = 1;
         } else {
                 int loglevel_save = console_loglevel;
                 oops_in_progress = 0;
- console_unblank();
+#ifdef CONFIG_HWC_CONSOLE
+ if (CONSOLE_IS_HWC)
+ hwc_console_unblank();
+#endif
                 /*
                  * OK, the message is on the console. Now we call printk()
                  * without oops_in_progress set so that printk will give klogd
diff -ur -X dontdiff linux-2.4.13-0.2/fs/partitions/ibm.c linux-2.4.13-0.2-t1/fs/partitions/ibm.c
--- linux-2.4.13-0.2/fs/partitions/ibm.c Tue Oct 2 05:03:26 2001
+++ linux-2.4.13-0.2-t1/fs/partitions/ibm.c Mon Oct 29 05:48:53 2001
@@ -123,7 +123,7 @@
                                             GFP_KERNEL);
         if ( geo == NULL )
                 return 0;
- if (ioctl_by_bdev(bdev, HDIO_GETGEO, (unsigned long)geo);
+ if (ioctl_by_bdev(bdev, HDIO_GETGEO, (unsigned long)geo))
                 return 0;
         blocksize = hardsect_size[MAJOR(dev)][MINOR(dev)];
         if ( blocksize <= 0 ) {
@@ -131,7 +131,7 @@
         }
         blocksize >>= 9;
         
- data = read_dev_sector(bdev, inode->label_block*blocksize, &sect);
+ data = read_dev_sector(bdev, info->label_block*blocksize, &sect);
         if (!data)
                 return 0;
 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Oct 31 2001 - 21:00:36 EST