eventdev: reserve space in main structs for extension
authorJerin Jacob <jerinj@marvell.com>
Fri, 8 Nov 2019 16:56:03 +0000 (22:26 +0530)
committerThomas Monjalon <thomas@monjalon.net>
Tue, 12 Nov 2019 02:36:32 +0000 (03:36 +0100)
The struct rte_eventdev and rte_eventdev_data are supposed
to be used internally only, but there is a chance that
increasing their size would break ABI for some applications.
In order to allow smooth addition of features without breaking
ABI compatibility, some space is reserved.

Signed-off-by: Jerin Jacob <jerinj@marvell.com>
lib/librte_eventdev/rte_eventdev.h

index ced6f29..226f352 100644 (file)
@@ -1282,6 +1282,9 @@ struct rte_eventdev_data {
 
        char name[RTE_EVENTDEV_NAME_MAX_LEN];
        /**< Unique identifier name */
+
+       uint64_t reserved_64s[4]; /**< Reserved for future fields */
+       void *reserved_ptrs[4];   /**< Reserved for future fields */
 } __rte_cache_aligned;
 
 /** @internal The data structure associated with each event device. */
@@ -1314,6 +1317,9 @@ struct rte_eventdev {
        RTE_STD_C11
        uint8_t attached : 1;
        /**< Flag indicating the device is attached */
+
+       uint64_t reserved_64s[4]; /**< Reserved for future fields */
+       void *reserved_ptrs[4];   /**< Reserved for future fields */
 } __rte_cache_aligned;
 
 extern struct rte_eventdev *rte_eventdevs;