[PATCH] 2.5.22: s390 fixes.

From: Martin Schwidefsky (martin.schwidefsky@debitel.net)
Date: Mon Jun 17 2002 - 17:21:14 EST


Hi Linus,
some recent changes in the s390 architectures files:
1) Makefile fixes.
2) Add missing include statements.
3) Convert all parametes in the 31 bit emulation wrapper of sys_futex.
4) Remove semicolons after 'fi' in Config.in
5) Fix scheduler defines in system.h
6) Simplifications in qdio.c

blue skies,
  Martin.

diff -urN linux-2.5.22/arch/s390/math-emu/Makefile linux-2.5.22-s390/arch/s390/math-emu/Makefile
--- linux-2.5.22/arch/s390/math-emu/Makefile Mon Jun 17 17:10:11 2002
+++ linux-2.5.22-s390/arch/s390/math-emu/Makefile Mon Jun 17 17:25:12 2002
@@ -6,6 +6,7 @@
 obj-$(CONFIG_MATHEMU) := math.o qrnnd.o
 
 EXTRA_CFLAGS = -I. -I$(TOPDIR)/include/math-emu -w
+EXTRA_AFLAGS := -traditional
 
 include $(TOPDIR)/Rules.make
 
diff -urN linux-2.5.22/arch/s390/mm/ioremap.c linux-2.5.22-s390/arch/s390/mm/ioremap.c
--- linux-2.5.22/arch/s390/mm/ioremap.c Mon Jun 17 17:10:11 2002
+++ linux-2.5.22-s390/arch/s390/mm/ioremap.c Mon Jun 17 17:25:12 2002
@@ -14,6 +14,7 @@
  */
 
 #include <linux/vmalloc.h>
+#include <linux/mm.h>
 #include <asm/io.h>
 #include <asm/pgalloc.h>
 #include <asm/cacheflush.h>
diff -urN linux-2.5.22/arch/s390x/kernel/wrapper32.S linux-2.5.22-s390/arch/s390x/kernel/wrapper32.S
--- linux-2.5.22/arch/s390x/kernel/wrapper32.S Mon Jun 17 17:10:11 2002
+++ linux-2.5.22-s390/arch/s390x/kernel/wrapper32.S Mon Jun 17 17:25:12 2002
@@ -1112,6 +1112,8 @@
 sys32_futex_wrapper:
         llgtr %r2,%r2 # void *
         lgfr %r3,%r3 # int
+ lgfr %r4,%r4 # int
+ llgtr %r5,%r5 # struct timespec *
         jg sys_futex # branch to system call
 
         .globl sys32_setxattr_wrapper
diff -urN linux-2.5.22/arch/s390x/mm/ioremap.c linux-2.5.22-s390/arch/s390x/mm/ioremap.c
--- linux-2.5.22/arch/s390x/mm/ioremap.c Mon Jun 17 17:10:11 2002
+++ linux-2.5.22-s390/arch/s390x/mm/ioremap.c Mon Jun 17 17:25:12 2002
@@ -14,6 +14,7 @@
  */
 
 #include <linux/vmalloc.h>
+#include <linux/mm.h>
 #include <asm/io.h>
 #include <asm/pgalloc.h>
 #include <asm/cacheflush.h>
diff -urN linux-2.5.22/drivers/s390/Config.in linux-2.5.22-s390/drivers/s390/Config.in
--- linux-2.5.22/drivers/s390/Config.in Mon Jun 17 17:10:11 2002
+++ linux-2.5.22-s390/drivers/s390/Config.in Mon Jun 17 17:25:12 2002
@@ -17,18 +17,18 @@
   dep_tristate ' Support for ECKD Disks' CONFIG_DASD_ECKD $CONFIG_DASD
   if [ "$CONFIG_DASD_ECKD" = "m" ]; then
     bool ' Automatic activation of ECKD module' CONFIG_DASD_AUTO_ECKD
- fi;
+ fi
   dep_tristate ' Support for FBA Disks' CONFIG_DASD_FBA $CONFIG_DASD
   if [ "$CONFIG_DASD_FBA" = "m" ]; then
     bool ' Automatic activation of FBA module' CONFIG_DASD_AUTO_FBA
- fi;
+ fi
 # dep_tristate ' Support for CKD Disks' CONFIG_DASD_CKD $CONFIG_DASD
   if [ "$CONFIG_ARCH_S390X" != "y" ]; then
     dep_tristate ' Support for DIAG access to CMS reserved Disks' CONFIG_DASD_DIAG $CONFIG_DASD
     if [ "$CONFIG_DASD_DIAG" = "m" ]; then
       bool ' Automatic activation of DIAG module' CONFIG_DASD_AUTO_DIAG
- fi;
- fi;
+ fi
+ fi
 fi
 
 endmenu
