Mellanox ConnectX-3 ejectable

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

weust

Active Member
Aug 15, 2014
353
44
28
44
I bought a few Mellanox ConnectX-3 recently and really like them.
Two are in my FreeBSD server and one in my Windows 10 desktop.

The one in my desktop is a bit odd, or Windows is screwing with me.
In device manager nothing shows off, but for some reason it shows under the "Safely Remove Hardware and Eject Media" System Tray part.
Almost as it is a USB device.

I know this can happen with SATA drives sometimes and that through the registry your can make it plugged to Internal Port by adding a key, but I can't find it for this card.

Anyone seen this before?
 
  • Like
Reactions: nikalai

necr

Active Member
Dec 27, 2017
151
47
28
124
Nothing in Network Adapters? What about System Devices? What does ibstat show after WinOF installation? What F/W version does mst report?
 

weust

Active Member
Aug 15, 2014
353
44
28
44
It shows in Network Adapters just fine.

I will have to check with ibstat, but the firmware is the most recent one.
Will check tonight when I get home from work.
 

weust

Active Member
Aug 15, 2014
353
44
28
44
With "nothing shows off" I meant no exclamation marks anywhere or other unusual stuff.
My cards are 10GbE only card, so can't choose for Infiniband, afaik.

How is it expected to be able to eject a PCI-E card?
 

weust

Active Member
Aug 15, 2014
353
44
28
44
Me neither with any network card. I've seen it with a SATA HDD I had in my previous setup.
Something to do with the SATA controller port, iirc.
And there's a logical explanation for too, but here?

Of course I'm careful now when ejecting USB devices, but it's just wrong and I want it fixed.
 

necr

Active Member
Dec 27, 2017
151
47
28
124
I've checked again - on W10 1903 build 18362.476, OFED 5.50.14688 this is no longer the case. Previously, both CX2's and CX3's were ejectable for me.
 

weust

Active Member
Aug 15, 2014
353
44
28
44
I am running Windows 1909 now and still have it.
Need to check the link from klui. I read it just need to check if I can use it.
 

fohdeesha

Kaini Industries
Nov 20, 2016
2,727
3,075
113
33
fohdeesha.com
Are you running the latest mellanox driver package? That would be my first thing to try, they might have fixed it in previous versions by now
 

weust

Active Member
Aug 15, 2014
353
44
28
44
I forgot the exact reason, but I think I reverted back to one coming with Windows 10 because of issues or something weird that doesn't apply to using a desktop.
I would have to redo it again to remember what I ran in too.

But I can't imagine this being a driver issue?
 

weust

Active Member
Aug 15, 2014
353
44
28
44
Well, 1909 still shows the card as eject-able, so I read the link about the VMware NIC issue and applied it to my situation.

Below is my PowerShell script with it's instructions if anyone wants to know how I did it.
I didn't make it a batch file because I find that easier. All in one file instead of using a batch file with an external .reg file.

The value is important as it needs to be 4 lower then the default.
So, when using regedit it showed a hex value of 14 which I edited to 10.
But, using Get-ItemProperty it shows the value in decimal, meaning that after editing it shows 16.
Just be aware of this!

I added a startup script to the Local Group Policy to makes things easy (at least for me, experience wise).

# Don't let the Mellanox ConnectX-3 be ejectable.

# Place the script in: C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup
# Add a PowerShell Startup script under "Computer Configuration\Windows Settings\Scripts (Startup/Shutdown)"
# Select this script.

Set-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Enum\PCI\VEN_15B3&DEV_1003&SUBSYS_005515B3&REV_00\E41D2D0300136AA000\' -Name "Capabilities" -Value "16"
Thanks for the help, everyone!
 
  • Like
Reactions: brendantay

brendantay

Member
Aug 12, 2015
128
18
18
Australia
Well, 1909 still shows the card as eject-able, so I read the link about the VMware NIC issue and applied it to my situation.

Below is my PowerShell script with it's instructions if anyone wants to know how I did it.
I didn't make it a batch file because I find that easier. All in one file instead of using a batch file with an external .reg file.

The value is important as it needs to be 4 lower then the default.
So, when using regedit it showed a hex value of 14 which I edited to 10.
But, using Get-ItemProperty it shows the value in decimal, meaning that after editing it shows 16.
Just be aware of this!

I added a startup script to the Local Group Policy to makes things easy (at least for me, experience wise).



Thanks for the help, everyone!
Just wanted to say thanks mate! I've managed to ignore it without it bothering me too much but lately with using usb devices a lot apparently I ejected my Mellanox and that pushed me to find a fix. STH to the rescue!
 
  • Like
Reactions: nikalai