This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, master has been updated
via ff7600a119f02bb1ef2a57e5611e392968666420 (commit)
via a09bc35bf1159478195484e11eccb52cb33ae554 (commit)
from bd9f58474822c5c58f1b5ad52edb169264900772 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
-----------------------------------------------------------------------
Summary of changes:
platform/linux-generic/include/odp_packet_internal.h | 5 +++++
platform/linux-generic/odp_packet.c | 5 -----
platform/linux-generic/odp_traffic_mngr.c | 2 +-
platform/linux-generic/pktio/ipc.c | 2 +-
4 files changed, 7 insertions(+), 7 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, api-next has been updated
via 926505016132ba543251eb109d5c9c93f8520314 (commit)
via 037e35f0f948a87e3daede33747177615aa3bab0 (commit)
from 144a2cd89865b5565a6064c3b1db4987bd1b4e58 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 926505016132ba543251eb109d5c9c93f8520314
Author: Petri Savolainen <petri.savolainen(a)linaro.org>
Date: Fri Feb 17 16:20:07 2017 +0200
linux-gen: pktio: parser default config
Fill default parser configuration and capability. All pktios
use same parser code, so the capability is the same (all layers).
Signed-off-by: Petri Savolainen <petri.savolainen(a)linaro.org>
Reviewed-and-tested-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/odp_packet_io.c b/platform/linux-generic/odp_packet_io.c
index 98460a5..5e783d8 100644
--- a/platform/linux-generic/odp_packet_io.c
+++ b/platform/linux-generic/odp_packet_io.c
@@ -923,6 +923,8 @@ void odp_pktout_queue_param_init(odp_pktout_queue_param_t *param)
void odp_pktio_config_init(odp_pktio_config_t *config)
{
memset(config, 0, sizeof(odp_pktio_config_t));
+
+ config->parser.layer = ODP_PKTIO_PARSER_LAYER_ALL;
}
int odp_pktio_info(odp_pktio_t hdl, odp_pktio_info_t *info)
@@ -1098,6 +1100,7 @@ int odp_pktio_term_global(void)
int odp_pktio_capability(odp_pktio_t pktio, odp_pktio_capability_t *capa)
{
pktio_entry_t *entry;
+ int ret;
entry = get_pktio_entry(pktio);
if (entry == NULL) {
@@ -1106,9 +1109,15 @@ int odp_pktio_capability(odp_pktio_t pktio, odp_pktio_capability_t *capa)
}
if (entry->s.ops->capability)
- return entry->s.ops->capability(entry, capa);
+ ret = entry->s.ops->capability(entry, capa);
+ else
+ ret = single_capability(capa);
- return single_capability(capa);
+ /* The same parser is used for all pktios */
+ if (ret == 0)
+ capa->config.parser.layer = ODP_PKTIO_PARSER_LAYER_ALL;
+
+ return ret;
}
unsigned odp_pktio_max_index(void)
diff --git a/test/common_plat/validation/api/pktio/pktio.c b/test/common_plat/validation/api/pktio/pktio.c
index 4f3c0c0..8d62bb1 100644
--- a/test/common_plat/validation/api/pktio/pktio.c
+++ b/test/common_plat/validation/api/pktio/pktio.c
@@ -1178,6 +1178,8 @@ void pktio_test_pktio_config(void)
odp_pktio_config_init(&config);
+ CU_ASSERT(config.parser.layer == ODP_PKTIO_PARSER_LAYER_ALL);
+
CU_ASSERT(odp_pktio_config(pktio, NULL) == 0);
CU_ASSERT(odp_pktio_config(pktio, &config) == 0);
commit 037e35f0f948a87e3daede33747177615aa3bab0
Author: Petri Savolainen <petri.savolainen(a)linaro.org>
Date: Fri Feb 17 16:20:06 2017 +0200
api: pktio: add parser configuration
Packet input parsing level configuration is added. An application
may express the maximum layer it is interested about.
Implementations may optimize packet input performance as parsing
can be stopped on the application required level. Implementations
are free to parse more layers than application requests.
Lazy parsing (e.g. in current odp-linux) does not work in practice.
The implementation cannot continue parsing after the application
has got access to packet data, since application may overwrite
some packet headers. Parse results must reflect the format of the
received packet.
Signed-off-by: Petri Savolainen <petri.savolainen(a)linaro.org>
Reviewed-and-tested-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/include/odp/api/spec/packet_io.h b/include/odp/api/spec/packet_io.h
index 85cd6d1..cec1f22 100644
--- a/include/odp/api/spec/packet_io.h
+++ b/include/odp/api/spec/packet_io.h
@@ -346,6 +346,39 @@ typedef union odp_pktout_config_opt_t {
} odp_pktout_config_opt_t;
/**
+ * Parser layers
+ */
+typedef enum odp_pktio_parser_layer_t {
+ /** No layers */
+ ODP_PKTIO_PARSER_LAYER_NONE = 0,
+
+ /** Layer L2 protocols (Ethernet, VLAN, ARP, etc) */
+ ODP_PKTIO_PARSER_LAYER_L2,
+
+ /** Layer L3 protocols (IPv4, IPv6, ICMP, IPsec, etc) */
+ ODP_PKTIO_PARSER_LAYER_L3,
+
+ /** Layer L4 protocols (UDP, TCP, SCTP) */
+ ODP_PKTIO_PARSER_LAYER_L4,
+
+ /** All layers */
+ ODP_PKTIO_PARSER_LAYER_ALL
+
+} odp_pktio_parser_layer_t;
+
+/**
+ * Parser configuration
+ */
+typedef struct odp_pktio_parser_config_t {
+ /** Protocol parsing level in packet input
+ *
+ * Parse protocol layers in minimum up to this level during packet
+ * input. The default value is ODP_PKTIO_PARSER_LAYER_ALL. */
+ odp_pktio_parser_layer_t layer;
+
+} odp_pktio_parser_config_t;
+
+/**
* Packet IO configuration options
*
* Packet IO interface level configuration options. Use odp_pktio_capability()
@@ -363,6 +396,9 @@ typedef struct odp_pktio_config_t {
* Default value for all bits is zero. */
odp_pktout_config_opt_t pktout;
+ /** Packet input parser configuration */
+ odp_pktio_parser_config_t parser;
+
/** Interface loopback mode
*
* In this mode the packets sent out through the interface is
-----------------------------------------------------------------------
Summary of changes:
include/odp/api/spec/packet_io.h | 36 +++++++++++++++++++++++++++
platform/linux-generic/odp_packet_io.c | 13 ++++++++--
test/common_plat/validation/api/pktio/pktio.c | 2 ++
3 files changed, 49 insertions(+), 2 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, master has been updated
via 484f37b71aac5f5a56cd12c72c348d90d1095e31 (commit)
via bcf8b3b1b5d509ba01c0daff9f2b2056026b643a (commit)
via 17454218029d3f22c15755d91b9e97c46fb16d61 (commit)
from 63a39fabe4924d142d2df041d817f732eb4fdafb (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 484f37b71aac5f5a56cd12c72c348d90d1095e31
Author: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov(a)linaro.org>
Date: Thu Feb 23 16:37:34 2017 +0300
linux-generic: crypto: support OpenSSL 1.1.0
OpenSSL 1.1.0 uses new threading API. It is no longer necessary to set
locking callbacks to use OpenSSL in a multi-threaded environment.
OpenSSL provides compatibility callbacks, but ODP compilation still
fails with unused function/argument errors. So, to support compiling ODP
with OpenSSL 1.1.x, add ODP_UNUSED annotiations to lock/thread_id
callbacks.
Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov(a)linaro.org>
Reviewed-and-tested-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/odp_crypto.c b/platform/linux-generic/odp_crypto.c
index adadbf9..54b222f 100644
--- a/platform/linux-generic/odp_crypto.c
+++ b/platform/linux-generic/odp_crypto.c
@@ -949,14 +949,14 @@ odp_crypto_operation(odp_crypto_op_param_t *param,
return 0;
}
-static void openssl_thread_id(CRYPTO_THREADID *id)
+static void ODP_UNUSED openssl_thread_id(CRYPTO_THREADID ODP_UNUSED *id)
{
CRYPTO_THREADID_set_numeric(id, odp_thread_id());
}
-static void openssl_lock(int mode, int n,
- const char *file ODP_UNUSED,
- int line ODP_UNUSED)
+static void ODP_UNUSED openssl_lock(int mode, int n,
+ const char *file ODP_UNUSED,
+ int line ODP_UNUSED)
{
if (mode & CRYPTO_LOCK)
odp_ticketlock_lock((odp_ticketlock_t *)
commit bcf8b3b1b5d509ba01c0daff9f2b2056026b643a
Author: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov(a)linaro.org>
Date: Thu Feb 23 16:37:33 2017 +0300
linux-generic: crypto: port to OpenSSL 1.0.x thread id API
OpenSSL 1.0.x has deperecated old 0.9.x thread id callbacks. If the
library is compiled without deprecated functions, compiling ODP fails
with missing functions errors. So, let's port odp_crypto to OpenSSL 1.0
thread ID API.
Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov(a)linaro.org>
Reviewed-and-tested-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/odp_crypto.c b/platform/linux-generic/odp_crypto.c
index b53b0fc..adadbf9 100644
--- a/platform/linux-generic/odp_crypto.c
+++ b/platform/linux-generic/odp_crypto.c
@@ -949,9 +949,9 @@ odp_crypto_operation(odp_crypto_op_param_t *param,
return 0;
}
-static unsigned long openssl_thread_id(void)
+static void openssl_thread_id(CRYPTO_THREADID *id)
{
- return (unsigned long)odp_thread_id();
+ CRYPTO_THREADID_set_numeric(id, odp_thread_id());
}
static void openssl_lock(int mode, int n,
@@ -1003,7 +1003,7 @@ odp_crypto_init_global(void)
odp_ticketlock_init((odp_ticketlock_t *)
&global->openssl_lock[idx]);
- CRYPTO_set_id_callback(openssl_thread_id);
+ CRYPTO_THREADID_set_callback(openssl_thread_id);
CRYPTO_set_locking_callback(openssl_lock);
}
commit 17454218029d3f22c15755d91b9e97c46fb16d61
Author: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov(a)linaro.org>
Date: Thu Feb 23 16:37:32 2017 +0300
linux-generic: crypto: add missing include
OpenSSL 1.1.0 headers do not include <openssl/evp.h>, so include it
manually to fix the following error:
In file included from ./include/odp_packet_internal.h:28:0,
from odp_classification.c:13:
./include/odp_crypto_internal.h:55:5: error: unknown type name ‘EVP_CIPHER_CTX’
EVP_CIPHER_CTX *ctx;
^~~~~~~~~~~~~~
Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov(a)linaro.org>
Reviewed-and-tested-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/include/odp_crypto_internal.h b/platform/linux-generic/include/odp_crypto_internal.h
index c7b893a..f85b76e 100644
--- a/platform/linux-generic/include/odp_crypto_internal.h
+++ b/platform/linux-generic/include/odp_crypto_internal.h
@@ -13,6 +13,7 @@ extern "C" {
#include <openssl/des.h>
#include <openssl/aes.h>
+#include <openssl/evp.h>
#define MAX_IV_LEN 64
#define OP_RESULT_MAGIC 0x91919191
-----------------------------------------------------------------------
Summary of changes:
platform/linux-generic/include/odp_crypto_internal.h | 1 +
platform/linux-generic/odp_crypto.c | 12 ++++++------
2 files changed, 7 insertions(+), 6 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, api-next has been updated
via 144a2cd89865b5565a6064c3b1db4987bd1b4e58 (commit)
via e554ba1a30e0bd7f6fe0c3ccd8c8846ef41ae9e4 (commit)
via 06eed47498a6697365cb3498975caf90a581179a (commit)
via effdb6228cd9c56a0f3af7f1ef3277cbf1971c23 (commit)
from 2e2d96234dd05c5a4dac03c31d1634bc9008da0a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 144a2cd89865b5565a6064c3b1db4987bd1b4e58
Author: Petri Savolainen <petri.savolainen(a)linaro.org>
Date: Wed Feb 15 14:29:32 2017 +0200
linux-gen: packet: implement references as copy
Implement packet references API as packet copy. This is the
simplest way to support the API, as other packet functions
are not affected at all.
Signed-off-by: Petri Savolainen <petri.savolainen(a)linaro.org>
Reviewed-and-tested-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/odp_packet.c b/platform/linux-generic/odp_packet.c
index 024f694..9eccb57 100644
--- a/platform/linux-generic/odp_packet.c
+++ b/platform/linux-generic/odp_packet.c
@@ -2221,3 +2221,77 @@ uint64_t odp_packet_seg_to_u64(odp_packet_seg_t hdl)
{
return _odp_pri(hdl);
}
+
+odp_packet_t odp_packet_ref_static(odp_packet_t pkt)
+{
+ return odp_packet_copy(pkt, odp_packet_pool(pkt));
+}
+
+odp_packet_t odp_packet_ref(odp_packet_t pkt, uint32_t offset)
+{
+ odp_packet_t new;
+ int ret;
+
+ new = odp_packet_copy(pkt, odp_packet_pool(pkt));
+
+ if (new == ODP_PACKET_INVALID) {
+ ODP_ERR("copy failed\n");
+ return ODP_PACKET_INVALID;
+ }
+
+ ret = odp_packet_trunc_head(&new, offset, NULL, NULL);
+
+ if (ret < 0) {
+ ODP_ERR("trunk_head failed\n");
+ odp_packet_free(new);
+ return ODP_PACKET_INVALID;
+ }
+
+ return new;
+}
+
+odp_packet_t odp_packet_ref_pkt(odp_packet_t pkt, uint32_t offset,
+ odp_packet_t hdr)
+{
+ odp_packet_t new;
+ int ret;
+
+ new = odp_packet_copy(pkt, odp_packet_pool(pkt));
+
+ if (new == ODP_PACKET_INVALID) {
+ ODP_ERR("copy failed\n");
+ return ODP_PACKET_INVALID;
+ }
+
+ if (offset) {
+ ret = odp_packet_trunc_head(&new, offset, NULL, NULL);
+
+ if (ret < 0) {
+ ODP_ERR("trunk_head failed\n");
+ odp_packet_free(new);
+ return ODP_PACKET_INVALID;
+ }
+ }
+
+ ret = odp_packet_concat(&hdr, new);
+
+ if (ret < 0) {
+ ODP_ERR("concat failed\n");
+ odp_packet_free(new);
+ return ODP_PACKET_INVALID;
+ }
+
+ return hdr;
+}
+
+int odp_packet_has_ref(odp_packet_t pkt)
+{
+ (void)pkt;
+
+ return 0;
+}
+
+uint32_t odp_packet_unshared_len(odp_packet_t pkt)
+{
+ return odp_packet_len(pkt);
+}
commit e554ba1a30e0bd7f6fe0c3ccd8c8846ef41ae9e4
Author: Petri Savolainen <petri.savolainen(a)linaro.org>
Date: Wed Feb 15 14:29:29 2017 +0200
api: packet: references may be implemented as copy
Some implementations may implement new references as packet copy.
odp_packet_has_ref() will return 0 for copies, since those are
unique packets.
Signed-off-by: Petri Savolainen <petri.savolainen(a)linaro.org>
Reviewed-and-tested-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/include/odp/api/spec/packet.h b/include/odp/api/spec/packet.h
index b6450c1..92c35ae 100644
--- a/include/odp/api/spec/packet.h
+++ b/include/odp/api/spec/packet.h
@@ -892,9 +892,6 @@ odp_packet_t odp_packet_ref_static(odp_packet_t pkt);
* dynamic references must not be mixed. Results are undefined if these
* restrictions are not observed.
*
- * odp_packet_unshared_len() may be used to determine the number of bytes
- * starting at offset zero that are unique to a packet handle.
- *
* The packet handle 'pkt' may itself by a (dynamic) reference to a packet.
*
* If the caller does not intend to modify either the packet or the new
@@ -952,8 +949,9 @@ odp_packet_t odp_packet_ref_pkt(odp_packet_t pkt, uint32_t offset,
* When a packet has multiple references, packet data is divided into two
* parts: unshared and shared. The unshared part always precedes the shared
* part. This call returns number of bytes in the unshared part. When a
- * packet has only a single reference, all packet data is unshared and
- * unshared length equals the packet length (odp_packet_len()).
+ * packet has only a single reference (see odp_packet_has_ref()), all packet
+ * data is unshared and unshared length equals the packet length
+ * (odp_packet_len()).
*
* Application may modify only the unshared part, the rest of the packet data
* must be treated as read only.
@@ -967,8 +965,17 @@ uint32_t odp_packet_unshared_len(odp_packet_t pkt);
/**
* Test if packet has multiple references
*
- * A packet that has multiple references shares data and possibly metadata
- * with other packets. Shared part must be treated as read only.
+ * A packet that has multiple references share data with other packets. In case
+ * of a static reference it also shares metadata. Shared parts must be treated
+ * as read only.
+ *
+ * New references are created with odp_packet_ref_static(), odp_packet_ref() and
+ * odp_packet_ref_pkt() calls. The intent of multiple references is to avoid
+ * packet copies, however some implementations may do a packet copy for some of
+ * the calls. If a copy is done, the new reference is actually a new, unique
+ * packet and this function returns '0' for it. When a real reference is
+ * created (instead of a copy), this function returns '1' for both packets
+ * (the original packet and the new reference).
*
* @param pkt Packet handle
*
commit 06eed47498a6697365cb3498975caf90a581179a
Author: Maxim Uvarov <maxim.uvarov(a)linaro.org>
Date: Sat Feb 25 11:08:46 2017 +0300
Revert "linux-gen: packet: implement references as copy"
This reverts commit 44ae9773bc94f8cd349034901f08a2eed46dc822.
Version 1 instead of 2 was applied. Revert it with following applying
v2.
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/odp_packet.c b/platform/linux-generic/odp_packet.c
index 1d2b506..024f694 100644
--- a/platform/linux-generic/odp_packet.c
+++ b/platform/linux-generic/odp_packet.c
@@ -2221,81 +2221,3 @@ uint64_t odp_packet_seg_to_u64(odp_packet_seg_t hdl)
{
return _odp_pri(hdl);
}
-
-odp_packet_t odp_packet_ref_static(odp_packet_t pkt)
-{
- odp_packet_t new;
-
- new = odp_packet_copy(pkt, odp_packet_pool(pkt));
-
- return new;
-}
-
-odp_packet_t odp_packet_ref(odp_packet_t pkt, uint32_t offset)
-{
- odp_packet_t new;
- int ret;
-
- new = odp_packet_copy(pkt, odp_packet_pool(pkt));
-
- if (new == ODP_PACKET_INVALID) {
- ODP_ERR("copy failed\n");
- return ODP_PACKET_INVALID;
- }
-
- ret = odp_packet_trunc_head(&new, offset, NULL, NULL);
-
- if (ret < 0) {
- ODP_ERR("trunk_head failed\n");
- odp_packet_free(new);
- return ODP_PACKET_INVALID;
- }
-
- return new;
-}
-
-odp_packet_t odp_packet_ref_pkt(odp_packet_t pkt, uint32_t offset,
- odp_packet_t hdr)
-{
- odp_packet_t new;
- int ret;
-
- new = odp_packet_copy(pkt, odp_packet_pool(pkt));
-
- if (new == ODP_PACKET_INVALID) {
- ODP_ERR("copy failed\n");
- return ODP_PACKET_INVALID;
- }
-
- if (offset) {
- ret = odp_packet_trunc_head(&new, offset, NULL, NULL);
-
- if (ret < 0) {
- ODP_ERR("trunk_head failed\n");
- odp_packet_free(new);
- return ODP_PACKET_INVALID;
- }
- }
-
- ret = odp_packet_concat(&hdr, new);
-
- if (ret < 0) {
- ODP_ERR("concat failed\n");
- odp_packet_free(new);
- return ODP_PACKET_INVALID;
- }
-
- return hdr;
-}
-
-int odp_packet_has_ref(odp_packet_t pkt)
-{
- (void)pkt;
-
- return 0;
-}
-
-uint32_t odp_packet_unshared_len(odp_packet_t pkt)
-{
- return odp_packet_len(pkt);
-}
commit effdb6228cd9c56a0f3af7f1ef3277cbf1971c23
Author: Maxim Uvarov <maxim.uvarov(a)linaro.org>
Date: Sat Feb 25 11:07:22 2017 +0300
Revert "api: packet: references may be implemented as copy"
This reverts commit f72f999552de02c602864baa82bb374322415b24.
Version 1 instead of 2 was applied. Revert it with following applying
v2.
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/include/odp/api/spec/packet.h b/include/odp/api/spec/packet.h
index 05ffd68..b6450c1 100644
--- a/include/odp/api/spec/packet.h
+++ b/include/odp/api/spec/packet.h
@@ -892,6 +892,9 @@ odp_packet_t odp_packet_ref_static(odp_packet_t pkt);
* dynamic references must not be mixed. Results are undefined if these
* restrictions are not observed.
*
+ * odp_packet_unshared_len() may be used to determine the number of bytes
+ * starting at offset zero that are unique to a packet handle.
+ *
* The packet handle 'pkt' may itself by a (dynamic) reference to a packet.
*
* If the caller does not intend to modify either the packet or the new
@@ -949,9 +952,8 @@ odp_packet_t odp_packet_ref_pkt(odp_packet_t pkt, uint32_t offset,
* When a packet has multiple references, packet data is divided into two
* parts: unshared and shared. The unshared part always precedes the shared
* part. This call returns number of bytes in the unshared part. When a
- * packet has only a single reference (see odp_packet_has_ref()), all packet
- * data is unshared and unshared length equals the packet length
- * (odp_packet_len()).
+ * packet has only a single reference, all packet data is unshared and
+ * unshared length equals the packet length (odp_packet_len()).
*
* Application may modify only the unshared part, the rest of the packet data
* must be treated as read only.
@@ -965,16 +967,8 @@ uint32_t odp_packet_unshared_len(odp_packet_t pkt);
/**
* Test if packet has multiple references
*
- * A packet that has multiple references share data with other packets. In case
- * of a static reference it also shares metadata. Shared parts must be treated
- * as read only.
- *
- * New references are created with odp_packet_ref_static(), odp_packet_ref() and
- * odp_packet_ref_pkt() calls. However, some of those calls may implement the
- * new reference as a packet copy. If a copy is done, the new reference is
- * actually a new, unique packet and this function returns '0' for it.
- * When a real reference is created (instead of a copy), this function
- * returns '1' for both packets (the original packet and the new reference).
+ * A packet that has multiple references shares data and possibly metadata
+ * with other packets. Shared part must be treated as read only.
*
* @param pkt Packet handle
*
-----------------------------------------------------------------------
Summary of changes:
include/odp/api/spec/packet.h | 11 ++++++-----
platform/linux-generic/odp_packet.c | 6 +-----
2 files changed, 7 insertions(+), 10 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, api-next has been updated
via 2e2d96234dd05c5a4dac03c31d1634bc9008da0a (commit)
via 63a39fabe4924d142d2df041d817f732eb4fdafb (commit)
from a820c285a87dfa274c6290638983575bb2e63ba4 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 2e2d96234dd05c5a4dac03c31d1634bc9008da0a
Merge: a820c28 63a39fa
Author: Maxim Uvarov <maxim.uvarov(a)linaro.org>
Date: Thu Feb 23 00:11:45 2017 +0300
Merge branch 'master' into api-next
-----------------------------------------------------------------------
Summary of changes:
.codecov.yml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
hooks/post-receive
--