SunFire V440 Quad gigabit ce1 won't run Gig

Hi there. My first time posting so apologies for any indescretions in advance. :o I've got two SunFire V440 servers running Solaris 5v10. Both have a quad Gigabit ethernet card fitted, both have the same symptom; that is, I can't get the first port ce1 to run Gigabit. Motherboard ports are ce0 and ce5. the quad card ports are ce1 - ce4 inclusive. Port ce2 runs Gig fine. (Haven't tried ports ce3 or ce4). When I configure ce1 for Gig it doesn't even show a green l.e.d. when I plug in the patch cable. The switch and patch cables are definitely good. Port ce1 work perfectly at 100Mb/s FDX on both servers.
I guess I'm missing a patch or something but all help appreciated. By the way I'm a Network Engineer, not a Solaris Admin so anticipate a high degree of noobness relating to Solaris and Servers. :frowning: Apologies in advance. Thanks, Andy.

Perhaps someone has configured ce1 to stick at 100Mb/s instead of auto-negotiating the speed/duplex mode.

What says:

ndd -set /dev/ce instance 1
ndd /dev/ce adv_autoneg_cap
grep ce1 /etc/system
grep ndd /etc/rc*.d/*

also make sure your switch is configured for autoneg! call your network guys and make sure it works. as a test you can maybe use the port which ce2 uses (login through console!).

good luck,
DN2

Hi jlliagre, output as requested from my server:

datanetnms4 > ndd -set /dev/ce instance 1
datanetnms4 > ndd /dev/ce adv_autoneg_cap
0
datanetnms4 > grep ce1 /etc/system
datanetnms4 > grep ndd /etc/rc*.d/*
/etc/rc0.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_log_file $i
/etc/rc0.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_log_size $logd_file_size
/etc/rc0.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_logging_on 1
/etc/rc0.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_logging_on 0
/etc/rc1.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_log_file $i
/etc/rc1.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_log_size $logd_file_size
/etc/rc1.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_logging_on 1
/etc/rc1.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_logging_on 0
/etc/rc2.d/S42ncakmod: # Set the default HTTPD door in NCA via ndd
/etc/rc2.d/S42ncakmod: /usr/sbin/ndd -set /dev/nca httpd_door_path \
/etc/rc2.d/S69inet:ndd -set /dev/ce instance 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_1000fdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_1000hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_100fdx_cap 1
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_100hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_10fdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_10hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_autoneg_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce instance 1
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_1000fdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_1000hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_100fdx_cap 1
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_100hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_10fdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_10hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_autoneg_cap 0
/etc/rc2.d/S94ncalogd: /usr/sbin/ndd -set /dev/nca nca_log_file $i
/etc/rc2.d/S94ncalogd: /usr/sbin/ndd -set /dev/nca nca_log_size $logd_file_size
/etc/rc2.d/S94ncalogd: /usr/sbin/ndd -set /dev/nca nca_logging_on 1
/etc/rc2.d/S94ncalogd: /usr/sbin/ndd -set /dev/nca nca_logging_on 0
/etc/rcS.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_log_file $i
/etc/rcS.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_log_size $logd_file_size
/etc/rcS.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_logging_on 1
/etc/rcS.d/K34ncalogd: /usr/sbin/ndd -set /dev/nca nca_logging_on 0
datanetnms4 >

---------- Post updated at 01:07 AM ---------- Previous update was at 12:59 AM ----------

Hi DukeNuke2,

The switch isn't configured for auto-neg, we set all our switches to FDX where the server interfaces are multi-speed capable. It stops them re-negotiating and messing up the comms. By the way I AM the Network Guy and yes, (as per my original post) the switch port and patch cable are known good. I have tried the network connection to ce2 in port ce1 with the same, non-operating, results. The network connection for ce1 works perfectly in ce2.
The server interface doesn't even show a green (physical) l.e.d. when I connect up the patch cable, when it's configured for Gig, which is what I find most confusing.

These lines look like your problem:

/etc/rc2.d/S69inet:ndd -set /dev/ce instance 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_1000fdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_1000hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_100fdx_cap 1  <-----
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_100hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_10fdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_10hdx_cap 0
/etc/rc2.d/S69inet:ndd -set /dev/ce adv_autoneg_cap 0

Of interest when setting up copper gigE:

I'm willing to bet that the number of vendors who pay to have labs test their gear outside of the IEEE specs is pretty close to zero.

Put the above into a script file to force autoneg from server end too.

That wouldn't allow Gb to work.

Simply comment out the very same lines and reboot.

From the CLI, why does this work:

ndd -set /dev/ce instance 2
ndd -set /dev/ce adv_1000fdx_cap 1
ndd -set /dev/ce adv_1000hdx_cap 0
ndd -set /dev/ce adv_100fdx_cap 0
ndd -set /dev/ce adv_100hdx_cap 0
ndd -set /dev/ce adv_10fdx_cap 0
ndd -set /dev/ce adv_10hdx_cap 0
ndd -set /dev/ce adv_autoneg_cap 0

and this doesn't?

ndd -set /dev/ce instance 1
ndd -set /dev/ce adv_1000fdx_cap 1
ndd -set /dev/ce adv_1000hdx_cap 0
ndd -set /dev/ce adv_100fdx_cap 0
ndd -set /dev/ce adv_100hdx_cap 0
ndd -set /dev/ce adv_10fdx_cap 0
ndd -set /dev/ce adv_10hdx_cap 0
ndd -set /dev/ce adv_autoneg_cap 0

Because you didn't screw up instance 2 with your rc2.d script. Please try jlliagre's advice "Simply comment out the very same lines and reboot. "

Ah right, so you're saying that the rc2.d scripts override the CLI commands?

Not really, no. Here are a few quotes from the book:

I gather that following the documentation is not your style, you don't seem too interested in the advice to turn on auto-negotiation. When I see language like the above, I do turn it on. I don't know what happens when you run without it. Good luck with the pause and clock mastership stuff. Since you're a network dude I assume you have it all under control.

Anyway here is another quote from the book...

So what happens if you do? Gosh, Andy, I don't know. But based on your report, I'm not missing much.