Re: [PATCH] tcm_loop: fixup tpgt string to integer conversion

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 2015-03-29 at 23:11 -0700, Ming Lin wrote:
> Currently, for example, mkdir "tpgt_xyz" doesn't return error.
> mkdir /sys/kernel/config/target/loopback/naa.60014055f195952b/tpgt_xyz
> 
> Replace obsoleted simple_strtoul with kstrtoul and check the conversion.
> 
> Signed-off-by: Ming Lin <mlin@xxxxxxxxxx>
> ---

Applied to target-pending/for-next.

Thanks Ming!

--nab

>  drivers/target/loopback/tcm_loop.c | 14 ++++++--------
>  1 file changed, 6 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/target/loopback/tcm_loop.c b/drivers/target/loopback/tcm_loop.c
> index 6b3c329..b461988 100644
> --- a/drivers/target/loopback/tcm_loop.c
> +++ b/drivers/target/loopback/tcm_loop.c
> @@ -1168,21 +1168,19 @@ static struct se_portal_group *tcm_loop_make_naa_tpg(
>  	struct tcm_loop_hba *tl_hba = container_of(wwn,
>  			struct tcm_loop_hba, tl_hba_wwn);
>  	struct tcm_loop_tpg *tl_tpg;
> -	char *tpgt_str, *end_ptr;
>  	int ret;
> -	unsigned short int tpgt;
> +	unsigned long tpgt;
>  
> -	tpgt_str = strstr(name, "tpgt_");
> -	if (!tpgt_str) {
> +	if (strstr(name, "tpgt_") != name) {
>  		pr_err("Unable to locate \"tpgt_#\" directory"
>  				" group\n");
>  		return ERR_PTR(-EINVAL);
>  	}
> -	tpgt_str += 5; /* Skip ahead of "tpgt_" */
> -	tpgt = (unsigned short int) simple_strtoul(tpgt_str, &end_ptr, 0);
> +	if (kstrtoul(name+5, 10, &tpgt))
> +		return ERR_PTR(-EINVAL);
>  
>  	if (tpgt >= TL_TPGS_PER_HBA) {
> -		pr_err("Passed tpgt: %hu exceeds TL_TPGS_PER_HBA:"
> +		pr_err("Passed tpgt: %lu exceeds TL_TPGS_PER_HBA:"
>  				" %u\n", tpgt, TL_TPGS_PER_HBA);
>  		return ERR_PTR(-EINVAL);
>  	}
> @@ -1199,7 +1197,7 @@ static struct se_portal_group *tcm_loop_make_naa_tpg(
>  		return ERR_PTR(-ENOMEM);
>  
>  	pr_debug("TCM_Loop_ConfigFS: Allocated Emulated %s"
> -		" Target Port %s,t,0x%04x\n", tcm_loop_dump_proto_id(tl_hba),
> +		" Target Port %s,t,0x%04lx\n", tcm_loop_dump_proto_id(tl_hba),
>  		config_item_name(&wwn->wwn_group.cg_item), tpgt);
>  
>  	return &tl_tpg->tl_se_tpg;


--
To unsubscribe from this list: send the line "unsubscribe target-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux