Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1437960

[PATCH v3 3/7] sparc: support static_key usage in non-module __exit sections

From Jason Baron <jbaron@akamai.com>
Newsgroups linux.kernel
Subject [PATCH v3 3/7] sparc: support static_key usage in non-module __exit sections
Date 2016-07-06 23:50 +0200
Message-ID <rS2RI-6bB-19@gated-at.bofh.it> (permalink)
References <rS2RH-6bB-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


The jump table can reference text found in an __exit section. Thus,
instead of discarding it at build/link time, include EXIT_TEXT as part
of __init and release it at system boot time.

Without this patch the link fails with:

    `.exit.text' referenced in section `__jump_table' of xxx.o:
    defined in discarded section `.exit.text' of xxx.o

Cc: "David S. Miller" <davem@davemloft.net>
Cc: sparclinux@vger.kernel.org
Signed-off-by: Jason Baron <jbaron@akamai.com>
---
 arch/sparc/kernel/vmlinux.lds.S | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/arch/sparc/kernel/vmlinux.lds.S b/arch/sparc/kernel/vmlinux.lds.S
index 7d02b1fef025..d79b3b734245 100644
--- a/arch/sparc/kernel/vmlinux.lds.S
+++ b/arch/sparc/kernel/vmlinux.lds.S
@@ -150,6 +150,13 @@ SECTIONS
 	}
 	PERCPU_SECTION(SMP_CACHE_BYTES)
 
+#ifdef CONFIG_JUMP_LABEL
+	. = ALIGN(PAGE_SIZE);
+	.exit.text : {
+		EXIT_TEXT
+	}
+#endif
+
 	. = ALIGN(PAGE_SIZE);
 	__init_end = .;
 	BSS_SECTION(0, 0, 0)
-- 
2.6.1

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH v3 3/7] sparc: support static_key usage in non-module __exit sections Jason Baron <jbaron@akamai.com> - 2016-07-06 23:50 +0200
  Re: [PATCH v3 3/7] sparc: support static_key usage in non-module  __exit sections David Miller <davem@davemloft.net> - 2016-07-07 03:50 +0200

csiph-web