linux/drivers/target
roland@purestorage.com 9db9da3322 target: Don't zero pages used for data buffers
Doing alloc_page(GFP_KERNEL | __GFP_ZERO) to get pages used for data
buffers wastes a lot of CPU clearing pages that will be quickly be
overwritten by the actual data.  However, for emulated control
commands such as INQUIRY and so on, the code does assume that the
buffer is zeroed.

To avoid this CPU overhead, skip the __GFP_ZERO for commands that are
actually moving data, ie cmds that have SCF_SCSI_DATA_SG_IO_CDB set.

Signed-off-by: Roland Dreier <roland@purestorage.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
2012-01-18 08:29:57 +00:00
..
iscsi iscsi-target: fix chap identifier simple_strtoul usage 2011-12-14 11:28:09 +00:00
loopback tcm_loop: bump max_sectors 2011-12-14 11:28:11 +00:00
tcm_fc tcm_fc: Convert ft_send_work to use target_submit_cmd 2011-12-14 11:42:08 +00:00
Kconfig iscsi-target: Add iSCSI fabric support for target v4.1 2011-07-26 09:16:43 +00:00
Makefile target: remove the ->transport_split_cdb callback in se_cmd 2011-10-24 03:21:15 +00:00
target_core_alua.c target: header reshuffle, part2 2011-12-14 11:26:05 +00:00
target_core_alua.h target: pass the se_task to the CDB emulation callback 2011-11-04 08:00:17 +00:00
target_core_cdb.c target: Set response format in INQUIRY response 2011-12-14 11:38:28 +00:00
target_core_configfs.c target/configs: remove trailing newline from udev_path and alias 2011-12-14 11:28:10 +00:00
target_core_device.c target: Drop se_device TCQ queue_depth usage from I/O path 2011-12-14 11:42:13 +00:00
target_core_fabric_configfs.c target: header reshuffle, part2 2011-12-14 11:26:05 +00:00
target_core_fabric_lib.c target: remove useless casts 2011-12-14 11:28:07 +00:00
target_core_file.c target: remove useless casts 2011-12-14 11:28:07 +00:00
target_core_file.h target: make the ->get_cdb method optional 2011-10-24 03:21:11 +00:00
target_core_hba.c target: header reshuffle, part2 2011-12-14 11:26:05 +00:00
target_core_iblock.c target: don't allocate bio headroom in iblock 2012-01-18 08:28:02 +00:00
target_core_iblock.h target: make the ->get_cdb method optional 2011-10-24 03:21:11 +00:00
target_core_internal.h target: reshuffle headers 2011-12-14 08:51:12 +00:00
target_core_pr.c target: Allow PERSISTENT RESERVE IN for non-reservation holder 2012-01-18 08:29:36 +00:00
target_core_pr.h target: Move core_scsi3_check_cdb_abort_and_preempt 2011-12-14 11:27:34 +00:00
target_core_pscsi.c target: Drop se_device TCQ queue_depth usage from I/O path 2011-12-14 11:42:13 +00:00
target_core_pscsi.h target: cleanup pscsi request submission 2011-10-24 03:20:44 +00:00
target_core_rd.c target: use \n as a separator for configuration 2011-12-14 11:27:23 +00:00
target_core_rd.h target: make the ->get_cdb method optional 2011-10-24 03:21:11 +00:00
target_core_stat.c target: remove useless casts 2011-12-14 11:28:07 +00:00
target_core_tmr.c target: simplify target_check_cdb_and_preempt 2011-12-14 11:27:55 +00:00
target_core_tpg.c target: header reshuffle, part2 2011-12-14 11:26:05 +00:00
target_core_transport.c target: Don't zero pages used for data buffers 2012-01-18 08:29:57 +00:00
target_core_ua.c target: header reshuffle, part2 2011-12-14 11:26:05 +00:00
target_core_ua.h