* linux-next: build failure after merge of the akpm-current tree
@ 2017-08-31 8:21 Stephen Rothwell
2017-09-06 12:32 ` Martin Wilck
2017-09-06 12:36 ` [PATCH] string.h: un-fortify memcpy_and_pad Martin Wilck
0 siblings, 2 replies; 13+ messages in thread
From: Stephen Rothwell @ 2017-08-31 8:21 UTC (permalink / raw)
To: Andrew Morton, Jens Axboe
Cc: Linux-Next Mailing List, Linux Kernel Mailing List, Kees Cook,
Martin Wilck, Sagi Grimberg, Christoph Hellwig
Hi Andrew,
After merging the akpm-current tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:
In file included from /home/sfr/next/next/include/uapi/linux/uuid.h:21:0,
from /home/sfr/next/next/include/linux/uuid.h:19,
from /home/sfr/next/next/include/linux/mod_devicetable.h:12,
from /home/sfr/next/next/scripts/mod/devicetable-offsets.c:2:
/home/sfr/next/next/include/linux/string.h: In function 'memcpy_and_pad':
/home/sfr/next/next/include/linux/string.h:450:3: error: implicit declaration of function 'fortify_panic' [-Werror=implicit-function-declaration]
fortify_panic(__func__);
^
Caused by commit
9b04e51112ba ("fortify: use WARN instead of BUG for now")
interacting with commit
01f33c336e2d ("string.h: add memcpy_and_pad()")
from the block tree.
I have applied the following merge fix patch:
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Thu, 31 Aug 2017 18:13:43 +1000
Subject: [PATCH] fortify: use WARN instead of BUG for now fix
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
include/linux/string.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/string.h b/include/linux/string.h
index edd2b6154b80..e3b713114732 100644
--- a/include/linux/string.h
+++ b/include/linux/string.h
@@ -447,7 +447,7 @@ __FORTIFY_INLINE void memcpy_and_pad(void *dest, size_t dest_len,
__read_overflow3();
}
if (dest_size < dest_len)
- fortify_panic(__func__);
+ fortify_overflow(__func__);
if (dest_len > count) {
memcpy(dest, src, count);
memset(dest + count, pad, dest_len - count);
--
2.13.2
--
Cheers,
Stephen Rothwell
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: linux-next: build failure after merge of the akpm-current tree
2017-08-31 8:21 linux-next: build failure after merge of the akpm-current tree Stephen Rothwell
@ 2017-09-06 12:32 ` Martin Wilck
2017-09-06 12:36 ` [PATCH] string.h: un-fortify memcpy_and_pad Martin Wilck
1 sibling, 0 replies; 13+ messages in thread
From: Martin Wilck @ 2017-09-06 12:32 UTC (permalink / raw)
To: Stephen Rothwell, Andrew Morton, Jens Axboe
Cc: Linux-Next Mailing List, Linux Kernel Mailing List, Kees Cook,
Sagi Grimberg, Christoph Hellwig
Hello Stephen,
On Thu, 2017-08-31 at 18:21 +1000, Stephen Rothwell wrote:
> Hi Andrew,
>
> After merging the akpm-current tree, today's linux-next build (arm
> multi_v7_defconfig) failed like this:
>
> In file included from
> /home/sfr/next/next/include/uapi/linux/uuid.h:21:0,
> from /home/sfr/next/next/include/linux/uuid.h:19,
> from
> /home/sfr/next/next/include/linux/mod_devicetable.h:12,
> from /home/sfr/next/next/scripts/mod/devicetable-
> offsets.c:2:
> /home/sfr/next/next/include/linux/string.h: In function
> 'memcpy_and_pad':
> /home/sfr/next/next/include/linux/string.h:450:3: error: implicit
> declaration of function 'fortify_panic' [-Werror=implicit-function-
> declaration]
> fortify_panic(__func__);
> ^
>
> Caused by commit
>
> 9b04e51112ba ("fortify: use WARN instead of BUG for now")
>
> interacting with commit
>
> 01f33c336e2d ("string.h: add memcpy_and_pad()")
>
> from the block tree.
>
> I have applied the following merge fix patch:
>
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Thu, 31 Aug 2017 18:13:43 +1000
> Subject: [PATCH] fortify: use WARN instead of BUG for now fix
>
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
> ---
> include/linux/string.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/string.h b/include/linux/string.h
> index edd2b6154b80..e3b713114732 100644
> --- a/include/linux/string.h
> +++ b/include/linux/string.h
> @@ -447,7 +447,7 @@ __FORTIFY_INLINE void memcpy_and_pad(void *dest,
> size_t dest_len,
> __read_overflow3();
> }
> if (dest_size < dest_len)
> - fortify_panic(__func__);
> + fortify_overflow(__func__);
> if (dest_len > count) {
> memcpy(dest, src, count);
> memset(dest + count, pad, dest_len - count);
> --
> 2.13.2
Arnd Bergmann spotted another problem with that patch. I decided to rip
out the "fortify" related code. I'll send a patch in a follow-up email.
Regards,
Martin
--
Dr. Martin Wilck <mwilck@suse.com>, Tel. +49 (0)911 74053 2107
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH] string.h: un-fortify memcpy_and_pad
2017-08-31 8:21 linux-next: build failure after merge of the akpm-current tree Stephen Rothwell
2017-09-06 12:32 ` Martin Wilck
@ 2017-09-06 12:36 ` Martin Wilck
2017-09-11 9:44 ` Martin Wilck
1 sibling, 1 reply; 13+ messages in thread
From: Martin Wilck @ 2017-09-06 12:36 UTC (permalink / raw)
To: Stephen Rothwell, Christoph Hellwig, Jens Axboe, Andrew Morton
Cc: Sagi Grimberg, Kees Cook, linux-kernel, linux-next, Martin Wilck
The way I'd implemented the new helper memcpy_and_pad with
__FORTIFY_INLINE caused compiler warnings for certain kernel
configurations.
This helper is only used in a single place at this time, and thus
doesn't benefit much from fortification. So simplify the code
by dropping fortification support for now.
Fixes: 01f33c336e2d "string.h: add memcpy_and_pad()"
Signed-off-by: Martin Wilck <mwilck@suse.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
---
include/linux/string.h | 15 ++-------------
1 file changed, 2 insertions(+), 13 deletions(-)
diff --git a/include/linux/string.h b/include/linux/string.h
index e1eeb0a8a9693..54d21783e18dd 100644
--- a/include/linux/string.h
+++ b/include/linux/string.h
@@ -434,20 +434,9 @@ __FORTIFY_INLINE char *strcpy(char *p, const char *q)
* @count: The number of bytes to copy
* @pad: Character to use for padding if space is left in destination.
*/
-__FORTIFY_INLINE void memcpy_and_pad(void *dest, size_t dest_len,
- const void *src, size_t count, int pad)
+static inline void memcpy_and_pad(void *dest, size_t dest_len,
+ const void *src, size_t count, int pad)
{
- size_t dest_size = __builtin_object_size(dest, 0);
- size_t src_size = __builtin_object_size(src, 0);
-
- if (__builtin_constant_p(dest_len) && __builtin_constant_p(count)) {
- if (dest_size < dest_len && dest_size < count)
- __write_overflow();
- else if (src_size < dest_len && src_size < count)
- __read_overflow3();
- }
- if (dest_size < dest_len)
- fortify_panic(__func__);
if (dest_len > count) {
memcpy(dest, src, count);
memset(dest + count, pad, dest_len - count);
--
2.14.0
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH] string.h: un-fortify memcpy_and_pad
2017-09-06 12:36 ` [PATCH] string.h: un-fortify memcpy_and_pad Martin Wilck
@ 2017-09-11 9:44 ` Martin Wilck
0 siblings, 0 replies; 13+ messages in thread
From: Martin Wilck @ 2017-09-11 9:44 UTC (permalink / raw)
To: Stephen Rothwell, Christoph Hellwig
Cc: Sagi Grimberg, Kees Cook, linux-kernel, linux-next, Jens Axboe,
Andrew Morton, linux-nvme, jthumshirn, arnd
On Wed, 2017-09-06 at 14:36 +0200, Martin Wilck wrote:
> The way I'd implemented the new helper memcpy_and_pad with
> __FORTIFY_INLINE caused compiler warnings for certain kernel
> configurations.
>
> This helper is only used in a single place at this time, and thus
> doesn't benefit much from fortification. So simplify the code
> by dropping fortification support for now.
>
> Fixes: 01f33c336e2d "string.h: add memcpy_and_pad()"
> Signed-off-by: Martin Wilck <mwilck@suse.com>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
>
> ---
> include/linux/string.h | 15 ++-------------
> 1 file changed, 2 insertions(+), 13 deletions(-)
Hello Stephen and Christoph,
my broken patch 01f33c336e2d is in Linus' tree and causing compiler
warnings there. Could you please take care that this fix is pulled in
on top of it? Or should I take another action myself?
Thanks,
Martin
>
> diff --git a/include/linux/string.h b/include/linux/string.h
> index e1eeb0a8a9693..54d21783e18dd 100644
> --- a/include/linux/string.h
> +++ b/include/linux/string.h
> @@ -434,20 +434,9 @@ __FORTIFY_INLINE char *strcpy(char *p, const
> char *q)
> * @count: The number of bytes to copy
> * @pad: Character to use for padding if space is left in
> destination.
> */
> -__FORTIFY_INLINE void memcpy_and_pad(void *dest, size_t dest_len,
> - const void *src, size_t count,
> int pad)
> +static inline void memcpy_and_pad(void *dest, size_t dest_len,
> + const void *src, size_t count, int
> pad)
> {
> - size_t dest_size = __builtin_object_size(dest, 0);
> - size_t src_size = __builtin_object_size(src, 0);
> -
> - if (__builtin_constant_p(dest_len) &&
> __builtin_constant_p(count)) {
> - if (dest_size < dest_len && dest_size < count)
> - __write_overflow();
> - else if (src_size < dest_len && src_size < count)
> - __read_overflow3();
> - }
> - if (dest_size < dest_len)
> - fortify_panic(__func__);
> if (dest_len > count) {
> memcpy(dest, src, count);
> memset(dest + count, pad, dest_len - count);
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH] string.h: un-fortify memcpy_and_pad
@ 2017-09-11 9:44 ` Martin Wilck
0 siblings, 0 replies; 13+ messages in thread
From: Martin Wilck @ 2017-09-11 9:44 UTC (permalink / raw)
On Wed, 2017-09-06@14:36 +0200, Martin Wilck wrote:
> The way I'd implemented the new helper memcpy_and_pad with
> __FORTIFY_INLINE caused compiler warnings for certain kernel
> configurations.
>
> This helper is only used in a single place at this time, and thus
> doesn't benefit much from fortification. So simplify the code
> by dropping fortification support for now.
>
> Fixes: 01f33c336e2d "string.h: add memcpy_and_pad()"
> Signed-off-by: Martin Wilck <mwilck at suse.com>
> Acked-by: Arnd Bergmann <arnd at arndb.de>
>
> ---
> include/linux/string.h | 15 ++-------------
> 1 file changed, 2 insertions(+), 13 deletions(-)
Hello Stephen and Christoph,
my broken patch 01f33c336e2d is in Linus' tree and causing compiler
warnings there. Could you please take care that this fix is pulled in
on top of it? Or should I take another action myself?
Thanks,
Martin
>
> diff --git a/include/linux/string.h b/include/linux/string.h
> index e1eeb0a8a9693..54d21783e18dd 100644
> --- a/include/linux/string.h
> +++ b/include/linux/string.h
> @@ -434,20 +434,9 @@ __FORTIFY_INLINE char *strcpy(char *p, const
> char *q)
> * @count: The number of bytes to copy
> * @pad: Character to use for padding if space is left in
> destination.
> */
> -__FORTIFY_INLINE void memcpy_and_pad(void *dest, size_t dest_len,
> - const void *src, size_t count,
> int pad)
> +static inline void memcpy_and_pad(void *dest, size_t dest_len,
> + const void *src, size_t count, int
> pad)
> {
> - size_t dest_size = __builtin_object_size(dest, 0);
> - size_t src_size = __builtin_object_size(src, 0);
> -
> - if (__builtin_constant_p(dest_len) &&
> __builtin_constant_p(count)) {
> - if (dest_size < dest_len && dest_size < count)
> - __write_overflow();
> - else if (src_size < dest_len && src_size < count)
> - __read_overflow3();
> - }
> - if (dest_size < dest_len)
> - fortify_panic(__func__);
> if (dest_len > count) {
> memcpy(dest, src, count);
> memset(dest + count, pad, dest_len - count);
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH] string.h: un-fortify memcpy_and_pad
2017-09-11 9:44 ` Martin Wilck
@ 2017-09-11 11:57 ` Christoph Hellwig
-1 siblings, 0 replies; 13+ messages in thread
From: Christoph Hellwig @ 2017-09-11 11:57 UTC (permalink / raw)
To: Martin Wilck
Cc: Stephen Rothwell, Christoph Hellwig, Sagi Grimberg, Kees Cook,
linux-kernel, linux-next, Jens Axboe, Andrew Morton, linux-nvme,
jthumshirn, arnd
> Hello Stephen and Christoph,
>
> my broken patch 01f33c336e2d is in Linus' tree and causing compiler
> warnings there. Could you please take care that this fix is pulled in
> on top of it? Or should I take another action myself?
string.h is a bit of a maintainers no mans land. Given that the
problematic commit came in through the nvme tree I've applied your
patch and will sned it to Jens with the next batch of nvme updates
tonight.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH] string.h: un-fortify memcpy_and_pad
@ 2017-09-11 11:57 ` Christoph Hellwig
0 siblings, 0 replies; 13+ messages in thread
From: Christoph Hellwig @ 2017-09-11 11:57 UTC (permalink / raw)
> Hello Stephen and Christoph,
>
> my broken patch 01f33c336e2d is in Linus' tree and causing compiler
> warnings there. Could you please take care that this fix is pulled in
> on top of it? Or should I take another action myself?
string.h is a bit of a maintainers no mans land. Given that the
problematic commit came in through the nvme tree I've applied your
patch and will sned it to Jens with the next batch of nvme updates
tonight.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v4 2/3] string.h: add memcpy_and_pad()
@ 2017-09-05 7:28 Arnd Bergmann
2017-09-05 18:23 ` Martin Wilck
0 siblings, 1 reply; 13+ messages in thread
From: Arnd Bergmann @ 2017-09-05 7:28 UTC (permalink / raw)
To: Martin Wilck
Cc: Christoph Hellwig, Keith Busch, Sagi Grimberg, Martin Wilck,
Johannes Thumshirn, Hannes Reinecke, linux-nvme,
Linux Kernel Mailing List
On Mon, Aug 14, 2017 at 10:12 PM, Martin Wilck <mwilck@suse.com> wrote:
> This helper function is useful for the nvme subsystem, and maybe
> others.
>
> Note: the warnings reported by the kbuild test robot for this patch
> are actually generated by the use of CONFIG_PROFILE_ALL_BRANCHES
> together with __FORTIFY_INLINE.
>
> Signed-off-by: Martin Wilck <mwilck@suse.com>
> ---
> #if !defined(__NO_FORTIFY) && defined(__OPTIMIZE__) && defined(CONFIG_FORTIFY_SOURCE)
> @@ -395,4 +396,33 @@ __FORTIFY_INLINE char *strcpy(char *p, const char *q)
>
> #endif
>
> +/**
> + * memcpy_and_pad - Copy one buffer to another with padding
> + * @dest: Where to copy to
> + * @dest_len: The destination buffer size
> + * @src: Where to copy from
> + * @count: The number of bytes to copy
> + * @pad: Character to use for padding if space is left in destination.
> + */
> +__FORTIFY_INLINE void memcpy_and_pad(void *dest, size_t dest_len,
> + const void *src, size_t count, int pad)
> +{
This is causing compile-time warnings for me:
In file included from /git/arm-soc/arch/x86/include/asm/string.h:2:0,
from /git/arm-soc/include/linux/string.h:18,
from /git/arm-soc/arch/x86/include/asm/page_32.h:34,
from /git/arm-soc/arch/x86/include/asm/page.h:13,
from /git/arm-soc/arch/x86/include/asm/thread_info.h:11,
from /git/arm-soc/include/linux/thread_info.h:37,
from /git/arm-soc/arch/x86/include/asm/preempt.h:6,
from /git/arm-soc/include/linux/preempt.h:80,
from /git/arm-soc/include/linux/spinlock.h:50,
from /git/arm-soc/include/linux/seqlock.h:35,
from /git/arm-soc/include/linux/time.h:5,
from /git/arm-soc/include/linux/stat.h:18,
from /git/arm-soc/include/linux/module.h:10,
from /git/arm-soc/drivers/md/dm-integrity.c:9:
/git/arm-soc/arch/x86/include/asm/string_32.h:196:25: error:
'__memcpy' is static but used in inline function 'memcpy_and_pad'
which is not static [-Werror]
#define memcpy(t, f, n) __memcpy((t), (f), (n))
^~~~~~~~
/git/arm-soc/include/linux/string.h:466:3: note: in expansion of macro 'memcpy'
^
/git/arm-soc/arch/x86/include/asm/string_32.h:196:25: error:
'__memcpy' is static but used in inline function 'memcpy_and_pad'
which is not static [-Werror]
#define memcpy(t, f, n) __memcpy((t), (f), (n))
^~~~~~~~
The problem is the use of __FORTIFY_INLINE outside of the #ifdef
section above it.
I used an ugly local workaround, duplicating the function with a
'static inline' variant
in an #else block. Alternatively we could add an extern version in
lib/string.c for the
non-fortified case.
Arnd
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH] string.h: un-fortify memcpy_and_pad
2017-09-05 7:28 [PATCH v4 2/3] string.h: add memcpy_and_pad() Arnd Bergmann
@ 2017-09-05 18:23 ` Martin Wilck
0 siblings, 0 replies; 13+ messages in thread
From: Martin Wilck @ 2017-09-05 18:23 UTC (permalink / raw)
To: Arnd Bergmann
Cc: arndbergmann, Christoph Hellwig, Keith Busch, Sagi Grimberg,
Johannes Thumshirn, Hannes Reinecke, linux-nvme, linux-kernel
The way I'd implemented the new helper memcpy_and_pad with
__FORTIFY_INLINE caused compiler warnings for certain kernel
configurations.
This helper is only used in a single place at this time, and thus
doesn't benefit much from fortification. So simplify the code
by dropping fortification support for now.
Fixes: 3c5fa8cd18f8 "string.h: add memcpy_and_pad()"
Signed-off-by: Martin Wilck <mwilck@suse.com>
---
include/linux/string.h | 15 ++-------------
1 file changed, 2 insertions(+), 13 deletions(-)
diff --git a/include/linux/string.h b/include/linux/string.h
index 0bec4151b0eb9..0495cd3c81689 100644
--- a/include/linux/string.h
+++ b/include/linux/string.h
@@ -404,20 +404,9 @@ __FORTIFY_INLINE char *strcpy(char *p, const char *q)
* @count: The number of bytes to copy
* @pad: Character to use for padding if space is left in destination.
*/
-__FORTIFY_INLINE void memcpy_and_pad(void *dest, size_t dest_len,
- const void *src, size_t count, int pad)
+static inline void memcpy_and_pad(void *dest, size_t dest_len,
+ const void *src, size_t count, int pad)
{
- size_t dest_size = __builtin_object_size(dest, 0);
- size_t src_size = __builtin_object_size(src, 0);
-
- if (__builtin_constant_p(dest_len) && __builtin_constant_p(count)) {
- if (dest_size < dest_len && dest_size < count)
- __write_overflow();
- else if (src_size < dest_len && src_size < count)
- __read_overflow3();
- }
- if (dest_size < dest_len)
- fortify_panic(__func__);
if (dest_len > count) {
memcpy(dest, src, count);
memset(dest + count, pad, dest_len - count);
--
2.14.0
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH] string.h: un-fortify memcpy_and_pad
@ 2017-09-05 18:23 ` Martin Wilck
0 siblings, 0 replies; 13+ messages in thread
From: Martin Wilck @ 2017-09-05 18:23 UTC (permalink / raw)
The way I'd implemented the new helper memcpy_and_pad with
__FORTIFY_INLINE caused compiler warnings for certain kernel
configurations.
This helper is only used in a single place at this time, and thus
doesn't benefit much from fortification. So simplify the code
by dropping fortification support for now.
Fixes: 3c5fa8cd18f8 "string.h: add memcpy_and_pad()"
Signed-off-by: Martin Wilck <mwilck at suse.com>
---
include/linux/string.h | 15 ++-------------
1 file changed, 2 insertions(+), 13 deletions(-)
diff --git a/include/linux/string.h b/include/linux/string.h
index 0bec4151b0eb9..0495cd3c81689 100644
--- a/include/linux/string.h
+++ b/include/linux/string.h
@@ -404,20 +404,9 @@ __FORTIFY_INLINE char *strcpy(char *p, const char *q)
* @count: The number of bytes to copy
* @pad: Character to use for padding if space is left in destination.
*/
-__FORTIFY_INLINE void memcpy_and_pad(void *dest, size_t dest_len,
- const void *src, size_t count, int pad)
+static inline void memcpy_and_pad(void *dest, size_t dest_len,
+ const void *src, size_t count, int pad)
{
- size_t dest_size = __builtin_object_size(dest, 0);
- size_t src_size = __builtin_object_size(src, 0);
-
- if (__builtin_constant_p(dest_len) && __builtin_constant_p(count)) {
- if (dest_size < dest_len && dest_size < count)
- __write_overflow();
- else if (src_size < dest_len && src_size < count)
- __read_overflow3();
- }
- if (dest_size < dest_len)
- fortify_panic(__func__);
if (dest_len > count) {
memcpy(dest, src, count);
memset(dest + count, pad, dest_len - count);
--
2.14.0
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH] string.h: un-fortify memcpy_and_pad
2017-09-05 18:23 ` Martin Wilck
@ 2017-09-05 19:26 ` Arnd Bergmann
-1 siblings, 0 replies; 13+ messages in thread
From: Arnd Bergmann @ 2017-09-05 19:26 UTC (permalink / raw)
To: Martin Wilck
Cc: Christoph Hellwig, Keith Busch, Sagi Grimberg,
Johannes Thumshirn, Hannes Reinecke, linux-nvme,
Linux Kernel Mailing List
On Tue, Sep 5, 2017 at 8:23 PM, Martin Wilck <mwilck@suse.com> wrote:
> The way I'd implemented the new helper memcpy_and_pad with
> __FORTIFY_INLINE caused compiler warnings for certain kernel
> configurations.
>
> This helper is only used in a single place at this time, and thus
> doesn't benefit much from fortification. So simplify the code
> by dropping fortification support for now.
>
> Fixes: 3c5fa8cd18f8 "string.h: add memcpy_and_pad()"
> Signed-off-by: Martin Wilck <mwilck@suse.com>
Looks good to me,
Acked-by: Arnd Bergmann <arnd@arndb.de>
I've added this to my randconfig testing tree, if you don't hear anything
from me by tomorrow, you can assume that it caused no other failures.
Arnd
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH] string.h: un-fortify memcpy_and_pad
@ 2017-09-05 19:26 ` Arnd Bergmann
0 siblings, 0 replies; 13+ messages in thread
From: Arnd Bergmann @ 2017-09-05 19:26 UTC (permalink / raw)
On Tue, Sep 5, 2017@8:23 PM, Martin Wilck <mwilck@suse.com> wrote:
> The way I'd implemented the new helper memcpy_and_pad with
> __FORTIFY_INLINE caused compiler warnings for certain kernel
> configurations.
>
> This helper is only used in a single place at this time, and thus
> doesn't benefit much from fortification. So simplify the code
> by dropping fortification support for now.
>
> Fixes: 3c5fa8cd18f8 "string.h: add memcpy_and_pad()"
> Signed-off-by: Martin Wilck <mwilck at suse.com>
Looks good to me,
Acked-by: Arnd Bergmann <arnd at arndb.de>
I've added this to my randconfig testing tree, if you don't hear anything
from me by tomorrow, you can assume that it caused no other failures.
Arnd
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH] string.h: un-fortify memcpy_and_pad
2017-09-05 19:26 ` Arnd Bergmann
@ 2017-09-06 13:02 ` Arnd Bergmann
-1 siblings, 0 replies; 13+ messages in thread
From: Arnd Bergmann @ 2017-09-06 13:02 UTC (permalink / raw)
To: Martin Wilck
Cc: Christoph Hellwig, Keith Busch, Sagi Grimberg,
Johannes Thumshirn, Hannes Reinecke, linux-nvme,
Linux Kernel Mailing List
On Tue, Sep 5, 2017 at 9:26 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Tue, Sep 5, 2017 at 8:23 PM, Martin Wilck <mwilck@suse.com> wrote:
>> The way I'd implemented the new helper memcpy_and_pad with
>> __FORTIFY_INLINE caused compiler warnings for certain kernel
>> configurations.
>>
>> This helper is only used in a single place at this time, and thus
>> doesn't benefit much from fortification. So simplify the code
>> by dropping fortification support for now.
>>
>> Fixes: 3c5fa8cd18f8 "string.h: add memcpy_and_pad()"
>> Signed-off-by: Martin Wilck <mwilck@suse.com>
>
> Looks good to me,
>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
>
> I've added this to my randconfig testing tree, if you don't hear anything
> from me by tomorrow, you can assume that it caused no other failures.
build-tested successfully.
Tested-by: Arnd Bergmann <arnd@arndb.de>
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH] string.h: un-fortify memcpy_and_pad
@ 2017-09-06 13:02 ` Arnd Bergmann
0 siblings, 0 replies; 13+ messages in thread
From: Arnd Bergmann @ 2017-09-06 13:02 UTC (permalink / raw)
On Tue, Sep 5, 2017@9:26 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Tue, Sep 5, 2017@8:23 PM, Martin Wilck <mwilck@suse.com> wrote:
>> The way I'd implemented the new helper memcpy_and_pad with
>> __FORTIFY_INLINE caused compiler warnings for certain kernel
>> configurations.
>>
>> This helper is only used in a single place at this time, and thus
>> doesn't benefit much from fortification. So simplify the code
>> by dropping fortification support for now.
>>
>> Fixes: 3c5fa8cd18f8 "string.h: add memcpy_and_pad()"
>> Signed-off-by: Martin Wilck <mwilck at suse.com>
>
> Looks good to me,
>
> Acked-by: Arnd Bergmann <arnd at arndb.de>
>
> I've added this to my randconfig testing tree, if you don't hear anything
> from me by tomorrow, you can assume that it caused no other failures.
build-tested successfully.
Tested-by: Arnd Bergmann <arnd at arndb.de>
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2017-09-11 11:57 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-31 8:21 linux-next: build failure after merge of the akpm-current tree Stephen Rothwell
2017-09-06 12:32 ` Martin Wilck
2017-09-06 12:36 ` [PATCH] string.h: un-fortify memcpy_and_pad Martin Wilck
2017-09-11 9:44 ` Martin Wilck
2017-09-11 9:44 ` Martin Wilck
2017-09-11 11:57 ` Christoph Hellwig
2017-09-11 11:57 ` Christoph Hellwig
2017-09-05 7:28 [PATCH v4 2/3] string.h: add memcpy_and_pad() Arnd Bergmann
2017-09-05 18:23 ` [PATCH] string.h: un-fortify memcpy_and_pad Martin Wilck
2017-09-05 18:23 ` Martin Wilck
2017-09-05 19:26 ` Arnd Bergmann
2017-09-05 19:26 ` Arnd Bergmann
2017-09-06 13:02 ` Arnd Bergmann
2017-09-06 13:02 ` Arnd Bergmann
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.