All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [Bug 1803872] [NEW] gcc 8.2 reports stringop-truncation when building qemu
@ 2018-11-18 13:45 Amir Gonnen
  2018-11-18 14:52 ` [Qemu-devel] [Bug 1803872] " Amir Gonnen
                   ` (5 more replies)
  0 siblings, 6 replies; 33+ messages in thread
From: Amir Gonnen @ 2018-11-18 13:45 UTC (permalink / raw)
  To: qemu-devel

Public bug reported:

QEMU 3.0

block/sheepdog.c: In function 'find_vdi_name':
block/sheepdog.c:1239:5: error: 'strncpy' specified bound 256 equals destination size [-Werror=stringop-truncation]
     strncpy(buf + SD_MAX_VDI_LEN, tag, SD_MAX_VDI_TAG_LEN);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


If this is the intended behavior, please suppress the warning. For example:

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wstringop-truncation"
    strncpy(buf + SD_MAX_VDI_LEN, tag, SD_MAX_VDI_TAG_LEN);
#pragma GCC diagnostic pop

** Affects: qemu
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1803872

Title:
  gcc 8.2 reports stringop-truncation when building qemu

Status in QEMU:
  New

Bug description:
  QEMU 3.0

  block/sheepdog.c: In function 'find_vdi_name':
  block/sheepdog.c:1239:5: error: 'strncpy' specified bound 256 equals destination size [-Werror=stringop-truncation]
       strncpy(buf + SD_MAX_VDI_LEN, tag, SD_MAX_VDI_TAG_LEN);
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  
  If this is the intended behavior, please suppress the warning. For example:

  #pragma GCC diagnostic push
  #pragma GCC diagnostic ignored "-Wstringop-truncation"
      strncpy(buf + SD_MAX_VDI_LEN, tag, SD_MAX_VDI_TAG_LEN);
  #pragma GCC diagnostic pop

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1803872/+subscriptions

^ permalink raw reply	[flat|nested] 33+ messages in thread
* [Qemu-devel] [PATCH v3 0/5] Fix strncpy() warnings for GCC8 new -Wstringop-truncation
@ 2018-12-18 17:51 Philippe Mathieu-Daudé
  2018-12-18 17:51 ` [Qemu-devel] [PATCH v3 1/5] qemu/compiler: Define QEMU_NONSTRING Philippe Mathieu-Daudé
                   ` (7 more replies)
  0 siblings, 8 replies; 33+ messages in thread
From: Philippe Mathieu-Daudé @ 2018-12-18 17:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: Michael S. Tsirkin, Juan Quintela, qemu-block, 1803872,
	Daniel P. Berrangé,
	Cédric Le Goater, Dr. David Alan Gilbert, Howard Spoelstra,
	Jeff Cody, David Hildenbrand, Paolo Bonzini, Stefan Weil,
	Markus Armbruster, Kevin Wolf, Eric Blake, Ben Pye,
	Marc-André Lureau, Thomas Huth, Igor Mammedov, Liu Yuan,
	David Gibson, Philippe Mathieu-Daudé,
	Max Reitz

GCC 8 new warning prevents builds to success since quite some time.
First report on the mailing list is in July 2018:
https://lists.gnu.org/archive/html/qemu-devel/2018-07/msg03723.html

Various intents has been sent to fix this:
- Incorrectly using g_strlcpy()
  https://lists.gnu.org/archive/html/qemu-devel/2018-08/msg03705.html
  https://lists.gnu.org/archive/html/qemu-devel/2018-08/msg03706.html
- Using assert() and strpadcpy()
  https://lists.gnu.org/archive/html/qemu-devel/2018-11/msg03938.html
- Use #pragma GCC diagnostic ignored "-Wstringop-truncation"
  https://lists.gnu.org/archive/html/qemu-devel/2018-12/msg04261.html
- adding an inline wrapper with said pragma in there
  https://lists.gnu.org/archive/html/qemu-devel/2018-12/msg04261.html
- -Wno-stringop-truncation is the makefile
  https://lists.gnu.org/archive/html/qemu-devel/2018-12/msg04261.html
- Use the 'nonstring' attribute
  https://lists.gnu.org/archive/html/qemu-devel/2018-12/msg04493.html

This series add the QEMU_NONSTRING definition and use it.

Regards,

Phil.

