<heat>
"hey bud can you turn off the fans i'm trying to sleep here"
<mcrod`>
it’s virtually silent
<mcrod`>
besides she likes to climb on the case now
<mcrod`>
at least she’ll have a harder time shutting it off
[itchyjunk] has quit [Remote host closed the connection]
<zid>
okay I can now sort of play piano
<zid>
if you give me 10 seconds per note
<geist>
mcrod`: ooh so you pointed them all the right way and it's silent?
<geist>
funny, someone on another discord had more or less the same problem the other day, they had the front fans as exhaust and half the other fans as intake
<geist>
and it was super noisy
<geist>
we told em to turn them around and it quieted down and works better
<heat>
what do CPUs usually do on e.g lock xadd to ensure forward progress? vs cmpxchg or whatever
<heat>
stupid question
<heat>
i guess they just grab the cacheline exclusively and do the add
edr has quit [Quit: Leaving]
rustyy has joined #osdev
<geist>
in the old days the lock meant 'lock the bus'
<geist>
basically keeps any other bus masters (other cpus, dma) from doing a memory transaction in the middle of it
<geist>
but tht was back when things truly were a bus
<clever>
related, i saw a guy on YT fixing 2 motherboards where turbo was broken
<clever>
one had turbo stuck on, the other stuck off
<clever>
and after RE'ing it, he found that a PLA was just PWM'ing the L1_flush pin of the cpu
<clever>
that pin forces the cpu to flush the cache and halt until its released
<heat>
yeah i just had a brainfart and was like "why the cmpxchg no forward progress but atomic add forward!!?!?!?"
<geist>
oh hah, cute
<clever>
so 90% of the time, the cpu was in halt
<clever>
but, i can see how that pin was meant to help with dma
<geist>
yah in the pentium 2/3 days the usual way to get IBM AT class speed is go in the bios and disable the L2/L1 cache
<clever>
L1 is flushed, so its now coherent, and the cpu is halted, so dma can do its thing
<clever>
but he also mentioned other methods, that mess with the PLL to change the base clock
<clever>
du -hc --max=0 $(nix-store -qR ./result) | sort -h
<bslsk05>
'Turbo in a retro PC - explanation and repair.' by Necroware (00:21:31)
<heat>
how does taht work for modern x86?
<heat>
DMA <-> cache coherency
<zid>
only DMA to UC memory :P
xenos1984 has quit [Read error: Connection reset by peer]
troseman has joined #osdev
troseman has quit [Client Quit]
gxt has quit [Remote host closed the connection]
<clever>
heat: my rough understanding, is that the dram controller and the pcie controller are both in the x86 cpu, and dma is free to snoop on the caches
gxt has joined #osdev
<zid>
but yea handily, pci-e is the shit, so if it's over pci-e it JUST WORK
<zid>
pci-e is the new external memory bus
<geist>
heat: i assume it's something like how ARM does it where the cpu grabs an exclusive on the particular L1 line the data is in
<geist>
and either delays any other core from taking it away in the middle of the thing, or does the retry logic like ARM/riscv does
<clever>
i feel like the L2 cache must also be aware of the state of every L1 cache?
<geist>
yerah, and it does anyway
<heat>
i see, so DMA acts as another core?
<geist>
and the L3, and cross socket, etc etc. it's already a complicated mess, so the hardware is basically already there
<clever>
so you could ask the L2 about cached data, and not talk to the L1's directly
<geist>
heat: good question. i have no idea what happens if you do an atomic and simultaneously DMA over it
<geist>
that may be undefined
<geist>
like DMA may be cache coherent, but maybe doesn't completely play with all the rules there?
<heat>
surely you mean UNDEFINED
<geist>
UNDEEEEEEFIND
<heat>
IMPLEMENTATION DEFINED
<geist>
but of course if the atomic is a rust atomic then it's fine by definition
<heat>
RUST CPU
<heat>
RUST CPU
<geist>
```rust std::atomic```
<geist>
rust``` std::atomic```
<heat>
verilog? more like veriunsafe
troseman has joined #osdev
<geist>
verilag
<geist>
vore a log
<heat>
verislog
troseman has quit [Client Quit]
<clever>
on the VPU, L2 cache is handled in a fairly simple way
<clever>
there is a 1gig window from the axi router, that forwards all requests to the L2 cache
<geist>
i figured out why the visionfive 2 is fully coherent too, it's actually a pretty nice solution
<geist>
maybe slow, but coherency FTW
<clever>
and if there is a cache miss, it just sends it back out to the axi router, with the top 2 bits set, which routes it to the dram controller
<clever>
both cpu cores and dma can then freely use that L2 window
<clever>
and they are essentially equal in power
<geist>
hmm, is that a write through L2?
<clever>
not sure
<clever>
but it will evict to dram when a miss needs more space
<clever>
and there is another window in the axi router, that is non-allocating
<clever>
so an L2 miss will proxy from dram, but not store to L2
<geist>
but yeah that's basically an outer cache that cpus and all bus mastering sits on top of
<clever>
yep
<geist>
that's also somewhat common as an L3/L4 cache that some ARM socs have. where the inner caches are not coherent, but the outer one is basically sitting between the ram and everything else
<geist>
and thus coherent since everything goes through it
<clever>
and you can configure the pi2-pi3 to treat that as an L3 cache, doing exactly that
<clever>
in theory, it would reduce latency for dma
<clever>
the stock setup, involves an arm L1/L2 flush to dram, then dma from dram
<geist>
yah at the cost of competing for cache with things that may or may not need it
<clever>
so your paying the dram latency twice
<geist>
yah
<clever>
yeah
<clever>
and with only 128kb of "L3" cache, and 512kb of L2 cache
<clever>
its a bit unbalanced
<clever>
isnt L3 normally bigger then L2?
<heat>
yea
<clever>
oh, and one issue with the VPU design, i dont think the L2 is aware of the L1
<clever>
so you need to manually flush the L1 before initiating dma
xenos1984 has joined #osdev
gxt has quit [Remote host closed the connection]
gxt has joined #osdev
<clever>
but, the L1 cache is more async in terms of control, you write a min/max addr to MMIO, hit the flush flag, and then either go do something else, or spin until MMIO says done
<clever>
while on arm (and x86?) its a co-processor register that will probably stall if you hit it too much, and dmb will stall intentionally
<clever>
i think?
heat has quit [Ping timeout: 240 seconds]
stolen has joined #osdev
<zid>
when are we all switching to Hard Hat linux
divine has joined #osdev
smeso has quit [Quit: smeso]
smeso has joined #osdev
m3a has joined #osdev
freakazoid332 has quit [Ping timeout: 255 seconds]
Vercas has quit [Remote host closed the connection]
<Bitweasil>
The 3900 Ti, is that the one that needs the small power station to run it?
<mcrod`>
i don't know what you mean by that
<mcrod`>
if you mean it takes up a shitload of power
<mcrod`>
then yes :p
<Bitweasil>
Why do you have two GPUs?
<mcrod`>
i don't
<mcrod`>
I'm going to assume that's iGPU
<Bitweasil>
Sez you do in your hardware stats. :p
<Bitweasil>
Oh, I didn't think the high end desktop chips had those.
<mjg>
weird
<mjg>
i have ubuntu 22.04.3 and a 5.15 kernel
<Bitweasil>
Enough RAM though. ;)
<mcrod`>
this is a fresh install
<Bitweasil>
128GB ought to be enough for most people for a while. ;)
<mcrod`>
Bitweasil: yes I can finally do a full LTO LLVM build
<mjg>
i do see 6.2 in the search tho
<mjg>
6.2
<mcrod`>
i don't plan on updating to the next LTS until the last minute
<Bitweasil>
I usually upgrade about 1-2 years in.
<mcrod`>
depends on what the new LTS has to offer
<mcrod`>
I'm terrified of upgrades on Linux
<mjg>
i updated ubuntu since 18.04
<mjg>
> The kernel uplift includes a bunch of features, including an updated NTFS3 kernel driver
<mjg>
lol
<mjg>
ntfs3 is known to be incredibly buggy
carbonfiber has joined #osdev
<Ermine>
I tried it once and I don't want it anymore
<Ermine>
my system literally failed to boot
<geist>
try what?
<Ermine>
new ntfs kernel driver
<zid>
fuse-3g for life?
<geist>
hmm is it in kernel or fuse?
<Ermine>
kernel
<Ermine>
fuse one is ntfs-3g
<zid>
I'll give it 10-20 years before I use the kernel one
<zid>
fuse's ntsf-3g has worked correctly for me
<Bitweasil>
I really haven't had to interact with NTFS much in the past 5 years or so. exFAT is good enough for cross platform large file transfer these days.
<Bitweasil>
And I don't really do Windows anymore, so I don't have to interoperate with it, almost all my externals are exFAT if I have reason to use them with anyone else, or ext4 for my own use.
<geist>
i haven't really benchmarked the fuse ntfs, but i think for simple cross transfer it's probably fine
<zid>
It's not a thing you need often
<zid>
but hwen you do need it, you NEED it
<mjg>
did you know btrfs has a converter form ntfs :D
<geist>
but of course someone will want to do audio mixing, or play their games off it via some emulation layer, etc
<zid>
"Oh fuck, windows has exploded and I need to get all my files off before I wipe this drive" or whatever
<nortti>
I've actually had better luck with ntfs than with exfat transferring things over crossplatform, but my situation is admitedly weird
<mjg>
Z F S
<mjg>
:S
<geist>
and yeah exfat i'm no longer worried about corruption, since everything seems to work with it now, vs 5 years ago
<zid>
another classic "Fuck, I left the github private key on the windows partition of the machine I stopped using 2 years ago"
<geist>
which is good cause sd cards and whatnot are getting big now, and FAT32 strettched to 256GB or so is pretty sad
<Ermine>
it is sad that it becomes harder to find small sd cards or usb drivers
<zid>
The 2G file limit is all I ever cared about with FAT derivatives
<Bitweasil>
FAT32 is pretty sad regardless. No >4GB files? :p
<Bitweasil>
Is it 2GB?
<zid>
yea
<mjg>
brah
<geist>
tis true
<mjg>
what's the inode limit on the sucker
<Bitweasil>
I haven't used FAT for anything except EFI and /boot partitions in... man. About forever.
<nortti>
do they store the file size signed?
<zid>
or aligned to 2 with a flag, who knows
<geist>
i dont think there's a real inode limit on FAT, since there are no inodes
<Bitweasil>
Except FAT16 on small partitions for some screwball UEFI or BIOS update USB stick.
<Bitweasil>
I had something that was genuinely FAT16 only.
<zid>
I hand wrote a fat12 once 20 years ago
<zid>
beyond that I don't know anything
<Bitweasil>
Stuff a 128MB partition as partition 1, FAT16, update BIOS, recover to drive to something sane.
<nikolar>
does fat16 even support directories
<geist>
yep
<zid>
fat16 isn't even the small one!
<zid>
fat12 is
<nikolar>
yeah i know
<geist>
the difference is fat12 and fat16 both have a fixed root directory, but the secondary subdirectories it supports
<Ermine>
implementing fat32 in sortix was painful
<geist>
fat32 has a full variable sized root dir
<geist>
fat 12 caps around 4MB and fat16 caps around 2GB partitions (though that's at a full 32K cluster)
<zid>
fat12 is perfect for floppy disks, however
<nortti>
iirc fat12 is used up to 20 megs
<geist>
ah you're right. 4096 clusters, max cluster size is 32K, so that's like 128MB
<geist>
at 512 byte clusters which is the usual floppy size, that caps at 2MB
<zid>
basically hand-designed to be good at floppies
<geist>
hand designed *for* floppies. hard drives came along a bit later
<zid>
I miss floppies, I wish we got those again instead of SD cards
<geist>
well, hard drive support
<zid>
SD cards are nice for phones, but fucking useless for anything else
<zid>
too small and losable, can't label them, fragile, etc
<nortti>
< geist> at 512 byte clusters which is the usual floppy size, that caps at 2MB ← interestingly enough 320K and 360K floppies use 1024K cluster
<nortti>
presumably to keep the FAT in one sector
<geist>
hmm, yeah
<geist>
i always mix up the MSFT doc that rbasically specs the transition points between the FATs at 4MB and 512MB
<geist>
but that's with the clusters still at a semi small and reasonable size, not the absolute max size
<geist>
i do remember the max size of FAT16 being sort of an issue if you wanted to dual boot windows and NT 3.51 and NT 4, since IIRC NT didn't get FAT32 support until later
<geist>
so you had to keep around a FAT16 partition, since windows 3.1/95 would never root on a NTFS drive
<nortti>
aiui fat32 was introduced in a later version of win95
<geist>
so as you started to get into 1GB+ drives in the mid to late 90s you had to increasingly go full on NTFS and dual booting was a problem
<geist>
but NT eventually got FAT32 support, it was just a bit later
<zid>
and then we used fat32 until it was way past fit for purpose
<zid>
as usual
<geist>
it also wasn't as flexible as you get now: both windows 95 and i think NT had these rules that the root dir had to be C: and c: was always the first partition on the first disk
<zid>
What about UDF btw, I seem to recall that every DVD I ever looked at had its VOBs split at 2GB or 4GB
<mjg>
that's no longer true on windows?
<kof1231>
yes, i beileve fat32 was "windows 95b" or some such
<sortie>
hello it me
<zid>
sortie am UDF
<geist>
yah NT may not have gotten FAT32 until win2k? or mayb e it was a later patch of NT4
<mjg>
oh??
* mjg
has to say NT's history if very different from what he thought
<geist>
mjg: they didn't unify the two lines until windows XP, 2001
<mjg>
that i know
<mjg>
but it does not mean it could not have fat32 way prior
<geist>
yah though NT from day one had NTFS, which was basically always superior, so the only reason NT would have had it was to be compatible with win9x
<mjg>
hm... was there a fat to ntfs converter?
<geist>
yep, there always was
<mjg>
right
<geist>
something like CONVERT/NTFS
<mjg>
so probably that's why
<mjg>
i have vague recollection win 2k installer was offering it
<geist>
in fact i vaguely remember something like in NT3.51 you always had to install on a FAT partition and then convert it later?
<sortie>
I was quite surprised to learn FAT12/FAT16/FAT32 have the exact same feature set, root dir aside
<geist>
yah pretty much, there's that secondary superblock on FAT32 with some additional flags, like a dirty flag, and some sort of free space hint, but that's about it
<mjg>
hm
<mjg>
i installed iwndows 3.5-something few weeks back
<mjg>
i think it was all ntfs
<geist>
kk
<geist>
NT 3.51 on modern hardware is so fast it hurts
<mjg>
it boots with a smp-capable kernel for hte installer
<geist>
yah SMP vs no SMP kernel was an actual notable thing up through at least win2k
<mjg>
which is probably fine, but i find amusing because openbsd is doing the opposite(!)
<geist>
XP is when they changed the blue boot screen to a logo and whatnot, so if there still was a separate kernel you didn't raelly see it
<mjg>
arguably if they ship 2 kernels
<mjg>
they could check in the bootloader
<geist>
iirc you didn't have to license NT for something like >2 cpus, but then >2 cpus back in the late 90s/early 2000s was basically a big server
<heat>
wasn't there a pae kernel too?
<geist>
i had a dual ppro in like 1997, which was not really that expensive. 2 socket/slot boards were pretty reasonable in the late 90s, since there was yet to be any bifurcation in the intel and amd line for client vs server chips
<geist>
so you just had to get the motherboard and then you had an open upgrade option now or in the future for a second cpu
<heat>
<mjg> ntfs3 is known to be incredibly buggy <-- ntfs3 works fine
<geist>
wasn't until about 2000 that xeon came along and then AMD followed suit a bit later
<heat>
it has bugs when you fuzz the shit out of it, but normal usage works a-ok
<heat>
i'm not saying fuzzing is for dumb dumbs, but fuzzing is for dumb dumbs that have nothing else to do except nitpick
<geist>
baaaasically
<geist>
i have my opinions about fuzzing too
<mjg>
OH
<mjg>
fuzzing is stale now that we have RUST #changemymind
<geist>
RUUUUUUST
<heat>
like either the root user is trusted and can fuck up your machine, or it's not and we have to fuzz everything, substancially increasing developer and maintainer overhead
<heat>
linux is somehow stuck in both, and everyone has their own opinions on kernel lockdown and secure boot
<mjg>
that fuzzing shit is or plugging in pendrives
<mjg>
for
<heat>
not only pendrives but all kinds of crap, since user = bad
<geist>
yah i'm torn about it. fuzzing *can* and *does* catch good stuff, but it also catches a lot of noise
<mjg>
3rd party pendrive in your laptop == defo an attack vector
<geist>
and it requires a lot of time for folks to separate the two
<heat>
fs fuzzing is developed for a threat model where only trusted/signed binaries are safe
<mjg>
so for example i think fuzzing ntfs is a waste of time
<mjg>
but fuzzing fat for these fuckin' pendrives is not
<geist>
since the fuzzer doesn't kow the difference, it really puts the onus on the maintainer. of course what i'm saying is not news, it's what heat just said, i'm just sort of restating the obvious
<mjg>
's all we do on this channel
<geist>
fuzzing and looking for disk corruption or crashing the machine == good
gildasio has quit [Remote host closed the connection]
gildasio has joined #osdev
<nikolar>
kek
sjrct has quit [Ping timeout: 264 seconds]
<geist>
well, anyway, how about that on topic conversation
<Ermine>
yeah let's go on topic
<zid>
you'll never take us alive
<heat>
fuzzing
<nortti>
< heat> вд-40 ← вода-40
<Ermine>
fuzzing good
<heat>
it's good as long as you can prove it's useful
<mjg>
lol
<heat>
fuzzer proves stability = fuzzer poggers
foudfou has quit [Remote host closed the connection]
foudfou has joined #osdev
<sham1>
POGGERS
<kof1231>
bryan cantrill's descendants (of which he has many of course, obviously) will find this log someday, and go WTF?
<heat>
if i found a random IRC log and people there were saying my dad is a prolific kisser of women, i would be very proud
<Ermine>
I don't think fuzzing can be harmful
<Ermine>
If you catch some bugs: cool, if you catch none: nothing really happened
<mjg>
what if you catch stupid shit not worth investigating
<heat>
if you catch some bugs it'll eventually need to go through a hooman, that's what we were on about a few minutes ago
<heat>
for better or worse, legacy software isn't quite equipped to deal with all sorts of dumbass input when it has been trusting that same input for the last 30 years
gildasio has quit [Remote host closed the connection]
gildasio has joined #osdev
<zid>
If it's just a crash that would never ever happen without the fuzzing, it's just a code quality issue
<zid>
and code quality issues only matter if that code will need maintaining in future
<zid>
or used as a reference implementation, etc
<zid>
so whether it's worth reporting or not depends on more than just "does it crash", basically
<bslsk05>
lore.kernel.org: Re: [PATCH] fs/exec.c: Add fast path for ENOENT on PATH search before allocating mm - Kees Cook
<heat>
z e r o d a y
Cindy is now known as bnchs
<heat>
actually it's just the bot
<heat>
not a real 0 day, boring
ThinkT510 has joined #osdev
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
<mjg>
heat: asked some hard hitting questions there :X
Turn_Left has quit [Remote host closed the connection]
Turn_Left has joined #osdev
Turn_Left has quit [Ping timeout: 260 seconds]
<mjg>
heat: lol, i just realised freebsd was already doing the lookup upfront
<mjg>
heat: AHEAD OF LINUX ONCE AGAIN
Turn_Left has joined #osdev
<gog>
hi
<gog>
i'm on linux
<gog>
pray for me
<Ermine>
happens
<childlikempress>
mjg: watchout, linux is catching up
<gog>
linux
<gog>
lonux
<childlikempress>
lunix
<heat>
this mateus gusig guy is going after freebsd
<childlikempress>
matoos goose of netcraft confirms it: linux is killing freebsd!
<heat>
hi its me notch pearsson
<heat>
sorry, persson
<heat>
sometimes i misspell my name
<heat>
im notch persson creator of minebsd and i can confrim openbsd is killing windows
aosync has quit [Changing host]
aosync has joined #osdev
<sortie>
heat, are you keeping up with my with the latest Sortix updates?
<heat>
keeping up with the sortices
<heat>
sortien
<heat>
sortie, what happen
<heat>
how are you going to shame my system's usability this time around
<mjg>
rebased on onyx
<mjg>
is my guess
<mjg>
ord id you finally commit smp
<sortie>
heat, I have done nothing and my system still slays you :)
<heat>
ouch
<zid>
notch has always been a prick to me when we've spoken, 10/10
gbowne1 has joined #osdev
<zid>
Maybe one day he'll give me the 30k he owes me
<heat>
we should not gloss over how his last name is literally persson
<zid>
Did someone say 片翼の天使
gbowne1 has quit [Remote host closed the connection]
gbowne1 has joined #osdev
<gorgonical>
Every day I get close to deciding weakly typed languages are for cowards and the only virtuous way to write system code is with something like Ada
<zid>
I'm just thankful I get types
<heat>
c
<zid>
Have you seen javascript
<gorgonical>
Probably fully half of my mistakes in C are just doing things with casts/types wrong and not realizing
<gorgonical>
And a less compliant compiler would prevent them I think
<zid>
there are a lot of people who write C
<zid>
There are relatively few people who know C
<zid>
Rust would have the same issue with unsafe and shit if people actually wrote rust
<gorgonical>
I mean recently I made the if (x = y) mistake because of a typo and was falling into an erroneous if and it took a long time to spot it
<zid>
..spot?
<zid>
compilers have warned about that for 25+ years
<gorgonical>
Maybe the lesson here is I should much more closely scrutinize my compiler warnings
<zid>
why do you have warnings? O_o
<gorgonical>
I do look at them but I think my eyes have learned to ignore certain ones as "noise"
bauen1 has joined #osdev
<zid>
none of my code produces warnings on -W -Wall -O3
<zid>
unless a newer gcc version got better
<zid>
at giving diagnostics
<gorgonical>
Once I'm done none of mine do either, but when my code is littered with printks to debug shit I'm often casting sizes and shit with abandon
dude12312414 has joined #osdev
<zid>
but.. casts supress warnings..
<gorgonical>
but the printks don't cause me to wander into the wrong if statement, so those are okay
<zid>
I only allow warnings during dev if I know the implications
dude12312414 has quit [Remote host closed the connection]
<zid>
"truncated to fit" "That one's fine because I know my test data has a broken value I need to fix still" or whatever
steew has joined #osdev
<gorgonical>
I just put that = error back in and the compiler didn't yell at me. Did we disable Wall lol
<zid>
or -Wno-paranthesis
<zid>
paren
<gorgonical>
we don't have Werror so maybe that's it
<gorgonical>
Any flags in there that seem suspicious?
<gorgonical>
I don't know all the gcc warnings flags without reference
<zid>
what is -include
<zid>
does that..insert #includes?
<zid>
this codebase is.. yea
<gorgonical>
That one's before me
<gorgonical>
So I dunno what it does
<childlikempress>
I used -include once
<childlikempress>
I think
<childlikempress>
don't remember why or what for though
<gorgonical>
Yes it literally includes a file according to info
<zid>
and one of them says -linclude
<zid>
?
carbonfiber has quit [Quit: Connection closed for inactivity]
<zid>
-fno-common suggests this is C++ code, -fno-strict-aliasing suggests C++ code written by a bad programmer
<gorgonical>
I don't see -l
<zid>
oh it's an I
<gorgonical>
Why does no-common suggest c++
<zid>
should probably remove all those -fno- options and see if they actually trigger anywhere, globally ignoring bugs because some file somewhere was written badly
<zid>
they do stupid things with compiling code inside headers
<zid>
and constantlyf all afoul of -fcommon
<zid>
#gcc was "guys how do I fix-" "add -fno-common and try again" for months after they changed the default :P
<gorgonical>
but -mkernel sets -fno-common
<gorgonical>
?
<zid>
okay pruned this list down
<zid>
and replicated the lack of warning
goliath has quit [Quit: SIGSEGV]
<zid>
found it
<zid>
some idiot passed -w
<zid>
-w should cause a warning that -w was passed :P
<gorgonical>
!!!
<gorgonical>
WAT. I have just seen in the makefile for an arch :"
<gorgonical>
"todo ignore warnings, remove this later"
<gorgonical>
bruh
<gorgonical>
cflags-y += -w
<zid>
told ya an idiot made it
<gorgonical>
I've just been flying by the seat of my pants this whole time lmao
<zid>
This guy's getting ALTITUDE, ALTITUDE, ALTITUDE alarms in his aircraft and trying to find where to disable the speaker
<gorgonical>
The other way around
<gorgonical>
"The plane is awfully close to the ground but I'm not getting any warnings... What's up?"
<gorgonical>
I know what I'm doing the rest of the night: fixing all these warnings
<zid>
and remove all those fucking -fno
<zid>
and add them to *specific* files if you can't apply a supression
<gorgonical>
Thanks zid lol
<zid>
(a suppression is something like (void)x; to get rid of unused param warnings, and ((x = 4)) to get rid of assignment inside if)
<zid>
beyond that you can also pragma push/pop warnings
<acidx>
even to specific files is something I don't like to do. I prefer to `#pragma GCC diagnostic push / #pragma GCC diagnostic ignored "-Wthe-specific-warning"`, a comment explaining why the warning is ignored, the code that would trigger the warning, and `#pragma GCC diagnostic pop`
<acidx>
the usual caveat about using pragmas, yadda yadda
<zid>
Yea just document it somewhere
<zid>
if your build system is the best place for that, there
zetef has quit [Remote host closed the connection]
gbowne1 has quit [Read error: Connection reset by peer]
carbonfiber has joined #osdev
goliath has joined #osdev
<netbsduser`>
i've been working on revamping my vmm in userland simulation (i made a pseudo 'port' of my kernel to run hosted)
<netbsduser`>
making reasonable progress
<netbsduser`>
i plan to add threads to it and then i can implement all sorts of fun test cases. objective is to weed out any bugs (thread sanitiser and co will help me ensure locking is sound) and stress-test conditions like out-of-memory
stolen has quit [Quit: Connection closed for inactivity]