All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nicolas Pitre <nicolas.pitre@linaro.org>
To: Stefan Agner <stefan@agner.ch>
Cc: linux@armlinux.org.uk, ard.biesheuvel@linaro.org, arnd@arndb.de,
	robin.murphy@arm.com, marc.zyngier@arm.com,
	behanw@converseincode.com, keescook@chromium.org,
	Bernhard.Rosenkranzer@linaro.org, mka@chromium.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 1/6] bus: arm-cci: use asm unreachable
Date: Sun, 25 Mar 2018 14:14:26 -0400 (EDT)	[thread overview]
Message-ID: <nycvar.YSQ.7.76.1803251413010.19824@knanqh.ubzr> (raw)
In-Reply-To: <20180325180959.28008-2-stefan@agner.ch>

On Sun, 25 Mar 2018, Stefan Agner wrote:

> Mixing asm and C code is not recommended in a naked function by
> gcc and leads to an error when using clang:
>   drivers/bus/arm-cci.c:2107:2: error: non-ASM statement in naked
>   function is not supported
>         unreachable();
>         ^
> 
> While the function is marked __naked it actually properly return
> in asm. There is no need for the unreachable() call.
> 
> Suggested-by: Russell King <linux@arm.linux.org.uk>
> Signed-off-by: Stefan Agner <stefan@agner.ch>

If that doesn't introduce any warning with gcc then I'm fine with it.

Acked-by: Nicolas Pitre <nico@linaro.org>


