Linux-2.6.12-rc2
[linux-3.10.git] / Documentation / infiniband / ipoib.txt
1 IP OVER INFINIBAND
2
3   The ib_ipoib driver is an implementation of the IP over InfiniBand
4   protocol as specified by the latest Internet-Drafts issued by the
5   IETF ipoib working group.  It is a "native" implementation in the
6   sense of setting the interface type to ARPHRD_INFINIBAND and the
7   hardware address length to 20 (earlier proprietary implementations
8   masqueraded to the kernel as ethernet interfaces).
9
10 Partitions and P_Keys
11
12   When the IPoIB driver is loaded, it creates one interface for each
13   port using the P_Key at index 0.  To create an interface with a
14   different P_Key, write the desired P_Key into the main interface's
15   /sys/class/net/<intf name>/create_child file.  For example:
16
17     echo 0x8001 > /sys/class/net/ib0/create_child
18
19   This will create an interface named ib0.8001 with P_Key 0x8001.  To
20   remove a subinterface, use the "delete_child" file:
21
22     echo 0x8001 > /sys/class/net/ib0/delete_child
23
24   The P_Key for any interface is given by the "pkey" file, and the
25   main interface for a subinterface is in "parent."
26
27 Debugging Information
28
29   By compiling the IPoIB driver with CONFIG_INFINIBAND_IPOIB_DEBUG set
30   to 'y', tracing messages are compiled into the driver.  They are
31   turned on by setting the module parameters debug_level and
32   mcast_debug_level to 1.  These parameters can be controlled at
33   runtime through files in /sys/module/ib_ipoib/.
34
35   CONFIG_INFINIBAND_IPOIB_DEBUG also enables the "ipoib_debugfs"
36   virtual filesystem.  By mounting this filesystem, for example with
37
38     mkdir -p /ipoib_debugfs
39     mount -t ipoib_debugfs none /ipoib_debufs
40
41   it is possible to get statistics about multicast groups from the
42   files /ipoib_debugfs/ib0_mcg and so on.
43
44   The performance impact of this option is negligible, so it
45   is safe to enable this option with debug_level set to 0 for normal
46   operation.
47
48   CONFIG_INFINIBAND_IPOIB_DEBUG_DATA enables even more debug output in
49   the data path when data_debug_level is set to 1.  However, even with
50   the output disabled, enabling this configuration option will affect
51   performance, because it adds tests to the fast path.
52
53 References
54
55   IETF IP over InfiniBand (ipoib) Working Group
56     http://ietf.org/html.charters/ipoib-charter.html