diff options
author | Matias Elo <matias.elo@nokia.com> | 2019-06-10 12:39:47 +0300 |
---|---|---|
committer | Petri Savolainen <petri.savolainen@nokia.com> | 2019-06-14 13:41:21 +0300 |
commit | d1df2b5511707783c2be6eda6c0d64663538bdfa (patch) | |
tree | 41cb27249830f62ad470bf03aa100bc82a092054 /platform/linux-generic/include/odp_config_internal.h | |
parent | feac45e3ed8fa871ae7f9826d0c045591f22ce42 (diff) |
linux-gen: queue: configure max number of plain/scheduled queues
Add separate defines (CONFIG_MAX_PLAIN_QUEUES, CONFIG_MAX_SCHED_QUEUES) for
configuring the maximum number of plain and scheduled queues.
ODP_CONFIG_QUEUES define has been renamed to CONFIG_MAX_QUEUES to clearly
separate it from API defines.
Queue IDs are now allocated consecutively per queue type (scheduled queues
[0, CONFIG_MAX_SCHED_QUEUES[ and plain queues[CONFIG_MAX_SCHED_QUEUES,
CONFIG_MAX_QUEUES[). This makes scheduler load balancing more predictable
since allocating plain queues won't affect to scheduler internal queue
mappings.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
Diffstat (limited to 'platform/linux-generic/include/odp_config_internal.h')
-rw-r--r-- | platform/linux-generic/include/odp_config_internal.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/platform/linux-generic/include/odp_config_internal.h b/platform/linux-generic/include/odp_config_internal.h index 27f1db599..2e1d61d36 100644 --- a/platform/linux-generic/include/odp_config_internal.h +++ b/platform/linux-generic/include/odp_config_internal.h @@ -22,14 +22,28 @@ extern "C" { #define ODP_CONFIG_POOLS 64 /* - * Maximum number of queues + * Queues reserved for ODP internal use */ -#define ODP_CONFIG_QUEUES 1024 +#define CONFIG_INTERNAL_QUEUES 64 /* - * Queues reserved for ODP internal use + * Maximum number of plain ODP queues + */ +#define CONFIG_MAX_PLAIN_QUEUES 1024 + +/* + * Maximum number of scheduled ODP queues + * + * Must be a power of two. + */ +#define CONFIG_MAX_SCHED_QUEUES 1024 + +/* + * Maximum number of queues */ -#define NUM_INTERNAL_QUEUES 64 +#define CONFIG_MAX_QUEUES (CONFIG_INTERNAL_QUEUES + \ + CONFIG_MAX_PLAIN_QUEUES + \ + CONFIG_MAX_SCHED_QUEUES) /* * Maximum number of ordered locks per queue |