From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36845) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gZGPZ-0002vb-GZ for qemu-devel@nongnu.org; Tue, 18 Dec 2018 09:31:54 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gZGPV-0002Xi-Iy for qemu-devel@nongnu.org; Tue, 18 Dec 2018 09:31:53 -0500 Date: Tue, 18 Dec 2018 09:31:00 -0500 From: "Michael S. Tsirkin" Message-ID: <20181218092648-mutt-send-email-mst@kernel.org> References: <20181218110333.22558-1-philmd@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <20181218110333.22558-1-philmd@redhat.com> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH v2 0/3] Fix strncpy() warnings for GCC8 new -Wstringop-truncation List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= Cc: qemu-devel@nongnu.org, Ben Pye , Stefan Weil , Howard Spoelstra , Jeff Cody , =?iso-8859-1?Q?C=E9dric?= Le Goater , Thomas Huth , Liu Yuan , Igor Mammedov , Max Reitz , Kevin Wolf , Eric Blake , =?iso-8859-1?Q?Marc-Andr=E9?= Lureau , David Hildenbrand , David Gibson , Markus Armbruster , qemu-block@nongnu.org, "Dr. David Alan Gilbert" , Daniel =?iso-8859-1?Q?P=2E_Berrang=E9?= , 1803872@bugs.launchpad.net, Juan Quintela , Paolo Bonzini On Tue, Dec 18, 2018 at 12:03:30PM +0100, Philippe Mathieu-Daud=E9 wrote: > 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 >=20 > 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 >=20 > This series replace the strncpy() calls by strpadcpy() which seemed > to me the saniest option. >=20 > Regards, >=20 > Phil. Do you happen to know why does it build fine with Gcc 8.2.1? Reading the GCC manual it seems that there is a "nostring" attribute that means "might not be 0 terminated". I think we should switch to that which fixes the warning but also warns if someone tries to misuse these as C-strings. Seems to be a better option, does it not? > Marc-Andr=E9 Lureau (1): > hw/acpi: Replace strncpy() by strpadcpy(pad=3D'\0') >=20 > Philippe Mathieu-Daud=E9 (2): > block/sheepdog: Replace strncpy() by strpadcpy(pad=3D'\0') > migration: Replace strncpy() by strpadcpy(pad=3D'\0') >=20 > block/sheepdog.c | 6 +++--- > hw/acpi/aml-build.c | 6 ++++-- > hw/acpi/core.c | 13 +++++++------ > migration/global_state.c | 4 ++-- > 4 files changed, 16 insertions(+), 13 deletions(-) >=20 > --=20 > 2.17.2