All of lore.kernel.org
 help / color / mirror / Atom feed
From: Masahiro Yamada <masahiroy@kernel.org>
To: "H. Nikolaus Schaller" <hns@goldelico.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	X86 ML <x86@kernel.org>, Jessica Yu <jeyu@kernel.org>,
	Miroslav Benes <mbenes@suse.cz>,
	Emil Velikov <emil.l.velikov@gmail.com>,
	Discussions about the Letux Kernel 
	<letux-kernel@openphoenux.org>, "H. Peter Anvin" <hpa@zytor.com>,
	linux-mips <linux-mips@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	kernel@pyra-handheld.com,
	Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>,
	Nick Desaulniers <ndesaulniers@google.com>
Subject: Re: [PATCH 0/2] Regex fixes for mips and x86 cross-compile
Date: Thu, 5 Aug 2021 20:54:26 +0900	[thread overview]
Message-ID: <CAK7LNARLJwwqp0j9yFH9CCfR1VN5yfLyCDjLD8nJ3F4kdG1ZyA@mail.gmail.com> (raw)
In-Reply-To: <BFB4FABC-60B7-445D-ACEB-4AAE177AF8D4@goldelico.com>

On Wed, Aug 4, 2021 at 12:59 AM H. Nikolaus Schaller <hns@goldelico.com> wrote:
>
> Hi all,
> any chance to get that reviewed and merged into v5.15-rc1 and backported to stable?
> Thank you,
> Nikolaus Schaller



I have a macbook (macOS catalina), and was able to
reproduce this issue.

I applied both to kbuild tree.
Thanks.





>
> > Am 19.07.2021 um 22:37 schrieb Nick Desaulniers <ndesaulniers@google.com>:
> >
> > + Masahiro, linux-kbuild (EOM)
> >
> > On Mon, Jul 19, 2021 at 12:07 PM H. Nikolaus Schaller <hns@goldelico.com> wrote:
> >>
> >> Any chance that it gets merged?
> >>
> >>> Am 08.07.2021 um 10:57 schrieb H. Nikolaus Schaller <hns@goldelico.com>:
> >>>
> >>> Trying to run the x86 relocs tool on a BSD based HOSTCC (cross
> >>> compilation environment) leads to errors like
> >>>
> >>> VOFFSET arch/x86/boot/compressed/../voffset.h - due to: vmlinux
> >>> CC      arch/x86/boot/compressed/misc.o - due to: arch/x86/boot/compressed/../voffset.h
> >>> OBJCOPY arch/x86/boot/compressed/vmlinux.bin - due to: vmlinux
> >>> RELOCS  arch/x86/boot/compressed/vmlinux.relocs - due to: vmlinux
> >>> empty (sub)expressionarch/x86/boot/compressed/Makefile:118: recipe for target 'arch/x86/boot/compressed/vmlinux.relocs' failed
> >>> make[3]: *** [arch/x86/boot/compressed/vmlinux.relocs] Error 1
> >>>
> >>> and when cross compiling a MIPS kernel on a BSD based HOSTCC
> >>> we get errors like
> >>>
> >>> SYNC    include/config/auto.conf.cmd - due to: .config
> >>> egrep: empty (sub)expression
> >>> UPD     include/config/kernel.release
> >>> HOSTCC  scripts/dtc/dtc.o - due to target missing
> >>>
> >>> It turns out that relocs.c on x86 uses patterns like
> >>>
> >>>      "something(|_end)"
> >>>
> >>> while MIPS uses egrep with
> >>>
> >>>      (|MINOR_|PATCHLEVEL_)
> >>>
> >>> In both cases it is not valid syntax or gives undefined results
> >>> according to POSIX 9.5.3 ERE Grammar
> >>>
> >>>      https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html
> >>>
> >>> It seems to be silently accepted by the Linux regcmp() or egrep
> >>> implementation while a BSD host complains.
> >>>
> >>> Such patterns can be replaced by a transformation like
> >>>
> >>>      "(|p1|p2)" -> "(p1|p2)?"
> >>>
> >>> Test Linux:
> >>>
> >>> root@letux:~# echo foo | egrep '^(|foo)$'
> >>> foo
> >>> root@letux:~# echo fool | egrep '^(foo)?$'
> >>> root@letux:~# echo fun | egrep '^(|foo)$'
> >>> root@letux:~# echo f | egrep '^(|foo)$'
> >>> root@letux:~# echo | egrep '^(|foo)$'
> >>>
> >>> root@letux:~# echo foo | egrep '^(foo)?$'
> >>> foo
> >>> root@letux:~# echo fool | egrep '^(foo)?$'
> >>> root@letux:~# echo fun | egrep '^(foo)?$'
> >>> root@letux:~# echo f | egrep '^(foo)?$'
> >>> root@letux:~# echo | egrep '^(foo)?$'
> >>>
> >>> root@letux:~#
> >>>
> >>> Test BSD:
> >>>
> >>> iMac:master hns$ echo foo | egrep '^(|foo)$'
> >>> egrep: empty (sub)expression
> >>> iMac:master hns$ echo fool | egrep '^(foo)?$'
> >>> egrep: empty (sub)expression
> >>> iMac:master hns$ echo fun | egrep '^(|foo)$'
> >>> egrep: empty (sub)expression
> >>> iMac:master hns$ echo f | egrep '^(|foo)$'
> >>> egrep: empty (sub)expression
> >>> iMac:master hns$ echo | egrep '^(|foo)$'
> >>> egrep: empty (sub)expression
> >>> iMac:master hns$ echo foo | egrep '^(foo)?$'
> >>> foo
> >>> iMac:master hns$ echo fool | egrep '^(foo)?$'
> >>> iMac:master hns$ echo fun | egrep '^(foo)?$'
> >>> iMac:master hns$ echo f | egrep '^(foo)?$'
> >>> iMac:master hns$ echo | egrep '^(foo)?$'
> >>>
> >>> iMac:master hns$
> >>>
> >>>
> >>> H. Nikolaus Schaller (2):
> >>> x86/tools/relocs: Fix non-POSIX regexp
> >>> arch: mips: Fix non-POSIX regexp
> >>>
> >>> arch/mips/Makefile      | 2 +-
> >>> arch/x86/tools/relocs.c | 8 ++++----
> >>> 2 files changed, 5 insertions(+), 5 deletions(-)
> >>>
> >>> --
> >>> 2.31.1
> >>>
> >>
> >
> >
> > --
> > Thanks,
> > ~Nick Desaulniers
>


