diff options
author | Hannes Reinecke <hare@suse.de> | 2014-06-25 09:27:36 -0400 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2014-07-17 16:07:37 -0400 |
commit | 9cb78c16f5dadefd8dc5ba0ae5a2f26cd59419b3 (patch) | |
tree | 576b86c3ec56dd7176285ec2d27f27ca55f77bc3 /include/scsi/scsi_device.h | |
parent | 755f516bbb983915d6cbfb5aa592cc0a5a99fd00 (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.h | 22 |
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 | ||
323 | extern struct scsi_device *__scsi_add_device(struct Scsi_Host *, | 323 | extern struct scsi_device *__scsi_add_device(struct Scsi_Host *, |
324 | uint, uint, uint, void *hostdata); | 324 | uint, uint, u64, void *hostdata); |
325 | extern int scsi_add_device(struct Scsi_Host *host, uint channel, | 325 | extern int scsi_add_device(struct Scsi_Host *host, uint channel, |
326 | uint target, uint lun); | 326 | uint target, u64 lun); |
327 | extern int scsi_register_device_handler(struct scsi_device_handler *scsi_dh); | 327 | extern int scsi_register_device_handler(struct scsi_device_handler *scsi_dh); |
328 | extern void scsi_remove_device(struct scsi_device *); | 328 | extern void scsi_remove_device(struct scsi_device *); |
329 | extern int scsi_unregister_device_handler(struct scsi_device_handler *scsi_dh); | 329 | extern int scsi_unregister_device_handler(struct scsi_device_handler *scsi_dh); |
@@ -332,13 +332,13 @@ void scsi_attach_vpd(struct scsi_device *sdev); | |||
332 | extern int scsi_device_get(struct scsi_device *); | 332 | extern int scsi_device_get(struct scsi_device *); |
333 | extern void scsi_device_put(struct scsi_device *); | 333 | extern void scsi_device_put(struct scsi_device *); |
334 | extern struct scsi_device *scsi_device_lookup(struct Scsi_Host *, | 334 | extern struct scsi_device *scsi_device_lookup(struct Scsi_Host *, |
335 | uint, uint, uint); | 335 | uint, uint, u64); |
336 | extern struct scsi_device *__scsi_device_lookup(struct Scsi_Host *, | 336 | extern struct scsi_device *__scsi_device_lookup(struct Scsi_Host *, |
337 | uint, uint, uint); | 337 | uint, uint, u64); |
338 | extern struct scsi_device *scsi_device_lookup_by_target(struct scsi_target *, | 338 | extern struct scsi_device *scsi_device_lookup_by_target(struct scsi_target *, |
339 | uint); | 339 | u64); |
340 | extern struct scsi_device *__scsi_device_lookup_by_target(struct scsi_target *, | 340 | extern struct scsi_device *__scsi_device_lookup_by_target(struct scsi_target *, |
341 | uint); | 341 | u64); |
342 | extern void starget_for_each_device(struct scsi_target *, void *, | 342 | extern void starget_for_each_device(struct scsi_target *, void *, |
343 | void (*fn)(struct scsi_device *, void *)); | 343 | void (*fn)(struct scsi_device *, void *)); |
344 | extern void __starget_for_each_device(struct scsi_target *, void *, | 344 | extern void __starget_for_each_device(struct scsi_target *, void *, |
@@ -411,13 +411,13 @@ extern void scsi_device_resume(struct scsi_device *sdev); | |||
411 | extern void scsi_target_quiesce(struct scsi_target *); | 411 | extern void scsi_target_quiesce(struct scsi_target *); |
412 | extern void scsi_target_resume(struct scsi_target *); | 412 | extern void scsi_target_resume(struct scsi_target *); |
413 | extern void scsi_scan_target(struct device *parent, unsigned int channel, | 413 | extern 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); |
415 | extern void scsi_target_reap(struct scsi_target *); | 415 | extern void scsi_target_reap(struct scsi_target *); |
416 | extern void scsi_target_block(struct device *); | 416 | extern void scsi_target_block(struct device *); |
417 | extern void scsi_target_unblock(struct device *, enum scsi_device_state); | 417 | extern void scsi_target_unblock(struct device *, enum scsi_device_state); |
418 | extern void scsi_remove_target(struct device *); | 418 | extern void scsi_remove_target(struct device *); |
419 | extern void int_to_scsilun(unsigned int, struct scsi_lun *); | 419 | extern void int_to_scsilun(u64, struct scsi_lun *); |
420 | extern int scsilun_to_int(struct scsi_lun *); | 420 | extern u64 scsilun_to_int(struct scsi_lun *); |
421 | extern const char *scsi_device_state_name(enum scsi_device_state); | 421 | extern const char *scsi_device_state_name(enum scsi_device_state); |
422 | extern int scsi_is_sdev_device(const struct device *); | 422 | extern int scsi_is_sdev_device(const struct device *); |
423 | extern int scsi_is_target_device(const struct device *); | 423 | extern int scsi_is_target_device(const struct device *); |