
From: Martin Schwidefsky <schwidefsky@de.ibm.com>

s390 general update:

- Add archhelp for "make image".

- 32-bit execve fix.

- Export some symbols: sys_ioctl, put_files_struct & ccw_device_work.

- Minor cleanups in arch/s390/mm/init.c & drivers/s390/net/ctctty.c.



---

 25-akpm/arch/s390/Makefile              |    5 +++++
 25-akpm/arch/s390/defconfig             |    1 +
 25-akpm/arch/s390/kernel/compat_linux.c |    3 ++-
 25-akpm/arch/s390/kernel/s390_ksyms.c   |    2 ++
 25-akpm/arch/s390/mm/init.c             |    2 --
 25-akpm/drivers/s390/cio/device.c       |    1 +
 25-akpm/drivers/s390/net/ctctty.c       |    6 ++----
 25-akpm/kernel/exit.c                   |    2 ++
 8 files changed, 15 insertions(+), 7 deletions(-)

diff -puN arch/s390/defconfig~s390-general-update arch/s390/defconfig
--- 25/arch/s390/defconfig~s390-general-update	Wed Jan 28 13:12:51 2004
+++ 25-akpm/arch/s390/defconfig	Wed Jan 28 13:12:51 2004
@@ -147,6 +147,7 @@ CONFIG_MD_LINEAR=m
 CONFIG_MD_RAID0=m
 CONFIG_MD_RAID1=m
 CONFIG_MD_RAID5=m
+# CONFIG_MD_RAID6 is not set
 CONFIG_MD_MULTIPATH=m
 # CONFIG_BLK_DEV_DM is not set
 
diff -puN arch/s390/kernel/compat_linux.c~s390-general-update arch/s390/kernel/compat_linux.c
--- 25/arch/s390/kernel/compat_linux.c~s390-general-update	Wed Jan 28 13:12:51 2004
+++ 25-akpm/arch/s390/kernel/compat_linux.c	Wed Jan 28 13:12:51 2004
@@ -1912,7 +1912,8 @@ out:
 		security_bprm_free(&bprm);
 
 out_mm:
-	mmdrop(bprm.mm);
+	if (bprm.mm)
+		mmdrop(bprm.mm);
 
 out_file:
 	if (bprm.file) {
diff -puN arch/s390/kernel/s390_ksyms.c~s390-general-update arch/s390/kernel/s390_ksyms.c
--- 25/arch/s390/kernel/s390_ksyms.c~s390-general-update	Wed Jan 28 13:12:51 2004
+++ 25-akpm/arch/s390/kernel/s390_ksyms.c	Wed Jan 28 13:12:51 2004
@@ -9,6 +9,7 @@
 #include <linux/mm.h>
 #include <linux/smp.h>
 #include <linux/interrupt.h>
+#include <linux/ioctl32.h>
 #include <asm/checksum.h>
 #include <asm/cpcmd.h>
 #include <asm/delay.h>
@@ -74,4 +75,5 @@ EXPORT_SYMBOL(console_device);
 EXPORT_SYMBOL_NOVERS(do_call_softirq);
 EXPORT_SYMBOL(sys_wait4);
 EXPORT_SYMBOL(cpcmd);
+EXPORT_SYMBOL(sys_ioctl);
 
diff -puN arch/s390/Makefile~s390-general-update arch/s390/Makefile
--- 25/arch/s390/Makefile~s390-general-update	Wed Jan 28 13:12:51 2004
+++ 25-akpm/arch/s390/Makefile	Wed Jan 28 13:12:51 2004
@@ -70,3 +70,8 @@ include/asm-$(ARCH)/offsets.h: arch/$(AR
 	$(call filechk,gen-asm-offsets)
 
 CLEAN_FILES += include/asm-$(ARCH)/offsets.h
+
+# Don't use tabs in echo arguments
+define archhelp
+  echo  '* image           - Kernel image for IPL ($(boot)/image)'
+endef
diff -puN arch/s390/mm/init.c~s390-general-update arch/s390/mm/init.c
--- 25/arch/s390/mm/init.c~s390-general-update	Wed Jan 28 13:12:51 2004
+++ 25-akpm/arch/s390/mm/init.c	Wed Jan 28 13:12:51 2004
@@ -79,8 +79,6 @@ extern unsigned long __init_end;
  * paging_init() sets up the page tables
  */
 
-unsigned long last_valid_pfn;
-
 #ifndef CONFIG_ARCH_S390X
 void __init paging_init(void)
 {
diff -puN drivers/s390/cio/device.c~s390-general-update drivers/s390/cio/device.c
--- 25/drivers/s390/cio/device.c~s390-general-update	Wed Jan 28 13:12:51 2004
+++ 25-akpm/drivers/s390/cio/device.c	Wed Jan 28 13:12:51 2004
@@ -908,3 +908,4 @@ EXPORT_SYMBOL(ccw_driver_register);
 EXPORT_SYMBOL(ccw_driver_unregister);
 EXPORT_SYMBOL(get_ccwdev_by_busid);
 EXPORT_SYMBOL(ccw_bus_type);
+EXPORT_SYMBOL(ccw_device_work);
diff -puN drivers/s390/net/ctctty.c~s390-general-update drivers/s390/net/ctctty.c
--- 25/drivers/s390/net/ctctty.c~s390-general-update	Wed Jan 28 13:12:51 2004
+++ 25-akpm/drivers/s390/net/ctctty.c	Wed Jan 28 13:12:51 2004
@@ -1,5 +1,5 @@
 /*
- * $Id: ctctty.c,v 1.14 2003/10/06 11:33:33 mschwide Exp $
+ * $Id: ctctty.c,v 1.15 2004/01/26 10:21:01 mschwide Exp $
  *
  * CTC / ESCON network driver, tty interface.
  *
@@ -744,9 +744,7 @@ ctc_tty_ioctl(struct tty_struct *tty, st
 			       info->line);
 #endif
 			error = put_user(C_CLOCAL(tty) ? 1 : 0, (ulong *) arg);
-			if (error)
-				return error;
-			return 0;
+			return error;
 		case TIOCSSOFTCAR:
 #ifdef CTC_DEBUG_MODEM_IOCTL
 			printk(KERN_DEBUG "%s%d ioctl TIOCSSOFTCAR\n", CTC_TTY_NAME,
diff -puN kernel/exit.c~s390-general-update kernel/exit.c
--- 25/kernel/exit.c~s390-general-update	Wed Jan 28 13:12:51 2004
+++ 25-akpm/kernel/exit.c	Wed Jan 28 13:12:51 2004
@@ -403,6 +403,8 @@ void put_files_struct(struct files_struc
 	}
 }
 
+EXPORT_SYMBOL(put_files_struct);
+
 static inline void __exit_files(struct task_struct *tsk)
 {
 	struct files_struct * files = tsk->files;

_
