libata-scsi: use u8 array to store mode page copy
authorTom Yan <tom.ty89@gmail.com>
Fri, 22 Jul 2016 18:34:08 +0000 (02:34 +0800)
committerTejun Heo <tj@kernel.org>
Tue, 9 Aug 2016 20:13:04 +0000 (16:13 -0400)
commitd7372cb6290eedadcf2d191b033388df3c0c39f2
tree443c13a8ac23d447aef389d184c83341a011342b
parent29b4817d4018df78086157ea3a55c1d9424a7cfc
libata-scsi: use u8 array to store mode page copy

ata_mselect_*() would initialize a char array for storing a copy of
the current mode page. However, char could be signed char. In that
case, bytes larger than 127 would be converted to negative number.

For example, 0xff from def_control_mpage[] would become -1. This
prevented ata_mselect_control() from working at all, since when it
did the read-only bits check, there would always be a mismatch.

Signed-off-by: Tom Yan <tom.ty89@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
drivers/ata/libata-scsi.c