-
Smithx10
Well I got the GCC message to not have two -lpcaps and now its complaining about undefined symbols
gist.github.com/Smithx10/7da0e300509930560eacc2fd7b4b99dc
-
jbk
you should be able to see them, but i think the problem is that you can't tell which physical link the frame arrived on in an aggr
-
Smithx10
So when they are in the aggregate its possible when i Pcacp on iface0 ill get iface1s ToR frame
-
Smithx10
linking is frustrating :)
-
Smithx10
I diiiidddd itttt woowoooooo hahaha
-
Smithx10
jbk: it looks like all of the interfaces are consistently getting the same info from ToR , gonna verify it with what we know from the switch dump.
-
Smithx10
Quick Sanity heck here..... using libpcap and setting a bpf to "ether proto lldp" shouldn't kill my box cpu / network perf right?
-
sommerfeld
Smithx10: seems unlikely
-
Smithx10
connecting with libpcap and iterating over every frame would probably increase load yea? Or am I paranoid ?
-
sommerfeld
a little, yes. really depends on how much margin you have on the system. bpf shouldn't wake up userland unless the packet filter matches.
-
tsoome
sigh. zpool destroy does unmount /var despite of /var/run mount :(
-
tomww
win 23
-
andyf
danmcd - thanks, I'll take a look. Those cv_signal() calls on proc_pageout->p_cv should be broadcasts now there are multiple scanner threads, and the macro should be used more widely as it is in SmartOS. I'll do a followup.
-
gitomat
[illumos-gate] 15916 bhyve upstream sync 2023 September -- Andy Fiddaman <illumos⊙fn>
-
danmcd
THank you @andyf --> I'll hold off on upstream merges for tomorrow's SmartOS release branch. I can help with the followup.
-
jclulow
tsoome: Did you "zpool destroy -f" ?
-
tsoome
no
-
jclulow
It probably didn't do the force unmount then
-
tsoome
its /opt/zfs-tests/tests/functional/rootpool/rootpool_002_neg
-
jclulow
I think -f also ends up skipping things like the sync() -- see #16128
-
tsoome
it is supposed to try to destroy rpool, and fail + recover, however, it still does manage to unmount /var
-
tsoome
and we have tempfs mount in /var/run ....
-
jclulow
Oh, you're saying it _shouldn't_ unmount
-
jclulow
ok
-
jclulow
That's sad haha
-
tsoome
yes, it should have refused to.
-
jclulow
Yeah I understand now
-
jclulow
I wonder why it was able to do that
-
tsoome
and, I havent checked what did happen with /var/run - was it orphaned and still present in mnttab or what...
-
tsoome
it certainly was not listed with df
-
jclulow
Maybe it wasn't actually mounted?
-
tsoome
it was.
-
tsoome
we get it mounted early (filesystem/minimal) and we basically can not unmount it because init has open pipe there
-
tsoome
unless with force
-
sommerfeld
you have /var set up as a separate filesystem on this test machine?
-
tsoome
yes, rpool/ROOT/openindiana-2024:01:09/var, otherwise it would be no problem:)
-
tsoome
well, otherwise it would not have revealed the problem.
-
jclulow
I think that's probably not a common configuration
-
jclulow
from what I have seen
-
jclulow
I assume the installer did not do it for you:?
-
tsoome
I'm not really sure tbh, let me check other host
-
tsoome
hm, my other OI also has separate var, I guess oi installer does offer the option, I do not think I cared to do manual change there:D
-
tsoome
oh, it seems I was wrong, it is /opt/zfs-tests/tests/functional/rootpool/rootpool_003_neg making this mess.
-
sommerfeld
so it was a destroy -f ..
-
sommerfeld
(zfs destroy -f at least)
-
antranigv
question: can I bootstrap illumos from scratch using something like hex0, or a self-bootstrapped tcc?
-
tsoome
it is zfs rename -f
-
tsoome
antranigv of course.... but since no one probably has done it, we do not really know:D
-
antranigv
tsoome looooool
-
antranigv
okay, we're gathering a team here with govt funding to have a bootstrappable linux. I've pushed in to also try FreeBSD and illumos and they agreed
-
antranigv
so I really need some guides for that
-
antranigv
I know that tcc can't compile FreeBSD
-
tsoome
we do depend on list of compiler features
-
antranigv
but maybe I can use tcc to compile gcc or llvm, and then compile a modern version of gcc/llvm and then compile illumos and FreeBSD
-
antranigv
same here :(
-
rmustacc
If you were trying to go that way, I would use whatever your tcb is to bootstrap a gcc.
-
rmustacc
And related.
-
antranigv
rmustacc sorry, not familiar with the term, tcb?
-
rmustacc
trusted compute base
-
rmustacc
Basically start with the thing you trust or want to use (say tcc in this case) and build things incremetnally to get to a gcc.
-
sommerfeld
the set of software (and hardware) which must be correct for the system's security guarantees to hold.
-
antranigv
ohh okay, my brain was in a different context
-
antranigv
yes, I am able to reach gcc 4.8
-
jimklimov
illumos (-core at least) generally used specially patched gcc, like gcc-4.4.4-il and certain later versions
-
antranigv
I know I can use gcc to compile and get old FreeBSD. I wonder if I can build some older versions of illumos as well
-
sommerfeld
(if you're being particularly picky about this you'll be looking at things like keyboard firmware...)
-
rmustacc
You can, or you can use gcc 4.8 to build gcc7/gcc10
-
rmustacc
But I think there are probably other assumptions here like what system are you starting on that you're running tcc on.
-
antranigv
that is what i don't know where to start...
-
antranigv
(yet?)
-
jimklimov
yeah, scrape chips layer by layer to make sure all the transistors match the blueprint ;)
-
rmustacc
I don't know how to advise you there as it really depends on what your goals are.
-
jimklimov
taking a step back: AFAIK we've long celebrated building "illumos on illumos" (might be even more distro specific); do we currently support (cross?-)building illumos on some other system?
-
rmustacc
No, not really. It's not an explicit project goal.
-
rmustacc
As we rely on using illumos tools to build and execute it (e.g. our ld, etc.).
-
antranigv
rmustacc well the end goal is to have a system that can be "trusted". trusted in the sense that we've built everything from scratch. we're gonna start with hex0, then m2, then tcc, etc etc
-
rmustacc
Sure, but what are you starting on?
-
rmustacc
Presumably something has to run hex0 to create its block.
-
antranigv
rmustacc yes. the current team has used Ubuntu and... Gentoo. they "felt" safe since they compiled gentoo from scratch, but I think its the same scenario there.
-
rmustacc
Or is that you're starting assuming something you trust has built hex0?
-
rmustacc
For your own sanity you have to assume something or it's a very deep well.
-
antranigv
can I build a hardware system that generates hex0 on the hardware and I can scp(?) it? maybe
-
antranigv
it's a very deep well indeed
-
jimklimov
well, at some point certain models of Sun pizza-boxes were trusted in Russia since all the chip blueprints were provided, logically analyzed, and actual HW scraped to make sure it fits
-
antranigv
o.O
-
jimklimov
and then the OS sources were given in pre-OpenSolaris times (sol9, maybe 8?) for similar checks
-
jimklimov
that gave a bit of "peace of mind" that allowed paper-ware stamp of security
-
jimklimov
so the servers were allowed into some ministries etc.
-
sommerfeld
another mechanism that people use to build trust is reproduceable builds - do you get the exact same set of executables out of builds on N different systems that were put together via different paths.
-
jimklimov
surprisingly, R280's with a LOM card that included a PCMCIA cellular modem made the cut - too nice to pass by for very remote areas :)
-
antranigv
sommerfeld that doesn't work on some systems like macOS btw, because Mach-O puts has a UUID
-
antranigv
we've had that issue when we were porting our compiler to macOS
-
antranigv
but I guess that's not our goal anyway. so yes. need to make sure that checksums are always the same
-
jimklimov
"different paths" huh... is it even possible to coerce say gcc and clang to build binary identical products?
-
sommerfeld
antranigv: yes, you sometimes need to define "same" in special ways (for instance, wsdiff ignores ELF timestamps)
-
sommerfeld
jimklimov: need to take one step further back -- a gcc built with clang should hopefully generate the same code as a gcc built with gcc.
-
antranigv
this chat is a lot more active (And technical) than I thought. maybe I should spend more time at #illumos.
-
jimklimov
;)
-
jimklimov
me too, got too pre-ossupied with other life stuff so only pop here once in a few weeks :(
-
antranigv
my main "issue" is that my company is completely FreeBSD based and we have no "need" to move to illumos, altho our income is completely based on ZFS and DTrace
-
jimklimov
you can argue at least for the cause of "shadow builds" or similar concept
-
jimklimov
different toolkits and systems expose or ignore different flaws
-
jimklimov
generally newer is better, but with NUT I occasionally have relevant hits from some older systems in the build matrix like CentOS6 or Solaris 8 that newer ones neglrected to mention
-
jimklimov
at the very least, building same code with different generations of GCC and CLANG is helpful to ensure portability and weed out assumptions from PRs; doing that (and running tests) on different CPUs (bitness, endinanness) is too
-
jimklimov
but even so, default build settings for something that claims to be similar versions of, say, gcc in Linux, OI or OpenBSD differs a lot by output and bugs found.
-
otis
antranigv: you are lucky that you are not forced to use linux and docker, then. no?
-
jimklimov
just because different distros seem to have different priorities, security-wise etc.
-
antranigv
otis I've been told that I'm harsh towards some people and technologies, so I will answer with "no comment"
-
jimklimov
:D
-
jimklimov
- You crashed Dad's car! What did he say?
-
jimklimov
- Can I omit the bad words? He was diplomatically quiet and ominous.