mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-09 15:29:16 +00:00
scsi: target: core: pr: Initialize arrays at declaration time
Avoids calling memset(). Link: https://lore.kernel.org/r/20210228055645.22253-21-chaitanya.kulkarni@wdc.com Link: https://lore.kernel.org/r/20210228055645.22253-22-chaitanya.kulkarni@wdc.com Link: https://lore.kernel.org/r/20210228055645.22253-23-chaitanya.kulkarni@wdc.com Reviewed-by: Mike Christie <michael.christie@oracle.com> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
2d4e2daf4f
commit
4db6dfe62c
@ -896,9 +896,8 @@ static void core_scsi3_aptpl_reserve(
|
||||
struct se_node_acl *node_acl,
|
||||
struct t10_pr_registration *pr_reg)
|
||||
{
|
||||
char i_buf[PR_REG_ISID_ID_LEN];
|
||||
char i_buf[PR_REG_ISID_ID_LEN] = { };
|
||||
|
||||
memset(i_buf, 0, PR_REG_ISID_ID_LEN);
|
||||
core_pr_dump_initiator_port(pr_reg, i_buf, PR_REG_ISID_ID_LEN);
|
||||
|
||||
spin_lock(&dev->dev_reservation_lock);
|
||||
@ -928,12 +927,10 @@ static int __core_scsi3_check_aptpl_registration(
|
||||
{
|
||||
struct t10_pr_registration *pr_reg, *pr_reg_tmp;
|
||||
struct t10_reservation *pr_tmpl = &dev->t10_pr;
|
||||
unsigned char i_port[PR_APTPL_MAX_IPORT_LEN];
|
||||
unsigned char t_port[PR_APTPL_MAX_TPORT_LEN];
|
||||
unsigned char i_port[PR_APTPL_MAX_IPORT_LEN] = { };
|
||||
unsigned char t_port[PR_APTPL_MAX_TPORT_LEN] = { };
|
||||
u16 tpgt;
|
||||
|
||||
memset(i_port, 0, PR_APTPL_MAX_IPORT_LEN);
|
||||
memset(t_port, 0, PR_APTPL_MAX_TPORT_LEN);
|
||||
/*
|
||||
* Copy Initiator Port information from struct se_node_acl
|
||||
*/
|
||||
@ -1023,9 +1020,8 @@ static void __core_scsi3_dump_registration(
|
||||
enum register_type register_type)
|
||||
{
|
||||
struct se_portal_group *se_tpg = nacl->se_tpg;
|
||||
char i_buf[PR_REG_ISID_ID_LEN];
|
||||
char i_buf[PR_REG_ISID_ID_LEN] = { };
|
||||
|
||||
memset(&i_buf[0], 0, PR_REG_ISID_ID_LEN);
|
||||
core_pr_dump_initiator_port(pr_reg, i_buf, PR_REG_ISID_ID_LEN);
|
||||
|
||||
pr_debug("SPC-3 PR [%s] Service Action: REGISTER%s Initiator"
|
||||
@ -1204,10 +1200,10 @@ static struct t10_pr_registration *core_scsi3_locate_pr_reg(
|
||||
struct se_session *sess)
|
||||
{
|
||||
struct se_portal_group *tpg = nacl->se_tpg;
|
||||
unsigned char buf[PR_REG_ISID_LEN], *isid_ptr = NULL;
|
||||
unsigned char buf[PR_REG_ISID_LEN] = { };
|
||||
unsigned char *isid_ptr = NULL;
|
||||
|
||||
if (tpg->se_tpg_tfo->sess_get_initiator_sid != NULL) {
|
||||
memset(&buf[0], 0, PR_REG_ISID_LEN);
|
||||
tpg->se_tpg_tfo->sess_get_initiator_sid(sess, &buf[0],
|
||||
PR_REG_ISID_LEN);
|
||||
isid_ptr = &buf[0];
|
||||
@ -1285,11 +1281,10 @@ static void __core_scsi3_free_registration(
|
||||
struct t10_reservation *pr_tmpl = &dev->t10_pr;
|
||||
struct se_node_acl *nacl = pr_reg->pr_reg_nacl;
|
||||
struct se_dev_entry *deve;
|
||||
char i_buf[PR_REG_ISID_ID_LEN];
|
||||
char i_buf[PR_REG_ISID_ID_LEN] = { };
|
||||
|
||||
lockdep_assert_held(&pr_tmpl->registration_lock);
|
||||
|
||||
memset(i_buf, 0, PR_REG_ISID_ID_LEN);
|
||||
core_pr_dump_initiator_port(pr_reg, i_buf, PR_REG_ISID_ID_LEN);
|
||||
|
||||
if (!list_empty(&pr_reg->pr_reg_list))
|
||||
@ -2059,7 +2054,8 @@ core_scsi3_emulate_pro_register(struct se_cmd *cmd, u64 res_key, u64 sa_res_key,
|
||||
struct se_portal_group *se_tpg;
|
||||
struct t10_pr_registration *pr_reg, *pr_reg_p, *pr_reg_tmp;
|
||||
struct t10_reservation *pr_tmpl = &dev->t10_pr;
|
||||
unsigned char isid_buf[PR_REG_ISID_LEN], *isid_ptr = NULL;
|
||||
unsigned char isid_buf[PR_REG_ISID_LEN] = { };
|
||||
unsigned char *isid_ptr = NULL;
|
||||
sense_reason_t ret = TCM_NO_SENSE;
|
||||
int pr_holder = 0, type;
|
||||
|
||||
@ -2070,7 +2066,6 @@ core_scsi3_emulate_pro_register(struct se_cmd *cmd, u64 res_key, u64 sa_res_key,
|
||||
se_tpg = se_sess->se_tpg;
|
||||
|
||||
if (se_tpg->se_tpg_tfo->sess_get_initiator_sid) {
|
||||
memset(&isid_buf[0], 0, PR_REG_ISID_LEN);
|
||||
se_tpg->se_tpg_tfo->sess_get_initiator_sid(se_sess, &isid_buf[0],
|
||||
PR_REG_ISID_LEN);
|
||||
isid_ptr = &isid_buf[0];
|
||||
@ -2282,11 +2277,9 @@ core_scsi3_pro_reserve(struct se_cmd *cmd, int type, int scope, u64 res_key)
|
||||
struct se_lun *se_lun = cmd->se_lun;
|
||||
struct t10_pr_registration *pr_reg, *pr_res_holder;
|
||||
struct t10_reservation *pr_tmpl = &dev->t10_pr;
|
||||
char i_buf[PR_REG_ISID_ID_LEN];
|
||||
char i_buf[PR_REG_ISID_ID_LEN] = { };
|
||||
sense_reason_t ret;
|
||||
|
||||
memset(i_buf, 0, PR_REG_ISID_ID_LEN);
|
||||
|
||||
if (!se_sess || !se_lun) {
|
||||
pr_err("SPC-3 PR: se_sess || struct se_lun is NULL!\n");
|
||||
return TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;
|
||||
@ -2457,12 +2450,11 @@ static void __core_scsi3_complete_pro_release(
|
||||
int unreg)
|
||||
{
|
||||
const struct target_core_fabric_ops *tfo = se_nacl->se_tpg->se_tpg_tfo;
|
||||
char i_buf[PR_REG_ISID_ID_LEN];
|
||||
char i_buf[PR_REG_ISID_ID_LEN] = { };
|
||||
int pr_res_type = 0, pr_res_scope = 0;
|
||||
|
||||
lockdep_assert_held(&dev->dev_reservation_lock);
|
||||
|
||||
memset(i_buf, 0, PR_REG_ISID_ID_LEN);
|
||||
core_pr_dump_initiator_port(pr_reg, i_buf, PR_REG_ISID_ID_LEN);
|
||||
/*
|
||||
* Go ahead and release the current PR reservation holder.
|
||||
@ -2768,11 +2760,10 @@ static void __core_scsi3_complete_pro_preempt(
|
||||
{
|
||||
struct se_node_acl *nacl = pr_reg->pr_reg_nacl;
|
||||
const struct target_core_fabric_ops *tfo = nacl->se_tpg->se_tpg_tfo;
|
||||
char i_buf[PR_REG_ISID_ID_LEN];
|
||||
char i_buf[PR_REG_ISID_ID_LEN] = { };
|
||||
|
||||
lockdep_assert_held(&dev->dev_reservation_lock);
|
||||
|
||||
memset(i_buf, 0, PR_REG_ISID_ID_LEN);
|
||||
core_pr_dump_initiator_port(pr_reg, i_buf, PR_REG_ISID_ID_LEN);
|
||||
/*
|
||||
* Do an implicit RELEASE of the existing reservation.
|
||||
@ -3158,7 +3149,7 @@ core_scsi3_emulate_pro_register_and_move(struct se_cmd *cmd, u64 res_key,
|
||||
struct t10_reservation *pr_tmpl = &dev->t10_pr;
|
||||
unsigned char *buf;
|
||||
const unsigned char *initiator_str;
|
||||
char *iport_ptr = NULL, i_buf[PR_REG_ISID_ID_LEN];
|
||||
char *iport_ptr = NULL, i_buf[PR_REG_ISID_ID_LEN] = { };
|
||||
u32 tid_len, tmp_tid_len;
|
||||
int new_reg = 0, type, scope, matching_iname;
|
||||
sense_reason_t ret;
|
||||
@ -3170,7 +3161,6 @@ core_scsi3_emulate_pro_register_and_move(struct se_cmd *cmd, u64 res_key,
|
||||
return TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;
|
||||
}
|
||||
|
||||
memset(i_buf, 0, PR_REG_ISID_ID_LEN);
|
||||
se_tpg = se_sess->se_tpg;
|
||||
tf_ops = se_tpg->se_tpg_tfo;
|
||||
/*
|
||||
|
Loading…
x
Reference in New Issue
Block a user