[PATCH] ARM: sort select statements alphanumerically

Barry Song 21cnbao at gmail.com
Tue Oct 9 02:18:25 EDT 2012


2012/10/7 Russell King <rmk+kernel at arm.linux.org.uk>:
> As suggested by Andrew Morton:
>
>   This is a pet peeve of mine.  Any time there's a long list of items
>   (header file inclusions, kconfig entries, array initalisers, etc) and
>   someone wants to add a new item, they *always* go and stick it at the
>   end of the list.
>   ...
>   Guys, don't do this.  Either put the new item into a randomly-chosen
>   position or, probably better, alphanumerically sort the list.
>
>   For this reason it looks like approximately 0% of the patchset will
>   apply, sorry.
>
> lets sort all our select statements alphanumerically.  This commit was
> created by the following script:
>
> #!/usr/bin/perl
> while (<>) {
>         while (/\\\s*$/) {
>                 $_ .= <>;
>         }
>         undef %selects if /^\s*config\s+/;
>         if (/^\s+select\s+(\w+).*/) {
>                 if (defined($selects{$1})) {
>                         if ($selects{$1} eq $_) {
>                                 print STDERR "Warning: removing duplicated $1 entry\n";
>                         } else {
>                                 print STDERR "Error: $1 differently selected\n".
>                                         "\tOld: $selects{$1}\n".
>                                         "\tNew: $_\n";
>                                 exit 1;
>                         }
>                 }
>                 $selects{$1} = $_;
>                 next;
>         }
>         if (%selects and (/^\s*$/ or /^\s+help/)) {
>                 foreach $k (sort (keys %selects)) {
>                         print "$selects{$k}";
>                 }
>                 undef %selects;
>         }
>         print;
> }
> if (%selects) {
>         foreach $k (sort (keys %selects)) {
>                 print "$selects{$k}";
>         }
> }
>
> It found two duplicates:
>
> Warning: removing duplicated S5P_SETUP_MIPIPHY entry
> Warning: removing duplicated HARDIRQS_SW_RESEND entry
>
> and they are identical duplicates, hence the shrinkage in the diffstat
> of two lines.
>
> Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>

Changes in CSR prima2 arch look fine,

Acked-by: Barry Song <Baohua.Song at csr.com>

BTW, i have a bundle of patches coming for new Marco platform which
will also change the Kconfig.

> ---
> This commit is likely to change as we get closer to the end of the merge
> window, as other changes get merged into Linus' tree.  I will be refreshing
> this from time to time, and keeping it out of linux-next, as it will cause
> more pain than its worth to put it into linux-next.
>
> Anyone who wants to give this a review to check that it's correct are welcome,
> but I don't think it would be appropriate to collect attributation tags for
> it, as this won't be the final patch.
>
> This patch is intentionally broken to prevent Linus from applying it - this
> is information only!
>
> Anyone who wants to apply it can do so by first running this patch through:
>
>         sed 's/^-- /@@ /'
>
>  arch/arm/Kconfig                  |  399 ++++++++++++++++++-------------------
>  arch/arm/common/Kconfig           |    4 +-
>  arch/arm/mach-at91/Kconfig        |   26 ++--
>  arch/arm/mach-clps711x/Kconfig    |    4 +-
>  arch/arm/mach-davinci/Kconfig     |   16 +-
>  arch/arm/mach-exynos/Kconfig      |  181 +++++++++---------
>  arch/arm/mach-footbridge/Kconfig  |    8 +-
>  arch/arm/mach-h720x/Kconfig       |    2 +-
>  arch/arm/mach-imx/Kconfig         |  120 ++++++------
>  arch/arm/mach-ixp4xx/Kconfig      |    2 +-
>  arch/arm/mach-mmp/Kconfig         |    6 +-
>  arch/arm/mach-msm/Kconfig         |   28 ++--
>  arch/arm/mach-nomadik/Kconfig     |    4 +-
>  arch/arm/mach-omap1/Kconfig       |    8 +-
>  arch/arm/mach-omap2/Kconfig       |   68 +++---
>  arch/arm/mach-prima2/Kconfig      |    2 +-

-barry



More information about the linux-arm-kernel mailing list