Commit 2bab359a authored by Jody McIntyre's avatar Jody McIntyre Committed by Linus Torvalds

[PATCH] sbp2: default to serialize_io=1

Set serialize_io=1 by default.  This is safer and required by seemingly more
and more hardware.  It causes little or no performance loss for S400 devices.
Performance of S800 1394b devices may drop by 25...30%.  Therefore make the
parameter's description and dmesg message clearer about performance impact.

Update description of the max_speed parameter too.  IEEE1394_SPEED_MAX is
currently S800.
Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: default avatarJody McIntyre <scjody@steamballoon.com>
Cc: Ben Collins <bcollins@debian.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent abd559b1
...@@ -97,16 +97,18 @@ static char version[] __devinitdata = ...@@ -97,16 +97,18 @@ static char version[] __devinitdata =
*/ */
static int max_speed = IEEE1394_SPEED_MAX; static int max_speed = IEEE1394_SPEED_MAX;
module_param(max_speed, int, 0644); module_param(max_speed, int, 0644);
MODULE_PARM_DESC(max_speed, "Force max speed (3 = 800mb, 2 = 400mb default, 1 = 200mb, 0 = 100mb)"); MODULE_PARM_DESC(max_speed, "Force max speed (3 = 800mb, 2 = 400mb, 1 = 200mb, 0 = 100mb)");
/* /*
* Set serialize_io to 1 if you'd like only one scsi command sent * Set serialize_io to 1 if you'd like only one scsi command sent
* down to us at a time (debugging). This might be necessary for very * down to us at a time (debugging). This might be necessary for very
* badly behaved sbp2 devices. * badly behaved sbp2 devices.
*
* TODO: Make this configurable per device.
*/ */
static int serialize_io; static int serialize_io = 1;
module_param(serialize_io, int, 0444); module_param(serialize_io, int, 0444);
MODULE_PARM_DESC(serialize_io, "Serialize all I/O coming down from the scsi drivers (default = 0)"); MODULE_PARM_DESC(serialize_io, "Serialize I/O coming from scsi drivers (default = 1, faster = 0)");
/* /*
* Bump up max_sectors if you'd like to support very large sized * Bump up max_sectors if you'd like to support very large sized
...@@ -2857,7 +2859,8 @@ static int sbp2_module_init(void) ...@@ -2857,7 +2859,8 @@ static int sbp2_module_init(void)
/* Module load debug option to force one command at a time (serializing I/O) */ /* Module load debug option to force one command at a time (serializing I/O) */
if (serialize_io) { if (serialize_io) {
SBP2_ERR("Driver forced to serialize I/O (serialize_io = 1)"); SBP2_INFO("Driver forced to serialize I/O (serialize_io=1)");
SBP2_INFO("Try serialize_io=0 for better performance");
scsi_driver_template.can_queue = 1; scsi_driver_template.can_queue = 1;
scsi_driver_template.cmd_per_lun = 1; scsi_driver_template.cmd_per_lun = 1;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment