aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_attr.c
diff options
context:
space:
mode:
authorJamie Wellnitz <Jamie.Wellnitz@emulex.com>2006-02-28 22:33:08 -0500
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>2006-03-06 10:46:57 -0500
commitcf5bf97e1d28651fd689be9c974b2318ac262f2d (patch)
treedf7a3b25a5fccc189bf1cb00de8f2f04eaef0e71 /drivers/scsi/lpfc/lpfc_attr.c
parent56178645c2686a7ef630e1b23b81d40dcfb553e6 (diff)
[PATCH] lpfc 8.1.3: Fix performance when using multiple SLI rings
Fix performance when using multiple SLI rings Currently the driver allocates all of its SLI command and response ring entries to one primary ring. Other rings get little, or no, resources. Allow more resources to be given to ring 1 Signed-off-by: Jamie Wellnitz <Jamie.Wellnitz@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_attr.c')
-rw-r--r--drivers/scsi/lpfc/lpfc_attr.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/scsi/lpfc/lpfc_attr.c b/drivers/scsi/lpfc/lpfc_attr.c
index ab49379b6abe..2558156f064d 100644
--- a/drivers/scsi/lpfc/lpfc_attr.c
+++ b/drivers/scsi/lpfc/lpfc_attr.c
@@ -671,6 +671,14 @@ LPFC_ATTR_RW(cr_count, 1, 1, 255, "A count of I/O completions after which an "
671 "interrupt response is generated"); 671 "interrupt response is generated");
672 672
673/* 673/*
674# lpfc_multi_ring_support: Determines how many rings to spread available
675# cmd/rsp IOCB entries across.
676# Value range is [1,2]. Default value is 1.
677*/
678LPFC_ATTR_R(multi_ring_support, 1, 1, 2, "Determines number of primary "
679 "SLI rings to spread IOCB entries across");
680
681/*
674# lpfc_fdmi_on: controls FDMI support. 682# lpfc_fdmi_on: controls FDMI support.
675# 0 = no FDMI support 683# 0 = no FDMI support
676# 1 = support FDMI without attribute of hostname 684# 1 = support FDMI without attribute of hostname
@@ -726,6 +734,7 @@ struct class_device_attribute *lpfc_host_attrs[] = {
726 &class_device_attr_lpfc_link_speed, 734 &class_device_attr_lpfc_link_speed,
727 &class_device_attr_lpfc_cr_delay, 735 &class_device_attr_lpfc_cr_delay,
728 &class_device_attr_lpfc_cr_count, 736 &class_device_attr_lpfc_cr_count,
737 &class_device_attr_lpfc_multi_ring_support,
729 &class_device_attr_lpfc_fdmi_on, 738 &class_device_attr_lpfc_fdmi_on,
730 &class_device_attr_lpfc_max_luns, 739 &class_device_attr_lpfc_max_luns,
731 &class_device_attr_nport_evt_cnt, 740 &class_device_attr_nport_evt_cnt,
@@ -1440,6 +1449,7 @@ lpfc_get_cfgparam(struct lpfc_hba *phba)
1440 lpfc_log_verbose_init(phba, lpfc_log_verbose); 1449 lpfc_log_verbose_init(phba, lpfc_log_verbose);
1441 lpfc_cr_delay_init(phba, lpfc_cr_delay); 1450 lpfc_cr_delay_init(phba, lpfc_cr_delay);
1442 lpfc_cr_count_init(phba, lpfc_cr_count); 1451 lpfc_cr_count_init(phba, lpfc_cr_count);
1452 lpfc_multi_ring_support_init(phba, lpfc_multi_ring_support);
1443 lpfc_lun_queue_depth_init(phba, lpfc_lun_queue_depth); 1453 lpfc_lun_queue_depth_init(phba, lpfc_lun_queue_depth);
1444 lpfc_fcp_class_init(phba, lpfc_fcp_class); 1454 lpfc_fcp_class_init(phba, lpfc_fcp_class);
1445 lpfc_use_adisc_init(phba, lpfc_use_adisc); 1455 lpfc_use_adisc_init(phba, lpfc_use_adisc);