aboutsummaryrefslogtreecommitdiffstats
path: root/include/scsi/scsi_device.h
diff options
context:
space:
mode:
authorHannes Reinecke <hare@suse.de>2014-06-25 09:27:36 -0400
committerChristoph Hellwig <hch@lst.de>2014-07-17 16:07:37 -0400
commit9cb78c16f5dadefd8dc5ba0ae5a2f26cd59419b3 (patch)
tree576b86c3ec56dd7176285ec2d27f27ca55f77bc3 /include/scsi/scsi_device.h
parent755f516bbb983915d6cbfb5aa592cc0a5a99fd00 (diff)
scsi: use 64-bit LUNs
The SCSI standard defines 64-bit values for LUNs, and large arrays employing large or hierarchical LUN numbers become more and more common. So update the linux SCSI stack to use 64-bit LUN numbers. Signed-off-by: Hannes Reinecke <hare@suse.de> Reviewed-by: Christoph Hellwig <hch@infradead.org> Reviewed-by: Ewan Milne <emilne@redhat.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'include/scsi/scsi_device.h')
-rw-r--r--include/scsi/scsi_device.h22
1 files changed, 11 insertions, 11 deletions
diff --git a/include/scsi/scsi_device.h b/include/scsi/scsi_device.h
index 27ab31017f09..9aa38f7b303b 100644
--- a/include/scsi/scsi_device.h
+++ b/include/scsi/scsi_device.h
@@ -98,8 +98,8 @@ struct scsi_device {
98 98
99 unsigned long last_queue_ramp_up; /* last queue ramp up time */ 99 unsigned long last_queue_ramp_up; /* last queue ramp up time */
100 100
101 unsigned int id, lun, channel; 101 unsigned int id, channel;
102 102 u64 lun;
103 unsigned int manufacturer; /* Manufacturer of device, for using 103 unsigned int manufacturer; /* Manufacturer of device, for using
104 * vendor-specific cmd's */ 104 * vendor-specific cmd's */
105 unsigned sector_size; /* size in bytes */ 105 unsigned sector_size; /* size in bytes */
@@ -321,9 +321,9 @@ static inline struct scsi_target *scsi_target(struct scsi_device *sdev)
321 dev_printk(prefix, &(starget)->dev, fmt, ##a) 321 dev_printk(prefix, &(starget)->dev, fmt, ##a)
322 322
323extern struct scsi_device *__scsi_add_device(struct Scsi_Host *, 323extern struct scsi_device *__scsi_add_device(struct Scsi_Host *,
324 uint, uint, uint, void *hostdata); 324 uint, uint, u64, void *hostdata);
325extern int scsi_add_device(struct Scsi_Host *host, uint channel, 325extern int scsi_add_device(struct Scsi_Host *host, uint channel,
326 uint target, uint lun); 326 uint target, u64 lun);
327extern int scsi_register_device_handler(struct scsi_device_handler *scsi_dh); 327extern int scsi_register_device_handler(struct scsi_device_handler *scsi_dh);
328extern void scsi_remove_device(struct scsi_device *); 328extern void scsi_remove_device(struct scsi_device *);
329extern int scsi_unregister_device_handler(struct scsi_device_handler *scsi_dh); 329extern int scsi_unregister_device_handler(struct scsi_device_handler *scsi_dh);
@@ -332,13 +332,13 @@ void scsi_attach_vpd(struct scsi_device *sdev);
332extern int scsi_device_get(struct scsi_device *); 332extern int scsi_device_get(struct scsi_device *);
333extern void scsi_device_put(struct scsi_device *); 333extern void scsi_device_put(struct scsi_device *);
334extern struct scsi_device *scsi_device_lookup(struct Scsi_Host *, 334extern struct scsi_device *scsi_device_lookup(struct Scsi_Host *,
335 uint, uint, uint); 335 uint, uint, u64);
336extern struct scsi_device *__scsi_device_lookup(struct Scsi_Host *, 336extern struct scsi_device *__scsi_device_lookup(struct Scsi_Host *,
337 uint, uint, uint); 337 uint, uint, u64);
338extern struct scsi_device *scsi_device_lookup_by_target(struct scsi_target *, 338extern struct scsi_device *scsi_device_lookup_by_target(struct scsi_target *,
339 uint); 339 u64);
340extern struct scsi_device *__scsi_device_lookup_by_target(struct scsi_target *, 340extern struct scsi_device *__scsi_device_lookup_by_target(struct scsi_target *,
341 uint); 341 u64);
342extern void starget_for_each_device(struct scsi_target *, void *, 342extern void starget_for_each_device(struct scsi_target *, void *,
343 void (*fn)(struct scsi_device *, void *)); 343 void (*fn)(struct scsi_device *, void *));
344extern void __starget_for_each_device(struct scsi_target *, void *, 344extern void __starget_for_each_device(struct scsi_target *, void *,
@@ -411,13 +411,13 @@ extern void scsi_device_resume(struct scsi_device *sdev);
411extern void scsi_target_quiesce(struct scsi_target *); 411extern void scsi_target_quiesce(struct scsi_target *);
412extern void scsi_target_resume(struct scsi_target *); 412extern void scsi_target_resume(struct scsi_target *);
413extern void scsi_scan_target(struct device *parent, unsigned int channel, 413extern void scsi_scan_target(struct device *parent, unsigned int channel,
414 unsigned int id, unsigned int lun, int rescan); 414 unsigned int id, u64 lun, int rescan);
415extern void scsi_target_reap(struct scsi_target *); 415extern void scsi_target_reap(struct scsi_target *);
416extern void scsi_target_block(struct device *); 416extern void scsi_target_block(struct device *);
417extern void scsi_target_unblock(struct device *, enum scsi_device_state); 417extern void scsi_target_unblock(struct device *, enum scsi_device_state);
418extern void scsi_remove_target(struct device *); 418extern void scsi_remove_target(struct device *);
419extern void int_to_scsilun(unsigned int, struct scsi_lun *); 419extern void int_to_scsilun(u64, struct scsi_lun *);
420extern int scsilun_to_int(struct scsi_lun *); 420extern u64 scsilun_to_int(struct scsi_lun *);
421extern const char *scsi_device_state_name(enum scsi_device_state); 421extern const char *scsi_device_state_name(enum scsi_device_state);
422extern int scsi_is_sdev_device(const struct device *); 422extern int scsi_is_sdev_device(const struct device *);
423extern int scsi_is_target_device(const struct device *); 423extern int scsi_is_target_device(const struct device *);