| Age | Commit message (Collapse) | Author |
|
Add a new eventdev API to provide a hint to the eventdev PMD to
pre-schedule the next event into the event port, without releasing
the current flow context.
Event device that support this feature advertises the capability
using the RTE_EVENT_DEV_CAP_PRESCHEDULE_EXPLICIT capability flag.
Application can invoke `rte_event_port_preschedule` to hint the PMD,
if event device does not support this feature it is treated as a no-op.
Signed-off-by: Pavan Nikhilesh <[email protected]>
Acked-by: Jerin Jacob <[email protected]>
|
|
Some event devices allow pre-schedule types to be modified at
runtime on an event port.
Add `RTE_EVENT_DEV_CAP_PER_PORT_PRESCHEDULE` capability
to indicate that the event device supports this feature.
Add `rte_event_port_preschedule_modify()` API to modify the
pre-schedule type at runtime.
To avoid fastpath capability checks, the API reports -ENOTSUP
if the event device does not support this feature.
Signed-off-by: Pavan Nikhilesh <[email protected]>
Acked-by: Jerin Jacob <[email protected]>
|
|
A collection of event queues linked to an event port can be
associated with a unique identifier called as a link profile, multiple
such profiles can be created based on the event device capability
using the function `rte_event_port_profile_links_set` which takes
arguments similar to `rte_event_port_link` in addition to the profile
identifier.
The maximum link profiles that are supported by an event device
is advertised through the structure member
`rte_event_dev_info::max_profiles_per_port`.
By default, event ports are configured to use the link profile 0
on initialization.
Once multiple link profiles are set up and the event device is started,
the application can use the function `rte_event_port_profile_switch`
to change the currently active profile on an event port. This effects
the next `rte_event_dequeue_burst` call, where the event queues
associated with the newly active link profile will participate in
scheduling.
An unlink function `rte_event_port_profile_unlink` is provided
to modify the links associated to a profile, and
`rte_event_port_profile_links_get` can be used to retrieve the
links associated with a profile.
Using Link profiles can reduce the overhead of linking/unlinking and
waiting for unlinks in progress in fast-path and gives applications
the ability to switch between preset profiles on the fly.
Signed-off-by: Pavan Nikhilesh <[email protected]>
Acked-by: Jerin Jacob <[email protected]>
|
|
Add trace points for eventdev functions.
Signed-off-by: Amit Prakash Shukla <[email protected]>
Acked-by: Shijith Thotton <[email protected]>
|
|
Extend Eventdev API to allow for event devices which require various
forms of internal processing to happen, even when events are not
enqueued to or dequeued from a port.
Signed-off-by: Mattias Rönnblom <[email protected]>
Acked-by: Jerin Jacob <[email protected]>
Tested-by: Richard Eklycke <[email protected]>
Tested-by: Liron Himi <[email protected]>
|
|
Slowpath trace APIs are only used in rte_eventdev.c so make them
as internal.
Signed-off-by: Pavan Nikhilesh <[email protected]>
Acked-by: Jay Jayatheerthan <[email protected]>
Acked-by: Abhinandan Gujjar <[email protected]>
|
|
There is no reason for the DPDK libraries to all have 'librte_' prefix on
the directory names. This prefix makes the directory names longer and also
makes it awkward to add features referring to individual libraries in the
build - should the lib names be specified with or without the prefix.
Therefore, we can just remove the library prefix and use the library's
unique name as the directory name, i.e. 'eal' rather than 'librte_eal'
Signed-off-by: Bruce Richardson <[email protected]>
|