From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932215AbcJPPTi (ORCPT ); Sun, 16 Oct 2016 11:19:38 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:48111 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756818AbcJPPTa (ORCPT ); Sun, 16 Oct 2016 11:19:30 -0400 From: Vegard Nossum To: linux-kernel@vger.kernel.org, Greg Kroah-Hartman Cc: Jiri Slaby , Linus Torvalds , "Luis R . Rodriguez" , Vegard Nossum , Jason Baron , Peter Zijlstra , Steven Rostedt Subject: [PATCH 11/12] jump_label: declare jump table as external array Date: Sun, 16 Oct 2016 17:16:15 +0200 Message-Id: <20161016151616.31451-12-vegard.nossum@oracle.com> X-Mailer: git-send-email 2.10.0.479.g221bd91 In-Reply-To: <20161016151616.31451-1-vegard.nossum@oracle.com> References: <20161016151616.31451-1-vegard.nossum@oracle.com> X-Source-IP: userv0021.oracle.com [156.151.31.71] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Cc: Jason Baron Cc: Peter Zijlstra Cc: Steven Rostedt Signed-off-by: Vegard Nossum --- include/linux/jump_label.h | 4 ++-- kernel/jump_label.c | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/linux/jump_label.h b/include/linux/jump_label.h index a0547c5..7ba9918 100644 --- a/include/linux/jump_label.h +++ b/include/linux/jump_label.h @@ -76,6 +76,7 @@ #ifndef __ASSEMBLY__ +#include #include #include @@ -132,8 +133,7 @@ static __always_inline bool static_key_true(struct static_key *key) return !arch_static_branch(key, true); } -extern struct jump_entry __start___jump_table[]; -extern struct jump_entry __stop___jump_table[]; +DECLARE_EXTARRAY(struct jump_entry, __jump_table); extern void jump_label_init(void); extern void jump_label_lock(void); diff --git a/kernel/jump_label.c b/kernel/jump_label.c index 93ad6c1..bf14906 100644 --- a/kernel/jump_label.c +++ b/kernel/jump_label.c @@ -274,8 +274,8 @@ static void __jump_label_update(struct static_key *key, void __init jump_label_init(void) { - struct jump_entry *iter_start = __start___jump_table; - struct jump_entry *iter_stop = __stop___jump_table; + struct jump_entry *iter_start = ext_start(__jump_table); + struct jump_entry *iter_stop = ext_end(__jump_table); struct static_key *key = NULL; struct jump_entry *iter; @@ -539,8 +539,8 @@ early_initcall(jump_label_init_module); */ int jump_label_text_reserved(void *start, void *end) { - int ret = __jump_label_text_reserved(__start___jump_table, - __stop___jump_table, start, end); + int ret = __jump_label_text_reserved(ext_start(__jump_table), + ext_end(__jump_table), start, end); if (ret) return ret; @@ -553,7 +553,7 @@ int jump_label_text_reserved(void *start, void *end) static void jump_label_update(struct static_key *key) { - struct jump_entry *stop = __stop___jump_table; + struct jump_entry *stop = ext_end(__jump_table); struct jump_entry *entry = static_key_entries(key); #ifdef CONFIG_MODULES struct module *mod; -- 2.10.0.479.g221bd91