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
isaacwoods has quit [Quit: WeeChat 3.2]
dude12312414 has joined #osdev
nero has joined #osdev
regreg has quit [Ping timeout: 256 seconds]
jeramiah has joined #osdev
sortie has quit [Quit: Leaving]
<geist> it is pretty educational to grab a dump of your acpi tables and dissassemble though
<geist> you can learn some pretty interesting stuff there
regreg has joined #osdev
<zid> yea I wish I saved my dump
<zid> I can't do it from within vmware for obvious raisons
<zid> there's probably a windows tool
<zid> AcpiExec - Load ACPI tables and execute control methods from user space
<zid> that sounds neat for use in scripts
PapaFrog has joined #osdev
<bslsk05> ​gist.github.com: dsdt · GitHub
nyah has quit [Ping timeout: 245 seconds]
<zid> 187215431789Genuine NVIDIA Certified SLI Ready Motherboard for ASUS RAMPAGE IV GENE7198-Copyright 2011 NVIDIA Corporation All Rights Reserved-320198982567(R)
<zid> kinda wordy
<zid> I always thought it was funny that the usb stuff knows which way up it is
regreg has quit [Ping timeout: 250 seconds]
gog has joined #osdev
<Mutabah> zid: Hmm? you referring to the superposition of USB connector orientations? or USB-C having some sort of polarity detection
<zid> the tables have location/orientation fields
<zid> so you have a FRONT TOP LEFT usb slot and stuff
regreg has joined #osdev
<Mutabah> Ah, port positions
<Mutabah> neat
regreg has quit [Read error: Connection reset by peer]
gog has quit [Ping timeout: 240 seconds]
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
mrkajetanp has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
mrkajetanp has joined #osdev
CipherWizard has joined #osdev
CipherWizard has quit [Client Quit]
jeramiah has quit [Ping timeout: 265 seconds]
ElectronApps has joined #osdev
iorem has joined #osdev
Izem has joined #osdev
Izem has quit [Quit: Izem]
mahmutov has quit [Ping timeout: 252 seconds]
iorem has quit [Quit: Ping timeout (120 seconds)]
ElectronApps has quit [Ping timeout: 268 seconds]
ElectronApps has joined #osdev
jeramiah has joined #osdev
CryptoDavid has joined #osdev
elastic_dog has quit [Ping timeout: 255 seconds]
elastic_dog has joined #osdev
GeDaMo has joined #osdev
justyb11 has joined #osdev
eschaton has quit [Quit: ZNC 1.8.x-git-16-0982d826 - https://znc.in]
tacco has joined #osdev
dormito has joined #osdev
ElectronApps has quit [Ping timeout: 265 seconds]
ElectronApps has joined #osdev
Matt|home has quit [Ping timeout: 268 seconds]
immibis has quit [Ping timeout: 240 seconds]
Burgundy has joined #osdev
iorem has joined #osdev
silverwhitefish has quit [Remote host closed the connection]
silverwhitefish has joined #osdev
puck has quit [Remote host closed the connection]
gmodena has quit [Remote host closed the connection]
puck has joined #osdev
mhall has joined #osdev
JerryXiao has quit [Ping timeout: 258 seconds]
JerryXiao has joined #osdev
jeramiah has quit [Remote host closed the connection]
jeramiah has joined #osdev
JerryXiao has quit [Remote host closed the connection]
JerryXiao has joined #osdev
JerryXiao has quit [Ping timeout: 258 seconds]
JerryXiao has joined #osdev
Belxjander has joined #osdev
pony has quit [Ping timeout: 252 seconds]
pony has joined #osdev
Burgundy has quit [Ping timeout: 258 seconds]
<bslsk05> ​twitter: <tmandry> Rust on Fuchsia is hiring! We’re looking for folks who want to help other developers succeed as we use Rust to build a modern OS.
jeramiah has quit [Ping timeout: 252 seconds]
<geist> yeah
xenos1984 has quit [Ping timeout: 240 seconds]
<j`ey> oh hm, "toolchain, tooling, libraries, scaling Rust usage to new devs and teams – anything that makes writing Rust better for Fuchsia dev", so not actually working on fuchsia itself
ElectronApps has quit [Read error: Connection reset by peer]
ElectronApps has joined #osdev
xenos1984 has joined #osdev
dormito has quit [Ping timeout: 265 seconds]
CryptoDavid has quit [Quit: Connection closed for inactivity]
iorem has quit [Ping timeout: 258 seconds]
dennis95 has joined #osdev
dormito has joined #osdev
Mutabah has quit [Ping timeout: 252 seconds]
gog has joined #osdev
Mutabah has joined #osdev
pony has quit [Ping timeout: 252 seconds]
pony has joined #osdev
isaacwoods has joined #osdev
<riverdc> the conventional memory sections of text, data, bss, etc are just conventions of most tools, correct? that is, it's not a requirement of the OS
<riverdc> does linux, for example, make any assumptions about how a process organizes its virtual memory?
<riverdc> i guess not, that seems like a very bad idea
<zid> not even a requirement of ELF
<zid> mmap for 0 will probably fail though, re not caring about virtual address
gareppa has joined #osdev
gareppa has quit [Remote host closed the connection]
gog has quit [Quit: bye]
Brnocrist has quit [Ping timeout: 256 seconds]
<sham1> The zero-page is probably regarded as special. Heck, I don't even know how you'd try to convince mmap to give you virtual address zero
<sham1> Since `NULL` as the first argument of mmap just tells the OS that it can put the pages wherever
sortie has joined #osdev
<zid> sham1: Hence good luck putting 0 as the virtual address of a program header and expecting it to work reliably
<sham1> And on Linux at least, there seems to be a minimum limit for where mmap can even place the mapped memory. That being on /proc/sys/vm/mmap_min_addr according to the man-page
<sham1> zid: indeed
<zid> that mmap limit is pretty new
<zid> I remember when it happened a bunch of 8086 virtualization broke
<zid> because they'd just use the address space 'naturally'
<sham1> At least on my work machine it seems that the minimum address is 0x10000
jeramiah has joined #osdev
<sham1> So I could indeed imagine some virtualization breaking because they probably relied on putting stuff below the 64KiB limit
<sham1> Speaking of virtual memory, one thing I've been wondering about is whether having a bootstrap stack on .bss section is the best way forward or if I should have the bootloader just set up a proper stack while it also sets up other things like the paging
<zid> if it's just for the bootstrap then shoving it in bss is probably just fine
<sham1> Hm
<sham1> And then just use the bootstrap stack for the idle thread while other threads get proper stacks allocated
<sham1> I'd imagine
<zid> you could always reclaim it later if needed
<sham1> I'm really only wondering that since the threads (which might eventually run on other processors) would share the .data and .bss, since they most would share the PML4 (TBD)
<sham1> Or at least the mapping at the 512th mapping of the PML4
<sham1> And of course other mappings but those are less relevant for this question
sortie has quit [Ping timeout: 265 seconds]
Brnocrist has joined #osdev
iorem has joined #osdev
sortie has joined #osdev
Burgundy has joined #osdev
elastic_dog has quit [Ping timeout: 240 seconds]
elastic_dog has joined #osdev
lg_ has joined #osdev
ornitorrincos_ has joined #osdev
valerius_ has joined #osdev
ahalaney has joined #osdev
clever has quit [*.net *.split]
lg has quit [*.net *.split]
ccx_ has quit [*.net *.split]
valeriusN has quit [*.net *.split]
ornitorrincos has quit [*.net *.split]
ccx_ has joined #osdev
mctpyt has quit [Ping timeout: 240 seconds]
mctpyt has joined #osdev
dude12312414 has joined #osdev
Belxjander has quit [Quit: AmigaOS PPC 4.1 +E +U1 // AmIRC 68K]
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
Matt|home has joined #osdev
clever has joined #osdev
nyah has joined #osdev
heat has joined #osdev
ElectronApps has quit [Remote host closed the connection]
iorem has quit [Quit: Connection closed]
Izem has joined #osdev
nismbu has quit [Ping timeout: 252 seconds]
nismbu has joined #osdev
gog has joined #osdev
<sham1> At least they're being honest
<gog> ok so i'm playing with position-independent code and i'm having trouble grasping something
<sham1> 64-bit or 32-bit (or I suppose more accurately AMD64 or x86?)
<gog> amd64
<sham1> Right
<gog> the func@plt stub makes sense in the first line
<gog> it jumps via the relocation in the GOT
<gog> but then it has push $0 and jmp to another stub 16 bytes before it
<gog> i understand that that's the fixup, but i'm not sure how it works
<heat> that may be that lazy resolution stuff
<sham1> Well the actual address of the resolved function is then put in its place
<sham1> Just written into the machine code
<gog> i know it's supposed to fall through to the resolving function, but i can't figure out how
<gog> if the relocation hasn't been written
<sham1> Godbolt has a good presentation that includes stuff about this PLT nonsense
<sham1> I don't have a link handy, but it should be easy enough to find
<gog> ok i'll look around for it. i'm gonna keep poking at this file until i see what i'm missing in the mean time
<bslsk05> ​lwn.net: A ToC of the 20 part linker essay [LWN.net]
<heat> a nice overview of the linker by the author of GNU gold
<gog> neat
<sham1> Never really got the difference between binutils ld and the gold linker
<sham1> Although apparently gold is ELF-specific as opposed to ld
<sham1> Huh, neat
<gog> yeah gold doesn't use libbfd
<gog> makes it a touch faster
<sham1> Anyway, this weekend I could probably get somewhat back into doing more osdev stuff. Finally finish off the kernel heap implementation so I can go onto more interesting things
<gog> yeah it's been a minute since i did any work lol
<sham1> Bachelor's degree stuff and actually having a job really have limited any capacity to do anything useful for my project
<gog> aha, ok a part of this now makes sense
<gog> after the indirect jump in the plt, the push is the index of the relocation table entry
<gog> but i don't see how it falls through that
Izem has quit [Ping timeout: 240 seconds]
flx has quit [Ping timeout: 276 seconds]
<heat> sham1, gold is a decent bit faster
<heat> lld is even faster
tacco has quit []
flx has joined #osdev
PapaFrog has quit [Ping timeout: 272 seconds]
PapaFrog has joined #osdev
<gog> OHHH okay okay
<gog> the initial value in the GOT points to the next instruction in the plt until the symbol is resolved
<gog> this makes sense now
<zid> GOT and PLT are evil just statically link everything with -fwhole-program
<zid> 800MB binaries for everyone!
<gog> lol
<heat> firefox caught a case of windows-itis and needs to restart itself after updates
<heat> why
<HeTo> heat: you always had to restart it after updates to take the updated version into use, otherwise you kept using the old, probably vulnerable version
<heat> i know and I don't care
<zid> good luck not restarting a binary after an update if you want to use the update
<heat> no other software requires me to restart the thing after an update
<gog> i think now it checks if its binary has been updated when you try to open a new tab
<heat> *I don't care about the update*
<HeTo> but it's probably due to being a multiprocess application nowadays that it notices and complains about the need to update. probably some IPC that's not designed to work across versions
<heat> not even chromium does it
<heat> nor standard google chrome
<jimbzy> Yeah
<jimbzy> That's always a bummer.
<jimbzy> "Just one more thing..."
<zid> almost all of my software requires you kill it before it will update
<zid> because if it doesn't already have various files open, it will very likely immediately explode when it tries to and they're the wrong ones
<gog> i have also determined that lazy binding is overkill for my purposes
<heat> what are you doing?
YuutaW has quit [Ping timeout: 240 seconds]
<gog> an experiment ;)
<gog> basically KASLR with modules
YuutaW has joined #osdev
<heat> no need for a shared libraries in kernel modules
<heat> you can have a relocatable executable
<gog> i want to leverage ELF symbol tables for locating symbols in modules
<zid> yea got/plt is a little overkill, but would work
<gog> instead of rolling my own
<gog> the drawback is that this may be more complicated
<heat> i set up hash tables of symbols
<zid> PIC without PIE should work? I forget
<gog> it does
<gog> rather, it appears to
<heat> way faster than a linear search through symbol tables
<heat> zid: fpic and fpie are different
<zid> reverse linking is sorta weird
<gog> none of this is real work though, i'm just mucking about trying to settle on a solution
<gog> so Only God Can Judge Me Now
<heat> i can also judge you
<heat> gog stupid bad solution
<gog> :(
<zid> gog: lmk how you decide to do the reverse link
<heat> what's a reverse link?
<gog> you mean linking the module back to the kernel?
<zid> yea, so for kprintf or whatever
<zid> I'm assuming the kernel is aslr
<zid> which is normally why you'd got/plt
<gog> i think i'll have to have got/plt in the kernel
<gog> and i can do no plt in the modules
<zid> fair enough
<gog> again, this is all an experiment that i may abandon
<heat> you can KASLR inside the -2GB range
<heat> and you don't need PIC that way
<zid> I'd probably ultimately just write a linker
<zid> (ld.so basically) that knew the kernel base address and patched all the calls
<zid> it's not like the perf of insmod is critical
mahmutov has joined #osdev
YuutaW has quit [Ping timeout: 252 seconds]
YuutaW has joined #osdev
<heat> ld.so is way too complex for a module loader
johnjay has quit [Quit: WeeChat 2.3]
johnjay has joined #osdev
YuutaW has quit [Ping timeout: 256 seconds]
heat has quit [Ping timeout: 250 seconds]
mctpyt has quit [Ping timeout: 256 seconds]
Burgundy has quit [Ping timeout: 265 seconds]
mahmutov has quit [Quit: WeeChat 3.1]
mahmutov has joined #osdev
dennis95 has quit [Quit: Leaving]
mahmutov has quit [Quit: WeeChat 3.1]
mctpyt has joined #osdev
mahmutov has joined #osdev
mahmutov has quit [Quit: WeeChat 3.1]
mahmutov has joined #osdev
immibis has joined #osdev
devcpu has quit [Quit: leaving]
devcpu has joined #osdev
* geist yawns
<geist> good afternoon folks
YuutaW has joined #osdev
* gog passes geist a double espresso
<geist> mmmm nom
<geist> haven't had a good espresso in some time
<gog> i had one the other day at this new joint that sells only loukma
<gog> and espresso
<gog> good stuff
<geist> actually thinking, sometimes i have acid reflux issues and have to take it easy, i bet if i *have* to get my daily coffee intake it's probably easier on my stomach to just take a shot of espresso than drink a cup of coffee...
<geist> get it over with, maybe
<gog> i wonder what the pH of the espresso would be if it were diluted to the same caffeine concentration as a standard cup of coffee
<jimbzy> I can't even imagine life without coffee.
Arthuria has joined #osdev
* moon-child seems to be the only person who drinks coffee because he likes it, not because it has caffeine
<kingoffrance> caffeine is bad for you. thats why ppl should send it to me to safely dispose of it.
<zid> I don't mind it, with 8 sugars
<GeDaMo> "Sports science students Alex Rossetta and Luke Parkin were each given the equivalent of 300 cups of coffee.They were admitted to intensive care for dialysis after the calculation error led to violent side-effects."
<bslsk05> ​'Northumbria University 'life-threatening' caffeine test fine' - 'University is fined £400,000 after students are given 100 times too much caffeine in an experiment.'
mhall has quit [Quit: Connection closed for inactivity]
<zid> Bank error in your favour, collect 30mg
<mjg> wow
<mjg> i remember overdosing once, but it was not anything tragic
<mjg> also it was not an equivalent of 300 cups of coffee
<zid> was it on tweets
<zid> someone linked your twitter somewhere else not long ago and I read through some of them
<mjg> back in college i was studying for an exam
<mjg> i overdid an energy drink
<mjg> at some point i could not think for squat
<mjg> and felt really tired, but could not fall asleep either
<zid> I'm not 100% you can actual overdose on them before you just start vomitting or whatever
<jimbzy> I love how coffee tastes, moon-child. I drink decaf from time to time.
<zid> given how much water you drink with them the concentrations are low and the worst they tend to have in is like, caffeine
<GeDaMo> Also B vitamins
<zid> oh no
<mjg> there rae some norms how much you can drink per day
<gog> you can deplete your adrenaline
<mjg> and i defo overdid it
<zid> as long as it didn't have vegetables in
<zid> those'll kill ya
<GeDaMo> I've read that some of the effect of energy drinks is due to an overdose of B vitamins
<mjg> also there are norms how much you can drink per hour vs your kidneys
<mjg> afair you don't want to drink more than one liter of water per hour and not more than 4-5 per day
<mjg> specifics depends on the person of course
<zid> I volunteer to test how much red bull makes you sick
<zid> i'll just need the million dollars to afford that much red bull
<mjg> are you in your early 20s?
<zid> that stuff's like printer ink
<zid> I used to be!
<mjg> glorious times
<mjg> also never again
<jimbzy> Sick like "I don't feel well." or sick like, "I'm going to shred this gnar wave"? ;)
<GeDaMo> Cheaper energy drinks are available :P
<zid> yea but cheaper ones don't taste like red bull
<GeDaMo> I've never tried a Red Bull, I like Lidl's Collosus
<zid> pump that chanel no. 5 costing crap into me
<zid> It's like £4 a can
<GeDaMo> Collosus 500ml is 69p
<zid> if it tastes half as good as red bull, I will allow you to amazon me a multipack
<GeDaMo> Pfft! Buy your own :P
<jimbzy> Red Bull does taste pretty good.
<jimbzy> I like the little cans, too. Those massive Monsters and NOS drinks are just too much.
<zid> monster's pretty gash I'd rather drink dr pepper
<zid> shame it's down to half the kCal now
<mjg> i remember trying omonster at some point
<mjg> it tasted like bubble gum
<mjg> also i think it's at least 4-5 years since i had an energey drink
<jimbzy> Liquid bubble gum is a great way to describe it.
dormito has quit [Ping timeout: 272 seconds]
<nshp> red bull is the real Slurm. it tastes like it should make you glow.
<gog> remember surge
<gog> it was basically sun drop with more sugar and caffeine
<gog> i'm surprised i don't have some kind of chronic metabolic disorder with how much sugar i consumed as a kid
GeDaMo has quit [Quit: Leaving.]
<jimbzy> It was trying to make a comeback, gog.
<jimbzy> Surge, I mean.
<jimbzy> How about some Jolt?
mahmutov has quit [Ping timeout: 265 seconds]
mahmutov has joined #osdev
dormito has joined #osdev
<geist> drink Slurm
Izem has joined #osdev
ahalaney has quit [Quit: Leaving]
dude12312414 has joined #osdev
dude12312414 has quit [Remote host closed the connection]
dude12312414 has joined #osdev
dutch has quit [Quit: WeeChat 3.0.1]
flx has quit [Remote host closed the connection]
dutch has joined #osdev
anon16 has joined #osdev
anon16 has quit [Client Quit]
anon16 has joined #osdev