netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ramachandra K <ramachandra.kuchimanchi@qlogic.com>
To: rdreier@cisco.com, general@lists.openfabrics.org, netdev@vger.kernel.org
Cc: amar.mudrankit@qlogic.com, poornima.kamath@qlogic.com
Subject: [ofa-general] [PATCH v4 14/14] QLogic VNIC: sysfs Documentation
Date: Tue, 10 Jun 2008 17:09:18 -0400	[thread overview]
Message-ID: <20080610210918.11186.64253.stgit@dale> (raw)
In-Reply-To: <20080610205633.11186.45499.stgit@dale>

From: Amar Mudrankit <amar.mudrankit@qlogic.com>

This patch adds the file sysfs-class-infiniband-qlgc-vnic which
describes the sysfs files managed by QLogic VNIC.

Signed-off-by: Ramachandra K <ramachandra.kuchimanchi@qlogic.com>
Signed-off-by: Poornima Kamath <poornima.kamath@qlogic.com>
Signed-off-by: Amar Mudrankit <amar.mudrankit@qlogic.com>
---

 .../ABI/testing/sysfs-class-infiniband-qlgc-vnic   |  179 ++++++++++++++++++++
 1 files changed, 179 insertions(+), 0 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-class-infiniband-qlgc-vnic

diff --git a/Documentation/ABI/testing/sysfs-class-infiniband-qlgc-vnic b/Documentation/ABI/testing/sysfs-class-infiniband-qlgc-vnic
new file mode 100644
index 0000000..6cf22ac
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-infiniband-qlgc-vnic
@@ -0,0 +1,179 @@
+What:		/sys/class/infiniband_qlgc_vnic/
+Date:		June 2008
+KernelVersion:	2.6.27
+Contact:	Ramachandra K <ramachandra.kuchimanchi@qlogic.com>
+Description:
+
+sysfs interface:
+----------------
+
+The QLogic Virtual NIC module when loaded on host creates following set of
+files into the sysfs:
+
+/sys/class/infiniband_qlgc_vnic/interfaces
+
+	create_vnic	(0200)	To create a new VNIC interface, write the name
+				of the interface to this file.
+
+	delete_vnic	(0200)	To delete an existing VNIC interface, write
+				name of that VNIC interface to this file.
+
+/sys/class/infiniband_qlgc_vnic/interfaces/<VNIC-interface-name>/
+
+	vnic_state	(0444)	State of the VNIC interface.
+
+	current_path	(0444)	In case of failover configuration, which
+				connection among the primary and secondary is
+				currently being used.
+
+	multicast	(0644)	Get/Set IB multicast value for the VNIC
+				interface.  Only root can Enable/Disable IB
+				multicast for that VNIC interface.
+
+	rx_csum		(0644)	Get/Set receive checksum boolean value for VNIC
+				interface.  Only root can Enable/Disable the
+				receive checksum operation for that VNIC
+				interface.
+
+	tx_csum		(0644)	Get/Set transmit checksum boolean value for VNIC
+				interface.  Only root can Enable/Disable the
+				transmit checksum operation for that VNIC
+				interface.
+
+/sys/class/infiniband_qlgc_vnic/interfaces/<VNIC-interface-name>/[primary-secondary]_path
+
+	dgid		(0644)	Get/set destination GID value for this
+				connection of VNIC interface.
+
+	hca_info	(0444)	Get the information about the HCA and IB port
+				through which this connection has been
+				configured.
+
+	heartbeat	(0644)	Get/Set the heartbeat value for this connection
+				of VNIC interface.
+
+	instance	(0644)	Get/Set instance number associated with this
+				connection of VNIC interface.
+
+	ioc_guid	(0644)	Set/Get GUID value of I/O Controller to which
+				this connection of VNIC interface should be/is
+				connecting to.
+
+	ioc_string	(0644)	Set/Get string value of I/O Controller to which
+				this connection of VNIC interface should be/is
+				connecting to.
+
+	link_state	(0444)	Link state for this connection.
+
+	multicast_state	(0444)	IB multicast state for this connection.
+
+	pkey		(0644)	Get/Set pkey value for this connection of VNIC
+				interface.
+
+	viport_state	(0444)	Viport state of this connection.
+
+/sys/class/infiniband_qlgc_vnic/vnic-<HCA-name>-<IB-port-no>
+
+	create_primary	(0200)	Write the name of the VNIC interface to this
+				file to create primary connection for VNIC
+				interface through given HCA and port, once all
+				parameters required for connection establishment
+				has been already set into primary_path of the
+				VNIC interface.
+
+	create_secondary(0200)	Write the name of the VNIC interface to this
+				file to create secondary connection for VNIC
+				interface through given HCA and port, once all
+				parameters required for connection establishment
+				has been already set into secondary_path of the
+				VNIC interface.
+
+/sys/class/infiniband_qlgc_vnic/interfaces/<VNIC-interface-name>/stats
+
+	carrier_losses		(0444)	No of times the carrier loss was
+					detected for this VNIC interface.
+
+	connection_time		(0444)	Amount of time this VNIC was in 
+					connected state.
+
+	disconnects		(0444)	No of times this VNIC interface got
+					disconnected from EVIC.
+
+	failed_xmits		(0444)	No of transmits over this VNIC interface
+					that have failed.
+
+	lifetime		(0444)	Amount of time elapsed since this VNIC
+					interface was created.
+
+	multicast_recvs		(0444)	No of IB multicast packets received over
+					this VNIC interface.
+
+	recvs			(0444)	Total no of packets received on this
+					VNIC interface.
+
+	xmits			(0444)	Total no of packets that have been
+					successfully transmitted over this VNIC
+					interface.
+
+	total_recv_time		(0444)	Amount of time taken in receive
+					processing, from the time driver got the
+					receive completion till the skb was sent
+					to kernel.
+
+	total_xmit_time		(0444)	Amount of time taken in transmit
+					processing, from the time skb was
+					received from kernel till a RDMA write
+					was done for it.
+
+	total_disconn_time	(0444)	Amount of time this VNIC interface was/is
+					in disconnected state.
+
+	total_carrier_loss_time	(0444)	Amount of time there was no carrier
+					present for this VNIC interface.
+
+Example:
+--------
+
+QLogic VNIC sysfs interface can be used directly to create a VNIC interface.
+
+# echo the name of new VNIC interface to create_vnic
+echo -n veth1 > /sys/class/infiniband_qlgc_vnic/interfaces/create_vnic
+
+# echo parameters to configure the VNIC interface. Some of these are 
+# interface level parameters which needs to be passed only once per VNIC
+# interface.
+
+echo -n true  > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/rx_csum
+echo -n false > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/tx_csum
+echo -n false > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/multicast
+
+echo -n 00066a01de000037 		 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/ioc_guid
+echo -n fe8000000000000100066a11de000037 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/dgid
+echo -n ffff 				 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/pkey
+echo -n 0 				 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/instance
+echo -n 100 				 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/heartbeat
+string="EVIC in Chassis 0x00066a00db000010, Slot 4, Ioc 1"
+echo -n $string 			 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/ioc_string
+
+# Trigger the connection establishment process for the path by choosing required
+# HCA and IB port combination.
+
+echo -n veth1 > /sys/class/infiniband_qlgc_vnic/vnic-mlx4_0-1/create_primary
+
+# In case of failover configuration, pass the parameters of the failover
+# connection to the driver and trigger its connection establishment
+# process.
+
+echo -n 00066a01de000037 		 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/secondary_path/ioc_guid
+echo -n fe8000000000000100066a11de000037 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/secondary_path/dgid
+echo -n ffff 				 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/secondary_path/pkey
+echo -n 1 				 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/secondary_path/instance
+echo -n 100 				 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/secondary_path/heartbeat
+string="EVIC in Chassis 0x00066a00db000010, Slot 4, Ioc 1"
+echo -n $string 			 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/secondary_path/ioc_string
+
+echo -n veth1 > /sys/class/infiniband_qlgc_vnic/vnic-mlx4_0-2/create_secondary
+
+# An interface can be deleted by echoing the name of the interface to be deleted
+# to delete_vnic file
+echo -n veth1 > /sys/class/infiniband_qlgc_vnic/interfaces/delete_vnic

  parent reply	other threads:[~2008-06-10 21:09 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-10 21:02 [ofa-general] [PATCH v4 00/14] QLogic VNIC Driver Ramachandra K
2008-06-10 21:02 ` [ofa-general] [PATCH v4 01/14] QLogic VNIC: Driver - netdev implementation Ramachandra K
2008-06-10 21:03 ` [ofa-general] [PATCH v4 02/14] QLogic VNIC: Netpath - abstraction of connection to EVIC/VEx Ramachandra K
2008-06-10 21:03 ` [ofa-general] [PATCH v4 03/14] QLogic VNIC: Implementation of communication protocol with EVIC/VEx Ramachandra K
2008-06-10 21:04 ` [ofa-general] [PATCH v4 04/14] QLogic VNIC: Implementation of Control path of communication protocol Ramachandra K
2008-06-10 22:21   ` Stephen Hemminger
2008-06-10 21:04 ` [ofa-general] [PATCH v4 05/14] QLogic VNIC: Implementation of Data " Ramachandra K
2008-06-10 21:05 ` [ofa-general] [PATCH v4 06/14] QLogic VNIC: IB core stack interaction Ramachandra K
2008-06-10 21:05 ` [ofa-general] [PATCH v4 07/14] QLogic VNIC: Handling configurable parameters of the driver Ramachandra K
2008-06-10 21:06 ` [ofa-general] [PATCH v4 08/14] QLogic VNIC: sysfs interface implementation for " Ramachandra K
2008-06-10 21:06 ` [ofa-general] [PATCH v4 09/14] QLogic VNIC: IB Multicast for Ethernet broadcast/multicast Ramachandra K
2008-06-10 21:07 ` [ofa-general] [PATCH v4 10/14] QLogic VNIC: Driver Statistics collection Ramachandra K
2008-06-10 21:07 ` [PATCH v4 11/14] QLogic VNIC: Driver utility file - implements various utility macros Ramachandra K
2008-06-10 21:08 ` [PATCH v4 12/14] QLogic VNIC: Driver Kconfig and Makefile Ramachandra K
2008-06-10 21:08 ` [ofa-general] [PATCH v4 13/14] QLogic VNIC: Modifications to IB " Ramachandra K
2008-06-10 21:09 ` Ramachandra K [this message]
2008-06-11  6:47   ` [PATCH v4 14/14] QLogic VNIC: sysfs Documentation Patrick McHardy
2008-06-12 15:13     ` [ofa-general] " Amar Mudrankit
2008-06-12 15:18       ` Patrick McHardy
2008-06-12 15:29         ` Ramachandra K
2008-06-12 15:34           ` Patrick McHardy
2008-06-12 20:22           ` Jeff Garzik
2008-06-14 18:03         ` Roland Dreier
2008-06-14 19:03           ` Jason Gunthorpe
2008-06-16  8:54             ` Patrick McHardy
2008-06-18 12:32               ` Ramachandra K
2008-06-18 12:38                 ` Patrick McHardy
2008-06-18 18:21                   ` Jason Gunthorpe
2008-06-19  1:19                     ` Patrick McHardy
2008-06-19  1:26                       ` Patrick McHardy
2008-06-12 15:50     ` Ramachandra K
2008-06-12 16:03       ` Patrick McHardy
2008-06-12 21:09         ` Amar Mudrankit
2008-06-13 15:20           ` Patrick McHardy
2008-06-13 21:47             ` Amar Mudrankit
2008-06-14  8:08               ` Patrick McHardy
2008-06-16 19:44                 ` Amar Mudrankit
2008-06-16 20:39                   ` Patrick McHardy
2008-06-12 16:04       ` Karen Shaeffer
2008-06-12 15:21 ` [ofa-general] [PATCH v4 00/14] QLogic VNIC Driver Ramachandra K
2008-06-12 15:35   ` Patrick McHardy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080610210918.11186.64253.stgit@dale \
    --to=ramachandra.kuchimanchi@qlogic.com \
    --cc=amar.mudrankit@qlogic.com \
    --cc=general@lists.openfabrics.org \
    --cc=netdev@vger.kernel.org \
    --cc=poornima.kamath@qlogic.com \
    --cc=rdreier@cisco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).