* Re: [patch] drivers/scsi/scsi_sysfs.c:718: warning: unused variable `rq'
[not found] <20070723143637.GB23448@slug>
@ 2007-07-23 14:53 ` James Bottomley
0 siblings, 0 replies; only message in thread
From: James Bottomley @ 2007-07-23 14:53 UTC (permalink / raw)
To: Frederik Deweerdt; +Cc: jens.axboe, fujita.tomonori, linux-kernel, linux-scsi
On Mon, 2007-07-23 at 16:36 +0200, Frederik Deweerdt wrote:
> - struct request_queue *rq = sdev->request_queue;
>
> if ((error = scsi_device_set_state(sdev, SDEV_RUNNING)) != 0)
> return error;
> @@ -736,7 +735,8 @@ int scsi_sysfs_add_sdev(struct scsi_device *sdev)
> * released by the sdev_class .release */
> get_device(&sdev->sdev_gendev);
>
> - error = bsg_register_queue(rq, &sdev->sdev_gendev, NULL);
> + error = bsg_register_queue(sdev->request_queue,
> + &sdev->sdev_gendev, NULL);
Actually, that's not really a good fix because the same problem will
reoccur elsewhere. This is a more correct fix:
James
diff --git a/include/linux/bsg.h b/include/linux/bsg.h
index f415f89..2344dab 100644
--- a/include/linux/bsg.h
+++ b/include/linux/bsg.h
@@ -60,8 +60,13 @@ struct bsg_class_device {
extern int bsg_register_queue(struct request_queue *, struct device *, const char *);
extern void bsg_unregister_queue(struct request_queue *);
#else
-#define bsg_register_queue(disk, dev, name) (0)
-#define bsg_unregister_queue(disk) do { } while (0)
+static inline int bsg_register_queue(struct request_queue * rq, struct device *dev, const char *name)
+{
+ return 0;
+}
+static inline void bsg_unregister_queue(struct request_queue *rq)
+{
+}
#endif
#endif /* __KERNEL__ */
^ permalink raw reply related [flat|nested] only message in thread