Dan Carpenter
7e20e7b991
libata: array underflow in ata_find_dev()
...
commit 59a5e266c3f5c1567508888dd61a45b86daed0fa upstream.
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 <dan.carpenter@oracle.com >
Signed-off-by: Tejun Heo <tj@kernel.org >
Cc: stable@vger.kernel.org # all versions at this point
Signed-off-by: Willy Tarreau <w@1wt.eu >
2017-11-01 22:12:44 +01:00
..
2013-05-14 11:13:04 -07:00
2013-01-03 15:57:03 -08:00
2016-02-19 14:22:41 -08:00
2013-05-14 11:13:04 -07:00
2012-07-25 15:12:11 -04:00
2014-10-05 14:54:13 -07:00
2013-08-04 16:50:55 +08:00
2016-02-19 14:22:41 -08:00
2013-06-25 00:51:33 +02:00
2015-08-03 09:29:45 -07:00
2016-08-27 11:40:28 +02:00
2015-08-10 12:20:31 -07:00
2017-11-01 22:12:44 +01:00
2016-03-03 15:06:24 -08:00
2013-12-04 10:55:51 -08:00
2010-10-21 20:21:03 -04:00
2013-07-25 14:07:27 -07:00
2013-06-25 00:51:33 +02:00
2013-02-20 17:10:53 -05:00
2012-07-25 15:12:11 -04:00
2011-10-14 13:10:42 -04:00
2012-07-25 15:12:11 -04:00
2013-04-19 22:25:51 +02:00
2012-07-25 15:12:11 -04:00
2013-04-03 19:52:10 -04:00
2014-06-07 13:25:29 -07:00
2012-08-17 13:26:51 -04:00
2012-07-25 15:12:11 -04:00
2013-01-03 15:57:03 -08:00
2012-11-28 12:40:15 -05:00
2012-07-25 15:12:11 -04:00
2013-01-03 15:57:03 -08:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-11-28 12:38:41 -05:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2013-05-12 15:19:46 +02:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2013-01-03 15:57:03 -08:00
2013-04-11 19:38:00 -04:00
2009-03-24 22:52:39 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2013-01-03 15:57:03 -08:00
2012-07-25 15:12:11 -04:00
2013-04-03 19:53:10 -04:00
2013-01-03 15:57:03 -08:00
2012-07-25 15:12:11 -04:00
2013-02-20 11:39:05 +11:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2015-06-22 16:55:54 -07:00
2013-01-03 15:57:03 -08:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2013-01-03 15:57:03 -08:00
2013-03-15 12:26:03 -07:00
2012-07-25 15:12:11 -04:00
2013-04-12 15:24:12 +02:00
2012-07-25 15:12:11 -04:00
2013-01-03 15:57:03 -08:00
2013-01-03 15:57:03 -08:00
2012-07-25 15:12:11 -04:00
2013-01-03 15:57:03 -08:00
2013-01-03 15:57:03 -08:00
2012-07-25 15:12:11 -04:00
2013-03-04 17:12:52 -05:00
2012-07-25 15:12:11 -04:00
2014-10-05 14:54:07 -07:00
2013-01-03 15:57:03 -08:00
2014-11-14 08:47:53 -08:00
2013-01-03 15:57:03 -08:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2012-07-25 15:12:11 -04:00
2013-05-14 11:13:04 -07:00
2015-01-29 17:40:56 -08:00
2014-12-16 09:09:42 -08:00
2013-07-25 14:07:28 -07:00
2013-08-04 16:50:55 +08:00
2017-06-20 14:04:18 +02:00
2012-07-25 15:12:11 -04:00
2013-05-14 11:13:04 -07:00
2008-01-23 05:24:15 -05:00
2012-07-25 15:12:11 -04:00
2013-06-02 00:54:45 -07:00
2012-11-28 12:39:20 -05:00
2016-03-03 15:06:22 -08:00
2012-07-25 15:12:11 -04:00
2013-04-09 14:13:28 -04:00
2013-05-14 11:13:04 -07:00
2012-07-25 15:12:11 -04:00
2013-05-14 11:13:04 -07:00
2013-01-03 15:57:03 -08:00
2007-07-02 10:17:42 -04:00