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
goliath has quit [Quit: SIGSEGV]
gildasio has quit [Remote host closed the connection]
gxt_ has quit [Remote host closed the connection]
gildasio has joined #osdev
gxt_ has joined #osdev
Matt|home has quit [Quit: Leaving]
jack_rabbit has joined #osdev
ramenu__ has quit [Ping timeout: 260 seconds]
lentement has joined #osdev
lentement has quit [Ping timeout: 256 seconds]
jack_rabbit has quit [Ping timeout: 264 seconds]
ramenu__ has joined #osdev
thinkpol has quit [Remote host closed the connection]
thinkpol has joined #osdev
netbsduser` has joined #osdev
netbsduser` has quit [Ping timeout: 256 seconds]
masoudd has joined #osdev
netbsduser` has joined #osdev
lentement has joined #osdev
gog has quit [Ping timeout: 246 seconds]
lentement has quit [Ping timeout: 256 seconds]
netbsduser` has quit [Ping timeout: 264 seconds]
navi has quit [Quit: WeeChat 4.1.2]
skipwich_ has quit [Quit: DISCONNECT]
skipwich has joined #osdev
ski has quit [Ping timeout: 260 seconds]
heat has quit [Ping timeout: 260 seconds]
ramenu__ has quit [Ping timeout: 264 seconds]
edr has quit [Quit: Leaving]
netbsduser` has joined #osdev
nur has joined #osdev
netbsduser` has quit [Ping timeout: 268 seconds]
lentement has joined #osdev
lentement has quit [Remote host closed the connection]
lentement has joined #osdev
jack_rabbit has joined #osdev
lentement has quit [Ping timeout: 268 seconds]
netbsduser` has joined #osdev
netbsduser` has quit [Ping timeout: 255 seconds]
jack_rabbit has quit [Ping timeout: 268 seconds]
lentement has joined #osdev
lentement has quit [Read error: Connection reset by peer]
lentement has joined #osdev
jack_rabbit has joined #osdev
lentemen_ has joined #osdev
lentement has quit [Read error: Connection reset by peer]
lentement has joined #osdev
lentemen_ has quit [Read error: Connection reset by peer]
lentement has quit [Remote host closed the connection]
netbsduser` has joined #osdev
lentement has joined #osdev
lentement has quit [Remote host closed the connection]
lentement has joined #osdev
gildasio has quit [Remote host closed the connection]
gildasio has joined #osdev
PapaFrog has quit [Ping timeout: 256 seconds]
netbsduser` has quit [Ping timeout: 240 seconds]
lentement has quit []
sbalmos has quit [Ping timeout: 256 seconds]
sbalmos has joined #osdev
netbsduser` has joined #osdev
netbsduser` has quit [Ping timeout: 246 seconds]
PapaFrog has joined #osdev
leon has quit [Quit: see you later, alligator]
leon has joined #osdev
GeDaMo has joined #osdev
goliath has joined #osdev
Nixkernal has joined #osdev
netbsduser` has joined #osdev
jack_rabbit has quit [Ping timeout: 268 seconds]
GeDaMo has quit [Ping timeout: 268 seconds]
netbsduser` has quit [Ping timeout: 264 seconds]
asymptotically has quit [Remote host closed the connection]
whereiseveryone has quit [Remote host closed the connection]
ursa-major has quit [Remote host closed the connection]
rselim has quit [Remote host closed the connection]
alethkit has quit [Remote host closed the connection]
exec64 has quit [Remote host closed the connection]
gjn has quit [Remote host closed the connection]
tommybomb has quit [Remote host closed the connection]
pitust has quit [Remote host closed the connection]
yuiyukihira has quit [Remote host closed the connection]
patwid has quit [Write error: Broken pipe]
xtex has quit [Write error: Broken pipe]
vismie has quit [Remote host closed the connection]
tom5760 has quit [Remote host closed the connection]
noeontheend has quit [Remote host closed the connection]
staceee has quit [Remote host closed the connection]
sm2n has quit [Remote host closed the connection]
jleightcap has quit [Remote host closed the connection]
hanemile has quit [Remote host closed the connection]
lh has quit [Remote host closed the connection]
listentolist has quit [Remote host closed the connection]
staceee has joined #osdev
yuiyukihira has joined #osdev
patwid has joined #osdev
hanemile has joined #osdev
whereiseveryone has joined #osdev
tom5760 has joined #osdev
jleightcap has joined #osdev
exec64 has joined #osdev
ursa-major has joined #osdev
asymptotically has joined #osdev
tommybomb has joined #osdev
sm2n has joined #osdev
gjn has joined #osdev
alethkit has joined #osdev
rselim has joined #osdev
pitust has joined #osdev
lh has joined #osdev
noeontheend has joined #osdev
xtex has joined #osdev
vismie has joined #osdev
bauen1 has quit [Ping timeout: 260 seconds]
GeDaMo has joined #osdev
jack_rabbit has joined #osdev
geistvax has joined #osdev
* geistvax fires up the vax again
<GeDaMo> An actual Vax or a simulated Vax? :P
<geistvax> actual vax. running netbsd
netbsduser` has joined #osdev
gog has joined #osdev
netbsduser` has quit [Ping timeout: 260 seconds]
vykt has quit [Ping timeout: 268 seconds]
<nikolapdp> hello geistvax
<gog> hello nikolapdp
GeDaMo has quit [Ping timeout: 260 seconds]
<nikolapdp> hello gog
GeDaMo has joined #osdev
netbsduser` has joined #osdev
jack_rabbit has quit [Ping timeout: 260 seconds]
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
netbsduser` has quit [Ping timeout: 272 seconds]
Cindy has quit [Ping timeout: 255 seconds]
Cindy has joined #osdev
solaare has quit [Ping timeout: 246 seconds]
solaare has joined #osdev
<zid> no heat, wtf
GeDaMo has joined #osdev
<gog> :´(
<nikolapdp> they got him
<zid> finally
<zid> I am charging my mouse back up nikolapdp, no nudes for now
Gurkenglas has joined #osdev
ramenu__ has joined #osdev
gxt_ has quit [Ping timeout: 255 seconds]
gxt_ has joined #osdev
xvmt has quit [Remote host closed the connection]
xvmt has joined #osdev
<nikolapdp> oh dang
<gog> i don't want to webdev today
<gog> at least it's friday
<zid> that means frieren today
GeDaMo has quit [Ping timeout: 240 seconds]
<nikolapdp> gog are there people that want to webdev
<gog> no
<childlikempress> i want to webdev
<childlikempress> *not
<zid> phew
<zid> thought you'd gone mad for a second there
<zid> does my apache work I wonder
masoudd has quit [Ping timeout: 240 seconds]
<nikolapdp> you had us there for a bit
gog is now known as pogspawn
<childlikempress> praphics output grotocol
<pogspawn> i want to debug my changes from last night during lunch but idk if that's a good idea
<pogspawn> i might get fixated and not return to web dev
<pogspawn> also what's a good way to tell gdb the offset of an image after loading it during runtime without having to do add-symbol-file -o <blah>
<pogspawn> like automaticallyt
<zid> my wsl has no interweb
<zid> why not
<pogspawn> it would really speed up my debug process
<vai> BIOS interrupt call 15h routines were documented in the technical reference manual that would turn the cassette motor on and off, and read or write data. Data was written with a lead-in section, and formatted in 256-byte blocks with a 2-byte CRC.[5] Programmers could also operate the cassette relay by writing to its I/O address. The cassette, disk, advanced, and cartridge versions of IBM BASIC included
<vai> statements for cassette operations, but these features only worked if the machine had a cassette port.
<vai> dunno if any machines exist with this support though
<vai> discontinued in 1987
ramenu__ has quit [Read error: Connection reset by peer]
<childlikempress> pogspawn: gdb -x foo
<childlikempress> where foo is a file with a bunch of gdb commands
<pogspawn> i mean like in qemu
<pogspawn> it's not so straightforward
<childlikempress> same same
<childlikempress> i just always ran gdb -x this thingy https://0x0.st/H5Vj.txt
<pogspawn> i alraedy have something like that
<pogspawn> the offset of the elf might change from time to time though
ramenu has joined #osdev
<childlikempress> oh so you wanna reload it without restarting gdb?
<pogspawn> yeah, and get the base offset during runtime
<pogspawn> i swear i saw something like that before but google is not very helpful with this
<zid> file
<zid> load
<zid> are the two commands I use a lot with remote gdb
gxt_ has quit [Remote host closed the connection]
gxt_ has joined #osdev
<zid> wsl has exploded, fine I'll reobot
<zid> also gj windows
<bslsk05> ​learn.microsoft.com: Set WSL2 subnet - Microsoft Q&A
<zid> for your excellent admin tools
zid has quit [Remote host closed the connection]
<nikolapdp> why are you even on windows zid
<nikolapdp> you did it to yourself
zid has joined #osdev
<zid> I'm on windows because I play video game
<zid> inet 172.23.184.237 netmask 255.255.240.0 broadcast 172.23.191.255
<zid> inet 172.23.184.237 netmask 255.255.240.0 broadcast 172.23.191.255
<zid> why the fuck are you using a /20, windows
<zid> IPv4 Address. . . . . . . . . . . : 172.23.176.1
navi has joined #osdev
<nikolapdp> zid i am on linux and i play video game
<pogspawn> zid factorio runs perfect in linux
<nikolapdp> yes pogspawn, tell him
<pogspawn> smh my head
<zid> do you play, ALL the video game
<zid> including cracked steam games
<zid> that just came out yesterday
<pogspawn> no
<pogspawn> do yoU?
<zid> yes
netbsduser` has joined #osdev
<zid> hrmph why can't I get apache OUTSIDE
<zid> router is port forwarding, windows is port forwarding
<zid> I blame router
<pogspawn> rooter
<pogspawn> do you pronounce router like rooter zid
<zid> no
<zid> I'm strange for it though
<nikolapdp> zid i played cracked steam games on linux
<nikolapdp> also i say rooter in serbiam
<nikolapdp> but router in english
<zid> some murmuring on the forum that they may have broken it
<pogspawn> beini
<zid> oh, deleting it and readding it appears to have done it
<zid> at least locally
<nikolapdp> good old "have you tried restarting it"
<nikolapdp> or redoing it in this case
<zid> doesn't appear to work externally still ofc
<zid> nikolapdp what does hold.abuser.eu resolve to for you
<zid> or gog or someone
<zid> aha it seems to work now?
<nikolapdp> zid: pete-14-b2-v4wan-164632-cust405.vm23.cable.virginm.net (86.17.233.150)
<zid> I burned out on faff though
<zid> cbf to actually DO the webdev now
<nikolapdp> lol gog had the same problem
<zid> well, enjoy http://hold.abuser.eu/
<bslsk05> ​hold.abuser.eu <no title>
<zid> it's the best website
<nikolapdp> i think mine's better: https://radojevic.rs/
<bslsk05> ​radojevic.rs <no title>
<zid> my wsl has no ivp6 and I have no idea how to give it
<nikolapdp> does your ip give you an ipv6 address
<zid> no
<zid> my desktop has ipv6
<zid> my wsl does not
<zid> I'd have to figure out how the fuck to make windows route it
<zid> and last time I tried that all I managed to do was make it so that my desktop couldn't use ipv6 :p
<nikolapdp> kek
xenos1984 has quit [Read error: Connection reset by peer]
<nikolapdp> that's what you get for trying to use windows for anything network related
<zid> Linux is better, but it still kinda sucks
<zid> for like, the opposite reason
<zid> give me topological control damnit
<pogspawn> can you use a bridged adapter for wsl containers
<zid> it has a VIRTUAL SWITCH MANAGER
<zid> Which i can connect to 'internal' 'private' or 'Intel(R) I211 Gigabit' which fails
<pogspawn> hm
<zid> the vmware one was better
<nikolapdp> why don't you run a proper vm thoug
<zid> not supported on AMD on W10
<zid> I have to get rid of wsl2 if I want a real vm
<zid> but I nver had ipv6 on my real vm either :P
<nikolapdp> oh lol
<zid> > and last time I tried that all I managed to do was make it so that my desktop couldn't use ipv6 :p
<zid> did you read the fineprint on my website nik
<nikolapdp> i did yes
<nikolapdp> i have to disappoint but it's not legaly binding
<zid> It is
<zid> I'll take you to the european court of human rights
<zid> (Did we quit that yet?)
<nikolapdp> no clue
<nikolapdp> also i am in serbia and gdpr doesn't apply here lol
<zid> tories branding us as sub-human doesn't *feel* like something is amiss
<zid> serbia is in the EU
<nikolapdp> nope
<zid> serbia is totally in the EU
<nikolapdp> lol nope
<zid> wtf serbia
<zid> non-country
<nikolapdp> nah
<zid> This is too big
<zid> oh, you can't join
<zid> until you recognise kosovo
<nikolapdp> not that i'd want to join anyway
<zid> why not, you can take infinite moneyloan from germany
<zid> then never pay it back
<zid> ask greece
<nikolapdp> i mean we already get money from eu
<nikolapdp> and it's not even loan
<nikolapdp> *loans
<zid> the "stop murdering albanians" money?
<nikolapdp> hey they started it
<zid> no u
<nikolapdp> but seriously now, the only albanians we killed were literal terrorists and enemy soldiers
xenos1984 has joined #osdev
<nortti> "On 27 April 1999, a mass execution of at least 377 Kosovo Albanian civilians, of whom 36 were under 18 years old, was committed by Serbian police and Yugoslav Army forces in the village of Meja near the town of Gjakova. It followed an operation which began after the killing of six Serbian policemen by the Kosovo Liberation Army (KLA). The victims were pulled from refugee convoys at a checkpoint in Meja and
<nortti> their families were ordered to proceed to Albania. Men and boys were separated and then executed by the road.[301]"
bauen1 has joined #osdev
<kof123> > good old "have you tried restarting it"" yes, the recent lunar contraption they said not to worry, there is automatic fallover ....15 minutes of radio silence and it changes channel or some such lol
* kof123 zzzzzzzzzz shatner kept saying over and over how much luck is a factor, it is just like acting.......the astronaut lady kept saying no that's not true, there are skilled people, technology, etc. lol
jack_rabbit has joined #osdev
<kof123> it was vaguely like that: old snl: https://snltranscripts.jt.org/86/86mdiscover.phtml Aaalll right, so molecules are very, very small, then. Dr. Charles Claproth: Yes. Peter Graves: But you said they were just, very small. Dr. Charles Claproth: Yes. Peter Graves: So, you were wrong.
<bslsk05> ​snltranscripts.jt.org: Discover - SNL Transcripts Tonight
<zid> "he was resisting arrest"
pretty_dumm_guy has joined #osdev
pretty_dumm_guy has quit [Ping timeout: 264 seconds]
pretty_dumm_guy has joined #osdev
Left_Turn has joined #osdev
heat has joined #osdev
<heat> morning linuxers
<heat> oh wow a serbian warcrimes fact check
<heat> good job
<zid> They're not warcrimes unless they're from the serbia region of yugoslavia, otherwise they're just sparkling battle misdemeanours
<heat> pogspawn, there's a structure gdb uses for ldso, starting with _dl_<something>, where it just knows its format, and when ldso updates the shared object list it calls another function (that does nothing) that is hooked by gdb to update its internal .so list
<heat> it's a possible way to do things
<zid> oh right, I had an image I wanted to give you
<heat> i haven't heard of it being used by kernels though, but it might just work
m3a has quit [Ping timeout: 255 seconds]
<heat> hahaha
<heat> the poison swamp isn't the worst
<heat> TOXIC! is much worse
<heat> given it's fucking instant
<pogspawn> heat: i'll look at that, might help
<pogspawn> takk
<heat> whenever i need to run through those parts of blighttown to get power within i very frequently get toxic'd or there's an amazingly close call
<heat> pogspawn, yw
<zid> yea I just eat the toxic
<zid> kill one guy
<zid> respawn, repeat
<zid> Unless I for some reason, went through darkroot already
<zid> in which case it's get toxic'd, kill guy, fumble looking for leaf
<zid> die
Left_Turn has quit [Ping timeout: 255 seconds]
gxt_ has quit [Ping timeout: 255 seconds]
<heat> i've been kinda wanting to do a SL1 run these days
<heat> probably pyro-based, nothing too hard
<zid> I got to artorias
<zid> It took me *hours* to beat him
<zid> turns out I suck at artorias
<zid> but I never had to care before now because I killed him in 8 hits
<zid> when he takes 138 hits it's much harder
<heat> oh i struggled hard with manus
<heat> fuck manus
<zid> he was the 2nd hardest part, after the 'room before kapra'
<zid> I never had a problem with manus, I saw his attacks then just.. always dodged them
<zid> everything is sideroll except one magic attack that is forward roll
gxt_ has joined #osdev
<heat> tbf manus in SL1 is easy, just get a bow :P
<zid> what do yu do for sl1 if not pyro btw
<heat> idk i've seen all kinds of crazy challenges
<heat> pyro doesn't seem amazingly hard, just get the good pyromancies and you can very quickly kill everything off
<zid> I've never seen an sl1 'build' other than start pyro (for sl1) then just.. use the fireballs you get given
<zid> until you get blacksmith hammer
<zid> then use that now that bosses have more hp than 8 fireballs
<zid> you can't get the good pyromancies you don't have the int to cast them
<zid> you get fireball
<heat> oh really?
<zid> and power within
<heat> shit
<zid> which you may as well use anyway because if you get hit you're dead
<zid> power within, use your 8 fireballs, beat the rest of the hp bars down with blacksmith hammer
<zid> you pick pyro because pyro starts at level 1
<zid> You could do something else if you wanted to do like, SL4 :P
<heat> huh, does pyro have the lowest stats of them all?
<heat> i was assuming SL1 meant "you can pick anything as long as you don't level up"
<zid> yea pyro is the only one that starts at SL1
rorx has quit [Ping timeout: 240 seconds]
<zid> bandit etc have better stats so they're like, level 7
<zid> pyro is.. 10/12/11/12/9/12/10/8, level 1
<zid> deprived 11/11/11/11/11/11/11/11/11 level 6
<zid> bandit 12/8/14/14/9/11/8/10 level 4
Left_Turn has joined #osdev
<zid> looks like it's.. 84+n stats -> level
<zid> 84+level -> stats
<zid> 82
<zid> pyro has 84 level 1, depraved 88 level 4, so yea, 84+level
Left_Turn has quit [Remote host closed the connection]
<zid> So all classes should be equal in terms of levelling up, as long as you were *never* going to get resistance to 11 or whatever
<zid> pyro just starts with 3 fewer points and also 3 fewer levels
Gurkenglas has quit [Quit: Client closed]
GeDaMo has joined #osdev
<zid> weren't never
<heat> yeah
<heat> also i'm pretty sure i've seen a 1/1/1/1/1/... run before
<heat> now that is fucked
<zid> yea
<zid> modded level negative 76 or whatever, I think.. that dweeb did oen back in the day
<zid> lobos
<Ermine> serbian warcrimes?
<heat> NEVER HAPPENED
<zid> No such thing ever occured (A Serbian made me write this)
<nortti> Ermine: nikolapdp claimed that the only albanians killed by "us" (whatever that means in context) were terrorists and enemy combattants. I quoted off wikipedia about a summary killing of at least 377 civilian kosovars by serbian police & yugoslav army
<nortti> like, in one event
friedy- has joined #osdev
friedy- is now known as friedy
rorx has joined #osdev
<zid> nikolapdp: I will switch back to .rs if you promise me kosovo is a real country
<heat> what does rust have to do with kosovo
<zid> I will learn more rust (disgusting) if he does something he also feels is disgusting
<zid> fair trade imo
<nikolapdp> nortti those were combatants obviously
<nikolapdp> zid no
<zid> rip, no rust then
<nikolapdp> i don't even want to learn rust, why would i want you to learn it
<heat> what's the problem with rust?
<zid> it's bad?
<nikolapdp> lol
<heat> it's not bad
<heat> what people do with it (or want to) is bad
<nikolapdp> true that
<zid> It's also just bad
<nikolapdp> i just don't want to deal with it
<zid> it's overly-complicated for what it's useful for, and useless for system's programming which is what it's designed for
<zid> systems
<nikolapdp> a lot of cognitive overhead when you're writing in rust so you always just end up going for shortcuts like Arc<Mutex<>> or whatever instead of doing it properly
<heat> i don't think it's useless for systems programming
<zid> how do I .so
<heat> i don't know, i don't use rust
<zid> how do I fit a binary inside 10MB
<zid> etc
<heat> easily?
<zid> how do I tell it about flash vs ram
<nikolapdp> maybe i am just noob at rust, but i tried writing a multithreaded program and i just couD
<nikolapdp> *couldn't express what the granularity of locking for example
<heat> you can very effectively write e.g kernel code and keep it up to par with C's perf
<zid> rust literally has a working group for their shitty binary size
<nikolapdp> lol
<nikolapdp> and a working group for their shitty compile times too, don't forget
<zid> The main issue is just that, as with any language that *can* have reflection or whatever feature, they end up having to include the entire source tree in .debug or whatever
<zid> go has the same thing
<zid> 10MB hello worlds, 9MB of which is in .debug, and if you strip it language features die
<nortti> I thought rust was strongly anti-reflection?
<zid> yea so fuck knows why they have 8MB of debug symbols then
<zid> fun I guess
<nikolapdp> panic handling and stack unwinding i imagine
<nortti> (hence the bad compile times when you need to do reflection-y stuff, as you need to compile and run programs that essentially extend the compiler)
<nikolapdp> also including debug symbols for the whole stdlib, unlike when you're working in c
<zid> My stdlib has debug symbols
<zid> but they're in /usr
<zid> not /lib
<zid> because I'm not a maniac
<nikolapdp> lol
<zid> (split debug is the best thing ever btw)
<nortti> do you run a system with split /usr?
<zid> how do I tell
<nikolapdp> debugifnod is also neat when it works
<nortti> is /lib the same as /usr/lib?
<nikolapdp> zid is your /usr/bin a symlink to /bin
<zid> gdb just supports split debug
<nortti> usually it's the other way around
<zid> no
<nortti> that is, /bin is a symlink to /usr/bin
<nikolapdp> yeah true
<nikolapdp> i mix them up
<zid> neither are symlinks
<zid> anyway, gdb just supports
<nortti> are you running a non-systemd init then?
<nikolapdp> i am
<nikolapdp> and i don't have a split /usr
<zid> looking for the output of objcopy .j.debug_* and shoving it in a file in /usr
<zid> then you strip the binary and put it in /bin
<zid> so now the binary you run is tiny, but if you attach gdb, you still have full symbols
<nortti> aye, just asking since ~everything has moved to non-split /usr to the point systemd dropped support for split-/usr
<zid> I use OpenRC
<heat> tip: don't mention non-split-usr in #musl
<nikolapdp> bsds haven't
<nikolapdp> lol
<zid> portage is based on freebsd's ports anyway
<zid> I think gentoo are the people maintaining openrc and shit now
<nortti> ~everything in the linux space, I guess would be more accurate
<zid> cus systemd killed so much useful software
<zid> udev too
<heat> systemd is good
<nikolapdp> nortti yeah bsds still have split /usr
<zid> I'm sure systemd is fine
<zid> when it works, and after you learned how the fuck to use it
<zid> I've not done the latter
<zid> and in 20-30 years I will trust it do to the former
<nikolapdp> you've learned how to use it?
<zid> 'not done the latter'
<nikolapdp> sorry i am blind apparently
<zid> the not means I have not
<nikolapdp> zid did you reboot to linux
<zid> no
<zid> I don't have a linux install handy
<nikolapdp> well wipe windows and install linux
<zid> I mean, I could reboot into gentoo in like 20 mins, but I'd be running off ntfs-3g :P
<nikolapdp> oh no lol
<nikolapdp> wait can you have a root on fuse
<zid> I could unwrap the RMA'd ssd samsung sent me
<zid> rather than "eventually I will sell this"
<heat> are you the only OpenRC windows user ever?
<zid> Samsung are dumb and had 10 year warranties on their PRO line at first
<nikolapdp> lol
<nikolapdp> turns out, they weren't very pro
<zid> it died after 9 years so I got sent a brand new 10 year old ssd
<zid> the fuck do I want with that
<nikolapdp> send it to me
<zid> it's like £40 on ebay so I don't wanna just open it and use it for no reason, it might be good NEW OLD STOCK PARTS
<zid> I just really cbf to deal with ebay
<zid> This new PC has NVME :o
<pogspawn> NVME is good
<nikolapdp> blazingly fast
<zid> It's faster than sata 6 at least
<heat> INFINITE QUEUE DEPTH
<zid> why the fuck do I want infinite queue depth
<nikolapdp> how fast can you nvme heat
<zid> surely I should just drop packets like tcp
<zid> rather than bfufer bloating
<heat> nikolapdp, i can't because i don't have an nvme
<nikolapdp> dang
<zid> £28 on amazon for an nvme drive, not bad
<zid> I apparently have a
<zid> GIGABYTE GP-GSM2NE3512GNTD
<heat> btw, you want deep queues because it's a lot faster than queueing up IO on the software side, waiting for a completion IRQ and trying to requeue a bunch more shit again
<heat> that's slow
<zid> yes, yes it is
<zid> only does 1.5GB/s
<zid> but I got it for free
<heat> an NVMe drive can support up to 64K queue depth and thats amazing
<nikolapdp> i have WDC PC SN530 SDBPMPZ-512G-1101
<zid> UP TO 340k IOPS
<heat> I don't remember if there's any limit to the number of queues (maybe 64K too?), but having a queue per CPU is also great
<heat> you can also in theory have more than a queue per cpu, if you're hardcore
<zid> lemme see what that sata drive is
<zid> 860 pr
<zid> so they upgraded me from an 850 pro
<zid> nikolapdp: guess how many hours my hdd has been spun up for
<nikolapdp> hdd?
<nikolapdp> 10000
<zid> damn, very close
<nikolapdp> heh
<nikolapdp> how far off
<zid> You got the first digit correct
<zid> 124,545
<nikolapdp> what's a 10x difference between friends
<zid> (14 years)
<nikolapdp> yeah crazy
<nikolapdp> wanna hear something fun
<nikolapdp> 14 years ago i was 9
<zid> 14 years ago heat was a sperm
<nikolapdp> lol
<heat> i was cum
<heat> my SSD has had 43451169540 LBAs written
<heat> around 22TB worth of writes
<zid> I'd have nearly none
<zid> if windows didn't constantly churn itself
<nikolapdp> mine is about 20TB too
<zid> 15TB
<zid> and I've only had it a few months
<heat> wow that's awful
<zid> w10 is just a pile of ass
<zid> it has twice as many writes as reads
<nikolapdp> mine has twice as many reads as writes
<zid> nikolapdp I need to derust at tetris
<zid> I am properly shit now
<heat> i dont have read info :(
<heat> oh wait, i do
<heat> 52396863545 LBAs read (~26TB)
<nikolapdp> zid yeah i haven't played in a while either
<zid> add me on discord so I can STREAM IT AT YOUR FACE
<nikolapdp> lol
<zid> You can annotate dumb mistakes for me
<nikolapdp> sure what's your nic
<nikolapdp> nick
<zid> _zid
bauen1 has quit [Ping timeout: 272 seconds]
Celelibi has quit [Quit: Quitte]
zorz has joined #osdev
zorz has left #osdev [#osdev]
Celelibi has joined #osdev
<zid> so yea, my brain is just melty, input lag + really fucking rusty
<zid> can't play for shit
pogspawn has quit [Quit: Konversation terminated!]
M_D_K has joined #osdev
gog has joined #osdev
xenos1984 has quit [Ping timeout: 260 seconds]
xenos1984 has joined #osdev
bauen1 has joined #osdev
Matt|home has joined #osdev
lentement has joined #osdev
lentement has quit [Remote host closed the connection]
ramenu has quit [Remote host closed the connection]
ramenu has joined #osdev
zxrom has quit [Quit: Leaving]
xenos1984 has quit [Ping timeout: 256 seconds]
heat has quit [Remote host closed the connection]
heat has joined #osdev
xenos1984 has joined #osdev
lentement has joined #osdev
frkzoid has quit [Ping timeout: 268 seconds]
lentement has quit [Ping timeout: 256 seconds]
frkazoid333 has joined #osdev
masoudd has joined #osdev
mahk has quit [Ping timeout: 264 seconds]
<netbsduser`> nortti: this is a solaris thing
<netbsduser`> they decided to abolish the distinction between /bin and /usr/bin, and between /lib and /usr/lib
zetef has joined #osdev
<nikolar> They also had /export/home
<netbsduser`> it's so that it would be in an appropriate place if you're exporting it via NFS, while if you are mounting home from NFS, you want /home to be an NFS mount
<nikolar> Yeah I know
<nikolar> I'm just saying there were a bit weird
zetef has quit [Remote host closed the connection]
<heat> i guess solaris isn't all bad ideas then
<heat> huh, who would've known
<nikolar> S O L A R I S
<heat> sunos
<nikolar> That's just bsd
<heat> no?
<Ermine> moonos
<vai> does Linux use shared memory for system call pointers for example file names, etc. or is the memory mapping/space unified for the kernel and app ?
<heat> address space is "unified", but they usually copy it out from user memory pretty quickly
<heat> due to simplicity and security and performance concerns
<vai> ah
<vai> I guess this is how Windows does it as well
<heat> yeah
<heat> you don't want to directly dereference user pointers without helpers/exception handling because they might be invalid
<heat> and even if you do know they're valid, they can be invalidated by eg an unmap, or if you validate the data and then use it, something in userspace might change it and you just got yourself into a TOCTOU bug
<heat> which is why linux has copy_from_user and bsd has copyin (i don't know what windows has)
<nikolar> You'd hypothetically need windows source code to know that
<heat> no
<heat> the nt kernel has docs and drivers exist
<nikolar> Oh yeah true
<bslsk05> ​learn.microsoft.com: MmCopyMemory function (ntddk.h) - Windows drivers | Microsoft Learn
<mjg> who is *not* doing that
<mjg> modulo systems which explicitly don't have security
wereii_ is now known as wereii
<heat> in theory if you have proper exception handling you can kinda avoid that
<mjg> mofs
<mjg> plz
<heat> then the only issue is TOCTOU bugs
<mjg> TOCTOU
<mjg> ther you go
<nikolar> Everyone's favourite type of bugs
<mjg> that would be heisenbugs
<mjg> (who is geezer enough to rant about the name?)
<heat> i am the one who bugs
<Ermine> TOC TOU
<mjg> i think quoting a show you have not watched
<mjg> is like wearing a shirt with logo of a band you don't like
<Cindy> i had my processor check a flag if it wanted to double bus cycles on 32-bit bus access
<mjg> #hottake
voidah has joined #osdev
<Cindy> but i didn't want to do a branch
<nikolar> Why would you rant about such a great name
<Cindy> so i did this: m68k_cycles_use(cpu, cpu->bus_cycles * (F_DBL_BUS_CYCLES_32(cpu) >> 5));
<mjg> nikolar: you are asking for it mofo
<Cindy> (F_DBL_BUS_CYCLES_32 is bit 6)
<nikolar> Yes I am
<mjg> nikolar: rob pike, of plan9 anti-fame, has a blogpost about it
<heat> i think quoting a show you have not watched
<heat> is like developing an operating system you dont use
<Cindy> ah, i came here at the wrong time
<GeDaMo> Cindy: it's not possible for higher bits to be set?
<mjg> there is no right time
<mjg> it's a shitpost channel
<Cindy> GeDaMo: it does an AND
<heat> what cindy's talking about is also offtopic
<Cindy> with the CPU's flags and bit 6
<bslsk05> ​commandcenter.blogspot.com: command center: Know your science
<heat> hey rob no one cares you created plan 9 and go
<heat> mjg, doing sophisticated ZERO COPY page loaning was a big brained netbsd uvm idea wasn't it?
<heat> the real q is did they also patch copyin to uiomove
<Ermine> is it a good thing about netbsd?
<heat> no
<heat> i would never praise a rival UNIX system in public
<nikolar> That doesn't mean it's bad, just means you don't like competition heat
<gog> i would, if it undermined their credibility with respect to mine
<nikolar> mjg: while I get what he's trying to say, that's just funny lol
<heat> >MmGetPhysicalMemoryRangesEx2
Arthuria has joined #osdev
gorgonical has quit [Ping timeout: 260 seconds]
<nikolar> We love verbose names
<mjg> right or wrong the name is too catchy to not get traction
masoudd has quit [Ping timeout: 260 seconds]
* geist yawns at everyone
<geist> how are you fronds
* gog slides a coffe to geist
<gog> geist we got a cat
<geist> oooh!
<geist> or did the cat get you?
<gog> unclear
<gog> either way, he's a precious baby
gorgonical has joined #osdev
<nikolar> mjg exactly
<nikolar> Hello frond
<nikolar> Hello gog
xenos1984 has quit [Read error: Connection reset by peer]
<gog> hi nikolar
<nikolar> How's the cat doing
<geist> yah sometimes they find you and you must comply
<gog> he's loafing on the couch between me and my wife
<gog> snoozing
<heat> hi ghost
<gog> this was him a couple hours ago
<heat> huge hmac
<heat> good cat
<nikolar> He's adorable
<mjg> gog: what do tik tok videos say about this position
<mjg> is your cat a reincarnated communist?
<geist> oh i love tuxedo coloring
<heat> all cats are reincarnated communists
<gog> ooh i wonder which one
<gog> fidelito maybe
<gog> hasta siempre la revolución
<gog> he meowed at me when i said that to him
<mjg> that's probably "where is communist manifesto"
<nikolar> He's either cursing you or agreeing with you
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
<mjg> heat: oh, page loaning was indeed a netbsdism
<mjg> i think it's officially dead for years, unofficially for some years prior to that
<mjg> netbsd itself is in the latter stage atm
<nikolar> So netbsd copies everything too?
<mjg> everything but good ideas
<nikolar> Lol
<heat> lmfao
<geist> come on, lets not be mean
<mjg> let's be average
<heat> come on geist you have to admit that was a pretty good one
<geist> well, it was. indeed
<mjg> are you people serious
<mjg> it's like the most obvious jab out there
<heat> anyway did they loan on copyin too?
<kazinsal> freebsd: for when you need your software distribution of berkeley to be on a desktop. openbsd: for when your bsd needs to be secure, speed be damned. netbsd: for when you need your bsd to run on a casio watch
<mjg> totes would be most upvoted in a reddit thread
<heat> i would guess not
<mjg> heat: i don't know
<mjg> kazinsal: just don't use bsd
<nikolar> kazinsal pretty much
<heat> no one runs freebsd on the desktop
<mjg> i know people who do
<heat> s//on the desktop/
<mjg> for realzies
<heat> dragonflybsd: ""
<mjg> come on, let's not be mean
<kazinsal> dragonflybsd: for when you're still not over being technically correct about SMP scheduling in 2005
<nikolar> What's that drama about dragonfly kazinsal
<heat> BRUH
<gog> wasn't it n:m threading
<kazinsal> it was forked from FreeBSD 4 because a handful of people thought that FreeBSD 5's threading system was going to hamstring SMP performance
<gog> and it did
<heat> matthew dillon was also a toxic bastard that could not cooperate with people
<bslsk05> ​'The Trouble with FreeBSD' by linux conf au 2017 - Hobart, Australia (00:45:53)
<mjg> dude 90% of opensource is that
<heat> this whole vid is worth a watch
<kazinsal> FreeBSD fixed their multiprocessing in one of the 5.x releases iirc
<kazinsal> so Dragonfly had no real use anymore other than to be FreeBSD For Toxic Assholes
<geist> yah freebsd 5 was a huge kerfluffle i remember. freebsd 4 ran up to pretty high dot releases. 4.11 i think?
<kazinsal> when FreeBSD got ZFS, Dillon responded by crafting his own filesystem
<mjg> 4.11 indeed
<mjg> i heard there was even an unofficial 12
<gog> i just like the dragonfly logo
<geist> the last of the 4 series was a solid piece of kit (though obviously not SMP scalable, etc etc) but at the time you probably ran it on a single core machine
<geist> it's a good go-to old freebsd to run on old hardware
<geist> old pentium 3 or whatnot
xenos1984 has joined #osdev
<heat> WHAT GEIST
<heat> IT DIDN'T SCALE???
<heat> THAT CANT BE
<mjg> was i lied to? :(
<heat> WHAT USE IS AN OPERATING SYSTEM IF IT DOESNT SCALE
<heat> WHAT SHALL WE DO
<nikolar> :(
<mjg> geist: ye it's probably a legit choice
<kazinsal> mongobsd is webscale
<geist> heat: indeed. however (cover your childrens ears, this will be too scary for them) there was a period of time when computers only had one cpu core
<nikolar> NO
<kazinsal> I had to explain modem multiplayer gaming to someone recently
* geist sits, a shudder through their body, thinking of the dark days of their youth
<kazinsal> like, dialing someone else's modem directly and starting up a modem game
<mjg> dude
<geist> heh i remember playing a lot of Populous with a friend of mine with the direct dial up
<mjg> loading a game from a tape == $$
<mjg> that was something
<mjg> can you imagine the concept of a game failing to load after 30 minutes
<geist> thankfully i never had to deal with tape stuff. my first computer was an apple 2 with a disk drive
<mjg> explain that to the YOUTH TODAY
<geist> what is neat about old 8 bit machines with tape inputs is you can load anything onto them by just playing back a mp3 of the game from a modern computer
<Ermine> What TODAYS YOUTH needs to understand?
<geist> great for bootstrapping one to actually punch out a real floppy
<geist> like if you get a machine with just empty floppies
<kazinsal> reminds me, I need more 1.44s
<geist> yah i have like 2 boxes, about 20. that'll do i think
<geist> what i dot have is a lot of high density 5.25s
<kazinsal> also need to dig through my collection of non working machines and find some 4.7uF 35V tantalums to scavenge for the PS/2
<mjg> do these floppies work?
<mjg> i know there are pendrive-based emulators
<mjg> you load a bunch of stuff onto a device which pretends to be the floppy drive
<mjg> and you flip a switch on it to select "floppies"
<mjg> i guess PURISTS would not like it ;)
<kazinsal> so far I've managed to find exactly one working 1.44 meg floppy in my apartment
<kazinsal> though I haven't gone through the boxes I haven't touched since I moved in
<geist> yah i ended up buying a fresh box of 10 a few years back that i use as my working set of floppies when i need it
<geist> and then someone gave me another box of 10 unused since
<geist> what i usually use for modern machines is you can still get pretty cheap like $20 usb floppy drives
<geist> great for punching out a disk image for a PC at least. they can't write funny formats or whatnot, but good for making a PC boot disk
<geist> and, mind bogglingly, lots of modern PCs can actually boot dos of a usb floppy disk in BIOS emulation mode
<geist> clearly that has limitations, but seems to work
<mjg> emulators too dirty?
<mjg> :)
<geist> mjg: yah the standard for that is gotek
<mjg> i mean floppy drive emulators
<geist> sure i mean that's fine too, but you have to take the target machine apart, plug it in, etc
<geist> if you have a machine with a floppy drive it's usually no big deal to just punch out a floppy disk
<kazinsal> and some machines (looking at you, late 80s big blue) have wacky proprietary floppy drive connectors
<geist> either way works, obviously. the gotek floppy emulators aren't super cheap though
<mjg> i'm surprised these drives still work
Arthuria has quit [Killed (NickServ (GHOST command used by Guest684531))]
Arthuria has joined #osdev
<geist> 3.5" drives seem to be pretty rock solid
<geist> i have't personally found one that doesn't work fine
<kazinsal> yeah, the innards of 5.25s tend to melt more than 3.5s
<geist> 5.25s may require some disassembly to replace belts, re-lube, etc
<mjg> do you do any mainetnance on them?
<geist> 3.5s dont have belts and whatnot
<kazinsal> yeah, that's the big thing. direct drive vs belt drive
<geist> yah
<geist> i have a pile of old 3.5" drives, and AFAIK they all work fine. i just always removed it before scrapping some old machine, thinking they'd at least be useful
<mjg> huh
<geist> they're pretty simple machines, and by late stage floppy they were probably pretty much tuned to perfection
<geist> also they only had to run at one speed, unlike some of the 5.25s which had additional nonsense to run at 300 and 360 depending
<kazinsal> yep. that part's a mechanical mess
<geist> that;s really the big advancement of 3.5" floppies anyway. they were simpler, safer, higher density, durable. more or less superior in every way
<geist> and the drive mechanism is simpler because direct drive
SanchayanMaity has quit [Ping timeout: 252 seconds]
zxrom has joined #osdev
<geist> i guess with the exception of floppy drives on macs, which frequently have a failure in the ejection mechanism
SanchayanMaity has joined #osdev
<gog> heat heat
<gog> heat
<nikolar> heat
<gog> remember when you pointed out that a fixup looked like it had bad pointer arithmetic
<gog> well it did
<gog> i still fail to understand how it worked at all
Arthuria has quit [Ping timeout: 252 seconds]
zetef has joined #osdev
M_D_K has quit [Ping timeout: 256 seconds]
zetef has quit [Remote host closed the connection]
zetef has joined #osdev
zetef has quit [Ping timeout: 255 seconds]
\Test_User has joined #osdev
gildasio has quit [Ping timeout: 255 seconds]
ramenu has quit [Ping timeout: 268 seconds]
gildasio has joined #osdev
\Test_User has quit [Quit: \Test_User]
CutieMelo has quit [Ping timeout: 272 seconds]
\Test_User has joined #osdev
ramenu has joined #osdev
<heat> gog, lol
<heat> C operator precedence is great
<heat> tbf maybe your offset was always 0?
<gog> i think another version of that function in another TU was the one actually being compiled
<gog> my build system is in flux rn so i may not have been building that file at all
<heat> what does it mean for a build system to be in flux
<heat> " To conserve memory at Google, we maintained 8K stacks via a custom patch while verifying that our workload could fit within this limit."
<heat> wow i am very surprised that 8KB in each kernel stack matters to google
<gog> it means i'm changing things around
<gog> but it still has to work
voidah has quit [Ping timeout: 264 seconds]
<mjg> heat: now that sounds fishy af
<mjg> are they running JAVA?
<heat> they probably run some java in places
<heat> but... you know, 8K
<mjg> they could thread less in their GO progs
<mjg> that's enough shit posting for the day
<mjg> ch33rz
<heat> if you estimate that the average server has 256GB (which is very conservative), you can fit 16777216 16KiB stacks
<mjg> i'm saying they probably have too many threads
<heat> yes but it's just 8KB
<mjg> and fucking javatards are the common culprits
<heat> as if the jvm didn't eat 8KB accidentally for breakfast?
<mjg> if you don't spawn a lol thread, you shave more than 8k
<mjg> just sahin
<mjg> sayin even
<mjg> anyhow gtg
<heat> 1280 threads consume 21MB of kernel stack, which seems a lot until you realize you have *1280 threads*
* gog threads
<Ermine> why would you have 1280 kernel threads
<kazinsal> blast processing
\Test_User has quit [Ping timeout: 252 seconds]
<netbsduser`> vai: windows uses a try-catch exception handling block for this
<geistvax> 10 threads per core, 128 cores
<geistvax> i've seen more than that on some really beefy machine
<geistvax> in the kernel
<netbsduser`> kazinsal: by god, the dragonfly bsd people were right
<netbsduser`> the freebsd solution to scale was finely-grained mutexes
<netbsduser`> which looked great and good except for the crippling problem that eventually you run out of ability to finely grain your mutexes, and when you are left with e.g. a mutex on a very important and fundamental data structure which is used everywhere, you now have a bottleneck
<heat> Ermine, not kernel threads, but threads in general
<heat> every thread has its own kernel stack
<netbsduser`> matt dillion's counterproposal was to instead replicate as much as possible and resort to locking only where replication wasn't feasible, or as a 2nd level (behind replicated caches)
<heat> geistvax, yeah i don't know what google's prod servers are running, but even if you 10x that number its still 200MB, ~0.01% of 256GB
<heat> wait, maybe 0.1%? i can't math properly. still, you get the point
<heat> *and* 256GB is still AFAIK a conservative estimate for google servers
goliath has quit [Quit: SIGSEGV]
<heat> yesterday i was watching some linux mm conference vids, and there was one on the deprecation of SLOB and SLAB in favour of SLUB. someone from google cloud said that they really wanted to move to SLUB because SLAB has a 2 second reap timer, and they sell a product where the client gets the whole CPU for them
<heat> so technically due to the 2 second reap timer the customer wasn't quite getting what they were paying for
<adder> How many actual "stacks" there are in a computer?
<nikolar> Good guy google???
<nikolar> adder as many as you want
<nikolar> It's a software thing
<heat> every thread (kernel or user) has its own kernel stack
<heat> then user threads have their own user stack too (usually swappable and usually grows)
<heat> then some operating systems have interrupt stacks to handle interrupts
<nikolar> You could also have so called green threads
<adder> Yeah. I know each thread has a stack, but like, on an interrupt, some registers will be saved "on the stack", and likewise, the kernel needs to set up "a stack", and I'm not sure if these are all different stacks.
<nikolar> Where userspace completely manages the stacks and context switches
<netbsduser`> one saves registers onto the kernel stack
<heat> <nikolar> Good guy google??? <-- more like selling a product
<heat> bad product is bad
<heat> latency sucks
<adder> heat: Why does a thread need two stacks?
<netbsduser`> one for user land and one for kernel land
<heat> adder, you can't run on the user stack in the kernel, and you need multiple kernel stacks because threads can block or be preempted
<heat> so the trivial solution is to just keep N kernel stacks for N threads
<adder> Does this imply an upper hard limit on the number of threads?
<heat> netbsduser`, also what's that try-catch thing about?
<heat> i found an MmCopyMemory which i thought might be a copyin thing, but i guess not?
<heat> adder, there's always a hard limit (memory)
<adder> Is interrupt stack separate from "kernel stack"?
<heat> if I use 256 bytes for my struct thread, i can have roughly memory_size/256 threads. and this also applies to any other resource
<heat> yes
<netbsduser`> heat: as in try { memcpy(kernel buffer, user memory, however many bytes); } catch { return NtStatusUserMemoryCopyFailedDueToInsufficientPermissionsOrInappropriateMapping); }
<netbsduser`> microsoft C includes it as well as C++
<mjg> wait that's an actual reutrn code? :D
<netbsduser`> i think inherited from DEC's PRISM project which included a programming language framework that provided a unified exception-handling mechanism to all the languages it implemented
<netbsduser`> mjg: i don't think it's far off one
<heat> yeah i know windows does try-catch in C
<heat> i just didn't know/wasn't sure this is what they were doing for copyin/out