All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch 0/6] s390 patches for 2.6.22
@ 2007-06-19  8:45 Martin Schwidefsky
  2007-06-19  8:45 ` [patch 1/6] Missing blank when appending cio_ignore kernel parameter Martin Schwidefsky
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: Martin Schwidefsky @ 2007-06-19  8:45 UTC (permalink / raw)
  To: linux-kernel, linux-s390

Last s390 bug fix patches for 2.6.22.

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [patch 1/6] Missing blank when appending cio_ignore kernel parameter
  2007-06-19  8:45 [patch 0/6] s390 patches for 2.6.22 Martin Schwidefsky
@ 2007-06-19  8:45 ` Martin Schwidefsky
  2007-06-19  8:45 ` [patch 2/6] Fix zfcpdump header Martin Schwidefsky
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Martin Schwidefsky @ 2007-06-19  8:45 UTC (permalink / raw)
  To: linux-kernel, linux-s390; +Cc: Michael Holzheu, Martin Schwidefsky

[-- Attachment #1: 001-dumper.diff --]
[-- Type: text/plain, Size: 901 bytes --]

From: Michael Holzheu <holzheu@de.ibm.com>

When appending the 'cio_ignore' kernel parameter to the command line, a blank
has to be inserted in order to separate 'cio_ignore' from the preceding kernel
parameters.

Signed-off-by: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---

 arch/s390/kernel/setup.c |    1 +
 1 file changed, 1 insertion(+)

Index: quilt-2.6/arch/s390/kernel/setup.c
===================================================================
--- quilt-2.6.orig/arch/s390/kernel/setup.c
+++ quilt-2.6/arch/s390/kernel/setup.c
@@ -300,6 +300,7 @@ static void __init setup_zfcpdump(unsign
 	else
 		sprintf(str, "cio_ignore=all,!0.0.%04x",
 			ipl_info.data.fcp.dev_id.devno);
+	strcat(COMMAND_LINE, " ");
 	strcat(COMMAND_LINE, str);
 	console_loglevel = 2;
 }

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [patch 2/6] Fix zfcpdump header
  2007-06-19  8:45 [patch 0/6] s390 patches for 2.6.22 Martin Schwidefsky
  2007-06-19  8:45 ` [patch 1/6] Missing blank when appending cio_ignore kernel parameter Martin Schwidefsky
@ 2007-06-19  8:45 ` Martin Schwidefsky
  2007-06-19  8:45 ` [patch 3/6] Fix yet another two section mismatches Martin Schwidefsky
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Martin Schwidefsky @ 2007-06-19  8:45 UTC (permalink / raw)
  To: linux-kernel, linux-s390; +Cc: Michael Holzheu, Martin Schwidefsky

[-- Attachment #1: 002-zfcp-dumphdr.diff --]
[-- Type: text/plain, Size: 1069 bytes --]

From: Michael Holzheu <holzheu@de.ibm.com>

Added members for volume number and real memory size to header information.

Signed-off-by: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---

 drivers/s390/char/zcore.c |    3 +++
 1 file changed, 3 insertions(+)

Index: quilt-2.6/drivers/s390/char/zcore.c
===================================================================
--- quilt-2.6.orig/drivers/s390/char/zcore.c
+++ quilt-2.6/drivers/s390/char/zcore.c
@@ -267,7 +267,9 @@ struct zcore_header {
 	u64 tod;
 	cpuid_t cpu_id;
 	u32 arch_id;
+	u32 volnr;
 	u32 build_arch;
+	u64 rmem_size;
 	char pad2[4016];
 } __attribute__((packed,__aligned__(16)));
 
@@ -559,6 +561,7 @@ static void __init zcore_header_init(int
 	else
 		hdr->arch_id = DUMP_ARCH_S390;
 	hdr->mem_size = sys_info.mem_size;
+	hdr->rmem_size = sys_info.mem_size;
 	hdr->mem_end = sys_info.mem_size;
 	hdr->num_pages = sys_info.mem_size / PAGE_SIZE;
 	hdr->tod = get_clock();

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [patch 3/6] Fix yet another two section mismatches.
  2007-06-19  8:45 [patch 0/6] s390 patches for 2.6.22 Martin Schwidefsky
  2007-06-19  8:45 ` [patch 1/6] Missing blank when appending cio_ignore kernel parameter Martin Schwidefsky
  2007-06-19  8:45 ` [patch 2/6] Fix zfcpdump header Martin Schwidefsky
@ 2007-06-19  8:45 ` Martin Schwidefsky
  2007-06-19  8:45 ` [patch 4/6] Print list of modules on die() Martin Schwidefsky
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Martin Schwidefsky @ 2007-06-19  8:45 UTC (permalink / raw)
  To: linux-kernel, linux-s390; +Cc: Heiko Carstens, Martin Schwidefsky

[-- Attachment #1: 003-sections.diff --]
[-- Type: text/plain, Size: 3222 bytes --]

From: Heiko Carstens <heiko.carstens@de.ibm.com>

WARNING: arch/s390/kernel/built-in.o(.text+0xb92a):
	 Section mismatch: reference to .init.text:start_secondary
	 (between 'restart_addr' and 'stack_overflow')
WARNING: arch/s390/appldata/built-in.o(.data+0xdc):
	 Section mismatch: reference to .init.text:
	 (between 'appldata_nb' and 'appldata_timer_lock')

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---

 arch/s390/appldata/appldata_base.c |    5 ++---
 arch/s390/kernel/entry.S           |    8 +++++++-
 arch/s390/kernel/entry64.S         |    8 +++++++-
 3 files changed, 16 insertions(+), 5 deletions(-)

Index: quilt-2.6/arch/s390/appldata/appldata_base.c
===================================================================
--- quilt-2.6.orig/arch/s390/appldata/appldata_base.c
+++ quilt-2.6/arch/s390/appldata/appldata_base.c
@@ -535,8 +535,7 @@ void appldata_unregister_ops(struct appl
 
 /******************************* init / exit *********************************/
 
-static void
-appldata_online_cpu(int cpu)
+static void __cpuinit appldata_online_cpu(int cpu)
 {
 	init_virt_timer(&per_cpu(appldata_timer, cpu));
 	per_cpu(appldata_timer, cpu).function = appldata_timer_function;
@@ -580,7 +579,7 @@ appldata_cpu_notify(struct notifier_bloc
 	return NOTIFY_OK;
 }
 
-static struct notifier_block appldata_nb = {
+static struct notifier_block __cpuinitdata appldata_nb = {
 	.notifier_call = appldata_cpu_notify,
 };
 
Index: quilt-2.6/arch/s390/kernel/entry64.S
===================================================================
--- quilt-2.6.orig/arch/s390/kernel/entry64.S
+++ quilt-2.6/arch/s390/kernel/entry64.S
@@ -745,10 +745,13 @@ mcck_return:
 #endif
 	lpswe	__LC_RETURN_MCCK_PSW	# back to caller
 
-#ifdef CONFIG_SMP
 /*
  * Restart interruption handler, kick starter for additional CPUs
  */
+#ifdef CONFIG_SMP
+#ifndef CONFIG_HOTPLUG_CPU
+	.section .init.text,"ax"
+#endif
 	.globl restart_int_handler
 restart_int_handler:
 	lg	%r15,__LC_SAVE_AREA+120 # load ksp
@@ -759,6 +762,9 @@ restart_int_handler:
 	lmg	%r6,%r15,__SF_GPRS(%r15) # load registers from clone
 	stosm	__SF_EMPTY(%r15),0x04	# now we can turn dat on
 	jg	start_secondary
+#ifndef CONFIG_HOTPLUG_CPU
+	.previous
+#endif
 #else
 /*
  * If we do not run with SMP enabled, let the new CPU crash ...
Index: quilt-2.6/arch/s390/kernel/entry.S
===================================================================
--- quilt-2.6.orig/arch/s390/kernel/entry.S
+++ quilt-2.6/arch/s390/kernel/entry.S
@@ -769,10 +769,13 @@ mcck_return:
 
 	RESTORE_ALL __LC_RETURN_MCCK_PSW,0
 
-#ifdef CONFIG_SMP
 /*
  * Restart interruption handler, kick starter for additional CPUs
  */
+#ifdef CONFIG_SMP
+#ifndef CONFIG_HOTPLUG_CPU
+	.section .init.text,"ax"
+#endif
 	.globl restart_int_handler
 restart_int_handler:
 	l	%r15,__LC_SAVE_AREA+60	# load ksp
@@ -785,6 +788,9 @@ restart_int_handler:
 	br	%r14			# branch to start_secondary
 restart_addr:
 	.long	start_secondary
+#ifndef CONFIG_HOTPLUG_CPU
+	.previous
+#endif
 #else
 /*
  * If we do not run with SMP enabled, let the new CPU crash ...

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [patch 4/6] Print list of modules on die().
  2007-06-19  8:45 [patch 0/6] s390 patches for 2.6.22 Martin Schwidefsky
                   ` (2 preceding siblings ...)
  2007-06-19  8:45 ` [patch 3/6] Fix yet another two section mismatches Martin Schwidefsky
@ 2007-06-19  8:45 ` Martin Schwidefsky
  2007-06-19  8:45 ` [patch 5/6] Move psw_set_key Martin Schwidefsky
  2007-06-19  8:45 ` [patch 6/6] Add oops_enter()/oops_exit() calls to die() Martin Schwidefsky
  5 siblings, 0 replies; 11+ messages in thread
From: Martin Schwidefsky @ 2007-06-19  8:45 UTC (permalink / raw)
  To: linux-kernel, linux-s390; +Cc: Heiko Carstens, Martin Schwidefsky

[-- Attachment #1: 004-printk-modules.diff --]
[-- Type: text/plain, Size: 857 bytes --]

From: Heiko Carstens <heiko.carstens@de.ibm.com>

Print list of modules on die() like a lot of other architectures do.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---

 arch/s390/kernel/traps.c |    1 +
 1 file changed, 1 insertion(+)

Index: quilt-2.6/arch/s390/kernel/traps.c
===================================================================
--- quilt-2.6.orig/arch/s390/kernel/traps.c
+++ quilt-2.6/arch/s390/kernel/traps.c
@@ -258,6 +258,7 @@ void die(const char * str, struct pt_reg
 	spin_lock_irq(&die_lock);
 	bust_spinlocks(1);
 	printk("%s: %04lx [#%d]\n", str, err & 0xffff, ++die_counter);
+	print_modules();
         show_regs(regs);
 	bust_spinlocks(0);
         spin_unlock_irq(&die_lock);

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [patch 5/6] Move psw_set_key.
  2007-06-19  8:45 [patch 0/6] s390 patches for 2.6.22 Martin Schwidefsky
                   ` (3 preceding siblings ...)
  2007-06-19  8:45 ` [patch 4/6] Print list of modules on die() Martin Schwidefsky
@ 2007-06-19  8:45 ` Martin Schwidefsky
  2007-06-19  9:12   ` Bastian Blank
  2007-06-19  9:17   ` Paul Mundt
  2007-06-19  8:45 ` [patch 6/6] Add oops_enter()/oops_exit() calls to die() Martin Schwidefsky
  5 siblings, 2 replies; 11+ messages in thread
From: Martin Schwidefsky @ 2007-06-19  8:45 UTC (permalink / raw)
  To: linux-kernel, linux-s390; +Cc: Heiko Carstens, Martin Schwidefsky

[-- Attachment #1: 005-set-key.diff --]
[-- Type: text/plain, Size: 1320 bytes --]

From: Heiko Carstens <heiko.carstens@de.ibm.com>

Move psw_set_key() from ptrace.h to processor.h which is a more
suitable place for it. In addition the moves makes the function
invisible to user space.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---

 arch/s390/kernel/traps.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

Index: quilt-2.6/arch/s390/kernel/traps.c
===================================================================
--- quilt-2.6.orig/arch/s390/kernel/traps.c
+++ quilt-2.6/arch/s390/kernel/traps.c
@@ -253,20 +253,22 @@ void die(const char * str, struct pt_reg
 {
 	static int die_counter;
 
+	oops_enter();
 	debug_stop_all();
 	console_verbose();
 	spin_lock_irq(&die_lock);
 	bust_spinlocks(1);
 	printk("%s: %04lx [#%d]\n", str, err & 0xffff, ++die_counter);
 	print_modules();
-        show_regs(regs);
+	show_regs(regs);
 	bust_spinlocks(0);
-        spin_unlock_irq(&die_lock);
+	spin_unlock_irq(&die_lock);
 	if (in_interrupt())
 		panic("Fatal exception in interrupt");
 	if (panic_on_oops)
 		panic("Fatal exception: panic_on_oops");
-        do_exit(SIGSEGV);
+	oops_exit();
+	do_exit(SIGSEGV);
 }
 
 static void inline

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [patch 6/6] Add oops_enter()/oops_exit() calls to die().
  2007-06-19  8:45 [patch 0/6] s390 patches for 2.6.22 Martin Schwidefsky
                   ` (4 preceding siblings ...)
  2007-06-19  8:45 ` [patch 5/6] Move psw_set_key Martin Schwidefsky
@ 2007-06-19  8:45 ` Martin Schwidefsky
  5 siblings, 0 replies; 11+ messages in thread
From: Martin Schwidefsky @ 2007-06-19  8:45 UTC (permalink / raw)
  To: linux-kernel, linux-s390; +Cc: Heiko Carstens, Martin Schwidefsky

[-- Attachment #1: 006-oops-enter.diff --]
[-- Type: text/plain, Size: 1608 bytes --]

From: Heiko Carstens <heiko.carstens@de.ibm.com>

This is mainly to switch off all potentially debugging stuff that
won't report anything useful after an oops happened.
Besided that setting pause_on_oops will work too, but doesn't make
too much sense on s390.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---

 include/asm-s390/processor.h |    5 +++++
 include/asm-s390/ptrace.h    |    9 +--------
 2 files changed, 6 insertions(+), 8 deletions(-)

Index: quilt-2.6/include/asm-s390/processor.h
===================================================================
--- quilt-2.6.orig/include/asm-s390/processor.h
+++ quilt-2.6/include/asm-s390/processor.h
@@ -216,6 +216,11 @@ static inline void cpu_relax(void)
 	barrier();
 }
 
+static inline void psw_set_key(unsigned int key)
+{
+	asm volatile("spka 0(%0)" : : "d" (key));
+}
+
 /*
  * Set PSW to specified value.
  */
Index: quilt-2.6/include/asm-s390/ptrace.h
===================================================================
--- quilt-2.6.orig/include/asm-s390/ptrace.h
+++ quilt-2.6/include/asm-s390/ptrace.h
@@ -470,14 +470,7 @@ struct user_regs_struct
 #define regs_return_value(regs)((regs)->gprs[2])
 #define profile_pc(regs) instruction_pointer(regs)
 extern void show_regs(struct pt_regs * regs);
-#endif
-
-static inline void
-psw_set_key(unsigned int key)
-{
-	asm volatile("spka 0(%0)" : : "d" (key));
-}
-
+#endif /* __KERNEL__ */
 #endif /* __ASSEMBLY__ */
 
 #endif /* _S390_PTRACE_H */

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [patch 5/6] Move psw_set_key.
  2007-06-19  8:45 ` [patch 5/6] Move psw_set_key Martin Schwidefsky
@ 2007-06-19  9:12   ` Bastian Blank
  2007-06-19  9:34     ` Heiko Carstens
  2007-06-19  9:17   ` Paul Mundt
  1 sibling, 1 reply; 11+ messages in thread
From: Bastian Blank @ 2007-06-19  9:12 UTC (permalink / raw)
  To: Martin Schwidefsky; +Cc: linux-kernel, linux-s390, Heiko Carstens

On Tue, Jun 19, 2007 at 10:45:21AM +0200, Martin Schwidefsky wrote:
> Move psw_set_key() from ptrace.h to processor.h which is a more
> suitable place for it. In addition the moves makes the function
> invisible to user space.

Hmm, this does not really describe the changes.

Bastian

-- 
Violence in reality is quite different from theory.
		-- Spock, "The Cloud Minders", stardate 5818.4

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [patch 5/6] Move psw_set_key.
  2007-06-19  8:45 ` [patch 5/6] Move psw_set_key Martin Schwidefsky
  2007-06-19  9:12   ` Bastian Blank
@ 2007-06-19  9:17   ` Paul Mundt
  1 sibling, 0 replies; 11+ messages in thread
From: Paul Mundt @ 2007-06-19  9:17 UTC (permalink / raw)
  To: Martin Schwidefsky; +Cc: linux-kernel, linux-s390, Heiko Carstens

On Tue, Jun 19, 2007 at 10:45:21AM +0200, Martin Schwidefsky wrote:
> From: Heiko Carstens <heiko.carstens@de.ibm.com>
> 
> Move psw_set_key() from ptrace.h to processor.h which is a more
> suitable place for it. In addition the moves makes the function
> invisible to user space.
> 
>  arch/s390/kernel/traps.c |    8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
> 

On Tue, Jun 19, 2007 at 10:45:22AM +0200, Martin Schwidefsky wrote:
> From: Heiko Carstens <heiko.carstens@de.ibm.com>
> 
> This is mainly to switch off all potentially debugging stuff that
> won't report anything useful after an oops happened.
> Besided that setting pause_on_oops will work too, but doesn't make
> too much sense on s390.
> 
>  include/asm-s390/processor.h |    5 +++++
>  include/asm-s390/ptrace.h    |    9 +--------
>  2 files changed, 6 insertions(+), 8 deletions(-)
> 
These changelog does not match the patch, they're reversed.. :-)

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [patch 5/6] Move psw_set_key.
  2007-06-19  9:12   ` Bastian Blank
@ 2007-06-19  9:34     ` Heiko Carstens
  2007-06-19 11:11       ` Martin Schwidefsky
  0 siblings, 1 reply; 11+ messages in thread
From: Heiko Carstens @ 2007-06-19  9:34 UTC (permalink / raw)
  To: Bastian Blank, Martin Schwidefsky, linux-kernel, linux-s390

On Tue, Jun 19, 2007 at 11:12:00AM +0200, Bastian Blank wrote:
> On Tue, Jun 19, 2007 at 10:45:21AM +0200, Martin Schwidefsky wrote:
> > Move psw_set_key() from ptrace.h to processor.h which is a more
> > suitable place for it. In addition the moves makes the function
> > invisible to user space.
> 
> Hmm, this does not really describe the changes.

Yes.. you need to interchange descriptions for patches 5 & 6. Then it
might make sense ;)

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [patch 5/6] Move psw_set_key.
  2007-06-19  9:34     ` Heiko Carstens
@ 2007-06-19 11:11       ` Martin Schwidefsky
  0 siblings, 0 replies; 11+ messages in thread
From: Martin Schwidefsky @ 2007-06-19 11:11 UTC (permalink / raw)
  To: Heiko Carstens; +Cc: Bastian Blank, linux-kernel, linux-s390

On Tue, 2007-06-19 at 11:34 +0200, Heiko Carstens wrote:
> > > Move psw_set_key() from ptrace.h to processor.h which is a more
> > > suitable place for it. In addition the moves makes the function
> > > invisible to user space.
> > 
> > Hmm, this does not really describe the changes.
> 
> Yes.. you need to interchange descriptions for patches 5 & 6. Then it
> might make sense ;)

Ahem, yes, oops.. sorry.

Fixed on git390.

-- 
blue skies,
  Martin.

"Reality continues to ruin my life." - Calvin.

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2007-06-19 11:11 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-19  8:45 [patch 0/6] s390 patches for 2.6.22 Martin Schwidefsky
2007-06-19  8:45 ` [patch 1/6] Missing blank when appending cio_ignore kernel parameter Martin Schwidefsky
2007-06-19  8:45 ` [patch 2/6] Fix zfcpdump header Martin Schwidefsky
2007-06-19  8:45 ` [patch 3/6] Fix yet another two section mismatches Martin Schwidefsky
2007-06-19  8:45 ` [patch 4/6] Print list of modules on die() Martin Schwidefsky
2007-06-19  8:45 ` [patch 5/6] Move psw_set_key Martin Schwidefsky
2007-06-19  9:12   ` Bastian Blank
2007-06-19  9:34     ` Heiko Carstens
2007-06-19 11:11       ` Martin Schwidefsky
2007-06-19  9:17   ` Paul Mundt
2007-06-19  8:45 ` [patch 6/6] Add oops_enter()/oops_exit() calls to die() Martin Schwidefsky

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.