* [PATCH v2] migration: Silence compiler warning in global_state_store_running()
@ 2020-09-17 7:43 Thomas Huth
2020-09-17 7:47 ` Philippe Mathieu-Daudé
2020-09-17 8:54 ` no-reply
0 siblings, 2 replies; 5+ messages in thread
From: Thomas Huth @ 2020-09-17 7:43 UTC (permalink / raw)
To: Juan Quintela, Dr. David Alan Gilbert, qemu-devel
Cc: qemu-trivial, Marc-André Lureau, Paolo Bonzini
GCC 9.3.0 on Ubuntu complains:
In file included from /usr/include/string.h:495,
from /home/travis/build/huth/qemu/include/qemu/osdep.h:87,
from ../migration/global_state.c:13:
In function ‘strncpy’,
inlined from ‘global_state_store_running’ at ../migration/global_state.c:47:5:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:10: error:
‘__builtin_strncpy’ specified bound 100 equals destination size [-Werror=stringop-truncation]
106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
... but we apparently really want to do a strncpy here - the size is already
checked with the assert() statement right in front of it. To silence the
warning, simply replace it with our strpadcpy() function.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
v2: Use strpadcpy instead of QEMU_NONSTRING (and yes, this time it seems
to really silence the compiler warning :-))
migration/global_state.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/migration/global_state.c b/migration/global_state.c
index 25311479a4..a33947ca32 100644
--- a/migration/global_state.c
+++ b/migration/global_state.c
@@ -44,8 +44,8 @@ void global_state_store_running(void)
{
const char *state = RunState_str(RUN_STATE_RUNNING);
assert(strlen(state) < sizeof(global_state.runstate));
- strncpy((char *)global_state.runstate,
- state, sizeof(global_state.runstate));
+ strpadcpy((char *)global_state.runstate, sizeof(global_state.runstate),
+ state, '\0');
}
bool global_state_received(void)
--
2.18.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v2] migration: Silence compiler warning in global_state_store_running()
2020-09-17 7:43 [PATCH v2] migration: Silence compiler warning in global_state_store_running() Thomas Huth
@ 2020-09-17 7:47 ` Philippe Mathieu-Daudé
2020-09-17 8:02 ` Thomas Huth
2020-09-17 8:54 ` no-reply
1 sibling, 1 reply; 5+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-09-17 7:47 UTC (permalink / raw)
To: Thomas Huth, Juan Quintela, Dr. David Alan Gilbert, qemu-devel
Cc: qemu-trivial, Marc-André Lureau, Paolo Bonzini
On 9/17/20 9:43 AM, Thomas Huth wrote:
> GCC 9.3.0 on Ubuntu complains:
>
> In file included from /usr/include/string.h:495,
> from /home/travis/build/huth/qemu/include/qemu/osdep.h:87,
> from ../migration/global_state.c:13:
> In function ‘strncpy’,
> inlined from ‘global_state_store_running’ at ../migration/global_state.c:47:5:
> /usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:10: error:
> ‘__builtin_strncpy’ specified bound 100 equals destination size [-Werror=stringop-truncation]
> 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> ... but we apparently really want to do a strncpy here - the size is already
> checked with the assert() statement right in front of it. To silence the
> warning, simply replace it with our strpadcpy() function.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> v2: Use strpadcpy instead of QEMU_NONSTRING (and yes, this time it seems
> to really silence the compiler warning :-))
>
> migration/global_state.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/migration/global_state.c b/migration/global_state.c
> index 25311479a4..a33947ca32 100644
> --- a/migration/global_state.c
> +++ b/migration/global_state.c
> @@ -44,8 +44,8 @@ void global_state_store_running(void)
> {
> const char *state = RunState_str(RUN_STATE_RUNNING);
> assert(strlen(state) < sizeof(global_state.runstate));
> - strncpy((char *)global_state.runstate,
> - state, sizeof(global_state.runstate));
> + strpadcpy((char *)global_state.runstate, sizeof(global_state.runstate),
> + state, '\0');
https://www.mail-archive.com/qemu-block@nongnu.org/msg44925.html
;)
> }
>
> bool global_state_received(void)
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] migration: Silence compiler warning in global_state_store_running()
2020-09-17 7:47 ` Philippe Mathieu-Daudé
@ 2020-09-17 8:02 ` Thomas Huth
2020-09-17 8:09 ` Thomas Huth
0 siblings, 1 reply; 5+ messages in thread
From: Thomas Huth @ 2020-09-17 8:02 UTC (permalink / raw)
To: Philippe Mathieu-Daudé,
Juan Quintela, Dr. David Alan Gilbert, qemu-devel
Cc: qemu-trivial, Marc-André Lureau, Paolo Bonzini
On 17/09/2020 09.47, Philippe Mathieu-Daudé wrote:
> On 9/17/20 9:43 AM, Thomas Huth wrote:
>> GCC 9.3.0 on Ubuntu complains:
>>
>> In file included from /usr/include/string.h:495,
>> from /home/travis/build/huth/qemu/include/qemu/osdep.h:87,
>> from ../migration/global_state.c:13:
>> In function ‘strncpy’,
>> inlined from ‘global_state_store_running’ at ../migration/global_state.c:47:5:
>> /usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:10: error:
>> ‘__builtin_strncpy’ specified bound 100 equals destination size [-Werror=stringop-truncation]
>> 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
>> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>
>> ... but we apparently really want to do a strncpy here - the size is already
>> checked with the assert() statement right in front of it. To silence the
>> warning, simply replace it with our strpadcpy() function.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>> v2: Use strpadcpy instead of QEMU_NONSTRING (and yes, this time it seems
>> to really silence the compiler warning :-))
>>
>> migration/global_state.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/migration/global_state.c b/migration/global_state.c
>> index 25311479a4..a33947ca32 100644
>> --- a/migration/global_state.c
>> +++ b/migration/global_state.c
>> @@ -44,8 +44,8 @@ void global_state_store_running(void)
>> {
>> const char *state = RunState_str(RUN_STATE_RUNNING);
>> assert(strlen(state) < sizeof(global_state.runstate));
>> - strncpy((char *)global_state.runstate,
>> - state, sizeof(global_state.runstate));
>> + strpadcpy((char *)global_state.runstate, sizeof(global_state.runstate),
>> + state, '\0');
>
> https://www.mail-archive.com/qemu-block@nongnu.org/msg44925.html
> ;)
Oh, well :-) ... but why did you never pushed to get that merged?
Thomas
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] migration: Silence compiler warning in global_state_store_running()
2020-09-17 8:02 ` Thomas Huth
@ 2020-09-17 8:09 ` Thomas Huth
0 siblings, 0 replies; 5+ messages in thread
From: Thomas Huth @ 2020-09-17 8:09 UTC (permalink / raw)
To: Philippe Mathieu-Daudé,
Juan Quintela, Dr. David Alan Gilbert, qemu-devel
Cc: qemu-trivial, Marc-André Lureau, Paolo Bonzini
On 17/09/2020 10.02, Thomas Huth wrote:
> On 17/09/2020 09.47, Philippe Mathieu-Daudé wrote:
>> On 9/17/20 9:43 AM, Thomas Huth wrote:
>>> GCC 9.3.0 on Ubuntu complains:
>>>
>>> In file included from /usr/include/string.h:495,
>>> from /home/travis/build/huth/qemu/include/qemu/osdep.h:87,
>>> from ../migration/global_state.c:13:
>>> In function ‘strncpy’,
>>> inlined from ‘global_state_store_running’ at ../migration/global_state.c:47:5:
>>> /usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:10: error:
>>> ‘__builtin_strncpy’ specified bound 100 equals destination size [-Werror=stringop-truncation]
>>> 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
>>> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>
>>> ... but we apparently really want to do a strncpy here - the size is already
>>> checked with the assert() statement right in front of it. To silence the
>>> warning, simply replace it with our strpadcpy() function.
>>>
>>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>>> ---
>>> v2: Use strpadcpy instead of QEMU_NONSTRING (and yes, this time it seems
>>> to really silence the compiler warning :-))
>>>
>>> migration/global_state.c | 4 ++--
>>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/migration/global_state.c b/migration/global_state.c
>>> index 25311479a4..a33947ca32 100644
>>> --- a/migration/global_state.c
>>> +++ b/migration/global_state.c
>>> @@ -44,8 +44,8 @@ void global_state_store_running(void)
>>> {
>>> const char *state = RunState_str(RUN_STATE_RUNNING);
>>> assert(strlen(state) < sizeof(global_state.runstate));
>>> - strncpy((char *)global_state.runstate,
>>> - state, sizeof(global_state.runstate));
>>> + strpadcpy((char *)global_state.runstate, sizeof(global_state.runstate),
>>> + state, '\0');
>>
>> https://www.mail-archive.com/qemu-block@nongnu.org/msg44925.html
>> ;)
>
> Oh, well :-) ... but why did you never pushed to get that merged?
Hmm, commit 0a5526a18b0245dfa20a9fe453b2a9af3125d175 was supposed to fix
it already ... but apparently, that does not work with GCC 9.3 ?
Thomas
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] migration: Silence compiler warning in global_state_store_running()
2020-09-17 7:43 [PATCH v2] migration: Silence compiler warning in global_state_store_running() Thomas Huth
2020-09-17 7:47 ` Philippe Mathieu-Daudé
@ 2020-09-17 8:54 ` no-reply
1 sibling, 0 replies; 5+ messages in thread
From: no-reply @ 2020-09-17 8:54 UTC (permalink / raw)
To: thuth
Cc: quintela, qemu-trivial, qemu-devel, dgilbert, marcandre.lureau, pbonzini
Patchew URL: https://patchew.org/QEMU/20200917074344.168785-1-thuth@redhat.com/
Hi,
This series failed the docker-quick@centos7 build test. Please find the testing commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.
The full log is available at
http://patchew.org/logs/20200917074344.168785-1-thuth@redhat.com/testing.docker-quick@centos7/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-09-17 8:55 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-17 7:43 [PATCH v2] migration: Silence compiler warning in global_state_store_running() Thomas Huth
2020-09-17 7:47 ` Philippe Mathieu-Daudé
2020-09-17 8:02 ` Thomas Huth
2020-09-17 8:09 ` Thomas Huth
2020-09-17 8:54 ` 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.