Go to file
Andy Green 1587d36e22 eal: explicit cast in rwlock functions
GCC 8.1 warned:

In function 'rte_rwlock_read_lock':
rte_rwlock.h:74:12: warning: conversion to 'uint32_t'
{aka 'unsigned int'} from 'int32_t' {aka 'int'} may
change the sign of the result [-Wsign-conversion]
            x, x + 1);
            ^
rte_rwlock.h:74:17: warning: conversion to 'uint32_t'
{aka 'unsigned int'} from 'int' may change the sign
of the result [-Wsign-conversion]
            x, x + 1);
               ~~^~~

In function 'rte_rwlock_write_lock':
rte_rwlock.h:110:15: warning: unsigned conversion
from 'int' to 'uint32_t' {aka 'unsigned int'}
changes value from '-1' to '4294967295' [-Wsign-conversion]
            0, -1);
               ^~

Again in this case we are making explicit the exact cast
that was always happening implicitly.  The patch does not
change the generated code.

The int32_t temp "x" is required to be signed to detect
a < 0 error condition from the lock status.  Afterwards,
it has always been implicitly cast to uint32_t when it
is used in the arguments to rte_atomic32_cmpset()...
gcc8.1 objects to the implicit cast now and requires us
to cast it explicitly.

Fixes: af75078fec ("first public release")
Cc: stable@dpdk.org

Signed-off-by: Andy Green <andy@warmcat.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2018-05-22 16:27:01 +02:00
app app/testpmd: fix burst stats reporting 2018-05-21 17:12:49 +02:00
buildtools buildtools: output build failure reason to stderr 2018-02-08 22:25:37 +01:00
config mempool/bucket: add to meson build 2018-05-21 12:00:09 +02:00
devtools devtools: provide more generic grep in git check 2018-05-14 23:32:23 +02:00
doc doc: add runtime queue setup in release notes 2018-05-17 19:06:29 +02:00
drivers raw/ifpga/base: fix an error return 2018-05-21 16:13:06 +02:00
examples examples/vhost: fix header copy to discontiguous desc buffer 2018-05-14 22:31:03 +01:00
kernel kni: fix possible mbuf leaks and speed up port release 2018-05-13 23:58:20 +02:00
lib eal: explicit cast in rwlock functions 2018-05-22 16:27:01 +02:00
license license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
mk bpf: add ability to load eBPF program from ELF object file 2018-05-12 00:35:20 +02:00
pkg version: 18.02.0 2018-02-14 19:11:02 +01:00
test test/eventdev: fix ethdev port id to 16-bit 2018-05-21 01:16:41 +02:00
usertools usertools: add Cavium TIM as an event device 2018-04-16 11:11:06 +02:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore doc: add compression driver and ISA-L PMD guides 2018-05-10 17:46:20 +01:00
GNUmakefile move kernel modules directories 2018-03-21 23:04:21 +01:00
MAINTAINERS maintainers: fix responsibility of flow API bits 2018-05-17 19:06:23 +02:00
Makefile license: use SPDX tag in root makefile 2018-01-04 22:41:38 +01:00
meson_options.txt net/mvpp2: add to meson build 2018-04-19 14:10:44 +02:00
meson.build version: 18.05-rc4 2018-05-15 22:38:39 +02:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD-3-Clause license for the core libraries
and drivers. The kernel components are GPL-2.0 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org