Re: [PATCH v4 04/16] generic-sections: add section core helpers
From: "Luis R. Rodriguez" <mcgrof@kernel.org>
Date: 2016-08-26 06:38:44
Also in:
platform-driver-x86, xen-devel
On Aug 25, 2016 8:00 PM, "Nicholas Piggin" [off-list ref] wrote:
On Thu, 25 Aug 2016 19:52:39 +0200 "Luis R. Rodriguez" [off-list ref] wrote:quoted
On Thu, Aug 25, 2016 at 04:51:21PM +1000, Nicholas Piggin wrote:quoted
On Thu, 25 Aug 2016 08:05:40 +0200 "Luis R. Rodriguez" [off-list ref] wrote:quoted
quoted
Oh, that makes more sense. The SECTION stuff and custom sections
was
quoted
quoted
quoted
quoted
confusing me. I would prefer just to drop all the LINUX_SECTION
naming
quoted
quoted
quoted
quoted
and make it match the functionality you're using. For example: +DEFINE_LINKTABLE(struct jump_entry, __jump_table); + /* mutex to protect coming/going of the the jump_label table */ static DEFINE_MUTEX(jump_label_mutex);@@ -274,8 +277,6 @@ static void __jump_label_update(struct
static_key *key,
quoted
quoted
quoted
quoted
void __init jump_label_init(void) { - struct jump_entry *iter_start = __start___jump_table; - struct jump_entry *iter_stop = __stop___jump_table; struct static_key *key = NULL; struct jump_entry *iter;@@ -292,9 +293,10 @@ void __init jump_label_init(void) return; jump_label_lock(); - jump_label_sort_entries(iter_start, iter_stop); + jump_label_sort_entries(LINUX_SECTION_START(__jump_table), + LINUX_SECTION_END(__jump_table));Now I think this is a fine abstraction to have.OK will keep this one.quoted
I think it would look even cleaner if you had: LINKTABLE_START(__jump_table) LINKTABLE_END(__jump_table) Then do we need to even have the LINUX_SECTION middle man at all?Ah, thing is we use this for both linktables and section ranges. Or do we want macros for both that do the same thing ?I think it would make the code using it more readable.Alrighty... so: LINKTABLE_START() LINKTABLE_END() SECTION_RANGE_START() SECTION_RANGE_END() And these macros do the exact same thing. Ie, nothing shared. Right?Yeah I think so. Internally they would probably be aliased to the same common definition (unless you had some type check or something), but user would know about such details.
What name should we use for such common macro definition ? Luis