klange changed the topic of #osdev to: Operating System Development || Don't ask to ask---just ask! || For 3+ LoC, use a pastebin (for example https://gist.github.com/) || Stats + Old logs: http://osdev-logs.qzx.com New Logs: https://libera.irclog.whitequark.org/osdev || Visit https://wiki.osdev.org and https://forum.osdev.org || Books: https://wiki.osdev.org/Books
nyah has quit [Quit: leaving]
y0m0n has quit [Ping timeout: 248 seconds]
les_ has quit [Server closed connection]
les has joined #osdev
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
gog has quit [Ping timeout: 255 seconds]
heat has joined #osdev
heat_ has quit [Ping timeout: 258 seconds]
heat has quit [Read error: Connection reset by peer]
heat has joined #osdev
linkdd has quit [Server closed connection]
Turn_Left has quit [Read error: Connection reset by peer]
netbsduser` has quit [Ping timeout: 248 seconds]
Jari-- has quit [Ping timeout: 248 seconds]
thaumavorio has quit [Quit: ZNC 1.8.2 - https://znc.in]
thaumavorio has joined #osdev
[itchyjunk] has quit [Remote host closed the connection]
Hammdist has joined #osdev
skipwich has quit [Quit: DISCONNECT]
skipwich has joined #osdev
dh` has joined #osdev
AmyMalik is now known as MelanieMalik
stolen has joined #osdev
heat has quit [Read error: Connection reset by peer]
heat has joined #osdev
<zid> well that was fun, a just spider just walked across me, in the dark
<heat> ChavGPT, i defo see what you mean
<heat> the solaris internals books sound a bit circlejerky
heat has quit [Ping timeout: 248 seconds]
mcrod has quit [Server closed connection]
mcrod has joined #osdev
FireFly has quit [Server closed connection]
FireFly has joined #osdev
stolen has quit [Quit: Connection closed for inactivity]
grumbler has joined #osdev
<geist> now you're playing with POWER!
benlyn has quit [Ping timeout: 245 seconds]
benlyn has joined #osdev
GeDaMo has joined #osdev
kneskade has joined #osdev
benlyn has quit [Ping timeout: 248 seconds]
ThinkT510 has quit [Quit: WeeChat 4.0.4]
ThinkT510 has joined #osdev
grumbler_ has joined #osdev
grumbler has quit [Ping timeout: 248 seconds]
grumbler_ is now known as grumbler
grumbler has quit [Quit: Leaving]
grumbler has joined #osdev
<Hammdist> are any floating-point registers supposed to be preserved across system calls on aarch64?
Burgundy has joined #osdev
Left_Turn has joined #osdev
Turn_Left has joined #osdev
<Hammdist> where are the floating-point registers? https://elixir.bootlin.com/linux/latest/source/arch/arm64/include/asm/processor.h#L131 and for that matter, where are x0-x18? I'm stumped
kof13 has quit [Ping timeout: 252 seconds]
<Hammdist> ah the fp are in fpsimd_state
Left_Turn has quit [Ping timeout: 240 seconds]
<cloudowind> better than playing with magic
orccoin has joined #osdev
[itchyjunk] has joined #osdev
doppler has quit [Server closed connection]
doppler has joined #osdev
gog has joined #osdev
xenos1984 has quit [Read error: Connection reset by peer]
cloudowind has quit [Ping timeout: 255 seconds]
xenos1984 has joined #osdev
netbsduser` has joined #osdev
grumbler has quit [Quit: Leaving]
grumbler has joined #osdev
orccoin has quit [Ping timeout: 250 seconds]
kneskade has quit [Remote host closed the connection]
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 240 seconds]
stolen has joined #osdev
agent314 has joined #osdev
agent314 has quit [Ping timeout: 248 seconds]
agent314 has joined #osdev
agent314 has quit [Client Quit]
<netbsduser`> just having a look at the UDI specs out of curiosity
<netbsduser`> this thing is quite mad
pg12 has quit [Remote host closed the connection]
<Mutabah> quite
<Mutabah> but, it's quite well thought out to not make assumptions about the system
pg12 has joined #osdev
<netbsduser`> Mutabah: yes, as far as generic goes, i couldn't possibly imagine anything more so
<netbsduser`> the original backers of it are a who's-who of big vendors of the 90s as well, which makes me wonder why it never arrived in any commercial product other than UnixWare
heat has joined #osdev
goliath has joined #osdev
<heat> the solaris struct page was huuuuuuuuuuuuuuge
<heat> the structure according to the book is 160 bytes
<Mutabah> netbsduser`: at a punt, it was becuase it didn't get enough buy-in from the really big names to make it worth using as a primary target
<Mutabah> maybe also because it required almost open-source drivers?
<Mutabah> I think? fuzzy memories, it's been a long time since I implemented it
<netbsduser`> Mutabah: i did read somewhere that a lot of OS vendors trashed it as something that would defeat their competitive advantage of having lots of drivers written for them
<Mutabah> that makes sense
<netbsduser`> and we all know what gnu stallman's opinions were on the matter
<netbsduser`> heat: you think that's bad, tru64's was 192 bytes
<netbsduser`> granted they used 8kib pages on their (only?) port for alpha, so effectively it's less
<heat> 160 here on my estimate
<heat> i dont know how large kmutexes are and shit but i remember you mentioning a size opt where it's just a pointer so i went with that
<heat> BUT it may be wrong for those data structures and it's even larger
<netbsduser`> a kmutex is indeed just a single 64-bit field
<ChavGPT> get illumos and check
<netbsduser`> windows' equivalent is apparently 48 bytes which i dislike
<netbsduser`> it's more respectable to be aligned with the cache line
<heat> >get illumos
<heat> i give up
<heat> linux is 64 bytes IIRC
<ChavGPT> it is not hard
<netbsduser`> dragonfly's is 128
<netbsduser`> it's interesting that using larger pages seems to be quite uncommon today
<ChavGPT> linux is doing it
<ChavGPT> transparent
<netbsduser`> i mean the baseline page size
<heat> THP is annoying and usually disabled in prod
<heat> because Intel Sucks
<netbsduser`> linux torvalds worships at the altar of the holy 4kb and storms off the lkml in a fit of pique if anyone suggests bigger
<heat> what
<heat> why would mr linux have any input on that
<heat> thank god mr linux has no input on those things
<netbsduser`> apple i think are using 16k pages nowadays on their aarch64 port
<ChavGPT> linux is creating huge pages rigt now
<ChavGPT> for big enough mappings
<ChavGPT> 2M
<heat> linux is slowly getting support for blocks larger than the page size
<heat> and larger page sizes getting used in the page cache
<heat> (folioooooooooooooooooooooooooosssss)
<netbsduser`> i don't know the first thing about linux's version of transport huge pages but i know that they got trashed by a senior freebsd guy
<heat> ruh roh
<heat> does it mean it's good?
<netbsduser`> he complained it was too eager
<netbsduser`> and it does seem that people complain about linux's thp a lot
<ChavGPT> mate
<ChavGPT> freebsd zaelots trashing something in linux is cliche
<ChavGPT> and mostly bullshit
<ChavGPT> example: there is *NO* defrag for pages in freebsd
<ChavGPT> and due to poor quality of hte allocator the kernel will very quickly fragment them into oblivion
<ChavGPT> meaning the kernel stops being able to grant new super pages within days of booting
<ChavGPT> i'm guessing the senior freebsd dev neglected to mention this bit
<ChavGPT> when users complain about linux thp it is about khugepaged -- their defrag thread
<ChavGPT> freebsd does not have khugepaged eating cpu time only because it does not have anything of the sort to begin with
<ChavGPT> despite desperate need to use it
goliath has quit [Quit: SIGSEGV]
heat has quit [Read error: Connection reset by peer]
heat has joined #osdev
heat has quit [Remote host closed the connection]
heat has joined #osdev
<gog> meow
Griwes has quit [Server closed connection]
<heat> grog smash
Griwes has joined #osdev
goliath has joined #osdev
<Ermine> gog: may I pet you
<gog> ye
<gog> i need to go to the grocery i think
<gog> it's sunny out tho
goliath has quit [Quit: SIGSEGV]
SGautam has joined #osdev
qookie has quit [Server closed connection]
stolen has quit [Quit: Connection closed for inactivity]
qookie has joined #osdev
* Ermine pets gog
rwb has quit [Server closed connection]
rwb has joined #osdev
goliath has joined #osdev
xenos1984 has quit [Ping timeout: 248 seconds]
xenos1984 has joined #osdev
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
xenos1984 has quit [Ping timeout: 258 seconds]
xenos1984 has joined #osdev
<zid> taking you all with me
<gog> you make ai, you wash your hands
Hammdist has quit [Ping timeout: 245 seconds]
<GeDaMo> Are those teeth in the ears? :|
<zid> what, his ears are on his *head* GeDaMo
<zid> his teeth are in his *mouth*
<GeDaMo> Oh, right, it looked like the black line at the bottom was the mouth and the bits on the side were the ears :P
<zid> how old are you GeDaMo
<GeDaMo> 0x3a :|
<zid> too old for rocko's modern life I guess
<GeDaMo> I'm aware of it but never watched it
<zid> I'm like.. 0x22?
<zid> GeDaMo: You're basically dead of old age at this point, can I have half your stuff when you die?
<GeDaMo> 🎜 Will you still need me, will you still feed me, when I'm hex four oh? 🎝 :P
<zid> showing your age just by knowing that song
<GeDaMo> "Who are the Beatles?" "They wrote all the songs on Maggie's baby records"
<zid> Chart topper of.. 1967
<zid> You might think that was 25 years ago, but I'm afraid to say it was 56
<zid> It was 1980 that's was 20 years ago.
<GeDaMo> You wish :P
<zid> When her DOB starts with a 2
<heat_> imagine your DOB starting with a 2 LMAO
<zid> yea heat, lmao right
<GeDaMo> I wasn't given a Covid vaccine this year because I'm too young :P
<zid> Sorry that's because I ate them all
<zid> mrna tastes like cheese strings
elastic_dog has quit [Ping timeout: 246 seconds]
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
elastic_dog has joined #osdev
vdamewood has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
heat_ has joined #osdev
flom84 has joined #osdev
<heat_> i have a bug that hides itself with kasan is around
<heat_> yay
<zid> sounds perfect
<zid> you found a fix
heat_ has quit [Remote host closed the connection]
heat_ has joined #osdev
<geist> perfect organism
<ChavGPT> heat_: grep CONFIG_DEBUG_PREEMPT in your kernel config
<ChavGPT> arch was it?
<heat_> yes
<zid> talking about me again
<heat_> not set
<heat_> ChavGPT,
<ChavGPT> aight thanks
<heat_> damn i think some really unfortunate alignment of conditions (including buggy logic and uninitialized data) caused that bug
<heat_> since KASAN never reuses memory up to a point, i never saw it under KASAN
<ChavGPT> pretty weird tho
<ChavGPT> kasan is supposed to make these bugs *easier* tofind innit
<heat_> no
<heat_> that would be kmsan
<heat_> which I do not have yet
<heat_> the funny part is that I think this overran the stack and redirected my execution to some other member function of the class xD
heat_ has quit [Remote host closed the connection]
heat_ has joined #osdev
<ChavGPT> rewrite in rust
<ChavGPT> don't deal with kmsan
<heat_> i've had the urge to rewrite bits in C but the interop is going to be nasty
kof13 has joined #osdev
<ChavGPT> mofo
<ChavGPT> add assert.h to main.c in your fork of will-it-scale
<heat_> what for
<heat_> oh, i have an assert
<heat_> how the fuck is that compiling then
<ChavGPT> header mess is pulling this in on your distro
<ChavGPT> not a rare occurence
<heat_> also compiles on musl
<ChavGPT> does not compile on freebsd
<ChavGPT> :X
<ChavGPT> just patch it mofer, nothing to discuss here
<heat_> yeah
<heat_> im just curious
<heat_> thats all
<heat_> OH i have a local fix lmao
<ChavGPT> it does buld for me on debian
<ChavGPT> without the fix
<ChavGPT> so...
<heat_> probably due to hwloc?
<ChavGPT> this is so not worth figuring out i don't even know how to to describe it
<heat_> the l in ChavGPT stands for lame
flom84 has quit [Remote host closed the connection]
<heat_> ...wait
<ChavGPT> lmao
<ChavGPT> fail
<ChavGPT> how is your read of solaris internals gong
<ChavGPT> feeling respect for the kernel team yet
<zid> what does chav mean in french.. half a horse?
<heat_> ChavGPT, genuinely lost brain cells
<ChavGPT> WHAT
<ChavGPT> enteprise kernel motherfucker
<ChavGPT> mission critical stuff
<ChavGPT> btw heat grep APPARMOR please in kconfig
<heat_> CONFIG_SECURITY_APPARMOR=y
<heat_> # CONFIG_SECURITY_APPARMOR_DEBUG is not set
<heat_> CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y
<heat_> CONFIG_SECURITY_APPARMOR_HASH=y
<heat_> CONFIG_SECURITY_APPARMOR_INTROSPECT_POLICY=y
<heat_> CONFIG_SECURITY_APPARMOR_EXPORT_BINARY=y
<heat_> CONFIG_SECURITY_APPARMOR_PARANOID_LOAD=y
<heat_> # CONFIG_DEFAULT_SECURITY_APPARMOR is not set
<ChavGPT> :[
<ChavGPT> fckwads
<ChavGPT> did you know apparmor is PESSIMAL
<heat_> yeah but it's not even on
<heat_> it's just compiled in
<ChavGPT> it eats cpu mate
<heat_> ANYWAY the solaris internals 1st edition sucks arse
<heat_> literally garbage
<ChavGPT> 2nd edition totally does not?
<ChavGPT> (is there one?)
<heat_> the 2nd edition has more details and is passable but it circlejerks on itself
<heat_> yeah 2nd is for solaris 10
<ChavGPT> i don't remember what i read
<ChavGPT> i do remember self-aggrandizing
<ChavGPT> shite all over
<ChavGPT> which was quite funny give how low quality the supposed greatness is
<heat_> when i read "network stack" and "STREAMS" in the same sentence i was about to meme over here
<heat_> BUT
<ChavGPT> oh yeh they have a chapter
<ChavGPT> how they totally make it scale bro
<heat_> it was a self-agrandizing subchapter on how that is bad and they "redid" it
<ChavGPT> but wont bother you with details
<heat_> and, you know, that's ok, i'd take this kind of rhetoric if the authors weren't literally Sun people too
<ChavGPT> zid: 9/10
<heat_> like the SVR4 book talks about SVR3 vs SVR4 sometimes but it's not circlejerking
<ChavGPT> heat_: did i mention something about these books lying
<heat_> btw look at this thing i found a few hours ago: https://arxiv.org/pdf/1605.05810.pdf
<heat_> it's weird and low-effort-ish but also written in a "commenting-netbsd-sauce-code" style?
<heat_> like lions v6 but SungWon Chung netbsd 1.6
<netbsduser`> i like STREAMS
<netbsduser`> anybody in this channel doesn't have a layered i/o system can leave now
heat_ has quit [Quit: Leaving]
<CompanionCube> but netbsd doesn't do STREAMS, does it?
heat_ has joined #osdev
<heat_> SIKE mofo you thought
<netbsduser`> CompanionCube: some day...
<heat_> but does it do doors?
<CompanionCube> you know what would be really funny
<ChavGPT> heat_: try D&I of freebsd
<CompanionCube> a shitpost driver implementing doors on windows
<ChavGPT> heat_: absolutely *terrible* book
<netbsduser`> i think windows' lpc might have resembled doors at one point possibly
<heat_> we already have that on freebshitd
<heat_> ChavGPT, why?
<ChavGPT> oh it's "we" now?
<netbsduser`> but now it's asynchronous which is an interesting development (opposite of the usual trajectory)
<ChavGPT> contenst was questionable already for the state from the 90s
<ChavGPT> and it was not updated for the most part
<ChavGPT> for the second edition released aroudn 2010
<netbsduser`> anyway i can't be dealing with the C style they use on windows
<ChavGPT> it's basically bogus
<CompanionCube> heat_: that has 'we ported mach stuff and launchd to freebsd for reasons' vibes
<heat_> nooooooooooo
<heat_> mach stuff and launchd is a whole other vector of shithousery
<heat_> this is the solaris lovers' corner
<netbsduser`> CompanionCube: the horse bolted on that one over 3 decades ago when 4.4bsd imported mach vm
<CompanionCube> netbsduser`: no i meant e.g. this ': The TrueOS fork of FreeBSD 10 has launchd running as init and a JSON-aware launchctl utility, along with notifyd, libdispatch and ASL integrated. This work has also been forward-ported to FreeBSD -CURRENT. FreeNAS 10, which is also based on FreeBSD 10.1, will be using launchd and a host of other tools ported from OS X / iOS. It has used the original, and latest, Apple
<CompanionCube> sources and ported them along with MACH IPC. '
<netbsduser`> CompanionCube: and now trueos is gone
<netbsduser`> i know hubbard was very keen on this
<CompanionCube> yup, aren't they a linux distro now?
<netbsduser`> that FreeBSD X initiative
<netbsduser`> i think they did try to spin off a linux distro but i can't find any mention of it now
<netbsduser`> https://beanpole135.github.io/profile-website/project-trident seems it also died a death
<heat_> trueos is one of the operating systems of all time
<gog> hi
* ChavGPT high fives gog
<ChavGPT> ix systems is moving away from freebsd
<CompanionCube> oh?
<ChavGPT> at least a year now
<ChavGPT> they have a zfs nas on linux
<ChavGPT> the one on freebsd is now legacy
* gog prr
<zid> I believe the response is 'owo'
SGautam has quit [Quit: Connection closed for inactivity]
netbsduser has joined #osdev
netbsduser has quit [Ping timeout: 240 seconds]
<heat_> ChavGPT, bruv u familiar with the linukz vfs path for write()?
<ChavGPT> nope
<heat_> rip in pieces
<heat_> these fuckin codepaths are confusing
<heat_> and locks and shit
<ChavGPT> :d
<heat_> and in theory there's a possibility for something cool to happen, where writes that are restricted to a single folio on Some Filesystems(tm) could just lock the folio and be done with it
<heat_> so you would *not* need O_DIRECT to unserialize writes
vdamewood has quit [Quit: Life beckons]
grumbler has quit [Quit: Leaving]
Left_Turn has quit [Read error: Connection reset by peer]
Burgundy has quit [Ping timeout: 246 seconds]
V has quit [Server closed connection]
V has joined #osdev