Here is the list of NPIV limitations when used to virtualize Fibre Channel ports:
NPIV ports may not be used for booting.
NPIV ports are best used in SANs with a relatively small number of ports, either virtual or physical. Also, some targets may not have enough resources to process the large number of ports that NPIV can create. This limitation exists because processing state change notifications (SCN) on the SAN takes significant time if there are a large number of ports on the SAN. You can workaround this limitation on a large SAN by using zoning, which can limit the number of visible ports.
MPxIO can be used with NPIV, although you should ensure that different paths are physically redundant.
NPIV is supported only in a Fabric topology. It is not supported in an FC-AL or point-to-point topology.
Not all hardware supports NPIV. Both switches and HBAs (although not targets) must support NPIV in a SAN. By specification, HBAs should support up to 255 virtual ports, although this is defined by the resources on the switch. Switches may have to be updated to the latest firmware levels for NPIV support.