[dpdk-dev] [PATCH v4 01/23] lib/librte_eal: import libbsd strlcpy
Andy Green
andy at warmcat.com
Thu May 17 15:00:25 CEST 2018
On 05/17/2018 08:56 PM, Bruce Richardson wrote:
> On Thu, May 17, 2018 at 08:35:21PM +0800, Andy Green wrote:
>>
>>
>> On 05/17/2018 06:36 PM, Bruce Richardson wrote:
>>> On Mon, May 14, 2018 at 01:09:32PM +0800, Andy Green wrote:
>>>> Signed-off-by: Andy Green <andy at warmcat.com>
>>>> ---
>>>> lib/librte_eal/common/eal_common_string_fns.c | 34 ++++++++++++++++++++++++
>>>> lib/librte_eal/common/include/rte_string_fns.h | 7 +----
>>>> 2 files changed, 36 insertions(+), 5 deletions(-)
>>>>
>>>
>>> While I'm aware this was suggested by other reviewers, I really don't feel
>>> that it is necessary to actually import the code. If libbsd is present on
>>> the system, we will use it directly. If libbsd is not present, the snprintf
>>> provides an acceptable fallback for strlcpy IMHO. Having the full function
>>> without good justification seems excessive.
>>
>> Well, as you can probably guess, I don't really mind either way.
>>
>> This also implies another patch to export rte_strlcpy since it's no longer
>> an inline in the headers this way.
>>
>> I removed these patches and rebuilt dpdk and then lagopus without it with
>> the idea of pasting the compile error. But I can't reproduce the original
>> problem... since then I rebased on current master dpdk, got updated to gcc
>> 8.1 and added more patches on lagopus.
>>
>> So just drop this patch if you don't want the bsd lstrcpy.
>>
> Yes, let's drop it from the set for now anyway, if it's not solving any
> specific error. We can relook at it in 18.08 anyway.
Sorry to immediately contradict myself but I forgot a step in the rather
complicated flow to force the lagopus dpdk submodule HEAD... by default
making lagopus forces the submodule commit to something else. It does
need a much smaller one-liner to avoid
In file included from ./dpdk/dpdk.c:88:
/projects/lagopus/src/dpdk/build/include/rte_string_fns.h: In
function 'rte_strlcpy':
/projects/lagopus/src/dpdk/build/include/rte_string_fns.h:58:9:
warning: conversion to 'size_t' {aka 'long unsigned int'} from
'int' may change the sign of the result [-Wsign-conversion]
return snprintf(dst, size, "%s", src);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It just needs a cast to make the return type of the snprintf compatible
with the expected return type of strlcpy().
I'll include this in the next send in an hour or two.
-Andy
> /Bruce
>
More information about the dev
mailing list