Philippe Mathieu-Daudé (5):
  qemu/compiler: Define QEMU_NONSTRING
  block/sheepdog: Use QEMU_NONSTRING for non NUL-terminated arrays
  hw/acpi: Use QEMU_NONSTRING for non NUL-terminated arrays
  migration: Use QEMU_NONSTRING for non NUL-terminated arrays
  migration: Use strnlen() for fixed-size string

 block/sheepdog.c            |  2 +-
 hw/acpi/core.c              |  8 ++++----
 include/hw/acpi/acpi-defs.h |  8 ++++----
 include/qemu/compiler.h     | 15 +++++++++++++++
 migration/global_state.c    |  4 ++--
 5 files changed, 26 insertions(+), 11 deletions(-)

-- 
2.17.2

^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2019-04-24  6:11 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-18 13:45 [Qemu-devel] [Bug 1803872] [NEW] gcc 8.2 reports stringop-truncation when building qemu Amir Gonnen
2018-11-18 14:52 ` [Qemu-devel] [Bug 1803872] " Amir Gonnen
2018-12-18 12:42 ` [Qemu-devel] [Bug 1803872] Re: [PATCH v2 3/3] migration: Replace strncpy() by strpadcpy(pad='\0') elmarco
2018-12-18 19:29 ` [Qemu-devel] [Bug 1803872] Re: [PATCH v3 4/5] migration: Use QEMU_NONSTRING for non NUL-terminated arrays Eric Blake
2018-12-18 19:33 ` [Qemu-devel] [Bug 1803872] Re: [PATCH v3 5/5] migration: Use strnlen() for fixed-size string Eric Blake
2018-12-18 21:24   ` [Qemu-devel] " Paolo Bonzini
2018-12-18 21:36 ` [Qemu-devel] [Bug 1803872] Re: [PATCH v3 4/5] migration: Use QEMU_NONSTRING for non NUL-terminated arrays Eric Blake
2019-04-24  6:01 ` [Qemu-devel] [Bug 1803872] Re: gcc 8.2 reports stringop-truncation when building qemu Thomas Huth
2018-12-18 17:51 [Qemu-devel] [PATCH v3 0/5] Fix strncpy() warnings for GCC8 new -Wstringop-truncation Philippe Mathieu-Daudé
2018-12-18 17:51 ` [Qemu-devel] [PATCH v3 1/5] qemu/compiler: Define QEMU_NONSTRING Philippe Mathieu-Daudé
2018-12-18 18:29   ` Eric Blake
2018-12-18 19:28     ` Philippe Mathieu-Daudé
2018-12-18 17:51 ` [Qemu-devel] [PATCH v3 2/5] block/sheepdog: Use QEMU_NONSTRING for non NUL-terminated arrays Philippe Mathieu-Daudé
2018-12-18 18:30   ` Eric Blake
2018-12-18 23:09   ` Michael S. Tsirkin
2018-12-19  9:22     ` Philippe Mathieu-Daudé
2018-12-18 17:51 ` [Qemu-devel] [PATCH v3 3/5] hw/acpi: " Philippe Mathieu-Daudé
2018-12-19  9:15   ` Igor Mammedov
2018-12-19  9:20     ` Philippe Mathieu-Daudé
2018-12-19  9:57       ` Igor Mammedov
2018-12-19 10:10   ` Andrew Jones
2018-12-19 12:43     ` Philippe Mathieu-Daudé
2018-12-19 13:00       ` Andrew Jones
2018-12-20 15:18         ` Igor Mammedov
2018-12-20 16:29           ` Philippe Mathieu-Daudé
2018-12-18 17:51 ` [Qemu-devel] [PATCH v3 4/5] migration: " Philippe Mathieu-Daudé
2019-01-02 11:41   ` Dr. David Alan Gilbert
2018-12-18 17:51 ` [Qemu-devel] [PATCH v3 5/5] migration: Use strnlen() for fixed-size string Philippe Mathieu-Daudé
2018-12-18 23:16   ` Michael S. Tsirkin
2018-12-19  9:24     ` Philippe Mathieu-Daudé
2018-12-18 17:54 ` [Qemu-devel] [PATCH v3 0/5] Fix strncpy() warnings for GCC8 new -Wstringop-truncation Philippe Mathieu-Daudé
2018-12-18 23:08 ` Michael S. Tsirkin
2018-12-24 23:09 ` no-reply

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.