Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2011-09-12 16:44:34 +0200
committerJan Beulich <jbeulich@novell.com>2011-09-12 16:44:34 +0200
commitaa89174928dc90d53bfd9531c1b5ab34cbd79d62 (patch)
tree16693dad0ae01c9486ff99ce196a71034e95375e
parent3692f47577ecaffd07e3a79c012e80f83db3c760 (diff)
- Refresh patches.arch/x86_64-unwind-annotations.
- Refresh patches.suse/supported-flag.
-rw-r--r--patches.arch/x86_64-unwind-annotations122
-rw-r--r--patches.suse/supported-flag4
2 files changed, 42 insertions, 84 deletions
diff --git a/patches.arch/x86_64-unwind-annotations b/patches.arch/x86_64-unwind-annotations
index 57c7ef5e19..26ff36acd1 100644
--- a/patches.arch/x86_64-unwind-annotations
+++ b/patches.arch/x86_64-unwind-annotations
@@ -3,14 +3,9 @@ Subject: fix unwind annotations
Patch-mainline: tbd
References: bnc#472783, bnc#588458
----
- arch/x86/kernel/entry_64.S | 131 +++++++++++++++++++++++----------------------
- arch/x86/kernel/head_64.S | 13 ++++
- 2 files changed, 82 insertions(+), 62 deletions(-)
-
---- a/arch/x86/kernel/entry_64.S 2011-04-13 10:07:24.000000000 +0200
-+++ b/arch/x86/kernel/entry_64.S 2011-04-13 10:12:30.000000000 +0200
-@@ -236,21 +236,21 @@ ENDPROC(native_usergs_sysret64)
+--- a/arch/x86/kernel/entry_64.S
++++ b/arch/x86/kernel/entry_64.S
+@@ -238,21 +238,21 @@ ENDPROC(native_usergs_sysret64)
/*
* initial frame state for interrupts (and exceptions without error code)
*/
@@ -39,7 +34,7 @@ References: bnc#472783, bnc#588458
/*CFI_REL_OFFSET ss, SS+\offset-RIP*/
CFI_REL_OFFSET rsp, RSP+\offset-RIP
/*CFI_REL_OFFSET rflags, EFLAGS+\offset-RIP*/
-@@ -264,14 +264,15 @@ ENDPROC(native_usergs_sysret64)
+@@ -266,14 +266,15 @@ ENDPROC(native_usergs_sysret64)
*/
.macro XCPT_FRAME start=1 offset=0
INTR_FRAME \start, RIP+\offset-ORIG_RAX
@@ -56,7 +51,7 @@ References: bnc#472783, bnc#588458
CFI_REL_OFFSET rdi, RDI+\offset-ARGOFFSET
CFI_REL_OFFSET rsi, RSI+\offset-ARGOFFSET
CFI_REL_OFFSET rdx, RDX+\offset-ARGOFFSET
-@@ -287,7 +288,9 @@ ENDPROC(native_usergs_sysret64)
+@@ -289,7 +290,9 @@ ENDPROC(native_usergs_sysret64)
* frame that enables passing a complete pt_regs to a C function.
*/
.macro DEFAULT_FRAME start=1 offset=0
@@ -66,59 +61,19 @@ References: bnc#472783, bnc#588458
CFI_REL_OFFSET rbx, RBX+\offset
CFI_REL_OFFSET rbp, RBP+\offset
CFI_REL_OFFSET r12, R12+\offset
-@@ -299,25 +302,27 @@ ENDPROC(native_usergs_sysret64)
- /* save partial stack frame */
- .pushsection .kprobes.text, "ax"
- ENTRY(save_args)
-- XCPT_FRAME
-+ XCPT_FRAME offset=ORIG_RAX-RBP+8
- cld
- /*
- * start from rbp in pt_regs and jump over
- * return address.
- */
- movq_cfi rdi, RDI+8-RBP
-- movq_cfi rsi, RSI+8-RBP
-- movq_cfi rdx, RDX+8-RBP
-- movq_cfi rcx, RCX+8-RBP
-+ movq %rsi, RSI+8-RBP(%rsp)
-+ movq %rdx, RDX+8-RBP(%rsp)
-+ movq %rcx, RCX+8-RBP(%rsp)
- movq_cfi rax, RAX+8-RBP
-- movq_cfi r8, R8+8-RBP
-- movq_cfi r9, R9+8-RBP
-- movq_cfi r10, R10+8-RBP
-- movq_cfi r11, R11+8-RBP
-+ movq %r8, R8+8-RBP(%rsp)
-+ movq %r9, R9+8-RBP(%rsp)
-+ movq %r10, R10+8-RBP(%rsp)
-+ movq %r11, R11+8-RBP(%rsp)
-
- leaq -RBP+8(%rsp),%rdi /* arg1 for handler */
- movq_cfi rbp, 8 /* push %rbp */
- leaq 8(%rsp), %rbp /* mov %rsp, %ebp */
-+ CFI_DEF_CFA_REGISTER rbp
-+ CFI_ADJUST_CFA_OFFSET -8
- testl $3, CS(%rdi)
- je 1f
- SWAPGS
-@@ -329,11 +334,10 @@ ENTRY(save_args)
- */
+@@ -331,23 +334,24 @@ ENDPROC(native_usergs_sysret64)
1: incl PER_CPU_VAR(irq_count)
jne 2f
-- popq_cfi %rax /* move return address... */
-+ popq %rax /* move return address... */
mov PER_CPU_VAR(irq_stack_ptr),%rsp
- EMPTY_FRAME 0
-- pushq_cfi %rbp /* backlink for unwinder */
-- pushq_cfi %rax /* ... to the new stack */
-+ pushq %rbp /* backlink for unwinder */
-+ pushq %rax /* ... to the new stack */
- /*
- * We entered an interrupt context - irqs are off:
- */
-@@ -344,14 +348,14 @@ END(save_args)
- .popsection
++ CFI_DEF_CFA_REGISTER rsi
+
+ 2: /* Store previous stack value */
+ pushq %rsi
++ /* XXX CFI_DEF_CFA_... (%rsp) */
+ /* We entered an interrupt context - irqs are off: */
+ TRACE_IRQS_OFF
+ .endm
ENTRY(save_rest)
- PARTIAL_FRAME 1 REST_SKIP+8
@@ -139,7 +94,7 @@ References: bnc#472783, bnc#588458
movq %r11, 8(%rsp) /* return address */
FIXUP_TOP_OF_STACK %r11, 16
ret
-@@ -361,23 +365,23 @@ END(save_rest)
+@@ -357,23 +361,23 @@ END(save_rest)
/* save complete stack frame */
.pushsection .kprobes.text, "ax"
ENTRY(save_paranoid)
@@ -175,7 +130,7 @@ References: bnc#472783, bnc#588458
movl $1,%ebx
movl $MSR_GS_BASE,%ecx
rdmsr
-@@ -679,7 +683,7 @@ ENTRY(\label)
+@@ -675,7 +679,7 @@ ENTRY(\label)
subq $REST_SKIP, %rsp
CFI_ADJUST_CFA_OFFSET REST_SKIP
call save_rest
@@ -184,26 +139,29 @@ References: bnc#472783, bnc#588458
leaq 8(%rsp), \arg /* pt_regs pointer */
call \func
jmp ptregscall_common
-@@ -792,7 +796,9 @@ END(interrupt)
+@@ -788,7 +792,6 @@ END(interrupt)
subq $ORIG_RAX-RBP, %rsp
CFI_ADJUST_CFA_OFFSET ORIG_RAX-RBP
- call save_args
+ SAVE_ARGS_IRQ
- PARTIAL_FRAME 0
-+ PARTIAL_FRAME -1 ARGOFFSET-RBP
-+ CFI_REL_OFFSET rbp, 0
-+ CFI_DEF_CFA_REGISTER rbp
call \func
.endm
-@@ -815,7 +821,6 @@ ret_from_intr:
- TRACE_IRQS_OFF
- decl PER_CPU_VAR(irq_count)
- leaveq
+@@ -813,10 +816,10 @@ ret_from_intr:
+
+ /* Restore saved previous stack */
+ popq %rsi
+- leaq 16(%rsi), %rsp
-
- CFI_RESTORE rbp
++ CFI_DEF_CFA_REGISTER rsi
++ leaq ARGOFFSET-RBP(%rsi), %rsp
CFI_DEF_CFA_REGISTER rsp
- CFI_ADJUST_CFA_OFFSET -8
-@@ -1026,7 +1031,7 @@ ENTRY(\sym)
+- CFI_ADJUST_CFA_OFFSET -16
++ CFI_ADJUST_CFA_OFFSET RBP-ARGOFFSET
+
+ exit_intr:
+ GET_THREAD_INFO(%rcx)
+@@ -1016,7 +1019,7 @@ ENTRY(\sym)
subq $ORIG_RAX-R15, %rsp
CFI_ADJUST_CFA_OFFSET ORIG_RAX-R15
call error_entry
@@ -212,7 +170,7 @@ References: bnc#472783, bnc#588458
movq %rsp,%rdi /* pt_regs pointer */
xorl %esi,%esi /* no error code */
call \do_sym
-@@ -1043,6 +1048,7 @@ ENTRY(\sym)
+@@ -1033,6 +1036,7 @@ ENTRY(\sym)
subq $ORIG_RAX-R15, %rsp
CFI_ADJUST_CFA_OFFSET ORIG_RAX-R15
call save_paranoid
@@ -220,7 +178,7 @@ References: bnc#472783, bnc#588458
TRACE_IRQS_OFF
movq %rsp,%rdi /* pt_regs pointer */
xorl %esi,%esi /* no error code */
-@@ -1061,6 +1067,7 @@ ENTRY(\sym)
+@@ -1051,6 +1055,7 @@ ENTRY(\sym)
subq $ORIG_RAX-R15, %rsp
CFI_ADJUST_CFA_OFFSET ORIG_RAX-R15
call save_paranoid
@@ -228,7 +186,7 @@ References: bnc#472783, bnc#588458
TRACE_IRQS_OFF
movq %rsp,%rdi /* pt_regs pointer */
xorl %esi,%esi /* no error code */
-@@ -1079,7 +1086,7 @@ ENTRY(\sym)
+@@ -1069,7 +1074,7 @@ ENTRY(\sym)
subq $ORIG_RAX-R15, %rsp
CFI_ADJUST_CFA_OFFSET ORIG_RAX-R15
call error_entry
@@ -237,7 +195,7 @@ References: bnc#472783, bnc#588458
movq %rsp,%rdi /* pt_regs pointer */
movq ORIG_RAX(%rsp),%rsi /* get error code */
movq $-1,ORIG_RAX(%rsp) /* no syscall to restart */
-@@ -1097,7 +1104,7 @@ ENTRY(\sym)
+@@ -1087,7 +1092,7 @@ ENTRY(\sym)
subq $ORIG_RAX-R15, %rsp
CFI_ADJUST_CFA_OFFSET ORIG_RAX-R15
call save_paranoid
@@ -246,7 +204,7 @@ References: bnc#472783, bnc#588458
TRACE_IRQS_OFF
movq %rsp,%rdi /* pt_regs pointer */
movq ORIG_RAX(%rsp),%rsi /* get error code */
-@@ -1440,25 +1447,24 @@ END(paranoid_exit)
+@@ -1431,25 +1436,24 @@ END(paranoid_exit)
* returns in "no swapgs flag" in %ebx.
*/
ENTRY(error_entry)
@@ -287,7 +245,7 @@ References: bnc#472783, bnc#588458
xorl %ebx,%ebx
testl $3,CS+8(%rsp)
je error_kernelspace
-@@ -1476,6 +1482,7 @@ error_sti:
+@@ -1467,6 +1471,7 @@ error_sti:
* compat mode. Check for these here too.
*/
error_kernelspace:
@@ -295,7 +253,7 @@ References: bnc#472783, bnc#588458
incl %ebx
leaq irq_return(%rip),%rcx
cmpq %rcx,RIP+8(%rsp)
-@@ -1523,7 +1530,7 @@ ENTRY(nmi)
+@@ -1514,7 +1519,7 @@ ENTRY(nmi)
subq $ORIG_RAX-R15, %rsp
CFI_ADJUST_CFA_OFFSET ORIG_RAX-R15
call save_paranoid
@@ -304,8 +262,8 @@ References: bnc#472783, bnc#588458
/* paranoidentry do_nmi, 0; without TRACE_IRQS_OFF */
movq %rsp,%rdi
movq $-1,%rsi
---- a/arch/x86/kernel/head_64.S 2011-04-13 10:06:58.000000000 +0200
-+++ b/arch/x86/kernel/head_64.S 2011-04-13 10:12:30.000000000 +0200
+--- a/arch/x86/kernel/head_64.S
++++ b/arch/x86/kernel/head_64.S
@@ -283,6 +283,8 @@ early_idt_handlers:
ENTRY(early_idt_handler)
diff --git a/patches.suse/supported-flag b/patches.suse/supported-flag
index cdb28c8805..419013aa1e 100644
--- a/patches.suse/supported-flag
+++ b/patches.suse/supported-flag
@@ -193,9 +193,9 @@ Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
+}
+
+static ssize_t show_modinfo_supported(struct module_attribute *mattr,
-+ struct module *mod, char *buffer)
++ struct module_kobject *mk, char *buffer)
+{
-+ return sprintf(buffer, "%s\n", supported_printable(mod->taints));
++ return sprintf(buffer, "%s\n", supported_printable(mk->mod->taints));
+}
+
+static struct module_attribute modinfo_supported = {