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
xenos1984 has joined #osdev
jcea has quit [Ping timeout: 248 seconds]
simjnd has joined #osdev
simjnd has quit [Ping timeout: 276 seconds]
Turn_Left has quit [Read error: Connection reset by peer]
raphaelsc has quit [Remote host closed the connection]
simjnd has joined #osdev
simjnd has quit [Ping timeout: 276 seconds]
goliath has quit [Quit: SIGSEGV]
agent314 has joined #osdev
bauen1 has quit [Ping timeout: 268 seconds]
edr has quit [Quit: Leaving]
FreeFull has quit [Ping timeout: 276 seconds]
FreeFull has joined #osdev
bauen1 has joined #osdev
AtleoS has quit [Remote host closed the connection]
AtleoS has joined #osdev
simjnd has joined #osdev
simjnd has quit [Ping timeout: 272 seconds]
agent314 has quit [Ping timeout: 276 seconds]
agent314 has joined #osdev
<klys> fl00f
_whitelogger has joined #osdev
<zid`> missed your change, rip
simjnd has quit [Ping timeout: 272 seconds]
koolazer has quit [Ping timeout: 248 seconds]
agent314 has quit [Ping timeout: 248 seconds]
agent314 has joined #osdev
erai has joined #osdev
bauen1 has quit [Ping timeout: 272 seconds]
simjnd has joined #osdev
bauen1 has joined #osdev
simjnd has quit [Ping timeout: 260 seconds]
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack has joined #osdev
armaan has joined #osdev
upgradingmaster has joined #osdev
upgradingmaster has quit [Max SendQ exceeded]
upgradingmaster has joined #osdev
armaan has quit [Ping timeout: 248 seconds]
upgradingmaster has quit [Client Quit]
armaan has joined #osdev
armaan has quit [Client Quit]
marr-ales-fios has joined #osdev
simjnd has joined #osdev
simjnd has quit [Ping timeout: 252 seconds]
frkzoid has quit [Read error: Connection reset by peer]
frkazoid333 has joined #osdev
AtleoS has quit [Ping timeout: 252 seconds]
simjnd has joined #osdev
marr-ales-fios has quit [Quit: Konversation terminated!]
simjnd has quit [Ping timeout: 248 seconds]
karenw has joined #osdev
marr-ales-fios has joined #osdev
eluks has quit [Remote host closed the connection]
osmten has joined #osdev
eluks has joined #osdev
simjnd has joined #osdev
simjnd has quit [Ping timeout: 260 seconds]
marr-ales-fios has quit [Quit: Konversation terminated!]
marr-ales-fios has joined #osdev
marr-ales-fios has quit [Quit: Konversation terminated!]
bauen1 has quit [Ping timeout: 248 seconds]
simjnd has joined #osdev
simjnd has quit [Ping timeout: 276 seconds]
marr-ales-fios has joined #osdev
simjnd has joined #osdev
\Test_User has quit [Quit: \Test_User]
simjnd has quit [Remote host closed the connection]
simjnd has joined #osdev
simjnd has quit [Ping timeout: 260 seconds]
\Test_User has joined #osdev
Lucretia has joined #osdev
simjnd has joined #osdev
karenw has quit [Quit: Deep into that darkness peering...]
karenw has joined #osdev
simjnd has quit [Ping timeout: 268 seconds]
<kof673> so...budget stack overflow protection does "work", but really, you need custom libc/etc. to call a function at the start of every function and before returning https://0x0.st/s/V-mRv0bYmb4D4jbXt7VOCQ/8veS.c ( fragment included at beginning of main(), just uses the address of temp_ret, a local variable, calculates the stack limit as offset from that, a define has the size of the "stack limit")
<kof673> https://0x0.st/s/tdzH5IGOn9flVzqWwkXe6w/8ve1.c logger function thing called at function entry and return...can enforce "nested function limit" too now lol i will add more such things later lol example program output catching an overflow (well, x86-32, stack underflow) https://0x0.st/s/wnXJniM3zlmuCC-ZhO9K-Q/8vee.txt
<kof673> "when its good its good, when its bad, its still better than nothing" j/k
simjnd has joined #osdev
<kof673> in order to check the limit, it of course...also just takes the address of a local variable inside the "logger" function lol
<kof673> it doesn't actually stop overflow, just bails if seen lol
simjnd has quit [Ping timeout: 272 seconds]
<kof673> you would want extra slack space as large as ...however much stack your function-using-the-most-stack uses before it calls the "logger function"
simjnd has joined #osdev
bauen1 has joined #osdev
simjnd has quit [Ping timeout: 248 seconds]
jcea has joined #osdev
marr-ales-fios has quit [Quit: Konversation terminated!]
simjnd has joined #osdev
Lucretia has quit [Ping timeout: 245 seconds]
Lucretia has joined #osdev
antranigv_ has quit [Ping timeout: 244 seconds]
xvmt has quit [Ping timeout: 265 seconds]
antranigv has joined #osdev
jcea has quit [Ping timeout: 276 seconds]
xvmt has joined #osdev
osmten has quit [Quit: Client closed]
Lucretia-backup has joined #osdev
Lucretia has quit [Ping timeout: 276 seconds]
GeDaMo has joined #osdev
simjnd has quit [Ping timeout: 260 seconds]
simjnd has joined #osdev
goliath has joined #osdev
simjnd has quit [Ping timeout: 276 seconds]
sortiecat has joined #osdev
simjnd has joined #osdev
Lucretia-backup is now known as Lucretia
simjnd has quit [Ping timeout: 260 seconds]
simjnd has joined #osdev
ZipCPU_ has joined #osdev
ZipCPU has quit [Ping timeout: 244 seconds]
ZipCPU_ is now known as ZipCPU
sortiecat has quit [Remote host closed the connection]
sortiecat has joined #osdev
agent314 has quit [K-Lined]
sortiecat has quit [Quit: Leaving]
<Ermine> > CONFIG_HID_SIGMAMICRO
<Ermine> This kernal feels so sigma
xvmt has quit [Ping timeout: 252 seconds]
edr has joined #osdev
xvmt has joined #osdev
simjnd has quit [Ping timeout: 252 seconds]
karenw has quit [Ping timeout: 245 seconds]
simjnd has joined #osdev
simjnd has quit [Ping timeout: 245 seconds]
marr-ales-fios has joined #osdev
marr-ales-fios has quit [Client Quit]
marr-ales-fios has joined #osdev
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #osdev
marr-ales-fios has quit [Remote host closed the connection]
simjnd has joined #osdev
xvmt has quit [Remote host closed the connection]
xvmt has joined #osdev
MelMalik has quit [Quit: Bye Open Projects!]
Left_Turn has joined #osdev
sbalmos has quit [Quit: WeeChat 4.6.1]
sbalmos has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 248 seconds]
simjnd has quit [Ping timeout: 248 seconds]
simjnd has joined #osdev
monkeyPlus has joined #osdev
tigerbrother has quit [Quit: Ping timeout (120 seconds)]
tigerbrother has joined #osdev
Left_Turn has joined #osdev
guideX has quit [Ping timeout: 252 seconds]
Turn_Left has quit [Ping timeout: 276 seconds]
simjnd has quit [Ping timeout: 252 seconds]
simjnd has joined #osdev
simjnd has quit [Ping timeout: 276 seconds]
simjnd has joined #osdev
monkeyPlus has quit [Remote host closed the connection]
simjnd has quit [Ping timeout: 272 seconds]
<Ermine> fwiw fedora's kernal has CONFIG_UBSAN=y
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 248 seconds]
<heat> Ermine: yes
<heat> it's a minimal version of UBSAN
<heat> basically bounds checking IIRC
<heat> it will Soon(tm) be on the x86 defconfig too
<Ermine> yea ubuntu has it too
<heat> android too
simjnd has joined #osdev
<heat> Ermine: can you zgrep UBSAN /proc/config.gz and post the snippet?
jcea has joined #osdev
simjnd has quit [Ping timeout: 248 seconds]
<heat> thanks
<heat> yeah that's pretty MINIMAL
<heat> shift and bounds checking
<heat> i'm surprised CONFIG_UBSAN_TRAP is not set though
goliath has quit [Quit: SIGSEGV]
<nikolar> What does it do without trap
<zid`> sounds better
<heat> without trap it shells out to the usual callbacks, with debug data and debug strings and stuff
<heat> with trap it just ud2's
simjnd has joined #osdev
ZipCPU has quit [Ping timeout: 252 seconds]
ZipCPU has joined #osdev
simjnd has quit [Ping timeout: 248 seconds]
simjnd has joined #osdev
goliath has joined #osdev
<Ermine> that was a many hours run of make oldconfig...
_nater_ has joined #osdev
<nikolar> does a ud2 in the kernel cause a panic lol
<zid`> ud2 is just an exception anyway yea
<zid`> turn your null pointer #PF into a #UD
jcea has quit [Remote host closed the connection]
jcea has joined #osdev
<heat> nikolar: nope, just a BUG
<nikolar> Ah interesting
<heat> whether that is transformed into a panic depends on your config
<heat> uhh, not config, a sysctl
guideX has joined #osdev
<heat> to be clear, BUG by default just force exits the current task
<heat> which is cute
guideX has quit [Read error: Connection reset by peer]
guideX has joined #osdev
xvmt has quit [Ping timeout: 248 seconds]
GeDaMo has quit [Ping timeout: 248 seconds]
leon has quit [Ping timeout: 272 seconds]
m3a has quit [Ping timeout: 252 seconds]
xvmt has joined #osdev
leon has joined #osdev
m3a has joined #osdev
getz has quit [Read error: Connection reset by peer]
GeDaMo has joined #osdev
getz has joined #osdev
sidcha has quit [Ping timeout: 272 seconds]
citrons has quit [Ping timeout: 252 seconds]
sidcha has joined #osdev
simjnd has quit [Ping timeout: 252 seconds]
FreeFull has quit [Ping timeout: 248 seconds]
FreeFull has joined #osdev
goliath has quit [Quit: SIGSEGV]
citrons has joined #osdev
remexre has quit [Remote host closed the connection]
simjnd has joined #osdev
alpha2023 has quit [Ping timeout: 260 seconds]
simjnd has quit [Ping timeout: 252 seconds]
alpha2023 has joined #osdev
<nikolar> cute indeed
goliath has joined #osdev
k0valski18891621 has joined #osdev
ZipCPU has quit [Ping timeout: 260 seconds]
ZipCPU has joined #osdev
simjnd has joined #osdev
gog has joined #osdev
GeDaMo has quit [Quit: 0wt 0f v0w3ls.]
karenw has joined #osdev
MelMalik has joined #osdev
<kof673> https://0x0.st/s/6p8NtPIYy3qN49b3pEQJwA/8vVr.c someday, see if i can task switch based on the time lol lots of overhead, but seemingly does not need interrupts nor a timer lol would need to set up a real stack per "process" though
<kof673> tick tick tick TOCK (taskswitch)
<kof673> just have to...manually call that however often lol
<kof673> i want to see what happens if you just try to poll instead of interrupts too lol
<kof673> worst case, is there is only c89 time() so 1 second granularity :/
<kof673> you even simulate a "clock" if there is not one, so long as the time increases monotonically lol
_whitelogger has joined #osdev
<kof673> with per-process lengths, could be like this process can run up to 1000 milliseconds before force switch, another process 500 milliseconds, etc. (i will just make it multiples-of-a-timeslice-length, so there is a base unit) "priorities" but it is all on the honor system that they call tick() between normal work since i call a function at the start of every function, that basically just means add a call to tick() inside loops lol
<bslsk05> ​lore.kernel.org: Making sure you're not a bot!
simjnd has quit [Ping timeout: 260 seconds]
Lucretia has quit [Remote host closed the connection]
simjnd has joined #osdev
Turn_Left has quit [Read error: Connection reset by peer]
vdamewood has joined #osdev
the_oz_ has quit [Read error: Connection reset by peer]
goliath has quit [Quit: SIGSEGV]
simjnd has quit [Ping timeout: 248 seconds]
simjnd has joined #osdev
jcea has quit [Ping timeout: 248 seconds]