scsi: target: Add iscsi/cpus_allowed_list in configfs
authorMingzhe Zou <mingzhe.zou@easystack.cn>
Tue, 1 Mar 2022 07:55:00 +0000 (15:55 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 15 Mar 2022 03:40:36 +0000 (23:40 -0400)
commitd72d827f2f2636d8d72f0f3ebe5b661c9a24d343
treeb0ecafd9845045fa030fd2fc2fbf2133d1f9e4d6
parent095478a6e5bf590f2bbf341569eb25173c9c5f32
scsi: target: Add iscsi/cpus_allowed_list in configfs

The RX/TX threads for iSCSI connection can be scheduled to any online CPUs,
and will not be rescheduled.

When binding other heavy load threads along with iSCSI connection RX/TX
thread to the same CPU, the iSCSI performance will be worse.

Add iscsi/cpus_allowed_list in configfs. The available CPU set of iSCSI
connection RX/TX threads is allowed_cpus & online_cpus. If it is modified,
all RX/TX threads will be rescheduled.

Link: https://lore.kernel.org/r/20220301075500.14266-1-mingzhe.zou@easystack.cn
Reviewed-by: Mike Christie <michael.christie@oracle.com>
Signed-off-by: Mingzhe Zou <mingzhe.zou@easystack.cn>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/target/iscsi/iscsi_target.c
drivers/target/iscsi/iscsi_target_configfs.c
drivers/target/iscsi/iscsi_target_login.c
include/target/iscsi/iscsi_target_core.h