LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 06-28-2021, 04:20 PM   #1
olaf_f
LQ Newbie
 
Registered: Jun 2021
Posts: 4

Rep: Reputation: Disabled
SRIOV not working QLOGIC QLE8442 BCM57840 NetXtreme II ASUS Prime X470-PRO CENTOS 8


Hi,

Centos 8.4

Network card: Qlogic QLE8442, it is seen as:
0a:00.0 Ethernet controller: Broadcom Inc. and subsidiaries BCM57840 NetXtreme II 10 Gigabit Ethernet (rev 11)

Motherboard: ASUS PRIME X470-PRO

I cannot get sriov vf working. IOMMU and SR-IOV enabled in BIOS. Using latest BIOS version.

When I do:
echo 8 > sriov_numvfs

I get:
[root@vh4 device]# echo 8 > sriov_numvfs
bash: echo: write error: Input/output error

in /var/log messages I then get:
un 28 23:08:55 vh4 kernel: pci 0000:0a:01.0: [14e4:16ad] type 7f class 0xffffff
Jun 28 23:08:55 vh4 kernel: pci 0000:0a:01.0: unknown header type 7f, ignoring device
Jun 28 23:08:57 vh4 kernel: [bnx2x_enable_sriov:2520(enp10s0f0)]pci_enable_sriov failed with -5

I have no idea what to change to get it working.

If anybody has any clue what to do, I would be very happy

Regards,
Olaf
 
Old 06-29-2021, 07:01 AM   #2
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, Slarm64 & Android
Posts: 17,534

Rep: Reputation: 2604Reputation: 2604Reputation: 2604Reputation: 2604Reputation: 2604Reputation: 2604Reputation: 2604Reputation: 2604Reputation: 2604Reputation: 2604Reputation: 2604
Hi, olaf_f & welcome to LQ.

Have a read of this:How_To_Ask_a_Question

Now let's try with the little information we have. What is SR-IOV and why does it matter?

Your command
Code:
echo 8 > sriov_numvfs
will try to write the number "8" to a file called sriov_numvfs in whatever directory you happen to be in. Is that what you intended? From your error, it failed.

What exactly were you trying to do? Does your network card work?

Try to find online what module and firmware are used for this.

Last edited by business_kid; 06-29-2021 at 07:11 AM.
 
1 members found this post helpful.
Old 06-29-2021, 08:17 AM   #3
TB0ne
LQ Guru
 
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 27,669

Rep: Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147
Quote:
Originally Posted by olaf_f View Post
Hi,
Centos 8.4

Network card: Qlogic QLE8442, it is seen as: 0a:00.0 Ethernet controller: Broadcom Inc. and subsidiaries BCM57840 NetXtreme II 10 Gigabit Ethernet (rev 11)
Motherboard: ASUS PRIME X470-PRO

I cannot get sriov vf working. IOMMU and SR-IOV enabled in BIOS. Using latest BIOS version.

When I do:
echo 8 > sriov_numvfs

I get:
[root@vh4 device]# echo 8 > sriov_numvfs
bash: echo: write error: Input/output error

in /var/log messages I then get:
un 28 23:08:55 vh4 kernel: pci 0000:0a:01.0: [14e4:16ad] type 7f class 0xffffff
Jun 28 23:08:55 vh4 kernel: pci 0000:0a:01.0: unknown header type 7f, ignoring device
Jun 28 23:08:57 vh4 kernel: [bnx2x_enable_sriov:2520(enp10s0f0)]pci_enable_sriov failed with -5

I have no idea what to change to get it working. If anybody has any clue what to do, I would be very happy
There appear to be several things you have to do in order to enable that:
https://access.redhat.com/documentat...ual-networking
https://www.supermicro.com/wdl/drive...ADME.bnx2x.TXT

..but as business_kid says, we need more information.
 
Old 06-29-2021, 08:50 AM   #4
olaf_f
LQ Newbie
 
Registered: Jun 2021
Posts: 4

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by TB0ne View Post
There appear to be several things you have to do in order to enable that:
https://access.redhat.com/documentat...ual-networking
https://www.supermicro.com/wdl/drive...ADME.bnx2x.TXT

..but as business_kid says, we need more information.
To be honest, I included the distribution, it's version, hardware description - both motherboard and network card. Even the driver is known: bnx2x. What more would you like?

The IOMMU is enabled and detected by kernel. I wanted to post dmesg output and lspci -vvv but it is way too long for the limit of the message here and I don't see a possibility to attach a file.

To business_kid:

SRIOV - single root input/output virtualization - it enables to create virtual functions on PCIe devices, so they can be shared with virtual machines in a secure way, without performance degradation.
The support is required from PCIe motherboard hardware, BIOS, kernel, the driver and the PCIe device - in this case the network card.

sriov_numvfs - it is a file in /sys directory for the network card. It is used to enable virtual functions on these NICs. The "8" when written to this file should enable 8 virtual functions on this card, and they should be seen as 8 separate PCIe devices by the kernel.

