Re: [PATCH 0/2] jump label: update for .39

From: Steven Rostedt
Date: Thu Mar 10 2011 - 18:16:19 EST


On Thu, 2011-03-10 at 17:48 -0500, Mathieu Desnoyers wrote:
> * Steven Rostedt (rostedt@xxxxxxxxxxx) wrote:
> > On Thu, 2011-03-10 at 16:22 -0500, Mathieu Desnoyers wrote:
> >
> > > > Anyway, I think the best thing for now is to have Jason add
> > > > the .align(sizeof(long)) in the inline assembly for all locations and be
> > > > done with it.
> > >
> > > You seem to be contradicting yourself here. I'm concerned about having
> > > "structures" of a size not power of two. Can we simply either
> >
> > But we don't have structures. We have data that has been allocated in
> > assembly. Come to think of it, it may be best to keep these as
> > ".align 4".
>
> The .align 4 is certainly not the right answer, because it will trigger
> unaligned accesses on some 64-bit architectures, as we have faced with
> trace event.

Will it? Seems that sparc does this regardless.

Remember, this is 3 natural word sized objects, and vmlinux.ld starts
the section off with .ALIGN 8, hence, the section is already 8 byte
aligned, all objects within this section are 8 bytes (for 64bit archs,
and 4 bytes for 32bit), why would saying ".align 4" cause the linker to
add holes to make it 4 byte aligned when it is already 8 byte aligned.
The ".align 4" should work with both 32bit and 64bit archs.

-- Steve


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/