mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: mathieu.desnoyers@efficios.com
Cc: rostedt@goodmis.org, richm@oldelvet.org.uk,
	609371@bugs.debian.org, ben@decadent.org.uk,
	sparclinux@vger.kernel.org, linux-kernel@vger.kernel.org,
	fweisbec@gmail.com, mingo@redhat.com
Subject: Re: Bug#609371: linux-image-2.6.37-trunk-sparc64: module scsi_mod: Unknown relocation: 36
Date: Tue, 18 Jan 2011 22:32:47 -0800 (PST)	[thread overview]
Message-ID: <20110118.223247.241909079.davem@davemloft.net> (raw)
In-Reply-To: <20110119050844.GA8776@Krystal>

From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Date: Wed, 19 Jan 2011 00:08:45 -0500

> - No aligned() type attribute nor variable attribute. I get a crash on x86_64
>   (NULL pointer exception when executing __trace_add_event_call, the 5th call).
>   __alignof__(struct ftrace_event_call) is worth 8.

I think I figured it out.

It's the static vs. non-static thing, or some other crazyness wrt.
how x86-64 implements it's alignment rules.

GCC on x86-64 uses a completely different policy for aligning local
(ie. "static") data objects vs. globally visible ones, for one thing.
It also has different alignment policies for objects that are part
of an array vs. those which are not.

On both counts, we're lying to the compiler, so maybe it's sort of our
fault.

As far as GCC can see, the object is static and also not part of an
array or any other C construct for which things like this could matter
as long as the alignment it chooses meets the minimum alignment
requirements of the ABI.

So it doesn't let us do this trick where we put the individual event
markers into a special section, yet mark it __used and static, then
later access them as if they were part of a globally visible array.

If you look these static objects, they are emitted with a leading
".align 32" directive.  This is what screws everything up.

When the linker sees this, it aligns the start of every individual
"_ftrace_events" section, and that's where the "gaps" come from and
the crashes.


  parent reply	other threads:[~2011-01-19  6:32 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20110113.155700.102679408.davem@davemloft.net>
     [not found] ` <4D302B2F.7030108@oldelvet.org.uk>
     [not found]   ` <4D3074FE.3030707@oldelvet.org.uk>
2011-01-16  5:17     ` David Miller
2011-01-16 14:17       ` Richard Mortimer
2011-01-16 19:39         ` David Miller
2011-01-17 14:11           ` Steven Rostedt
2011-01-17 14:37             ` Bastian Blank
2011-01-17 19:35             ` Mathieu Desnoyers
2011-01-18  6:36               ` David Miller
2011-01-18  5:34             ` David Miller
2011-01-18  6:00               ` David Miller
2011-01-18  6:08                 ` David Miller
2011-01-18 16:46                   ` Mathieu Desnoyers
2011-01-18 17:33                     ` Steven Rostedt
2011-01-18 18:16                       ` Steven Rostedt
2011-01-18 18:26                         ` Steven Rostedt
2011-01-18 20:13                           ` Mathieu Desnoyers
2011-01-18 20:22                             ` Steven Rostedt
2011-01-19  5:08                               ` Mathieu Desnoyers
2011-01-19  5:16                                 ` David Miller
2011-01-19 15:10                                   ` Mathieu Desnoyers
2011-01-19 16:14                                     ` Sam Ravnborg
2011-01-19 16:18                                       ` Mathieu Desnoyers
2011-01-19  6:32                                 ` David Miller [this message]
2011-01-19  7:20                                   ` David Miller
2011-01-19 15:33                                     ` Mathieu Desnoyers
2011-01-19 21:40                                       ` David Miller
2011-01-19 22:00                                         ` Steven Rostedt
2011-01-19 22:09                                           ` David Miller
2011-01-19 22:21                                           ` Mathieu Desnoyers
2011-01-19 22:23                                             ` David Miller
2011-01-19 22:32                                             ` Sam Ravnborg
2011-01-19 22:34                                               ` Mathieu Desnoyers
2011-01-19 22:13                                         ` Mathieu Desnoyers
2011-01-19 22:21                                           ` David Miller
2011-01-19 22:33                                             ` Mathieu Desnoyers
2011-01-20  0:41                                               ` David Miller
2011-01-21  0:04                                                 ` Mathieu Desnoyers
2011-01-21 18:06                                                   ` Richard Mortimer
2011-01-21 18:52                                                     ` Mathieu Desnoyers
2011-01-21 19:15                                                       ` Mathieu Desnoyers
2011-01-21 20:14                                                       ` Richard Mortimer
2011-01-21 20:40                                                         ` Mathieu Desnoyers
2011-01-21 22:50                                                           ` Richard Mortimer
2011-01-22 18:42                                                             ` Richard Mortimer
2011-01-22 18:53                                                               ` Mathieu Desnoyers
2011-01-19 15:46                                     ` Steven Rostedt
2011-01-19 16:15                                       ` Mathieu Desnoyers
2011-01-19 18:13                                         ` Steven Rostedt
2011-01-19 18:20                                           ` Mathieu Desnoyers
2011-01-19 21:44                                             ` David Miller
2011-01-19 22:15                                               ` Mathieu Desnoyers
2011-01-19 22:22                                                 ` David Miller
2011-01-19 15:11                                   ` Mathieu Desnoyers
2011-01-19 15:27                   ` Richard Mortimer
2011-01-17  6:07       ` David Miller
2011-01-17  9:05         ` Jesper Nilsson
2011-02-01  5:11           ` David Miller
2011-02-01 10:03             ` Jesper Nilsson
2011-01-17 10:22         ` Richard Mortimer
2011-01-17 14:15           ` Steven Rostedt
2011-01-18  6:35             ` David Miller
2011-01-18 17:30               ` Steven Rostedt
2011-01-17 19:46           ` R_SPARC_13 (Re: Bug#609371: linux-image-2.6.37-trunk-sparc64: module scsi_mod: Unknown relocation: 36) Richard Mortimer
2011-01-17 21:02             ` R_SPARC_13 David Miller
2011-01-17 23:34               ` R_SPARC_13 Richard Mortimer
2011-01-18  0:18                 ` R_SPARC_13 David Miller
2011-01-18  0:37                 ` R_SPARC_13 David Miller
2011-01-18  1:28                   ` R_SPARC_13 Richard Mortimer
2011-01-18  6:50                   ` R_SPARC_13 David Miller
2011-01-18 10:52                     ` R_SPARC_13 Richard Mortimer
2011-01-18 13:23                       ` R_SPARC_13 Richard Mortimer
2011-01-18 21:00                         ` R_SPARC_13 David Miller
2011-01-19  4:12                           ` R_SPARC_13 David Miller
2011-01-17 14:39         ` Bug#609371: linux-image-2.6.37-trunk-sparc64: module scsi_mod: Unknown relocation: 36 Bernhard R. Link
2011-01-18  5:24           ` David Miller
2011-01-18  9:26             ` Jesper Nilsson
2011-01-18  6:27           ` David Miller
2011-01-18 17:05             ` Steven Rostedt

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=20110118.223247.241909079.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=609371@bugs.debian.org \
    --cc=ben@decadent.org.uk \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mingo@redhat.com \
    --cc=richm@oldelvet.org.uk \
    --cc=rostedt@goodmis.org \
    --cc=sparclinux@vger.kernel.org \
    /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®