On 01/21/2016 07:35 AM, Alexander Duyck wrote: > This patch is meant to fix the RCU handling for VPD pages. The original > code had a number of issues including the fact that the local variables > were being declared as __rcu, the RCU variable being directly accessed > outside of the RCU locked region, and the fact that length was not > associated with the data so it would be possible to get a mix and match of > the length for one VPD page with the data from another. > > Fixes: 09e2b0b14690 ("scsi: rescan VPD attributes") > Signed-off-by: Alexander Duyck <aduyck@xxxxxxxxxxxx> > --- > drivers/scsi/scsi.c | 52 +++++++++++++++++++++++--------------------- > drivers/scsi/scsi_lib.c | 12 +++++----- > drivers/scsi/scsi_sysfs.c | 14 +++++++----- > include/scsi/scsi_device.h | 14 ++++++++---- > 4 files changed, 50 insertions(+), 42 deletions(-) > Thanks for fixing this up. I didn't really like the two distinct variables for vpd buffer and length, too, but hadn't thought of using a struct for here. Reviewed-by: Hannes Reinecke <hare@xxxxxxxx> Cheers, Hannes -- Dr. Hannes Reinecke Teamlead Storage & Networking hare@xxxxxxx +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg) -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html