[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091217054524.GA3931@merkur.ravnborg.org>
Date: Thu, 17 Dec 2009 06:45:24 +0100
From: Sam Ravnborg <sam@...nborg.org>
To: Roland Dreier <rdreier@...co.com>
Cc: Masami Hiramatsu <mhiramat@...hat.com>,
Andrew Isaacson <adi@...are.com>,
Ingo Molnar <mingo@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>, x86@...nel.org,
linux-kernel@...r.kernel.org, linux-kbuild@...r.kernel.org,
Rob Landley <rob@...dley.net>
Subject: Re: CONFIG_KPROBES=y build requires gawk
On Wed, Dec 16, 2009 at 09:11:09PM -0800, Roland Dreier wrote:
>
> > As Al Viro said, if we run awk with LC_ALL=C, then the characters will be
> > sorted as ASCII. So, your patch is OK if you can add LC_ALL=C just before
> > $(AWK). (I'm not so sure whether Makefile can accept it...)
>
> OK, updated patch:
>
> ===
>
> x86: Don't use POSIX character classes in gen-insn-attr-x86.awk
>
> Not all awk implementations (including the default awk in Ubuntu 9.10)
> support POSIX character classes. Since x86-opcode-map.txt is plain
> ASCII, we can just use explicit ranges for lower case, alphabetic, and
> alphanumeric characters instead. We set LC_ALL=C when invoking awk so
> that ASCII ranges are never misinterpreted.
>
> I verified that the Debian version of mawk, which doesn't have POSIX
> character set suport, generates the byte-for-byte the same inat-tables.c
> after this patch as gawk did on an unpatched kernel.
>
> Signed-off-by: Roland Dreier <rolandd@...co.com>
> ---
> arch/x86/lib/Makefile | 2 +-
> arch/x86/tools/gen-insn-attr-x86.awk | 10 ++++------
> 2 files changed, 5 insertions(+), 7 deletions(-)
>
> diff --git a/arch/x86/lib/Makefile b/arch/x86/lib/Makefile
> index 45b20e4..0c46d60 100644
> --- a/arch/x86/lib/Makefile
> +++ b/arch/x86/lib/Makefile
> @@ -5,7 +5,7 @@
> inat_tables_script = $(srctree)/arch/x86/tools/gen-insn-attr-x86.awk
> inat_tables_maps = $(srctree)/arch/x86/lib/x86-opcode-map.txt
> quiet_cmd_inat_tables = GEN $@
> - cmd_inat_tables = $(AWK) -f $(inat_tables_script) $(inat_tables_maps) > $@ || rm -f $@
> + cmd_inat_tables = LC_ALL=C $(AWK) -f $(inat_tables_script) $(inat_tables_maps) > $@ || rm -f $@
This will result in error messages in english always from awk - no?
Some people will care.
Sam
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists