How can I create 'pkey' on mellanox IB port?

Alex Liptsin alexl at
Wed May 29 07:48:17 UTC 2013

Hi Garrett.

Thanks a lot.
Where can I download the updated "sysfs.h" file?

Alex Liptsin

From: Garrett Cooper [mailto:yanegomi at]
Sent: Tuesday, May 28, 2013 6:45 PM
To: Alex Liptsin
Cc: freebsd-infiniband at; Jeff Roberson; Xin LI
Subject: Re: How can I create 'pkey' on mellanox IB port?

On Tue, May 28, 2013 at 5:10 AM, Alex Liptsin <alexl at<mailto:alexl at>> wrote:

I have FreeBSD 9.1 installed.
There is mellanox adapter inside.

[root at qa-h-vrt-030-006 ~]# pciconf -lv |grep mlx4 -A 3
mlx4_core0 at pci0:0:5:0:  class=0x028000 card=0x005015b3 chip=0x100315b3 rev=0x00 hdr=0x00
    vendor     = 'Mellanox Technologies'
    device     = 'MT27500 Family [ConnectX-3]'
    class      = network

OFED support is already compiled.

I try to add pkeys on ib0 port.

Usually in  Linux I did:

echo 0x800c >  /sys/class/net/ib0/create_child

ifconfig -a
To Make sure you see a new interface: ib0.800c

How can I do it on FreeBSD? There is no "/sys/class/net/ib0/create_child" directory.

Hi Alex!
    For all sysfs entries there *should* be a corresponding sysctl for it. Do sysctl -Na | grep create_child and you might find the node that you seek. After that all you need to do is call sysctl <node>=0x800c and it should achieve the same thing as setting the sysfs node.
    Please note that you must be the patch attached to in order for things to function properly as the sysfs handling code is still broken on HEAD. I've CCed Jeff Roberson about it a few times, and asked for assistance from Xin as well as I haven't gotten any feedback from Jeff.

More information about the freebsd-infiniband mailing list