Re: [PATCH-next v4] loop: loop_set_status_from_info() check before assignment

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

 



On 2/21/2023 1:50 AM, Zhong Jinghua wrote:
> From: Zhong Jinghua <zhongjinghua@xxxxxxxxxx>
> 
> In loop_set_status_from_info(), lo->lo_offset and lo->lo_sizelimit should
> be checked before reassignment, because if an overflow error occurs, the
> original correct value will be changed to the wrong value, and it will not
> be changed back.
> 
> More, the original patch did not solve the problem, the value was set and
> ioctl returned an error, but the subsequent io used the value in the loop
> driver, which still caused an alarm:
> 
> loop_handle_cmd
>   do_req_filebacked
>    loff_t pos = ((loff_t) blk_rq_pos(rq) << 9) + lo->lo_offset;
>    lo_rw_aio
>     cmd->iocb.ki_pos = pos
> 
> Fixes: c490a0b5a4f3 ("loop: Check for overflow while configuring loop")
> Signed-off-by: Zhong Jinghua <zhongjinghua@xxxxxxxxxx>


Reviewed-by: Chaitanya Kulkarni <kch@xxxxxxxxxx>

-ck






[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux