mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kyle McMartin <kyle@infradead.org>
To: Frantisek Hrbata <fhrbata@redhat.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>,
	Kyle McMartin <kyle@infradead.org>,
	linux-kernel@vger.kernel.org, jstancek@redhat.com,
	keescook@chromium.org, peter.oberparleiter@de.ibm.com,
	linux-arch@vger.kernel.org, arnd@arndb.de, mgahagan@redhat.com,
	agospoda@redhat.com, akpm@linux-foundation.org
Subject: Re: [PATCH v2 4/4] kernel: add support for init_array constructors
Date: Mon, 9 Sep 2013 20:15:29 -0400	[thread overview]
Message-ID: <20130910001529.GE25882@merlin.infradead.org> (raw)
In-Reply-To: <20130909162814.GA2288@localhost.localdomain>

On Mon, Sep 09, 2013 at 06:28:14PM +0200, Frantisek Hrbata wrote:
> I'm not sure if coexistence of .ctors and .init_array sections should result in
> denial of module, but I for sure know nothing about this :). Could you maybe
> privide one example of the "weird thing"?
> 

They shouldn't exist unless placed there intentionally... I suspect a
call_if_changed Makefile target to regenerated a header would solve this
problem sufficiently for a given toolchain version.

A little exposition:
.init_array and .ctors are laid out on top of each other, with an
ordering that's a bit complicated... the sort of the ctor functions ends
up being .ctor.x upwards towards 65535, and .init_array.x downwards
from 65535 towards 0, with priority 65535-x, so that

.init_array.32768 would be called before .ctor.32768.

It's all a complete mess.

Perhaps if CONFIG_GCOV is on, we should enforce MODVERSIONS and make
sure the GCC version doesn't change for the running kernel?

Maybe it would be sufficient to just detect what the toolchain supports
and do that? I have a patch based on the configure.ac in gcc that
does something like that, which would be trivial to use to generate a
header based on gcc version.

> Anyway many thanks for taking time to look at this. Below is my attepmt to
> implement the check you proposed. 
> 
> untested/uncompiled

regards, Kyle

  reply	other threads:[~2013-09-10  0:15 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-04 14:42 [PATCH v2 0/4] add support for gcov format introduced in gcc 4.7 Frantisek Hrbata
2013-09-04 14:42 ` [PATCH v2 1/4] gcov: move gcov structs definitions to a gcc version specific file Frantisek Hrbata
2013-09-04 14:42 ` [PATCH v2 2/4] gcov: add support for gcc 4.7 gcov format Frantisek Hrbata
2013-09-18 21:22   ` Andrew Morton
2013-09-18 21:27     ` Joe Perches
2013-09-18 21:31       ` Andrew Morton
2013-09-19 10:12         ` Frantisek Hrbata
2013-09-19  9:04   ` Peter Oberparleiter
2013-09-19 10:21     ` Frantisek Hrbata
2013-09-19 10:31       ` Peter Oberparleiter
2013-09-04 14:42 ` [PATCH v2 3/4] gcov: compile specific gcov implementation based on gcc version Frantisek Hrbata
2013-09-04 14:42 ` [PATCH v2 4/4] kernel: add support for init_array constructors Frantisek Hrbata
2013-09-06  2:13   ` Rusty Russell
2013-09-06 17:51     ` Frantisek Hrbata
2013-09-06 18:07       ` Kyle McMartin
2013-09-09  1:14         ` Rusty Russell
2013-09-09 16:28           ` Frantisek Hrbata
2013-09-10  0:15             ` Kyle McMartin [this message]
2013-09-10  5:35             ` Rusty Russell
2013-09-10 13:28               ` Frantisek Hrbata
2013-09-11  1:52                 ` Rusty Russell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130910001529.GE25882@merlin.infradead.org \
    --to=kyle@infradead.org \
    --cc=agospoda@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=fhrbata@redhat.com \
    --cc=jstancek@redhat.com \
    --cc=keescook@chromium.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mgahagan@redhat.com \
    --cc=peter.oberparleiter@de.ibm.com \
    --cc=rusty@rustcorp.com.au \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®