diff -urN linux-2.5.22/drivers/s390/Makefile linux-2.5.22-s390/drivers/s390/Makefile
--- linux-2.5.22/drivers/s390/Makefile Mon Jun 17 04:31:32 2002
+++ linux-2.5.22-s390/drivers/s390/Makefile Mon Jun 17 17:25:20 2002
@@ -7,6 +7,6 @@
 obj-$(CONFIG_QDIO) += qdio.o
 
 obj-y += s390mach.o s390dyn.o sysinfo.o
-obj-y += block/ char/ misc/ net/ scsi/ cio/
+obj-y += block/ char/ misc/ net/ cio/
 
 include $(TOPDIR)/Rules.make
diff -urN linux-2.5.22/drivers/s390/qdio.c linux-2.5.22-s390/drivers/s390/qdio.c
--- linux-2.5.22/drivers/s390/qdio.c Mon Jun 17 17:10:11 2002
+++ linux-2.5.22-s390/drivers/s390/qdio.c Mon Jun 17 17:25:12 2002
@@ -61,9 +61,7 @@
 MODULE_AUTHOR("Utz Bacher <utz.bacher@de.ibm.com>");
 MODULE_DESCRIPTION("QDIO base support version 2, " \
                    "Copyright 2000 IBM Corporation");
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,12))
 MODULE_LICENSE("GPL");
-#endif
 
 /******************** HERE WE GO ***********************************/
 
@@ -1584,7 +1582,7 @@
                         kfree(irq_ptr->input_qs[i]);
 
 next:
- if (!irq_ptr->output_qs[i]) goto next2;
+ if (!irq_ptr->output_qs[i]) continue;
                 available=0;
                 if (!irq_ptr->output_qs[i]->is_0copy_sbals_q)
                         for (j=0;j<QDIO_MAX_BUFFERS_PER_Q;j++) {
@@ -1599,7 +1597,7 @@
                 if (irq_ptr->output_qs[i]->slib)
                         kfree(irq_ptr->output_qs[i]->slib);
                 kfree(irq_ptr->output_qs[i]);
-next2:
+
         }
         if (irq_ptr->qdr) kfree(irq_ptr->qdr);
         kfree(irq_ptr);
@@ -2191,21 +2189,12 @@
 {
         int cc;
 
-#ifdef QDIO_32_BIT
- asm volatile (
- ".insn rre,0xb25f0000,%1,0 \n\t"
- "ipm %0 \n\t"
- "srl %0,28 \n\t"
- : "=d" (cc) : "d" (chsc_area) : "cc"
- );
-#else /* QDIO_32_BIT */
         asm volatile (
                 ".insn rre,0xb25f0000,%1,0 \n\t"
                 "ipm %0 \n\t"
                 "srl %0,28 \n\t"
                 : "=d" (cc) : "d" (chsc_area) : "cc"
                 );
-#endif /* QDIO_32_BIT */
 
         return cc;
 }
diff -urN linux-2.5.22/include/asm-s390/system.h linux-2.5.22-s390/include/asm-s390/system.h
--- linux-2.5.22/include/asm-s390/system.h Mon Jun 17 17:10:11 2002
+++ linux-2.5.22-s390/include/asm-s390/system.h Mon Jun 17 17:25:12 2002
@@ -18,8 +18,12 @@
 #endif
 #include <linux/kernel.h>
 
-#define prepare_to_switch() do { } while(0)
-#define switch_to(prev,next) do { \
+#define prepare_arch_schedule(prev) do { } while (0)
+#define finish_arch_schedule(prev) do { } while (0)
+#define prepare_arch_switch(rq) do { } while (0)
+#define finish_arch_switch(rq) spin_unlock_irq(&(rq)->lock)
+
+#define switch_to(prev,next,last) do { \
         if (prev == next) \
                 break; \
         save_fp_regs1(&prev->thread.fp_regs); \
diff -urN linux-2.5.22/include/asm-s390x/system.h linux-2.5.22-s390/include/asm-s390x/system.h
--- linux-2.5.22/include/asm-s390x/system.h Mon Jun 17 17:10:11 2002
+++ linux-2.5.22-s390/include/asm-s390x/system.h Mon Jun 17 17:25:12 2002
@@ -18,8 +18,12 @@
 #endif
 #include <linux/kernel.h>
 
-#define prepare_to_switch() do { } while(0)
-#define switch_to(prev,next) do { \
+#define prepare_arch_schedule(prev) do { } while (0)
+#define finish_arch_schedule(prev) do { } while (0)
+#define prepare_arch_switch(rq) do { } while (0)
+#define finish_arch_switch(rq) spin_unlock_irq(&(rq)->lock)
+
+#define switch_to(prev,next),last do { \
         if (prev == next) \
                 break; \
         save_fp_regs(&prev->thread.fp_regs); \
-
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 : Sun Jun 23 2002 - 22:00:14 EST