> ---
> Changes in v2:
> - Don't add assembly ASM_UNREACHABLE, just drop unreachable()
> 
>  drivers/bus/arm-cci.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/bus/arm-cci.c b/drivers/bus/arm-cci.c
> index 5426c04fe24b..fc2da3a617ac 100644
> --- a/drivers/bus/arm-cci.c
> +++ b/drivers/bus/arm-cci.c
> @@ -2103,8 +2103,6 @@ asmlinkage void __naked cci_enable_port_for_self(void)
>  	[sizeof_struct_cpu_port] "i" (sizeof(struct cpu_port)),
>  	[sizeof_struct_ace_port] "i" (sizeof(struct cci_ace_port)),
>  	[offsetof_port_phys] "i" (offsetof(struct cci_ace_port, phys)) );
> -
> -	unreachable();
>  }
>  
>  /**
> -- 
> 2.16.2
> 
> 

WARNING: multiple messages have this Message-ID (diff)
From: nicolas.pitre@linaro.org (Nicolas Pitre)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 1/6] bus: arm-cci: use asm unreachable
Date: Sun, 25 Mar 2018 14:14:26 -0400 (EDT)	[thread overview]
Message-ID: <nycvar.YSQ.7.76.1803251413010.19824@knanqh.ubzr> (raw)
In-Reply-To: <20180325180959.28008-2-stefan@agner.ch>

On Sun, 25 Mar 2018, Stefan Agner wrote:

> Mixing asm and C code is not recommended in a naked function by
> gcc and leads to an error when using clang:
>   drivers/bus/arm-cci.c:2107:2: error: non-ASM statement in naked
>   function is not supported
>         unreachable();
>         ^
> 
> While the function is marked __naked it actually properly return
> in asm. There is no need for the unreachable() call.
> 
> Suggested-by: Russell King <linux@arm.linux.org.uk>
> Signed-off-by: Stefan Agner <stefan@agner.ch>

If that doesn't introduce any warning with gcc then I'm fine with it.

Acked-by: Nicolas Pitre <nico@linaro.org>


> ---
> Changes in v2:
> - Don't add assembly ASM_UNREACHABLE, just drop unreachable()
> 
>  drivers/bus/arm-cci.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/bus/arm-cci.c b/drivers/bus/arm-cci.c
> index 5426c04fe24b..fc2da3a617ac 100644
> --- a/drivers/bus/arm-cci.c
> +++ b/drivers/bus/arm-cci.c
> @@ -2103,8 +2103,6 @@ asmlinkage void __naked cci_enable_port_for_self(void)
>  	[sizeof_struct_cpu_port] "i" (sizeof(struct cpu_port)),
>  	[sizeof_struct_ace_port] "i" (sizeof(struct cci_ace_port)),
>  	[offsetof_port_phys] "i" (offsetof(struct cci_ace_port, phys)) );
> -
> -	unreachable();
>  }
>  
>  /**
> -- 
> 2.16.2
> 
> 

  reply	other threads:[~2018-03-25 18:14 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-25 18:09 [PATCH v2 0/6] ARM: clang support Stefan Agner
2018-03-25 18:09 ` Stefan Agner
2018-03-25 18:09 ` [PATCH v2 1/6] bus: arm-cci: use asm unreachable Stefan Agner
2018-03-25 18:09   ` Stefan Agner
2018-03-25 18:14   ` Nicolas Pitre [this message]
2018-03-25 18:14     ` Nicolas Pitre
2018-03-25 18:19     ` Stefan Agner
2018-03-25 18:19       ` Stefan Agner
2018-04-16 15:59   ` Stefan Agner
2018-04-16 15:59     ` Stefan Agner
2018-03-25 18:09 ` [PATCH v2 2/6] efi/libstub/arm: add support for building with clang Stefan Agner
2018-03-25 18:09   ` Stefan Agner
2018-03-25 18:09 ` [PATCH v2 3/6] ARM: trusted_foundations: do not use naked function Stefan Agner
2018-03-25 18:09   ` Stefan Agner
2018-03-26 21:20   ` Dmitry Osipenko
2018-03-26 21:20     ` Dmitry Osipenko
2018-03-27 11:54     ` Robin Murphy
2018-03-27 11:54       ` Robin Murphy
2018-03-27 12:16       ` Dmitry Osipenko
2018-03-27 12:16         ` Dmitry Osipenko
2018-04-16 15:56         ` Stefan Agner
2018-04-16 15:56           ` Stefan Agner
2018-04-16 16:08           ` Stephen Warren
2018-04-16 16:08             ` Stephen Warren
2018-04-16 18:21             ` Stefan Agner
2018-04-16 18:21               ` Stefan Agner
2018-04-17  8:11               ` Thierry Reding
2018-04-17  8:11                 ` Thierry Reding
2018-06-26  8:11                 ` Stefan Agner
2018-06-26  8:11                   ` Stefan Agner
2018-07-12 22:43                 ` Kees Cook
2018-07-12 22:43                   ` Kees Cook
2018-07-12 23:01                   ` Russell King - ARM Linux
2018-07-12 23:01                     ` Russell King - ARM Linux
2018-07-13  8:07                     ` Stefan Agner
2018-07-13  8:07                       ` Stefan Agner
2018-05-19 22:02               ` Dmitry Osipenko
2018-05-19 22:02                 ` Dmitry Osipenko
2018-07-12 22:59   ` Russell King - ARM Linux
2018-07-12 22:59     ` Russell King - ARM Linux
2018-03-25 18:09 ` [PATCH v2 4/6] ARM: drop no-thumb-interwork in EABI mode Stefan Agner
2018-03-25 18:09   ` Stefan Agner
2018-06-12 17:19   ` [v2,4/6] " Guenter Roeck
2018-06-12 17:19     ` Guenter Roeck
2018-06-12 17:27     ` Stefan Agner
2018-06-12 17:27       ` Stefan Agner
2018-03-25 18:09 ` [PATCH v2 5/6] ARM: add support for building ARM kernel with clang Stefan Agner
2018-03-25 18:09   ` Stefan Agner
2018-03-25 18:09 ` [PATCH v2 6/6] ARM: uaccess: remove const to avoid duplicate specifier Stefan Agner
2018-03-25 18:09   ` Stefan Agner
2018-05-07 20:24 ` [PATCH v2 0/6] ARM: clang support Stefan Agner
2018-05-07 20:24   ` Stefan Agner
2018-05-07 21:09   ` Arnd Bergmann
2018-05-07 21:09     ` Arnd Bergmann

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=nycvar.YSQ.7.76.1803251413010.19824@knanqh.ubzr \
    --to=nicolas.pitre@linaro.org \
    --cc=Bernhard.Rosenkranzer@linaro.org \
    --cc=ard.biesheuvel@linaro.org \
    --cc=arnd@arndb.de \
    --cc=behanw@converseincode.com \
    --cc=keescook@chromium.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=marc.zyngier@arm.com \
    --cc=mka@chromium.org \
    --cc=robin.murphy@arm.com \
    --cc=stefan@agner.ch \
    /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.