Re: [PATCH] MIPS: IP27: Update/restructure CPU overrides

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 02, 2015 at 06:03:31PM -0400, Joshua Kinard wrote:

> From: Joshua Kinard <kumba@xxxxxxxxxx>
> 
> Inspired by Maciej's recent patch to update DEC cpu-feature-overrides.h,
> I updated IP27's as well to disable features known to not apply to the
> IP27 platform or the R10K-series of CPUs.
> 
> Before:
>    text    data     bss     dec     hex filename
> 8616648  463200  472240 9552088  91c0d8 vmlinux
> 
> After:
>    text    data     bss     dec     hex filename
> 8592256  471392  472240 9535888  918190 vmlinux
> 
> I believe the increase in the size of the data section is for the same
> reasons as in the DEC patch.
> 
> Signed-off-by: Joshua Kinard <kumba@xxxxxxxxxx>
> ---
>  arch/mips/include/asm/mach-ip27/cpu-feature-overrides.h |   92 ++++++----
>  1 file changed, 57 insertions(+), 35 deletions(-)
> 
> The number of changes is due to restructuring the file to be similar to
> IP30's, so that eventually, all of the SGI platforms will have a similar
> look to their cpu-feature-overrides.h file, making it easier to update
> in the future.  I'll also send one for IP32 shortly, as that needs some
> more careful updating due to the various CPUs it supports.

Kernel bloat due to incomplete overrides.h files is a well known problem.
It's also somewhat hard problem since writing one requires intimate
knowledge of the CPU.  That used to be easy for the classic discrete
CPUs but with synthesizable cores many options can differ between
instances of that core.  Anyway, the solution I'm thinking off should
be no more complex that for example saying

#include <asm/cpus/r4000.h>
#include <asm/cpus/r4600.h>
#include <asm/cpus/r5000.h>

for an IP22.  Or something similarly obvious.

Patch queued for 4.2.

Thanks!

  Ralf





[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux