Messages in this thread | | | Date | Mon, 4 May 2009 13:42:08 -0400 | Subject | Re: [PATCH v2 0/6] macros for section name cleanup | From | Mike Frysinger <> |
| |
On Mon, May 4, 2009 at 12:32, Tim Abbott wrote: > On Mon, 4 May 2009, Sam Ravnborg wrote: >> +#define RW_DATA_SECTION(page_align, readmostly_align, cache_align, >> inittask_align) \ >> + . = ALIGN(PAGE_SIZE); \ >> + .data : AT(ADDR(.data) - LOAD_OFFSET) { \ >> + DATA_DATA \ >> + CONSTRUCTORS \ >> + NOSAVE_DATA \ >> + PAGE_ALIGNED_DATA(page_align) \ >> + READMOSTLY_DATA(readmostly_align) \ >> + CACHELINE_ALIGNED_DATA(cache_align) \ >> + INIT_TASK(inittask_align) \ >> + } > > How did you pick the order of the sections here? I would think that to > pack the .data section efficiently, you'd want to sort by alignment > requirements so that e.g. all the at-least-page aligned sections are > adjacent (INIT_TASK and the page-aligned sections are separated by some > much smaller aligments here).
if this were actually the case, there should of course be some /* comments */ above the define explaining that the order wasnt arbitrarily pulled like a rabbit from an orifice. if you're scratching your head, then there's going to be plenty more people who never ask but treat it like untouchable voodoo. -mike
| |