-- 
Best Regards
Masahiro Yamada

      reply	other threads:[~2021-08-05 11:55 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-08  8:57 [PATCH 0/2] Regex fixes for mips and x86 cross-compile H. Nikolaus Schaller
2021-07-08  8:57 ` [PATCH 1/2] x86/tools/relocs: Fix non-POSIX regexp H. Nikolaus Schaller
2021-08-05 11:52   ` Masahiro Yamada
2021-07-08  8:57 ` [PATCH 2/2] arch: mips: " H. Nikolaus Schaller
2021-08-05 11:53   ` Masahiro Yamada
2021-07-19 19:04 ` [PATCH 0/2] Regex fixes for mips and x86 cross-compile H. Nikolaus Schaller
2021-07-19 20:37   ` Nick Desaulniers
2021-08-03 15:58     ` H. Nikolaus Schaller
2021-08-05 11:54       ` Masahiro Yamada [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAK7LNARLJwwqp0j9yFH9CCfR1VN5yfLyCDjLD8nJ3F4kdG1ZyA@mail.gmail.com \
    --to=masahiroy@kernel.org \
    --cc=bp@alien8.de \
    --cc=emil.l.velikov@gmail.com \
    --cc=hns@goldelico.com \
    --cc=hpa@zytor.com \
    --cc=jeyu@kernel.org \
    --cc=kernel@pyra-handheld.com \
    --cc=letux-kernel@openphoenux.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=mbenes@suse.cz \
    --cc=mingo@redhat.com \
    --cc=ndesaulniers@google.com \
    --cc=tglx@linutronix.de \
    --cc=tsbogend@alpha.franken.de \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.