Spdk/lib/thread/spdk_thread.map
Shuhei Matsumoto 1aec9334d9 thread: Change direct accesses to poller outside lib/thread to helper functions
Most accesses to the struct spdk_poller outside lib/thread have been
done via functions but a few direct accesses remain.

Change these to indirect accesses by addinng a few helper functions
as SPDK internal APIs.

Add spdk_poller_get_name() to get the name of the poller.

Remove spdk_poller_state_str() and add spdk_poller_get_state_str().
Exposing enum spdk_poller_state outside lib/thread is not really
necessary.

This removal requires us to update major SO version.

Add spdk_poller_get_period_ticks() to get the period ticks of the
poller.

Add struct spdk_poller_stats and spdk_poller_get_stats() to get
the stats of the poller.

The next patch will move the definition of struct spdk_poller and
enum spdk_poller_state from include/spdk_internal/thread.h to
lib/thread/thread.c.

Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Change-Id: Id597dae074a15fcd8af09fd9d416a22ce2f403c3
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7798
Community-CI: Broadcom CI
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
2021-05-13 10:03:44 +00:00

74 lines
1.8 KiB
Plaintext

{
global:
# public functions in spdk/thread.h
spdk_thread_lib_init;
spdk_thread_lib_init_ext;
spdk_thread_lib_fini;
spdk_thread_create;
spdk_set_thread;
spdk_thread_exit;
spdk_thread_is_exited;
spdk_thread_destroy;
spdk_thread_get_ctx;
spdk_thread_get_cpumask;
spdk_thread_set_cpumask;
spdk_thread_get_from_ctx;
spdk_thread_poll;
spdk_thread_next_poller_expiration;
spdk_thread_has_active_pollers;
spdk_thread_has_pollers;
spdk_thread_is_idle;
spdk_thread_get_count;
spdk_get_thread;
spdk_thread_get_name;
spdk_thread_get_id;
spdk_thread_get_by_id;
spdk_thread_get_stats;
spdk_thread_get_last_tsc;
spdk_thread_send_msg;
spdk_thread_send_critical_msg;
spdk_for_each_thread;
spdk_thread_set_interrupt_mode;
spdk_poller_register;
spdk_poller_register_named;
spdk_poller_unregister;
spdk_poller_pause;
spdk_poller_resume;
spdk_poller_register_interrupt;
spdk_io_device_register;
spdk_io_device_unregister;
spdk_get_io_channel;
spdk_put_io_channel;
spdk_io_channel_get_ctx;
spdk_io_channel_from_ctx;
spdk_io_channel_get_thread;
spdk_io_channel_get_io_device;
spdk_for_each_channel;
spdk_io_channel_iter_get_io_device;
spdk_io_channel_iter_get_channel;
spdk_io_channel_iter_get_ctx;
spdk_for_each_channel_continue;
spdk_interrupt_register;
spdk_interrupt_unregister;
spdk_interrupt_set_event_types;
spdk_thread_get_interrupt_fd;
spdk_interrupt_mode_enable;
spdk_interrupt_mode_is_enabled;
# internal functions in spdk_internal/thread.h
spdk_poller_get_name;
spdk_poller_get_state_str;
spdk_poller_get_period_ticks;
spdk_poller_get_stats;
spdk_io_device_get_name;
spdk_thread_get_first_active_poller;
spdk_thread_get_next_active_poller;
spdk_thread_get_first_timed_poller;
spdk_thread_get_next_timed_poller;
spdk_thread_get_first_paused_poller;
spdk_thread_get_next_paused_poller;
local: *;
};