NPIV support in freebsd
Kenneth D. Merry
ken at freebsd.org
Tue Dec 10 04:41:40 UTC 2013
On Tue, Dec 10, 2013 at 07:36:30 +0530, bharat singh wrote:
> Hi Ken,
>
> root at FCNode1:~ # tail -1 /boot/loader.conf
> hint.isp.0.vports=4
>
> root at FCNode1:~ # ctladm port -l
> Port Online Type Name pp vp WWNN WWPN
> Speed Vendor
> 0 YES IOCTL CTL ioctl 0 0 0 0
> 0
> 1 YES INTERNAL ctl2cam 0 0 0x5000000aa3c77b00
> 0x5000000aa3c77b02 0
> 2 YES INTERNAL CTL internal 0 0 0 0
> 0
> 3 YES FC isp0 0 0 0x2000001b32118e22
> 0x2100001b32118e22 4000000 Qlogic <<<<< no vports enabled after reboot
>
> I tried to add the hint to /boot/device.hints also but still no success.
> @Matt any comments ?
It doesn't work for the reason I mentioned below -- the driver says that
the firmware included in the driver does not support multiple ports.
("non-MULTIID f/w loaded")
I did a quick experiment, and commented out the check, and was apparently
able to enable multiple ports in CTL. CTL just saw more target-capable
ports.
But my FreeBSD initiator had some definite problems connecting to the target
with multiple ports enabled.
> On Tue, Dec 10, 2013 at 1:53 AM, Kenneth D. Merry <ken at freebsd.org> wrote:
>
> > On Mon, Dec 09, 2013 at 15:33:46 +0530, Bharat Singh wrote:
> > > Hi,
> > >
> > > Is there a support for node port_id virtualization (NPIV) in freebsd.
> > > I see a lot of other implementations for IBM/Vmware/Solaris, but couldn't
> > > find for freebsd.
> > > So is it supported in CTL, if not any plans to for the same.
> >
> > The Qlogic driver (isp(4)) supports NPIV to some extent, but the
> > firmware currently in the tree for the 8Gb cards at least doesn't
> > seem to support multiple IDs:
> >
> > isp0: <Qlogic ISP 2532 PCI FC-AL Adapter> port 0xa400-0xa4ff mem
> > 0xfb9b8000-0xfb9bbfff irq 16 at device 0.0 on pci3
> > isp0: non-MULTIID f/w loaded, only can enable 1 of 5 channels
> > isp1: <Qlogic ISP 2532 PCI FC-AL Adapter> port 0xa800-0xa8ff mem
> > 0xfb9bc000-0xfb9bffff irq 17 at device 0.1 on pci3
> > isp1: setting role to 0x1
> > isp1: setting role to 0x1
> > isp1: setting role to 0x1
> > isp1: setting role to 0x1
> > isp1: setting role to 0x1
> > isp1: non-MULTIID f/w loaded, only can enable 1 of 5 channels
> >
> > It is pretty much transparent to CTL when it is turned on, because it just
> > looks like there are more frontend ports to CTL.
> >
> > The way you turn it on is setting the number of virtual ports like this
> > in /boot/loader.conf:
> >
> > hint.isp.0.vports=4
> > hint.isp.1.vports=4
> >
> > I did some testing with NPIV successfully a few years ago (2009), but I
> > haven't done anything with it since.
> >
> > Matt Jacob probably knows more about the current state.
> >
> > Ken
> > --
> > Kenneth Merry
> > ken at FreeBSD.ORG
> >
>
>
>
> --
> Bharat Singh
> Member Technical Staff, NetApp
Ken
--
Kenneth Merry
ken at FreeBSD.ORG
More information about the freebsd-scsi
mailing list