Re: [PATCH] libata: array underflow in ata_find_dev()
From: Tejun Heo <tj@kernel.org>
Date: 2017-07-19 14:34:08
Also in:
kernel-janitors
From: Tejun Heo <tj@kernel.org>
Date: 2017-07-19 14:34:08
Also in:
kernel-janitors
Hello, On Wed, Jul 19, 2017 at 01:06:41PM +0300, Dan Carpenter wrote:
My static checker complains that "devno" can be negative, meaning that
we read before the start of the loop. I've looked at the code, and I
think the warning is right. This come from /proc so it's root only or
it would be quite a quite a serious bug. The call tree looks like this:
proc_scsi_write() <- gets id and channel from simple_strtoul()
-> scsi_add_single_device() <- calls shost->transportt->user_scan()
-> ata_scsi_user_scan()
-> ata_find_dev()
Signed-off-by: Dan Carpenter <redacted>I'm impressed that the static checker caught this. Thanks a lot for the fix, and lol at the code. :) Applied to libata/for-4.13-fixes w/ stable cc'd. Thanks! -- tejun