On 11/01/2016 03:47 PM, Christoph Hellwig wrote:
On Mon, Oct 31, 2016 at 06:59:28PM +0100, Hannes Reinecke wrote:
Switch to using scsi_execute_req_flags() instead of using the
block primitives.

__scsi_execute adds RQF_QUIET and RQF_PREEMPT to the request flags, which
would be a change in behavior.  A little analysis on why that's safe or
even desireable would be nice.  (This also applies to the other two patches
I think).

Hmm. Yeah, guess I'll need to reconcile that.


 static void release_controller(struct kref *kref)
 static int get_lun_info(struct scsi_device *sdev, struct rdac_dh_data *h,
                        char *array_name, u8 *array_id)
 {
+       int err = SCSI_DH_IO, i;
        struct c8_inquiry *inqp;

+       if (!scsi_get_vpd_page(sdev, 0xC8, (unsigned char *)h,
+                              sizeof(struct c8_inquiry))) {

This looks completely bogus to me - h is a struct rdac_dh_data pointer,
which is an in-kernel data structure that scsi_get_vpd_page would
scramble over.

Indeed, you are right. I'll be fixing it up.

Cheers,

Hannes
--
Dr. Hannes Reinecke                   zSeries & Storage
h...@suse.de                          +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to