diff options
author | Jörn Engel <joern@logfs.org> | 2012-03-15 15:05:40 -0400 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2012-03-15 19:15:51 -0700 |
commit | f2083241f23722207676025abbb45a301d412e69 (patch) | |
tree | c340376faf2a1eebe0983075adee2a3c8070c064 /drivers/target/target_core_ua.c | |
parent | 4a5a75f32dcbcd0b2685f74fd4ede26edf8765a9 (diff) |
target: Use array_zalloc for device_list
Turns an order-8 allocation into slab-sized ones, thereby preventing
allocation failures with memory fragmentation.
This likely saves memory as well, as the slab allocator can pack objects
more tightly than the buddy allocator.
(nab: Fix lio-core patch fuzz)
Signed-off-by: Joern Engel <joern@logfs.org>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target/target_core_ua.c')
-rw-r--r-- | drivers/target/target_core_ua.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/target/target_core_ua.c b/drivers/target/target_core_ua.c index 3e12f6bcfa10..6666a0c74f60 100644 --- a/drivers/target/target_core_ua.c +++ b/drivers/target/target_core_ua.c @@ -53,7 +53,7 @@ int core_scsi3_ua_check( if (!nacl) return 0; - deve = &nacl->device_list[cmd->orig_fe_lun]; + deve = nacl->device_list[cmd->orig_fe_lun]; if (!atomic_read(&deve->ua_count)) return 0; /* @@ -110,7 +110,7 @@ int core_scsi3_ua_allocate( ua->ua_ascq = ascq; spin_lock_irq(&nacl->device_list_lock); - deve = &nacl->device_list[unpacked_lun]; + deve = nacl->device_list[unpacked_lun]; spin_lock(&deve->ua_lock); list_for_each_entry_safe(ua_p, ua_tmp, &deve->ua_list, ua_nacl_list) { @@ -220,7 +220,7 @@ void core_scsi3_ua_for_check_condition( return; spin_lock_irq(&nacl->device_list_lock); - deve = &nacl->device_list[cmd->orig_fe_lun]; + deve = nacl->device_list[cmd->orig_fe_lun]; if (!atomic_read(&deve->ua_count)) { spin_unlock_irq(&nacl->device_list_lock); return; @@ -289,7 +289,7 @@ int core_scsi3_ua_clear_for_request_sense( return -EINVAL; spin_lock_irq(&nacl->device_list_lock); - deve = &nacl->device_list[cmd->orig_fe_lun]; + deve = nacl->device_list[cmd->orig_fe_lun]; if (!atomic_read(&deve->ua_count)) { spin_unlock_irq(&nacl->device_list_lock); return -EPERM; |