Could not join netdev: No space left on device - Mellanox ConnectX-3 Pro EN / HP 544+QSFP (764284-B21)

I am trying to run 200 vlan on one port and I am getting errors. I updated the driver to the latest 4.9 LTS and firmware too, but it didn’t help. I noticed that the maximum can be only 126 vlan, but not more. If I put a network adapter with an Intel chip, then everything is fine. Tell me what is the problem?

Ubuntu Server 18.04 LTS

Mellanox ConnectX-3 Pro EN / HP 544+QSFP (764284-B21)

Logs:

systemd-networkd[3499]: vlan972: netdev ready

systemd-networkd[3499]: vlan951: netdev ready

systemd-networkd[3499]: vlan601: netdev ready

systemd-networkd[3499]: ens4d1: Could not join netdev: No space left on device

systemd-networkd[3499]: ens4d1: Failed

systemd-networkd[3499]: ens2d1: Link UP

systemd-networkd[3499]: ens2d1: Gained carrier

systemd-networkd[3499]: vlan959: Link is not managed by us

systemd-networkd[3499]: vlan991: Link is not managed by us

pci 0000:12:00.0: BAR 9: no space for [mem size 0x20000000 64bit pref]

pci 0000:12:00.0: BAR 9: failed to assign [mem size 0x20000000 64bit pref]

pci 0000:12:00.0: BAR 6: no space for [mem size 0x00100000 pref]

pci 0000:12:00.0: BAR 6: failed to assign [mem size 0x00100000 pref]

pci 0000:12:00.0: BAR 2: assigned [mem 0xc4000000000-0xc4001ffffff 64bit pref]

pci 0000:12:00.0: BAR 9: assigned [mem 0xc4002000000-0xc4021ffffff 64bit pref]

netplan example:

vlan602:

id: 602

link: ens4d1

dhcp4: no

dhcp6: no

vlan603:

id: 603

link: ens4d1

dhcp4: no

dhcp6: no

vlan604:

id: 604

link: ens4d1

dhcp4: no

dhcp6: no

vlan605:

id: 605

link: ens4d1

dhcp4: no

dhcp6: no

does it help in my case?

GRUB_CMDLINE_LINUX_DEFAULT=" pci=realloc=off"

I understand that Mellanox ConnectX-3 and Mellanox ConnectX-4 supports a maximum of 128 vlan per port? why then is it not written in the specification?

Problem solved

Mellanox ConnectX errors “Could not join netdev: No space left on device”