-
GrayJack
Happy New Year, everyone!!!
-
iprog4u
Happy New Year! @rmustacc, after actually following the instructions I was able to compile Illumos-gate under OmniOS using the /opt/onbld/env/omnios-illumos-gate template. What could I change in the illumos.sh to iterate towards building drivers for this NIC?
-
GrayJack
Does illumos have a more expanded documentations to F_QUOTACTL, F_REVOKE and F_HASREMOTELOCKS?
-
GrayJack
It seems to not be included in the fcntl manual page documentation
-
danmcd
iprog4u: Changing an existing NIC driver or building a new NIC driver?
-
iprog4u
Building a new one for Realtek 8125.
-
danmcd
So not modifying rge... okay. You'll need to create new source (usr/src/uts/common/io/<driver-name>)
-
iprog4u
Or modifying any other Realtek driver to include what is needed to get this one up and running. Pretty green to driver development.
-
danmcd
The rge(4D) driver has some realtek GigE parts. Lemme look up the 8125...
-
iprog4u
My understanding is it is fairly recent hardware. Was able to get their FreeBSD drivers working under 14.2. Not much else in the way of docs or spec material.
-
danmcd
Okay so it's a 2.5GigE realtek. I don't know enough about that device to know how close it is to the devices that rge(4D) supports.
-
danmcd
If it's an incremental change from say the 8169 & friends in rge(4D) you could alter rge to also support 8125. I've a feeling it might not be that simple, in which case you'll have to bring up a new driver.
-
danmcd
I don't know if other OSes fold their 8125 support into the same driver that supports 8169 and its peers or not.
-
iprog4u
While luck is generally on my side I would assume that it would not be in this case. Not a C expert but when I looked at the FreeBSD driver it did appear to be another version of existing hardware/drivers/not sure what correct nomenclature is there.
-
iprog4u
More specifically it seemed to be entries for the 2.5G but also for 1G and another one or two speeds.
-
danmcd
I see source for re(4D) that seems to match our rge(4D), but I saw no mention of the 8125 part.
-
danmcd
(Doing a fresh pull of my local freebsd git repo now just to be sure...)
-
danmcd
iprog4u: What driver drives 8125 in FreeBSD?
-
iprog4u
realtek-re-kmod -- I had to install the 2nd most recent package to get it to work.
-
iprog4u
100.something did not work but the one prior did.
-
danmcd
Oh hell...
-
iprog4u
Fun stuff eh?
-
danmcd
it's a driver from Realtek, not something with FreeBSD source you can poke around in...
-
danmcd
Yeah... that's gonna be special. :(
-
iprog4u
Correct and there is little to no info about on it.
-
iprog4u
Les sigh. With a small army of these mini-pc's one could build their own mini-cloud...if the NICs worked. So would it be better to just pick hardware that is supported or could one realistically embark on building this?
-
danmcd
Yeah... you want 2.5, get the Intel I225 or I226 (drivable with igc(4D)). Realtek's opacity makes Broadcom look open by comparison.
-
danmcd
For mini-PCs, there doesn't seem to be a lot of choice. (And like I mentioned, the Broadcom ones MIGHT not help you much either.)
-
danmcd
Sorry I can't be of more immediate assistance.
-
iprog4u
Lol, understood. One last shot, someone else looked into this:
illumos.org/issues/13729
-
fenix
→
BUG 13729: Driver issue with Realtek RTL8125 (New)
-
iprog4u
Specifically, "Take a look at $UTS/common/io/rge and notice that there are values for 8169, but none for 8125. You will need to examine what's there in rge_main.c, rge_chip.c, rge.h, and maybe more, and augment them with 8125 values. That will at least get you 1GigE support."
-
danmcd
YEah... that comment was from me.
-
iprog4u
Ha, just noticed the lineup of nicks there.
-
danmcd
I mean, if you can get rge to detect 8125 and treat it like one of the GigE parts, maybe you can at least get GigE?
-
danmcd
Maybe that's Good Enough for the short term? My advice there stands. Look for 8169 detection, and see if recognizing 8125 and acting like it's an 8169 will help?
-
danmcd
I can make NO promises there, however. HW vendors can be wily. :(
-
iprog4u
Well you were still very helpful and I appreciate the direction.
-
danmcd
Thanks.
-
gitomat
[illumos-gate] 17013 it is a new year for prototypes, 2025 -- Toomas Soome <tsoome⊙mc>
-
tsoome
/var/tmp cleanups are now covered with patches, should clean /tmp as well...
-
gitomat
[illumos-gate] 17011 ZTS: functional/mount scripts are not removing /var/tmp/testdir.X dirs -- Toomas Soome <tsoome⊙mc>
-
andyf
Thanks for cleaning all of those tests up tsoome.
-
tsoome
yw. we do need ability to probe (at least to the extent) the changes we need to have...
-
tsoome
ofc cleaning up leftovers is cosmetical:D
-
richlowe
but being able to use the test suite more easily is great
-
tsoome
at least to the point where re-reading those scripts will reveal stupid bugs
-
tsoome
like writing 32-bit ints to 64-bit ones:D
-
gitomat
[illumos-gate] 17005 ZTS: mmp_pool_destroy should remove MMP_DIR -- Toomas Soome <tsoome⊙mc>
-
andyf
Yeah.. I have a reasonable framework for spinning up a pretty large VM with a load of disks and running the ZFS testsuite now, but it's still a bit painful with some tests being a bit flakey.
-
andyf
and some of them just don't work in a VM anyway
-
tsoome
l2arc ones are all hit and miss, but l2arc updates need some prerequisites to land first.
-
tsoome
some mmp tests are just not ported and the reason is, there is chunk of code to produce mmp related kstats missing...
-
richlowe
who was it who was most looking into 2038 stuff?
-
richlowe
was that danmcd?
-
tsoome
# IPD 14 illumos and Y2038
-
richlowe
right, but writing the ipd and doing anything about it are sometimes different
-
tsoome
yep.
-
richlowe
it's got a bunch of large-scale thoughts, but nobody in there seems to have looked at time32_t consumers except UFS
-
richlowe
which is probably the least important of them
-
richlowe
(compared to lastlog, utmp being spicy, pci hotplug being confusing...)
-
richlowe
it looks like vHCI too
-
richlowe
and: ./uts/common/os/sunndi.c:781: (ndi_dc_return_ap_state) ap_state32.ap_last_change = (time32_t)ap->ap_last_change;
-
tsoome
nfsv3 nfslog.
-
richlowe
that last one might be SYSCALL32, actually, which are fine
-
richlowe
(the hotplug last_change isn't)
-
richlowe
tsoome: I think NFS is mostly syscall32-y too?
-
richlowe
or is it like UFS where the timestamps are explicitly 32bit?
-
tsoome
I was just browsing quick 'git grep time32_t' :)
-
richlowe
yeah, you have to click through to make sure it's not only for kernel supporting 32bit processes :)
-
richlowe
which have their own problems
-
richlowe
I was looking at things that screw even 64bit processes on 64bit systems, at least potentially
-
richlowe
because I think a lot of thinking so far has been they're pretty much fine
-
richlowe
(outside of utmp, lastlog, etc.)
-
richlowe
I'm not sure what some of this is doing with time32_t, it might not actually be storing _time_ in there
-
richlowe
which is its own can of worms :\
-
richlowe
and stuff like, the only thing I can find done with cn_last_change that's useful is it gets assigned to the (big enough) hp_last_change
-
richlowe
(you can blame alanc for making me look again)
-
alanc
-
richlowe
:(
-
alanc
-
richlowe
second one is cheating, I didn't even make it to /time.*32/ yet
-
alanc
btw, I believe
github.com/illumos/illumos-gate/blo…src/man/man3c/strftime.3c#L796-L798 is wrong, left over from before the move to zic version 2 expanded timestamps from 32 to 64-bit in zic files
-
alanc
oh, but that's because we fixed
illumos.org/opensolaris/bugdb/bug.html#!4246033 in snv_170, didn't realize it was so late
-
fenix
→ OpenSolaris issue 4246033: 64-bit mktime() with Olson zoneinfo timezones and dates past 1/19/2038 problem (Fix Understood)
-
alanc
Also, searches would be much easier if people wrote 2038 in commments instead of 2039:
github.com/illumos/illumos-gate/blo…mmon/fs/zfs/zfs_vnops.c#L3147-L3158
-
alanc
illumos.org/opensolaris/bugdb/bug.html#!4372494 should be a simple matter of converting to LP64
-
fenix
→ OpenSolaris issue 4372494: *find* find does not traverse directories warped into the future. (Defer)
-
alanc
-
fenix
→ OpenSolaris issue 4372497: *rm* rm does not remove files warped into the future. (Defer)
-
alanc
and just FYI
github.com/illumos/illumos-gate/blob/master/usr/src/head/shadow.h#L64 while 32-bit is days since 1970, not seconds, so you have ~5.8 million years before it runs out
-
richlowe
that is the same trick I worry some stuff is doing with an actual time32_t