As it fails, it indicates that either the card does something wrong or some element, eg. a PCIe bridge, on the motherboard is not initialized properly, most probably because BIOS handles something wrong - it is quite common on non-server motherboards.

Anyway - I have contacted the driver maintainer and they are trying to find out what is wrong.
If/when I have an answer I'll post it here, maybe it will help somebody else.

Last edited by olaf_f; 06-29-2021 at 08:52 AM.
 
Old 06-29-2021, 09:01 AM   #5
TB0ne
LQ Guru
 
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 27,669

Rep: Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147
Quote:
Originally Posted by olaf_f View Post
To be honest, I included the distribution, it's version, hardware description - both motherboard and network card. Even the driver is known: bnx2x. What more would you like?
Yes, you did post all of those things, then posted the rest of the relevant information in your follow up.
Quote:
The IOMMU is enabled and detected by kernel. I wanted to post dmesg output and lspci -vvv but it is way too long for the limit of the message here and I don't see a possibility to attach a file.
You can simply post the relevant pieces of those files (in CODE tags). We don't need to see the entire files, just the pieces that are relevant.
Quote:
To business_kid:
SRIOV - single root input/output virtualization - it enables to create virtual functions on PCIe devices, so they can be shared with virtual machines in a secure way, without performance degradation. The support is required from PCIe motherboard hardware, BIOS, kernel, the driver and the PCIe device - in this case the network card.

sriov_numvfs - it is a file in /sys directory for the network card. It is used to enable virtual functions on these NICs. The "8" when written to this file should enable 8 virtual functions on this card, and they should be seen as 8 separate PCIe devices by the kernel.

As it fails, it indicates that either the card does something wrong or some element, eg. a PCIe bridge, on the motherboard is not initialized properly, most probably because BIOS handles something wrong - it is quite common on non-server motherboards.

Anyway - I have contacted the driver maintainer and they are trying to find out what is wrong. If/when I have an answer I'll post it here, maybe it will help somebody else.
Did you read/follow either of the guides you were given?
 
Old 06-29-2021, 09:13 AM   #6
olaf_f
LQ Newbie
 
Registered: Jun 2021
Posts: 4

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by TB0ne View Post
Yes, you did post all of those things, then posted the rest of the relevant information in your follow up.

You can simply post the relevant pieces of those files (in CODE tags). We don't need to see the entire files, just the pieces that are relevant.

Did you read/follow either of the guides you were given?
Yes I have, I spent 12 hours last day trying to find out what's wrong, before posting here.
When I get more info from the NIC manufacturer (they asked for some debug info) I'll post it back here.
 
Old 06-29-2021, 09:46 AM   #7
TB0ne
LQ Guru
 
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 27,669

Rep: Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147Reputation: 8147
Quote:
Originally Posted by olaf_f View Post
Yes I have, I spent 12 hours last day trying to find out what's wrong, before posting here.
We have no idea what you've done unless you tell us; I provided two links that address that issue; did you go through those (specifically, the Red Hat one?) Because again, you have to load the module with things enabled:
Code:
modprobe igb max_vfs=7
...and then write to the file. Again, as business_kid mentions, the command you posted will *NOT* do anything for you, since it's only going to write into a file in whatever directory you're in at the time. From the documentation, they specifically say:
Code:
echo 7 > /sys/class/net/enp4s0f1/device/sriov_numvfs
...to actually write to the correct file. Have you done those things???
Quote:
When I get more info from the NIC manufacturer (they asked for some debug info) I'll post it back here.
Great.
 
Old 07-14-2021, 04:40 PM   #8
olaf_f
LQ Newbie
 
Registered: Jun 2021
Posts: 4

Original Poster
Rep: Reputation: Disabled
Hi everybody,

FYI, yes I was writing to the right file.
The problem is solved.
It was caused because not everything in BIOS was configured correctly:
I had IOMMU and SR-IOV enabled.
The ACS and ARI options were in a weird place in BIOS and I didn't find them earlier.
They were set to [Auto], when I set both of them to [Enabled] it worked.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Is Asus Prime X570-Pro motherboard (New Egg N82E16813119196) Compatible with Linux Distributions? OLD-Jim Linux - Hardware 2 08-01-2019 06:07 PM
Ryzen X470 boards & Linux kernel 4.15+ incompatibility? Crotalid Linux - Hardware 2 12-21-2018 09:31 PM
[SOLVED] High temperature on k10temp-pci on X470 board RubbelDeCatc Linux - Hardware 4 06-06-2018 09:58 AM
Centos 7 systemd with sriov szboardstretcher Linux - Server 1 11-01-2016 04:37 PM
IBM NetXtreme BCM5751F Ethernet card not found dabump SUSE / openSUSE 0 09-13-2005 02:42 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 11:20 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration