* [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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).