Search logs:

channel logs for 2004 - 2010 are archived at ·· can't be searched

#osdev2 = #osdev @ Libera from 23may2021 to present

#osdev @ OPN/FreeNode from 3apr2001 to 23may2021

all other channels are on OPN/FreeNode from 2004 to present

Friday, 17 June 2022

00:03:00 <heat> my os ain't that thicc
06:12:00 <mrvn> geist: Making the syscall interface something with type safety and higher level language than C is one of my big problems too.
06:13:00 <mrvn> It's the whol eproblem of serializing and deserializing network traffic but local.
06:51:00 <kazinsal> me: why am I having heat issues with my CPU
06:51:00 <kazinsal> also me: damn that layer of dust on the radiator is *opaque*
06:52:00 <zid`> If it isn't describable as a 'carpet'
06:52:00 <zid`> you cleaned it too early
06:52:00 <kazinsal> the dregs of a can of duster gas later and my idle temps are down a whole ten degrees
06:53:00 <zid`> I'm not sure my current heatsink is especially capable of growing carpets, sadly
06:53:00 <kazinsal> load temps down 15
06:53:00 <zid`> it's a through-design with two fans
06:53:00 <zid`> it blows its own dust off
06:53:00 <zid`> I used to get carpets on those weak stock style coolers a lot
06:57:00 <kazinsal> I've got a two fan radiator with the fans pushing air through
06:57:00 <zid`> you need MOAR CFM
06:57:00 <zid`> If it doesn't sound like a jet turbine is it even Trying
06:58:00 <clever> i had a laptop many years ago, where the cpu fan ran at idle, and youtube with the lid closed (external monitor) would thermal throttle to the point that it cant even youtube
06:58:00 <kazinsal> eventually when I do a CPU/mobo upgrade I'm going to turn this 8700K into my "new" server and I'll probably replace the stock fans with noctuas
06:58:00 <clever> after i cleaned the heatsink, it was performing too well
06:59:00 <kazinsal> big quiet air pushers
06:59:00 <zid`> arctic p12s are 56cfm which isn't bad for such a quiet fan, I miss my yate loon though
06:59:00 <kazinsal> because I don't know how well ESXi handles liquid coolers
06:59:00 <clever> the fan would shut off when idle, then turn back on, which make it more anoying!
06:59:00 <zid`> it was 90cfm and sounded like a blender trying to eat marbles
07:00:00 <zid`> I might downclock actually, heatwave rn
07:00:00 <zid`> but adjusting the voltages down to actually make use of that will be annoying and crashy.. so maybe not
07:01:00 <kazinsal> yeah if we get another 40+ C heat wave this year I don't think my air conditioning is going to keep this thing functional
07:01:00 <zid`> it's 8am and currently.. 21C
07:01:00 <zid`> 33C expected
07:02:00 <zid`> I've got no AC, I just have old 120mm fans jammed into my window :P
07:03:00 <zid`> Open small window, sit 120mm fans on the ledge, ghetto but works surprisingly well to get a bit of air flowing
07:04:00 <kazinsal> the three greatest things about my new(ish) apartment are air conditioning, a fibre termination in my entrance hall closet, and underground parking
07:04:00 <zid`> nice
07:04:00 <zid`> mine's ex council
07:04:00 <kazinsal> definitely would have not survived last summer's heat dome if I didn't have AC
07:04:00 <zid`> I drew a pretty picture
07:05:00 <zid`> 10/10 artiste
07:13:00 <doug16k> kazinsal, you can still get water coolers that are PWM controlled by the system and don't have asinine usb connection
07:14:00 <kazinsal> yeah, unfortunately mine's a USB based one because Gamer(tm)
07:14:00 <kazinsal> which is fine for my current use case of Windows desktop
07:14:00 <kazinsal> but might be a bit of an annoyance when it moves to the role of ESXi host
07:15:00 <kazinsal> then again I don't expect to be running the thing at full blast on all cores in that role
07:27:00 <mrvn> When you said water coolers I thought for air conditioning.
08:29:00 <geist> May also help to have some better filters on the intake to the case
08:30:00 <geist> I have to say i dont hav much dust build up in my computers but then i usually keep at least one HEPA filter running on the room, so that probably helps immensely
08:33:00 <zid`> I'd struggle to put an intake over mine
08:33:00 <zid`> do they sell square meter ones
08:37:00 <geist> Well sure if you dont have a good case for it then it ain’t happening
08:38:00 <geist> But most of the cases I’ve seen that are just plain old rectangular towers have some facility for an intake filter
08:38:00 <geist> And if you keep it sealed up such that everything has to come in through the proper intakes you can filter a lot of crap there
08:38:00 <geist> Ie not a missing side of the case, etc
08:40:00 <geist> Also i think there’s a bit of an art to balancing intake and exhaust fans. In general if you have more exhaust than intake you’ll create a negative pressure zone which in theory causes the case to tend to collect dust bunnies
08:41:00 <geist> If you have a lot of intake fans it should create a positive pressure that will tend to blow them out
08:47:00 <mrvn> don't see how that would make a difference. If you have dead zones then dust collects there.
08:48:00 <mrvn> best to not let the dust in in the first place.
08:51:00 <kazinsal> yeah I think a lot of the problem in my case (heh) is that there's a bizarre gap and some panels between the exhaust from the radiator and the outside world and it makes dust buildup a problem
08:52:00 <kazinsal> just gotta remember to duster gas the fucker every 2-3 months
12:28:00 <yopodentio> hey
13:26:00 <gog> hi
14:11:00 <zid`> gog what's the weather like in iceland today
14:12:00 <gog> bipolar
14:12:00 <gog> been that way for a few days
14:12:00 <zid`> It's currently 31.4C here
14:12:00 <gog> nice
14:12:00 <gog> it's like 12 here
14:12:00 <psykose> want
14:12:00 <j`ey> not nice,its terrible
14:12:00 <zid`> It's not supposed to get this warm at moscow's latitude, but here we are
14:13:00 <gog> i would love a 30 degree day
14:13:00 <zid`> It's nice if you can escape it
14:13:00 <j`ey> or have aircon
14:13:00 <gog> i grew up in a place where those were normal in the summer so+
14:13:00 <zid`> It's so warm the bees outside are overclocked and doing 500mph
14:13:00 <gog> yessss
14:13:00 <gog> overclock the bees
14:14:00 <zid`> I think one hit a wall earlier, I heard crumbling mortar
14:14:00 <gog> loil
14:15:00 <FireFly> this weekend'll allegedly be 35°C here, which is too darn warm
14:16:00 <gog> ima come to the uk for the weekend
14:16:00 <FireFly> it's 25 currently, which I'm cool with
14:19:00 <GeDaMo>
14:19:00 <bslsk05> ​ Wet-bulb temperature - Wikipedia
14:21:00 <gog> hm 65.000isk for a ticket to london tomorow
14:21:00 <gog> not worth it
14:21:00 <zid`> the main drawback with that is that you end up in london
14:22:00 <gog> yes
14:22:00 <gog> nobody wants to be there
14:22:00 <zid`> especially londoners
14:26:00 <gog> i am having so much trouble getting used to coding on an ISO keyboard
14:26:00 <gog> feel free to point and laugh at my pathetic ANSI-trained hands zid
14:27:00 <FireFly> I had the inverse experience when work gave me an ANSI-kbd lappy
14:27:00 <FireFly> ..and then made it worse for myself by buying the same model but ISO-layout for myself as new personal lappy
14:27:00 <zid`> I'd have refused it and asked for a working laptop
14:27:00 <FireFly> probably should have
14:27:00 <FireFly> ahwell
14:28:00 <FireFly> the main thing is muscle memory for '/<enter> biting me
14:28:00 <FireFly> so many IRC lines ending at "it'" or "doesn'"
14:29:00 <FireFly> or well sans the single quote I guess
14:30:00 <zid`> yea that's what happens if I try to use ansi
14:30:00 <zid`> hello'#
14:35:00 <sbalmos> gah, ISO would drive me mad
14:35:00 <zid`> because it's better and has more keys as well? understandable
14:36:00 <zid`> some people just aren't cut out
14:36:00 <zid`> to type sentenc
14:36:00 <zid`> es on a keyboard
14:36:00 <zid`> sorry accidentally ansi'd for a moment there
14:36:00 <sbalmos> could say the same of dvorak, or steno chord-type keyboards
14:37:00 <psykose> i used to have keyboard wars but then i turned above an age of 12, how's grade school going?
14:37:00 <zid`> Clearly you just gave up, still haven't mastered pressing shift
14:37:00 <sbalmos> psykose: It's Friday. Looking forward to that tasty slice of flat rectangular pizza and over-buttered corn
14:40:00 <zid`> I want like.. half way between iso and jis, with an extra key next to right shift
14:40:00 <zid`> (but not the single-wide backspace)
14:51:00 <GeDaMo> Just design your own keyboard :P
14:58:00 <zid`> I'm not sure I can type onto an mspaint
15:01:00 <GeDaMo>
15:01:00 <bslsk05> ​ Projection keyboard - Wikipedia
15:02:00 <zid`> gedamo you disgust me
15:02:00 <GeDaMo> :D
15:03:00 <sbalmos> oh admit it, you want to go all TRON virtual tabletop keyboard too
15:03:00 <zid`> absolutely not on your life
19:25:00 <sbalmos> interesting. the fuchsia source checkout script doesn't include the bootloader
19:27:00 <geist> depends. which bootloader are you talking about? for what platform?
19:27:00 <sbalmos> I am assuming gigaboot for x86?
19:28:00 <geist> yah that's there
19:28:00 <geist> it should be in i think src/bootloader? or maybe zircon/bootloader? it just got renamed somewhere along the way
19:29:00 <sbalmos> I've got none of the above. I know it's zircon/bootloader in the repo navigator. but it wasn't pulled down locally.
19:30:00 <sbalmos> huh, looks like it may now be src/firmware/gigaboot ?
19:31:00 <geist> ah yeah, possibly there
19:31:00 <geist> yah okay, i thouht we had renamed it, but that seems to be where it is
19:32:00 <geist> that's the UEFI based app that loads zircon on UEFI based machines
19:32:00 <sbalmos> right
19:32:00 <geist> for other more bespoke situations zircon either has a multiboot shim to work with that, or on various arm machines relies on uboot/etc to know how to load it
19:33:00 <geist> in general we're trying to standardize on uefi where possible, but it's not always the case
19:33:00 <sbalmos> nah, I'm just starting at my usual baseline starting point, UEFI entrypoint ;)
19:33:00 <geist> okay
19:34:00 <doug16k> I was shocked to find that xtensa register windowing throws an exception, and the kernel saves out registers (overflow) or brings registers in (underflow), in an exception handler
19:34:00 <doug16k> sounds like that might occur awfully often
19:35:00 <doug16k> 64 registers, 16 visible
19:35:00 <doug16k> I guess you only "scroll" it half the registers so you are in the middle when it returns from that?
19:40:00 <geist> doug16k: yeah that's what sparc does too. i never fully grokked how that works in recursive situations (like tossing an exception while you're taking the exception)
19:41:00 <geist> but i think it's something you set up very early
19:41:00 <geist> also the whole mechanism of spilling things or where to spill it to gets complicated
19:42:00 <geist> iirc when you enter a frame you reserve space for a register spillage, but just dont do it so that the exception can spill it when it needs to? maybe? i forget
19:42:00 <geist> or the kernel has to keep a separate spill buffer somewhere and remember where to restore to
19:42:00 <geist> it all seems like too much complexity for what it's worth
19:43:00 <geist> iirc itanium has something similar, but they decided to do it automatically i think, like the hardware remembers where to spill to and does it automatically
19:43:00 <doug16k> sounds neat on paper. sounds like nothing but register variables
19:44:00 <doug16k> kind of like an analogy of virtual memory, for registers
19:44:00 <doug16k> feels like endless registers
19:44:00 <doug16k> if you keep making calls, more registers just become available, from user perspective
19:45:00 <doug16k> in xtensa, the call instruction has a field that says how much to bump the register window, return too
19:46:00 <torresjrjr> ddevault
19:46:00 <torresjrjr> wjoop
19:46:00 <torresjrjr> whoops
19:47:00 <doug16k> if you wanted to be mean, it's an extremely complicated way to try to avoid pushing/popping callee preserved registers
19:47:00 <geist> i think in general it's considered to be a dead end technology (register windows)
19:47:00 <geist> modern superscalar stuff makes most of that obsolete
19:48:00 <geist> actually surprised to hear xtensa has it, i thought it was mostly designed as an embedded cpu. those tend to not do things like that, and err on the side of simple (ie, microblaze or nios 2)
19:49:00 <mjg_> you keep reminding me of sparc
19:49:00 <geist> i guess it's designed to be more of a DSP like high performance thing
19:49:00 <mjg_> and associated bullshit
19:49:00 <geist> yah sparc honestly i haven't had too much interest in, even considering i'm generally interested in all architectures at least for historical purposes. i read enough about it that i kinda decided, ehhh
19:49:00 <doug16k> you can pick the ABI. register windows or no register windows. they say the register window abi is faster
19:50:00 <geist> it's not novel enough to be interesting, and then it has a bunch of needless bullshit
19:50:00 <mjg_> you are not sun-flavored?
19:50:00 <geist> ultrasparc (v9) might be more interesting if nothing else because it is a software TLB miss architecture
19:50:00 <mjg_> i was perplexed to find it has software tlb
19:51:00 <mjg_> sorry, that's the one i meant :-P
19:51:00 <geist> well, i have a few sun boxes, but they're all v8, whcih IIRC *does* hae a more traditional page table?
19:51:00 <mjg_> i remember watching a video with one of the cpu designers
19:51:00 <geist> i had a sparc v9 years ago, but got rid of it. now they're kinda expensive on ebay so above the threshold of what the hey
19:51:00 <mjg_> about the history of the cpu
19:51:00 <mjg_> if you did not know any better you would think it's the best shit ever
19:52:00 <geist> iirc they basically took the stanford design and went with it, whereas berkeley had the mips design
19:52:00 <geist> (or maybe vice versa)
19:52:00 <geist> competing grad student projects made into hardware
19:54:00 <geist> but at the time (late 80s,etc) they were still good designs. i dont tknow of at the time any sparcs were ever known to be paritcularly high performance, but i think they at least held pace with the rest of the risc machines
19:54:00 <geist> and of course sun made some pretty big boxes out of it, though the architecture may have had little to do with it
19:54:00 <geist> but like a 20 core machine in 1992 or so was kinda a big thing
19:55:00 <mjg_> don't get me started on solaris vs multicore
20:03:00 <heat> why do we prefix libraries with "lib"
20:03:00 <heat> when did that become a thing and why
20:04:00 <heat> it's pretty odd
20:05:00 <heat> i need a historic deep dive down the rabbit hole
20:05:00 <heat> like but for lib
20:05:00 <bslsk05> ​ Please Wait... | Cloudflare
20:06:00 <mjg_> heh, now that you mention it, i never wondered about the v
20:12:00 <doug16k> wow. there are separate RFWO and RFWU instructions, return from window overflow, and return from window underflow on xtensa. that's interesting
20:21:00 <doug16k> at one point you could just cat together a bunch of .o right?
20:21:00 <doug16k> linkers didn't even insist on an index
20:21:00 <doug16k> for lib files I mean
20:22:00 <mjg_> oh?
20:23:00 <doug16k> ranlib just indexes a bunch of concatenated .o essentially, afaik
20:24:00 <doug16k> that doesn't explain why .a isn't enough and they put lib prefix on it
20:27:00 <doug16k> maybe .a is the concatenated .o files and putting lib in front means "and I ranlib'd it too and there is an index"
20:27:00 <doug16k> that's my guess
20:28:00 <klange> .a files are an actual archive format
20:29:00 <doug16k> I mean historically
20:29:00 <klange> historically
20:29:00 <doug16k> why does ranlib exist
20:29:00 <klange> they were _the_ archive format before ustar
20:29:00 <klange> because reading an archive is slow
20:30:00 <doug16k> how can it not have an index
20:30:00 <klange> even ustar still has the same problem, you have to read the whole thing to find out what files are in it
20:30:00 <doug16k> who creates it with no index?
20:30:00 <klange> it's a generic archive format!
20:30:00 <doug16k> that some other program has to screw with? and add new stuff?
20:30:00 <klange> indexes are extra bytes
20:31:00 <klange> that's more space on your tiny gigantic hard drive!
20:31:00 <graphitemaster> how dare you need to know what files are in a file and where they are, who do you think you are
20:31:00 <graphitemaster> the file mage
20:31:00 <klange> And those indexes are specific to the use of the archive format for storing object files, as they list symbols
20:32:00 <klange> look at the actual steps of making a .a, it's just "run the archive tool to add a bunch of files" and then "run this tool to add the very-specific-to-this-use-case index, maybe, optionally, up to you"
20:32:00 <doug16k> you mean now
20:33:00 <doug16k> not on a 286
20:33:00 <klange> the fuck is a 286, this stuff was written in the 70s
20:34:00 <doug16k> ok
20:39:00 <klange> fwiw I don't run ranlib, my archives do not have an index, and they work fine, so I don't know what doug is talking about
20:39:00 <clever> i suspect its just a performance thing
20:39:00 <clever> how long it takes the linker to find a given symbol
20:40:00 <klange> ar was the pre-ustar archive format, it was entirely generic; the usecase didn't need the improvements of tar/star/ustar, so the C toolchain stuck with it
20:41:00 <klange> why ranlib is a separate tool is because everything is separate tool; ranlib does something very specific to the usecase of "this archive is a bunch of object files that need to be treated as a library", so that's not something the archive tools is going to support by default - separation of concerns and all that
20:44:00 <klange> (ranlib actually _isn't_ a separate tool in the gnu toolchain)
20:44:00 <klange> (since no one uses ar for anything else anymore, that functionality _was_ baked into it)
20:45:00 <clever> ar is also used by .deb files i believe
20:45:00 <heat> wasn't deb .tar?
20:45:00 <klange> nah, deb is all tar
20:45:00 <clever> you can unpack a .db with `ar x`
20:45:00 <clever> inside the ar, is .tar files
20:45:00 <clever> so its both!
20:46:00 <clever> [nix-shell:~/Downloads/t]$ ar x ../cncnet_1.0_all.deb
20:46:00 <mjg_> what does file(1) say
20:46:00 <clever> this produces a control.tar.gz, a data.tar.xz, and a debian-binary
20:46:00 <clever> cncnet_1.0_all.deb: Debian binary package (format 2.0), with control.tar.gz, data compression xz
20:46:00 <clever> file knows its also a debian package, and is hiding the ar nature
20:47:00 <mjg_> lies on top of lies
20:47:00 <clever> [clever@amd-nixos:~/Downloads]$ file --keep-going cncnet_1.0_all.deb
20:47:00 <clever> cncnet_1.0_all.deb: Debian binary package (format 2.0), with control.tar.gz, data compression xz\012- current ar archive\012- data
20:47:00 <clever> ah, there, now it says its an ar archive
20:48:00 <mjg_> huh TIL about the flag
20:49:00 <klange> I did not know that. Interestingly, file-roller does not understand generic ar's but does understand debs.
20:49:00 <clever> i just assumed it must be a thing, and checked --help
20:53:00 <geist> huh interesting
20:53:00 <geist> the flag that is
21:10:00 <heat> "no one uses ar for anything else" is that a challenge?
21:10:00 <heat> package format based on ar?
21:10:00 <heat> maybe I'll send archives to people in .a.Z
21:11:00 <heat> "consult your system's legacy UNIX utilities in order to unpack it"
21:18:00 <klange> tar/star/ustar solve real problems with ar, which is why normal archive usage has moved away from it
21:30:00 <kazinsal> I think the linux standard base people decided that ar should go away because it's a dev tool and *checks notes* the world's most popular operating system for doing software development on doesn't need dev tools in the standard distribution
21:36:00 <FreeFull> Hm, binutils on Arch has ar
21:37:00 <klange> Yes, it's still part of the C toolchain
21:40:00 <heat> kazinsal, you want a toolchain everywhere?
21:41:00 <kazinsal> hell yeah if you're touching a linux you should have a full local toolchain
21:41:00 <heat> every docker container just grew by 1GB because of binutils + gcc being part of the LSB
21:41:00 <psykose> love to carry around 400MB of the base toolchain in everything just because
21:41:00 <kazinsal> what's the point in open source or "free software" or whatever you want to call it if you can't turn juicy UTF-8 into machine code
21:42:00 <heat> well, you can't turn juicy UTF-8 into machine code because then you get source code exploits
21:42:00 <heat> ASCII only or riot