numam-spdk/lib
Tomasz Zawadzki 60b655aa91 scheduler_dynamic: simplify thread balancing logic
When picking a path to go down with a thread,
conditions unnecessarily piled up.

Instead do it either of two ways:
- move idle threads to main core
- find best core for active threads and move them there

There is no need to worry about cpumask of the thread,
since _find_optimal_core() will always return a core
within the cpumask.

If the found core is the same one as the current,
_move_thread() won't perform any action.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: I0f4782766c15c86b5db0c970cfc9547058845b2a
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/8065
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2021-06-28 16:18:19 +00:00
..
accel lib/accel: add suport for batching copy + CRC32C command 2021-06-09 07:26:00 +00:00
bdev lib/trace: don't pass zero as a non-argument 2021-06-28 16:17:35 +00:00
blob blobstore:fix memleak problem in blob_load_cpl() 2021-06-17 09:02:37 +00:00
blobfs lib/trace: record string arguments as (const char *) 2021-06-28 16:17:35 +00:00
conf so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
env_dpdk env/dpdk: support additional core mask options 2021-06-17 09:01:32 +00:00
env_ocf lib/thead: print error log when create mempool or ring failed 2020-11-05 09:41:06 +00:00
event scheduler_dynamic: simplify thread balancing logic 2021-06-28 16:18:19 +00:00
ftl lib/trace: don't format arg's name while registering a tpoint 2021-06-10 10:58:05 +00:00
idxd idxd: fix one memleak problem in spdk_idxd_get_channel() 2021-06-16 09:00:48 +00:00
init event: Move json config loading to init 2021-05-26 09:13:34 +00:00
ioat ioat: fix potential double free problem in ioat_channel_start() 2021-06-16 09:00:37 +00:00
iscsi lib/trace: don't pass zero as a non-argument 2021-06-28 16:17:35 +00:00
json so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
jsonrpc jsonrpc: use SOCK_NONBLOCK in socket() calls 2021-05-05 13:31:10 +00:00
log so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
lvol so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
nbd lib/nbd: refine nbd stop process 2021-06-15 08:49:10 +00:00
net net: deprecate library 2021-04-26 06:55:03 +00:00
notify so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
nvme nvme: do not try to resubmit requests on error 2021-06-17 09:02:14 +00:00
nvmf lib/trace: don't pass zero as a non-argument 2021-06-28 16:17:35 +00:00
rdma include: remove util.h include from queue_extras.h 2021-04-14 07:25:21 +00:00
reduce so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
rocksdb build: use DEPDIRS variables to build SPDK_LIB_LIST 2020-12-18 09:40:01 +00:00
rpc so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
scsi lib/trace: don't pass zero as a non-argument 2021-06-28 16:17:35 +00:00
sock sock: Add new params to configure zcopy for server, client sockets 2021-04-27 08:13:32 +00:00
thread thread: Make the definition of struct spdk_io_channel private 2021-06-25 05:01:45 +00:00
trace lib/trace: don't pass zero as a non-argument 2021-06-28 16:17:35 +00:00
ut_mock so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
util util/crc32c: Add spdk_crc32c_iov_update. 2021-06-02 11:37:17 +00:00
vfio_user libvfio-user: update submodule 2021-06-22 23:42:02 +00:00
vhost vhost-blk: use device name for VIRTIO_BLK_T_GET_ID 2021-05-27 07:35:37 +00:00
virtio env: only pass failing address to spdk_pci_error_handler 2021-06-15 08:34:28 +00:00
vmd so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
Makefile event: Shift subsystem initialization code to a separate library 2021-05-24 10:12:50 +00:00