<bslsk05>
lists.freedesktop.org: [PATCH 00/86] drm: Provide client setup helper and convert drivers
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
Dead_Bush_Sanpai has joined #osdev
<klys>
31dec86 ? is it a file date? sounds like it might be retro stuff
ThinkT510 has quit [Quit: WeeChat 4.3.6]
ThinkT510 has joined #osdev
mubluekoor has quit [Remote host closed the connection]
mubluekoor has joined #osdev
bauen1 has quit [Ping timeout: 260 seconds]
arminweigl has quit [Ping timeout: 252 seconds]
arminweigl_ has joined #osdev
arminweigl_ is now known as arminweigl
<mjg>
klys: OG cron
<klys>
ahhh
xenos1984 has quit [Read error: Connection reset by peer]
heat has quit [Read error: Connection reset by peer]
heat has joined #osdev
xenos1984 has joined #osdev
levitating has quit [Remote host closed the connection]
xenos1984 has quit [Ping timeout: 248 seconds]
xenos1984 has joined #osdev
galambo has joined #osdev
masoudd has quit [Ping timeout: 264 seconds]
vinleod has joined #osdev
vdamewood has quit [Ping timeout: 260 seconds]
vinleod is now known as vdamewood
bauen1 has joined #osdev
GeDaMo has joined #osdev
hwpplayer1 has joined #osdev
spare has joined #osdev
netbsduser has joined #osdev
spare has quit [Remote host closed the connection]
heat has quit [Read error: Connection reset by peer]
heat_ has joined #osdev
hwpplayer1 has quit [Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4)]
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
scaleww has joined #osdev
Dead_Bush_Sanpai has joined #osdev
<sortie>
Today I'm bootstrapping gcc 14.2.0 using gcc 5.2.0 on my OS :)
<vdamewood>
sortie: Yay!
<sortie>
It failed because my munmap(2) had O(N*N*logN) behavior but after improving that to O(N) I got further :)
<mjg>
:))
<sortie>
So far the bootstrap is going clean. I was honestly worried gcc 5.2.0 might have bugs that could derail it
<sortie>
Although to be honest, I've used that compiler version since 2016, and it's proven an exceptionally stable vintage
galambo has quit [Quit: Leaving]
<nikolar>
oh you were on 5.2 the whole time
<sortie>
woo we have xgcc
<nikolar>
nice
<sortie>
cc1 dropped
<sortie>
all-gcc done. woot.
<sortie>
I honestly expected more trouble moving across 8+ years of gcc releases.
<nikolar>
kek
<sortie>
And it's installed!
<sortie>
It's even working, I can build my kernel with g++ 14.2.0! A few new warnings
<nikolar>
fancy
<sortie>
Alright ubsan doesn't work since I need to upgrade my libubsan with more symbols, that won't be too hard, let's just turn that off
<nikolar>
kek
<sortie>
-fstack-protector-all doesn't work too but that's because I forgot to apply a little patch saying it's in my libc
galambo has joined #osdev
<sortie>
Awesome. I bootstrapped gcc 14.2.0 on my OS and I recompiled the kernel, the base utilities, etc, and it's working. Basically out of the box with no issues. What a surprise! I expected nasty bugs. All I got is a bunch of new exciting gcc warnings on my codebase
<mjg>
:)
<mjg>
that's probably because it's amd64
<mjg>
miscompilation mostly happens for arm and ppc
<mjg>
congrats are still in order tho
fedaykin has joined #osdev
<nikolar>
why's that mjg
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
<sortie>
amd64 has had a lot more years to stabilize even back in 2015/2016
Dead_Bush_Sanpai has joined #osdev
<ThinkT510>
now try it with llvm to see what gcc missed
fedaykin has quit [Ping timeout: 245 seconds]
<sortie>
And it built the whole base system of mine \o/ I only had to fix legit bugs in three places that gcc now saw as errors
heat has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
netbsduser has quit [Ping timeout: 276 seconds]
d5k has joined #osdev
<sortie>
And I bootstrapped a new libstdc++
<sortie>
This is all crazy stuff but at one point when one's OS is far enough along it's basically just "I just compiled software."
<nikolar>
cool stuff
netbsduser has joined #osdev
<sortie>
One really nice thing is that it appears modern gcc let's you build libstdc++ standalone without being part of the gcc build which is super great
<sortie>
There was a big problem earlier where you basically had to build libc between gcc/libgcc and libstdc++, but libstdc++ had to be built as part of gcc
<sortie>
I had a _bunch_ of patches to make libstdc++ standalone and that doesn't appear to be needed anymore. I can just invoke the configure script in that directory directly.
<nikolar>
neat
<_rink>
sortie, that sounds awesome - is that documented somewhere?
<_rink>
Or just a lucky coincidence (which seems to describe the gcc build infrastructure pretty well, from outsiders point of view)
<kof673>
heat: quickly, i do not wish to discuss, but to demonstrate...you should not worry about americans or "the constitution" lol > https://supreme.justia.com/cases/federal/us/6/445/ > the members of the American confederacy only are the states contemplated in the Constitution.
<bslsk05>
supreme.justia.com: Hepburn & Dundas v. Ellzey :: 6 U.S. 445 (1805) :: Justia US Supreme Court Center
<kof673>
when do you think that was last operational? when do you think it will be operational again? lol
<mjg>
who has windows 10 or newer and can check something ez in the terminal
<mjg>
echo crap > c:\con\con\con
<mjg>
does this work?
<heat>
i'll check, i need to update it anyway
<mjg>
bonus, change the drive letter to something bogus
<heat>
this is for cmd.exe?
<mjg>
echo crap > hue:\con\con\con
<mjg>
ya
<heat>
ok brb
heat has quit [Remote host closed the connection]
<mjg>
fwiw it "works" on windows 2000
theruran has joined #osdev
heat has joined #osdev
<mjg>
it looks like hte rule is that the path has to end with "con"
<heat>
every time i boot into windows i have so many updates
<heat>
i must be vulnerable to like 20 RCEs atm
<mjg>
:)
<mjg>
thanks for testing btw
<mjg>
stick to arch btw
<heat>
you're welcome
<heat>
do you want a dtrace of some random shit
<heat>
i think it still works
<mjg>
:p
<mjg>
is there a workload or bench you can run on it
<mjg>
to even look anything meaningful
<mjg>
hm
<heat>
i genuinely have no clue. maybe wsl1 would be fun but i don't have that anymore
<mjg>
if you can get will-it-scale operational, i have a great test
<mjg>
open + read + close
<mjg>
may need porting to winapi
<mjg>
but bottom line is to test how this shit scales
<heat>
oh a basic fopen + fread + fclose would do?
<mjg>
extra points for checking mere reads in a loop
<heat>
even includes some MM for spicyness
<mjg>
conceptually yes, but i don't want a case where this just sucks because it translates to shite calls
<mjg>
which proper win programs are not issuing
<heat>
i dont think many windows programs use the win32 file api directly
<mjg>
and i have no idea how to write one\
<mjg>
well proper test would use the recommended apis
<mjg>
idk what they are
<mjg>
for all i know that fopen thing would go through NtLolLegacyKurwaEx call which is turbo slow cause it is not even supposed to by used
goliath has joined #osdev
bauen1 has quit [Ping timeout: 264 seconds]
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
Dead_Bush_Sanpai has joined #osdev
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
<heat>
dtrace -Fn "syscall::NtQueryPerformanceCounter:entry { stack(); }" isn't this query just supposed to work?
<heat>
i'm getting "extraneous argument 'dtrace' ($1 is not referenced)"
Dead_Bush_Sanpai has joined #osdev
<mjg>
@[stack()] = count();
<heat>
oh forget that, i'm so stupid
<mjg>
wtf would you attach to that tho
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
<heat>
just checkin
<mjg>
and you would only get the syscall entry anyway
<mjg>
get the flamegraph one liner
<mjg>
profile-97 ...
Dead_Bush_Sanpai has joined #osdev
<heat>
yeah symbols seem to work, replaced with ustack
memset has quit [Remote host closed the connection]
heat has quit [Quit: Client closed]
heat has joined #osdev
memset has joined #osdev
<heat>
kernel symbols do not though :/
<mjg>
this is not worth looking much at
the_oz_ has joined #osdev
<heat>
huh i think profile-99 doesn't work, weir
<mjg>
dtrace -l | grep profile
<mjg>
maybe they only support specific timers
the_oz has quit [Ping timeout: 252 seconds]
<heat>
"dtrace -x stackframes=100 -n "profile-99 /arg0/ { @[stack()] = count(); }"" this one liner i stole off of freebsd does not work
<heat>
but there's a similar one in dtrace on windows that seems to
<mjg>
again may be a different profile value
<mjg>
99 does not work on netbsd either
<mjg>
:d
<mjg>
afair
<mjg>
you need the cyclic framework to have aribtrary precision
<mjg>
which is where magic 99's come form
<mjg>
for all i know all you got there is profile-1000
<mjg>
just fucking list the probes and grep
<heat>
oh i suspect the /arg0/ stuff is borked
<mjg>
well i did dtrace a quick try myself some time ago on 11 i think
<mjg>
and it was fucked
<heat>
nt`SMKM_STORE_MGR<SM_TRAITS>::SmIoCtxWorkItemComplete+0x18f look ma C++
<mjg>
so i'm not shocked it still does not work
<heat>
Oh this is fascinating, this SMKM_STORE stuff seems to be related with memory compression
<heat>
core kernel code in C++. dope
<heat>
mjg: open + read + close for the same file? diff file same dir?
<mjg>
start with read1_processes
<mjg>
this is for example serialized on zfs(!)
<mjg>
i would not be shocked if that was true on ntfs
<heat>
you mean threads, i can't fork :)
<mjg>
threads ? 8s
<mjg>
can you profile that
<mjg>
cause it may serialize on handle lookup
<mjg>
i'm bailin for dinner
craigo has joined #osdev
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
Dead_Bush_Sanpai has joined #osdev
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
Dead_Bush_Sanpai has joined #osdev
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
Dead_Bush_Sanpai has joined #osdev
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
fedaykin has joined #osdev
Dead_Bush_Sanpai has joined #osdev
<netbsduser>
this is the one element integral to the kernel reported to be C++ by a windows dev on the discord
<netbsduser>
it deals in memory compression and apparently also in general "optimisation of memory backing" or something like that (he did not explain beyond that)
skipwich_ is now known as skipwich
heat has quit [Quit: Client closed]
heat has joined #osdev
Gooberpatrol_66 has quit [Quit: Konversation terminated!]
<netbsduser>
heat: oh, i don't know anything about those
<netbsduser>
win32k is despised by the nt ogs
<netbsduser>
win32k even reportedly has rust in it nowadays
<heat>
right, the nt people hate usefulness
<netbsduser>
it's just an ugly wart
<heat>
why? it's a subsystem
<netbsduser>
david cutler is held in high regard and what they call "cutler's nt" as the platonic ideal of what windows should be
Gooberpatrol66 has quit [Quit: Konversation terminated!]
Gooberpatrol66 has joined #osdev
<heat>
if you mean the GUI bits then yeah but i'm afraid it has a lot more than that
<netbsduser>
win32k is the unwanted intrusion into the kernel of what cutler intended to be a userland server
<heat>
yeah, his beautiful platonic ideal of a system that's slow as shit could be slower <3
<netbsduser>
and which was, but which made it into the kernel later into nt's existence (4.0), i think because of performance issues around it programming vga cards
<netbsduser>
nowadays the ground has changed and efficiently programming vga cards' i/o ports is no longer a concern
fedaykin has quit [Ping timeout: 252 seconds]
kpel has quit [Quit: .]
levitating has quit [Remote host closed the connection]
levitating has joined #osdev
sortie has quit [Ping timeout: 260 seconds]
<mcrod>
hi
<nikolar>
oi
<mcrod>
i am back from vacation
craigo has quit [Remote host closed the connection]
<zid>
smuggle back anything interesting?
skipwich has quit [Quit: DISCONNECT]
raphaelsc has quit [Ping timeout: 260 seconds]
spare has quit [Remote host closed the connection]
<mcrod>
nope
<mcrod>
i only went to NJ
<zid>
oh, just the heroin then
sortie has joined #osdev
skipwich has joined #osdev
skipwich_ has joined #osdev
skipwich has quit [Ping timeout: 252 seconds]
skipwich_ is now known as skipwich
dostoyevsky2 has quit [Quit: leaving]
dostoyevsky2 has joined #osdev
hwpplayer1 has joined #osdev
sortie has quit [Ping timeout: 252 seconds]
Gooberpatrol66 has quit [Quit: Konversation terminated!]
Gooberpatrol66 has joined #osdev
sortie has joined #osdev
skipwich_ has joined #osdev
skipwich has quit [Ping timeout: 252 seconds]
skipwich_ is now known as skipwich
skipwich_ has joined #osdev
skipwich has quit [Ping timeout: 264 seconds]
skipwich_ is now known as skipwich
levitating has quit [Remote host closed the connection]
radens has quit [Quit: Connection closed for inactivity]
<bslsk05>
<tendstofortytwo> me: (installing windows xp on my laptop)  windows xp: (asks for product key)  me: uhhhhhh (turns over laptop) https://cache.treehouse.systems/media_attachments/files/112/995/738/197/640/327/original/978dd20e4a5cd45f.jpg [A picture of the underside of a Dell Latitude 7290, showing a Certificate of Authenticity for Windows XP Professional Corporate Final, with the popular leaked FCKGW product key. The background is a blend of the
levitating has joined #osdev
HeTo has joined #osdev
vdamewood has quit [Quit: Life beckons]
vdamewood has joined #osdev
skipwich_ has joined #osdev
skipwich has quit [Ping timeout: 248 seconds]
skipwich has joined #osdev
skipwich_ has quit [Ping timeout: 276 seconds]
<heat>
mjg, i give you a fun windows flamegraph and you discriminate against genzs
<heat>
ok mon
goliath has joined #osdev
<heat>
i do want to note that i really dont understand what most of that flamegraph is doing, windows seems like it just does... fluff?
<heat>
allocate random shit, passes through random shit, sends messages back and forth
<heat>
just cause
<nikolar>
don't forget phoning home
<nikolar>
that's a big part of the os
<heat>
you're 11 calls deep before actually touching NTFS during a path lookup
levitating has quit [Remote host closed the connection]
<heat>
dont forget windows defender popping up in profiles together with FUCKING GAMEFLT.SYS
<heat>
rest assured, gameflt.sys is part of the xbox gaming services. installed by default.
<kazinsal>
it's a filesystem filter driver
<kazinsal>
go buy a copy of windows internals seventh edition volume 2