<heat_>
why are vm regions never represented on a radix tree?
<zid>
I'd imagine just to spite you
heat_ is now known as heat
<heat>
maybe
<heat>
i imagine a reason may be insertion/removal time?
<heat>
and overall memory usage I guess
<geist>
probably because they're variable sized?
<geist>
seems like radix trees work great for stuff that's small and fixed size, or one of N fixed sizes
<geist>
at first thought i'd think a region would cross radix buckets in unfriendly ways and there'd be some complexity (and/or lots of pointers) to solve that
<heat>
yeah maybe
<heat>
mapping a 128MiB region would require naiively 32768 entries
<heat>
assuming a favourable implementation with huge-page-like entries would require what at most some 66 entries?
<heat>
err, sorry
<heat>
64 + whatever spills into the small 4KB entries
<heat>
it would heavily depend on alignment I guess
<heat>
and 128MB is already a super favourable size
gog has quit [Ping timeout: 252 seconds]
smach has joined #osdev
\Test_User has joined #osdev
[itchyjunk] has joined #osdev
zaquest has quit [Remote host closed the connection]
zaquest has joined #osdev
carbonfiber has quit [Quit: Connection closed for inactivity]
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
[itchyjunk] has quit [Remote host closed the connection]
smach has quit [Read error: Connection reset by peer]
gxt has quit [Remote host closed the connection]
gxt has joined #osdev
<mrvn>
Every kernel uses a radix tree to represent memory (on most archs), it's called a page table.
<mrvn>
geist: if you don't want an allocation to spand buckets you can align it. Wastes a lot of address space but in 64bit who cares?
<geist>
well lots of things care, and it's not infinite space
<geist>
you can pretty quickly run out if you start doing over aligned stuff
<mrvn>
you would round up to the next level of the tree. So it depends on how many bits you use per level.
<mrvn>
But even using the 9 bits a page table has given the amount of ram and address space you have you need to map the same page a lot of times to run out of address space.
* geist
nods
<mrvn>
or map a huge chunk and then free all but a page of it just to hold the region locked.
<mrvn>
You can map 256 512GB chunks (one of them you need to the program and stack at least). It's not impossible to fill that, just unlikely.
<dormito>
does anyone know of a 'readelf' like tool for COFF/PE (I)
<dormito>
I'm looking to see the meta info in a dll
<kazinsal>
I would assume objdump could do it
<kazinsal>
worst case you could do a cross-binutils build for whatever the target platform is and use that objdump
<dormito>
thanks, I see a 'header dump' option on objdump (will have to look into the options more though). And yeah, gentoo makes builting cross-tools really easy.
maxdev has quit [Remote host closed the connection]
maxdev has joined #osdev
maxdev has quit [Remote host closed the connection]
maxdev has joined #osdev
SGautam has joined #osdev
rurtty has joined #osdev
Ali_A has joined #osdev
<jimbzy>
Wow. The Alder Lake BIOS source code was leaked.
<maxdev>
guess it's good if that code gets crowd-reviewed :P
<jimbzy>
"Our proprietary UEFI code appears to have been leaked by a third party. We do not believe this exposes any new security vulnerabilities as we do not rely on obfuscation of information as a security measure. This code is covered under our bug bounty program within the Project Circuit Breaker campaign, and we encourage any researchers who may identify potential vulnerabilities to bring them our attention through this program."
<bslsk05>
twitter: <NikolajSchlej> @hughsient @_markel___ If that is really a KeyManifest signing key, and there are any machines that have a hash of the public key fused into FPFs, BG on that platform is under nearly full control. I.e. one can generate a new BootPolicy signing key and protect any BG-protectable range, including none.
<dzwdz>
the signing key supposedly leaked
maxdev has quit [Ping timeout: 265 seconds]
<dzwdz>
it did leak, it's in the repo
<zid>
avx-512 for everybody?
bauen1 has joined #osdev
Ali_A has quit [Quit: Client closed]
xenos1984 has quit [Ping timeout: 260 seconds]
xenos1984 has joined #osdev
IRChatter has joined #osdev
regreg has quit [Ping timeout: 268 seconds]
heat has joined #osdev
<heat>
can you please not share illegal shit here? thanks
<heat>
particularly, this shit is actually semi on-topic
<jimbzy>
I just saw the story on /.
<heat>
right, its fine to talk about it
<heat>
not fine to share fucking links
<jimbzy>
Yeah, I wouldn't touch it with a 10m pole.
<heat>
anyhow, re: signing keys
<heat>
these are not intel keys
<heat>
this was not even an intel leak
<dzwdz>
it was from some lenovo associate, right?
<heat>
insyde
<jimbzy>
I figured they'd be test keys or something like that.
<heat>
no clue
<heat>
it's pretty astonishing how tone deaf some people are
<heat>
"oh, the intel fw leaked? better post it to coreboot"
xenos1984 has quit [Ping timeout: 250 seconds]
<zid>
Yea it's people's gut instinct to immediately send leaks to people doing clean room RE
<zid>
Just shortsighted "wow this would save them a lot of effort!"
nyah has quit [Quit: leaving]
* mjg
pastes windows 2k sources
SGautam has quit [Quit: Connection closed for inactivity]
* Ermine
drops a magnet link to windows xp sources
<Ermine>
There was a rant from Nouveau dev about Nvidia leaks
dza has joined #osdev
zaquest has quit [Ping timeout: 265 seconds]
xenos1984 has joined #osdev
<heat>
mjg, svr4 or solaris only
<heat>
i want copyright chaos
<heat>
who holds the copyright? who knows! let's just throw it in the public domain then
<Ermine>
We Help Companies Go Open Source
zaquest has joined #osdev
<heat>
intel is already pretty OSS friendly
<heat>
AMD way less so
<heat>
(in the fw space, that is)
<heat>
i'm 80% convinced all of this stuff remains closed so IBVs don't go out of business
<heat>
and seriously, fuck bios vendors
<heat>
especially Dell
<zid>
If only intel were customer friendly
<heat>
dell makes shitty software to go on top of their shitty hardware
<heat>
it's gr8
<heat>
AMI likes to 1) commit EFI warcrimes 2) break shit
<heat>
their new aptio crap autodetects bootloaders
<heat>
such as fucking GRUB
<zid>
Have you considered running a bios from 2011 instead like me
<zid>
it's much more pleasant
<zid>
Like how windows gets worse every version, so do biosen
<heat>
old aptio broke EFI fat32 write
<heat>
that shit had so many consequences that macOS EFI firmware never supported writing to apple filesystems
<zid>
see, stick to bios, efi can suck it
<zid>
firmware shouldn't be writing to filesystems
<heat>
you're still efi remember?
<zid>
barely
<heat>
we disected your fw image
<zid>
It has a lot of efi *in* it, at least
<zid>
no idea how much of it actually *runs* without launching the efi shell
<zid>
maybe all of it, maybe not all of it
<heat>
most of it probably
<zid>
but I can still get the classic VERIFYING DMI POOL DATA AWARDSTAR ENERGY RATING screen out of it so I am happy
<mxshift>
heat: IBVs definitely have a political influence whenever plans for opening things up make it high enough in the leadership chain
fkrauthan has joined #osdev
<epony>
ICBMs have higher orbit political influence
<mxshift>
Often boils down to fear of not knowing what license existing code is covered by or of having higher support costs
<epony>
here is the disclosure, licenses do not exist ;-)
<epony>
(if you do not control the dominion using the licensed technology)
<heat>
absolutely
<mxshift>
After decades of having IBV engineers having desks at Intel and AMD, no one know who owns what
<epony>
Intel owns their fabrication plants, AMD owns their building.
<heat>
I don't doubt the lack of existence of an AlderLakeOpenBoardPkg (an Alder Lake MinPlatform thing) is due to the dear IBVs
<heat>
because apparently there is such a package in the leak :v
<epony>
(and parts of a spun off foundry company Glofo)
<epony>
that's about 10x more than what Apple and Microsoft own combined
<heat>
kneecap open source for shitty software companies, ah yes, love it
Terlisimo has quit [Quit: Connection reset by beer]
<epony>
free software is a model of fixing the deficiencies of hardware makers providing no software and commercial software being derided and full of faults and defects and failure to solve tasks and provide reliable workload and construction tooling
<epony>
commercial software is just a reimplementation of academic and research and otherwise free software
<epony>
poorly and badly for profit with laughable results
<epony>
"oh, my licensing eyes of patent fears.. this thing penetrated my brain so I must now comfort myself with legal and political speeches in an FSF campaign for shared dinners" --the lawyer team that was sacked by a commercial company
Terlisimo has joined #osdev
<zid>
Incrementally Bad Versions
<heat>
it's true
<heat>
IBVs provide software of dubious value
<heat>
so they incrementally add shit
<heat>
just pure garbo
<heat>
the best designs are the ones where they say fuck it and boot you from *EFI* into FreeDOS
<zid>
my bios supports my keyboard but windows doesn't
<zid>
which I find funny
<heat>
what's your keyboard? ps2?
<zid>
10 key rather than 5 rollover
<zid>
I can put it back to normal but it's not worth the effort
<zid>
just to get through the "boot into windows normally" screen
<clever>
zid: ive seen a post on how to hide n-key rollover while maintaining bios compatability
<zid>
I mean, I just have to press some keys
<clever>
basically, the HID descriptor (which the bios ignores) says the first 8 bytes of the report are "just padding", and then the rest is the n-key rollover stuff
<zid>
I have the opposite problem clever
<clever>
but, those "padding" bytes, are the legacy/bios report
<zid>
the *bios* can parse it, windows cannot
<clever>
yeah, that sounds like windows is just being dumb
<clever>
the hid descriptor exists to explain that
<zid>
yea it's just windows not loading the full hid stack before it wants to talk to usb keyboards
<clever>
in that case, windows should be looking at the 8 byte bios/legacy report
<zid>
I'd like to write my own keyboard firmware
<zid>
and make my own mouse with 20V for the switches :P
<bslsk05>
github.com: ccompiler/main.c at 1990e2362c7ab7506e9b3600e003cb21715342f6 · jafarlihi/ccompiler · GitHub
<gog>
jafarlihi: you're dereferencing a pointer without a check
<gog>
if the pointer is not NULL then you have another problem
<gog>
and should probably use gdb
<jafarlihi>
gog: What feature of gdb do I need to use? I already ran it with gdb and backtraced to find the segfault location.
<jafarlihi>
Oh, breakpoints
<jafarlihi>
right
<gog>
yeah break at the function, print the value of the node
<gog>
and also of *node
<gog>
you're probably reaching the end of the tree and not unwinding
<gog>
because youre doing recursion here
<gog>
basically it's as simple as putting a if (node == NULL) return; at the top of the function
alphajuliet has quit [Quit: WeeChat 3.6]
<gog>
also be sure to zero out the nodes when you allocate them
<jafarlihi>
It tells me (gdb) print node->s1
<jafarlihi>
$2 = (struct ASTNode *) 0x1
<jafarlihi>
Which is odd since I zero it when creating in makeNode
<jafarlihi>
Fixed
<gog>
what was it? i'm still looking for the bug if i can see it by eye :P
<jafarlihi>
In `function` I don't return the made node
<jafarlihi>
in parse.c
<gog>
aha
<j`ey>
did the compiler warn?
<gog>
i was just gonna ask
<gog>
-Wall -Werror is your friend
<gog>
-Wextra if you're really obsessive
<gog>
(i am)
<heat>
-fsanitize=undefined -fsanitize=address
<heat>
these are the "really obesessive" args
<gog>
true true
<heat>
obsessive*
<gog>
i need to incorborate ubsan and asan into my things
<heat>
yessir
<heat>
yesmam*
<gog>
:>
<heat>
my bday is 2h30m
<gog>
o damn
<heat>
do you know what you're going to get me
<gog>
yes
<gog>
but i don't know how to send it to you
<heat>
private jets fly themselves
<gog>
that's not true
<gog>
you need a pilot
<heat>
if you're not broke it is
<gog>
sometimes two depending on the aircraft
<gog>
i'm not IFR rated
<gog>
i'm nto even VFR rated
<heat>
that's for millionaires
<heat>
billionaire jets fly themselves
<gog>
within certain parameters
<gog>
need ILS CAT-III for autoland
sprock has quit [Ping timeout: 265 seconds]
<heat>
shut up nerd
<heat>
go fly a jet
<heat>
go fly a heli
<heat>
fuckin nerd
<heat>
smh
<gog>
i'm actually considering lessons when my finances are a little more stable
sprock has joined #osdev
<jafarlihi>
What was that company one guy said hires anyone who wrote a C compiler?
<epony>
LLVM ;-)
<gog>
ladies love virtual machine
<gog>
low-level cool j
<jafarlihi>
epony: LLVM hires anyone who writes a C compiler? I thought bar was higher for that
<epony>
at least one is needed, so far it ships only optimisations
<heat>
llvm is not a company
<epony>
and Apple is not a compiler
<epony>
IBM ditched Swift..
<epony>
Intel and Amd both have their own compilers which were rebased to LLVM..
<Matt|home>
xfce .. is supposed to be a 'lightweight' desktop manager/environment/whatever it's called. it still takes up 10 gigs of space. i've seen screenshots of homemade operating systems with their own working GUIs that look just as good if not more so. why the hell do graphics need that much space
<gog>
recringed
<Matt|home>
i don't think even the windows graphics take up 10 gigs
<epony>
GCC was replaced with LLVM in BSD projects..
<jafarlihi>
xfce takes 10 gigs? lol what, it takes like 200mb for me
<gog>
Matt|home: 10 gigs just for xfce??
<jafarlihi>
(not that I use it)
<epony>
I think it's stupid to import Linux DRM and LLVM just to have a one lousy driver.
<gog>
or a whole distro that ships xfce?
<Matt|home>
unless my google-fu is very wrong
<dminuoso>
LLVM can compile C, C++ and fortran?
<heat>
llvm doesn't have a fortran compiler
<epony>
LLVM can compile to less platforms (targets) and needs more resources and time and just recently caught up somewhat to GCC
<epony>
in fact three layered (tiered) IR compilers are a huge overkill for system development work and are considered wasteful and pointless and targeting virtual appliances instead of real hardware
<heat>
Matt|home, anyway, the "homemade operating systems" with working GUIs are just empty, boneless GUIs
<heat>
there's a lot more to a functional interface and desktop environment than "graphics go brrr"
<Matt|home>
uh what does boneless mean in this context
<Matt|home>
lacking useful programs?
<heat>
i can plot pretty boxes to a screen in a few KBs of code
<epony>
so I'd really pick up a small C compiler to work with, and use the fat compiler to port / validate / make comparisons etc
<heat>
most GUIs in #osdev don't go farther than that
<j`ey>
heat: but anywa, xfce didnt take 10Gbs in the end anyway :P
<epony>
and at least a one decent static analysis, which is not embedded into an IDE from a platform that generates malware runtime services for Windows
<heat>
toaruOS is the most developed of GUI'd hobby OSes and even it had severe issues wrt backend
<Matt|home>
oh. i have a question. i kind of have a useless laptop with pretty shitty hardware. you guys have any recommendations for any systems i can slap on it and play around with that one of you guys made?
<bslsk05>
sortix.org: The Sortix Operating System
<gog>
oh
<gog>
you already said
<Matt|home>
i think that laptop has 2 gigs of ram and like 10 or 20 gigs of disk space
<heat>
sortix is self hosting
<heat>
and supports i686
<heat>
it's probably the most usable thing you'll find
<heat>
toaru may support that? idk
<gog>
doesn't the professional sortix network also run on sortix
<gog>
that's pretty dope
<heat>
yes
<Matt|home>
that's cool. i'll look into it. but i was also just offering if anyone was working on a project that i'd be willing to test it with my hardware cuz i don't have any use for the laptop anyway
<epony>
the entire v4l and linuxdrm and amdgpu wart and the llvm is an order of magnitude larger than the kernel and the entire OS system
<epony>
and linux is 98-99% drivers of no use
<epony>
but at least the bsd systems could have retained some sanity
<epony>
fucking idiot licenses and stupid fat designs of morons with smoothies instead of brains
<epony>
but hay, it's fun to work with it as a consumer too (bleh)
<gog>
at least we can agree that linux sucks :D
<epony>
it's slowly protruding its NDA tentacles into the other systems too
<epony>
through drivers-compiler bundles
<epony>
making things fat, slow and dangerous
<epony>
one day, it's going to be C++ and I will be laughing then!
<epony>
muahahahaha :-D
<epony>
GCC is already C++ for about almost 20 years
<gog>
c++ is bad but so is everything else so we might as well learn to be happy
<gog>
i'm starting to like javascript tbh
<gog>
i'm becoming something i don't recognize
<CompanionCube>
my keyboard has (apparently) 13kro but not advertised as such, wonder if it would behave the same in windows
<CompanionCube>
i looked at it before and it offers two report descriptors
<epony>
then p-code and bytecode and now it's in the compilers and embedded in languages and kernels (and CPUs)
<epony>
but the tools have grown a lot and the times to generate binaries and their runtimes have increased a lot more than that a lot too
<epony>
so we have complex and slow at the same time ;-) mission achieved, buy a new cornputer (oh noes, we need to port to a small architecture of weaklings µCUs)
jafarlihi has quit [Quit: WeeChat 3.6]
elastic_dog has quit [Ping timeout: 264 seconds]
elastic_dog has joined #osdev
<heat>
Matt|home, what cpu?
<Matt|home>
im not sure. let me check, intel something i think
<Matt|home>
celeron N2840 i think
<zid>
If it has vga and hdmi, arcade machine connected to your desktop's capture input over hdmi, vga hooked up to a CRT
<heat>
Mission Winnow is a change lab focused on reframing global conversations, sparking open debate, connecting people and supporting the realization of innovative ideas.
<zid>
They failed :P
<heat>
hey google, give me a bullshit corporate phrase
<zid>
I only know who they are because of people talking about F1 advertizer nonsense
<zid>
made up companies, vaporwave energy drinks, etc
<heat>
vaporwave???
<zid>
ware*
<heat>
omg
<gog>
pmi as in
<gog>
phillip morris
<zid>
maybe both
<gog>
lmao
<zid>
yes, pmi is marlboro
<heat>
rich energy be vibin
<zid>
When you psst the can
<zid>
it plays the xp shutdown noise
<heat>
From the moment we’re born throughout our academic, professional, and personal existences, design influences every aspect of our lives. When it’s done well, can solve issues before they become problematic., and when it’s done poorly, the ramifications can be extreme. We’ll look at how design principles shape our world and the ways problems can be part of solutions.
<heat>
this is hilarious
<zid>
Perfect
<zid>
"We exist in physical reality"
<zid>
but padded for wordcount
<heat>
there's even a typo
<heat>
love me some shell companies
pretty_dumm_guy has joined #osdev
<zid>
Also bad grammur
<gog>
i do not exist in physical reality
<zid>
Correct
<zid>
IRC and the contents therein are a figment of my imaignation
<klange>
gog is catbrain in a jar
<heat>
we'll take that problem and make it a part of a solution