-
nikolam
Hi, I have RTL8168H (pciex10ec,8161)not working with the driver on illumos/SmartOS and RTL8111C (pciex10ec,8168) network card working. Are they really that different and 8161/RTL8168H have no driver under illumos, or is it just an PCI-e ID to be mapped to driver.
-
nikolam
I used to add PCI id to some file , back on OI, for a wireless card to start working. maybe i could do the same if ' rge ' driver actually works with it , until it is fixed in illumos or SmartOS
-
Woodstock
well, you can test that hypothesis by running "update_drv -a -i pciex10ec,8161 rge"
-
nikolam
Woodstock, great :) thanks. rge recognized the card (again) and it is seen in dladm show-phys
-
Woodstock
nikolam: if it also works, you can file a feature request, and if you feel up to it you can even modify usr/src/pkg/manifests/driver-network-rge.p5m to include the new pci id by default and post it for review :)
-
nikolam
Of course, because network card is not initialized, because it were not attached to rge on boot
-
nikolam
Obviously I would need also some functionality testing, e.g. making the change permanent in current install for testing
-
Woodstock
it's permanent in your BE after you ran update_drv
-
nikolam
sure Woodstock I am in SmartOS and I boot from USB drive usually and I think root is read only if booting from HD / piadm . Maybe I can test on other machine with omnios and beadm.
-
Woodstock
ok, on SmartOS this won't persist, of course :)
-
tsoome_
if it appears to work, tests are good, then we can commit the change to gate and smartos will get it from there.
-
jbk
-
jbk
(or maybe coupled with a couple of statements to clamp the result
-
jbk
hrm.. i don't suppose any sun alumni might know what 'tigershark' might be referring to?
-
jbk
this is odd.. panic in tem because the STREAMS queue seems wrong
-
jbk
it's showing a part of the iphelper module
-
richlowe
think tigershark is an FC adaptor
-
richlowe
rather than anying upstream of one
-
richlowe
but that's from 3 bugs referring to it by name
-
jbk
ok.. that makes sense..
-
jbk
digging into the emlxs driver
-
jbk
and there's a lot of '#ifdef x86' that seems like it's unnecessary
-
richlowe
got a link?
-
jbk
(also a few other head scratchers, like spawning a thread to asyncronously send a packet -- feels like a taskq would be better)
-
richlowe
the FC drivers (and indeed the software) that came out of NWS are of a different standard
-
richlowe
(sorry jmcp, if you're still here somewhere)
-
jbk
hrm.. i suppose links to my local opengrok instance are probably not helpful :)
-
richlowe
well if the file and line number match they work :)
-
jbk
-
richlowe
yeah, that doesn't make sense to me, wow
-
jbk
since i'm guessing we're unlikely to ever get any future source from emulex, it'd be nice to get rid of some of the ifdefs that'll never change
-
jbk
(e.g. I think we can safely assume MSI and MSI-X support)
-
richlowe
yeah, this came in with the NWS merge
-
richlowe
which probably means we have no actual memory of why
-
richlowe
I suppose, thinking more like sommerfeld tends to from first principles, there exists the possibility that emlxs on sparc was excusively the sun-branded parts with FCode, and they're using the ifdef to imply that
-
richlowe
but that's my only distant guessk
-
sommerfeld
not quite following the discussions but .. wow (all those magic constants!).
-
jbk
basically trying to dig into the driver to see if there's anything that might be limiting throughput
-
jbk
but hitting several 'that's odd' type things
-
jbk
my first thought was to see if we're maybe limiting the amount of resources we use
-
jbk
(perhaps based on a time where 2MB was an exhorbinant amount of memory)
-
jbk
i was hoping for maybe some kstats that might track that, but while there are kstats, they don't track that
-
jbk
(it also seems to use it's own pooled allocator)
-
richlowe
I'm not a very hardware person, but taking the comment at face value, I can't work out why you would ever do that, either.
-
jbk
well ISTR in the 32-bit x86 days there were some DMA limits that you didn't hit on sparc
-
jbk
but I _think_ those are mostly gone now on a 64-bit kernel
-
jbk
especially for most modern cards that don't have a small limit on what paddrs they can use for DMA
-
richlowe
but wouldn't you have different dma attributes, rather than two distinct code paths that treat the SGL differently, etc?
-
richlowe
is the sparc side breaking up the SGL on its own, and not letting the DDI do it, is that what it means?
-
jbk
i don't know (yet)