Merge tag 'char-misc-5.15-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / include / scsi / scsi_device.h
index ac6ab16..09a17f6 100644 (file)
@@ -10,6 +10,7 @@
 #include <linux/atomic.h>
 #include <linux/sbitmap.h>
 
+struct bsg_device;
 struct device;
 struct request_queue;
 struct scsi_cmnd;
@@ -205,6 +206,7 @@ struct scsi_device {
        unsigned unmap_limit_for_ws:1;  /* Use the UNMAP limit for WRITE SAME */
        unsigned rpm_autosuspend:1;     /* Enable runtime autosuspend at device
                                         * creation time */
+       unsigned ignore_media_change:1; /* Ignore MEDIA CHANGE on resume */
 
        bool offline_already;           /* Device offline message logged */
 
@@ -234,6 +236,10 @@ struct scsi_device {
        size_t                  dma_drain_len;
        void                    *dma_drain_buf;
 
+       unsigned int            sg_timeout;
+       unsigned int            sg_reserved_size;
+
+       struct bsg_device       *bsg_dev;
        unsigned char           access_state;
        struct mutex            state_mutex;
        enum scsi_device_state sdev_state;
@@ -265,13 +271,15 @@ sdev_prefix_printk(const char *, const struct scsi_device *, const char *,
 __printf(3, 4) void
 scmd_printk(const char *, const struct scsi_cmnd *, const char *, ...);
 
-#define scmd_dbg(scmd, fmt, a...)                                         \
-       do {                                                               \
-               if ((scmd)->request->rq_disk)                              \
-                       sdev_dbg((scmd)->device, "[%s] " fmt,              \
-                                (scmd)->request->rq_disk->disk_name, ##a);\
-               else                                                       \
-                       sdev_dbg((scmd)->device, fmt, ##a);                \
+#define scmd_dbg(scmd, fmt, a...)                                      \
+       do {                                                            \
+               struct request *__rq = scsi_cmd_to_rq((scmd));          \
+                                                                       \
+               if (__rq->rq_disk)                                      \
+                       sdev_dbg((scmd)->device, "[%s] " fmt,           \
+                                __rq->rq_disk->disk_name, ##a);        \
+               else                                                    \
+                       sdev_dbg((scmd)->device, fmt, ##a);             \
        } while (0)
 
 enum scsi_target_state {