mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-03-01 12:22:01 +07:00
target: Unify __core_scsi3_update_aptpl_buf and core_scsi3_update_aptpl_buf
The __ version is only ever called from the regular version, so just inline it. It's not too much more complex to handle both spinlocks in the same function. Signed-off-by: Andy Grover <agrover@redhat.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
parent
0607decdca
commit
3c8a6228d0
@ -1828,10 +1828,7 @@ core_scsi3_decode_spec_i_port(
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
* Called with struct se_device->dev_reservation_lock held
|
||||
*/
|
||||
static int __core_scsi3_update_aptpl_buf(
|
||||
static int core_scsi3_update_aptpl_buf(
|
||||
struct se_device *dev,
|
||||
unsigned char *buf,
|
||||
u32 pr_aptpl_buf_len)
|
||||
@ -1842,13 +1839,15 @@ static int __core_scsi3_update_aptpl_buf(
|
||||
unsigned char tmp[512], isid_buf[32];
|
||||
ssize_t len = 0;
|
||||
int reg_count = 0;
|
||||
int ret = 0;
|
||||
|
||||
memset(buf, 0, pr_aptpl_buf_len);
|
||||
|
||||
spin_lock(&dev->dev_reservation_lock);
|
||||
spin_lock(&dev->t10_pr.registration_lock);
|
||||
/*
|
||||
* Walk the registration list..
|
||||
*/
|
||||
spin_lock(&dev->t10_pr.registration_lock);
|
||||
list_for_each_entry(pr_reg, &dev->t10_pr.registration_list,
|
||||
pr_reg_list) {
|
||||
|
||||
@ -1894,8 +1893,8 @@ static int __core_scsi3_update_aptpl_buf(
|
||||
if ((len + strlen(tmp) >= pr_aptpl_buf_len)) {
|
||||
pr_err("Unable to update renaming"
|
||||
" APTPL metadata\n");
|
||||
spin_unlock(&dev->t10_pr.registration_lock);
|
||||
return -EMSGSIZE;
|
||||
ret = -EMSGSIZE;
|
||||
goto out;
|
||||
}
|
||||
len += sprintf(buf+len, "%s", tmp);
|
||||
|
||||
@ -1912,29 +1911,18 @@ static int __core_scsi3_update_aptpl_buf(
|
||||
if ((len + strlen(tmp) >= pr_aptpl_buf_len)) {
|
||||
pr_err("Unable to update renaming"
|
||||
" APTPL metadata\n");
|
||||
spin_unlock(&dev->t10_pr.registration_lock);
|
||||
return -EMSGSIZE;
|
||||
ret = -EMSGSIZE;
|
||||
goto out;
|
||||
}
|
||||
len += sprintf(buf+len, "%s", tmp);
|
||||
reg_count++;
|
||||
}
|
||||
spin_unlock(&dev->t10_pr.registration_lock);
|
||||
|
||||
if (!reg_count)
|
||||
len += sprintf(buf+len, "No Registrations or Reservations");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int core_scsi3_update_aptpl_buf(
|
||||
struct se_device *dev,
|
||||
unsigned char *buf,
|
||||
u32 pr_aptpl_buf_len)
|
||||
{
|
||||
int ret;
|
||||
|
||||
spin_lock(&dev->dev_reservation_lock);
|
||||
ret = __core_scsi3_update_aptpl_buf(dev, buf, pr_aptpl_buf_len);
|
||||
out:
|
||||
spin_unlock(&dev->t10_pr.registration_lock);
|
||||
spin_unlock(&dev->dev_reservation_lock);
|
||||
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user