lkml.org 
[lkml]   [2011]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH RFC 0/5] Speed booting by sorting exception tables at build time.
Date
On Friday 18 November 2011 14:37:43 David Daney wrote:
> I noticed when booting MIPS64 kernels that sorting of the main
> __ex_table was taking a long time (2,692,220 cycles or 3.3 mS at
> 800MHz to be exact). That is not too bad for real silicon
> implementations, but when running on a slow simulator, it can be
> significant.

i've seen this perf hit in my simulation runs too

> Here is more or less what I did:
>
> o A flag word is added to the kernel to indicate that the __ex_table
> is already sorted. sort_main_extable() checks this and if it is
> clear, returns without doing the sort.
>
> o I shamelessly stole code from recordmcount and created a new build
> time helper program 'sortextable'. This is run on the final vmlinux
> image, it sorts the table, and then clears the flag word.
>
> Potential areas for improvement:
>
> o Sort module exception tables too.
>
> o Get rit of the flag word, and assume that if an architecture supports
> build time sorting, that it must have been done.
>
> o Add support for architectures other than MIPS and x86

i don't see much here that is arch-specific. why have a knob at all ? let's
just jump in with both feet and do this for everyone :).
-mike
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2011-11-21 00:13    [W:2.158 / U:0.788 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site