On Tuesday 18 September 2007 18:59, Mathieu Desnoyers wrote:
> * Denys Vlasenko ([EMAIL PROTECTED]) wrote:
> > On Monday 17 September 2007 19:42, Mathieu Desnoyers wrote:
> > > Index: linux-2.6-lttng/include/asm-generic/vmlinux.lds.h
> > > ===================================================================
> > > --- linux-2.6-lttng.orig/include/asm-generic/vmlinux.lds.h        
> > > 2007-09-17 13:25:06.000000000 -0400
> > > +++ linux-2.6-lttng/include/asm-generic/vmlinux.lds.h     2007-09-17 
> > > 13:35:50.000000000 -0400
> > > @@ -122,6 +122,13 @@
> > >           VMLINUX_SYMBOL(__stop___kcrctab_gpl_future) = .;        \
> > >   }                                                               \
> > >                                                                   \
> > > + /* Immediate values: pointers */                                \
> > > + __immediate : AT(ADDR(__immediate) - LOAD_OFFSET) {             \
> > > +         VMLINUX_SYMBOL(__start___immediate) = .;                \
> > > +         *(__immediate)                                          \
> > > +         VMLINUX_SYMBOL(__stop___immediate) = .;                 \
> > > + }                                                               \
> > > +                                                                 \
> > 
> > Why do you need an output section for that? IOW: will this work too?
> > 
> > .data : ... { 
> > ...
> > 
> >             VMLINUX_SYMBOL(__start___immediate) = .;                \
> >             *(__immediate)                                          \
> >             VMLINUX_SYMBOL(__stop___immediate) = .;                 \
> > ...
> > }
> > 
> 
> This last one could cause alignment problems. We either have to use the
> proper ALIGN() before the section, or let AT(ADDR(__immediate) -
> LOAD_OFFSET) take care of it. I prefer the latter.

This adds yet another output section in vmlinux, and there is
no tools which need that. We already have 30+ sections there while we need ~20.

I am trying to fix the mess. Please don't add to it.

Re alignment: (1) do you really realy REALLY need it? Last I checked,
i386 was handling unaligned accesses just fine; and
(2) this works:

                . = ALIGN(4)
                VMLINUX_SYMBOL(__start___immediate) = .;                \
                *(__immediate)                                          \
                VMLINUX_SYMBOL(__stop___immediate) = .;                 \


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

Reply via email to