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
epony has quit [Remote host closed the connection]
epony has joined #osdev
[itchyjunk] has quit [Ping timeout: 260 seconds]
FreeFull has quit []
[itchyjunk] has joined #osdev
nyah has quit [Ping timeout: 260 seconds]
saltd has quit [Read error: Connection reset by peer]
gog has quit [Ping timeout: 260 seconds]
sonny has joined #osdev
saltd has joined #osdev
sonny has quit [Ping timeout: 252 seconds]
<Mutabah> yay! XHCI driver "complete" (i.e. control/bulk/interrupt endpoint working on qemu)
<JerOfPanic> morning
<klange> If only I could find the motivation to work on mine...
<klange> It has been... 45 days, 5 hours, 20 minutes since I last touched my RPi400.
<klange> I am happy to report the clock in the panel is still ticking, and the serial console is still connected.
<Mutabah> klange: How far did you get with it?
<klange> I can turn it on :)
<Mutabah> I meant the xhci driver, or were you just referring to osdev
<klange> I mean I can turn on the xhci controller, that's slightly more annoying than it really should be.
<Mutabah> Ah, so not even up to normal driver stuff :)
sonny has joined #osdev
epony has quit [Remote host closed the connection]
frkzoid has joined #osdev
opal has quit [Ping timeout: 268 seconds]
opal has joined #osdev
sonny has quit [Quit: Client closed]
heat has quit [Ping timeout: 260 seconds]
\Test_User has quit [Read error: Connection reset by peer]
\Test_User has joined #osdev
bxh7 has quit [Quit: ZNC 1.8.2 - https://znc.in]
[itchyjunk] has quit [Read error: Connection reset by peer]
GeDaMo has joined #osdev
<saltd> i
<GeDaMo> j
<MelMalik> k
<klange> l
<MelMalik> m
<zid> I found my new pet, he's a little big so I might have to upgrade some stuff, but I love him immediately
PapaFrog has quit [Quit: ZNC 1.8.2+deb2 - https://znc.in]
PapaFrog has joined #osdev
Bonstra_ has quit [Quit: Pouf c'est tout !]
LostFrog has joined #osdev
PapaFrog has quit [Ping timeout: 260 seconds]
Bonstra has joined #osdev
jjuran has quit [Ping timeout: 255 seconds]
jjuran has joined #osdev
pretty_dumm_guy has joined #osdev
sortie has quit [Remote host closed the connection]
sortie has joined #osdev
Ermine has quit [Quit: Cya!]
Ermine has joined #osdev
gog has joined #osdev
epony has joined #osdev
FreeFull has joined #osdev
dude12312414 has joined #osdev
<bslsk05> ​www.theguardian.com: Brave mew world: Lim Heng Swee’s cat landscapes – in pictures | Art and design | The Guardian
dude12312414 has quit [Client Quit]
frkzoid has quit [Ping timeout: 255 seconds]
Fannie_Chmeller has joined #osdev
<Fannie_Chmeller> Dear #osdev, I am continue to study filesystems such as the ZFS and BtrFS. Now I am acquiring some understanding of how the Metadata is dealt with in C-o-W snapshots. However I am Curious, of how the data blocks/extents of a file they are tracked as being multiply used between snapshots
<Fannie_Chmeller> It appear to me that there are three ways to enable e.g. the *deletion* of blocks from a file which may have multiple COW snapshots of. 1. Reference counting all blocks (ugly) 2. Tracing-style garbage collection 3. a Mechanism to inspect all the 'Snapshot Sisters' of a file, and delete only what blocks are not referenced by any sisters.
<Mutabah> Reference counting probably works well, as long as you don't allow hardlinked loops
pretty_dumm_guy has quit [Quit: WeeChat 3.5]
pretty_dumm_guy has joined #osdev
<kazinsal> quasi-accurately reimplementing V4 from the manual is proving to be a pain. the manual doesn't actually say much about the C library and it predates the first edition of K&R by five years so that's not really a good reference point either
FreeFull has quit []
<kazinsal> also the first edition of K&R doesn't describe many important ANSI C standard library functions so who knows what the fuck the C "subroutine library" looked like in 1973
nyah has joined #osdev
FreeFull has joined #osdev
saltd has quit [Remote host closed the connection]
jjuran has quit [Quit: Killing Colloquy first, before it kills me…]
jjuran has joined #osdev
MiningMarsh has quit [Ping timeout: 268 seconds]
jjuran has quit [Ping timeout: 260 seconds]
jjuran has joined #osdev
saltd has joined #osdev
saltd has quit [Remote host closed the connection]
wolfshappen has quit [Ping timeout: 244 seconds]
wolfshappen has joined #osdev
saltd has joined #osdev
Brnocrist has quit [Ping timeout: 260 seconds]
brynet has quit [Quit: leaving]
wolfshappen has quit [Ping timeout: 260 seconds]
brynet has joined #osdev
wolfshappen has joined #osdev
Fannie_Chmeller has quit [Quit: CGI:IRC]
Brnocrist has joined #osdev
the_lanetly_052_ has quit [Ping timeout: 268 seconds]
matt__ has joined #osdev
matt__ is now known as freakazoid333
saltd has quit [Remote host closed the connection]
isaacwoods has joined #osdev
the_lanetly_052_ has joined #osdev
freakazoid333 has quit [Ping timeout: 244 seconds]
saltd has joined #osdev
frkzoid has joined #osdev
varad2 has joined #osdev
archenoth has joined #osdev
travisg_ has joined #osdev
gog` has joined #osdev
invalidopcode7 has joined #osdev
lg_ has joined #osdev
jstoker has quit [Killed (zirconium.libera.chat (Nickname regained by services))]
les_ has joined #osdev
nanovad_ has joined #osdev
amine2 has joined #osdev
jstoker has joined #osdev
frkzoid has quit [Ping timeout: 255 seconds]
pg12_ has joined #osdev
Test_User has joined #osdev
Mutabah_ has joined #osdev
Santurysim has joined #osdev
joe9_ has joined #osdev
dh` has quit [Ping timeout: 252 seconds]
travisg has quit [Ping timeout: 252 seconds]
DonRichie has quit [Ping timeout: 252 seconds]
thaumavorio has quit [Ping timeout: 252 seconds]
les has quit [Ping timeout: 252 seconds]
nanovad has quit [Ping timeout: 252 seconds]
joe9 has quit [Ping timeout: 252 seconds]
\Test_User has quit [Ping timeout: 252 seconds]
bleb has quit [Ping timeout: 252 seconds]
lg has quit [Ping timeout: 252 seconds]
mrvn has quit [Ping timeout: 252 seconds]
gog has quit [Ping timeout: 252 seconds]
invalidopcode has quit [Ping timeout: 252 seconds]
Ermine has quit [Ping timeout: 252 seconds]
smach has quit [Ping timeout: 252 seconds]
rorx has quit [Ping timeout: 252 seconds]
Starfoxxes has quit [Ping timeout: 252 seconds]
fkrauthan has quit [Ping timeout: 252 seconds]
Oshawott has quit [Ping timeout: 252 seconds]
Mutabah has quit [Ping timeout: 252 seconds]
amine has quit [Ping timeout: 252 seconds]
varad has quit [Ping timeout: 252 seconds]
epony has quit [Client Quit]
leah_ has quit [Ping timeout: 252 seconds]
pg12 has quit [Ping timeout: 252 seconds]
travisg_ is now known as travisg
nanovad_ is now known as nanovad
invalidopcode7 is now known as invalidopcode
amine2 is now known as amine
varad2 is now known as varad
_xor has joined #osdev
fkrauthan has joined #osdev
thaumavorio has joined #osdev
leah_ has joined #osdev
smach has joined #osdev
Santurysim has quit [Remote host closed the connection]
frkzoid has joined #osdev
Ermine has joined #osdev
DonRichie has joined #osdev
bleb has joined #osdev
rorx has joined #osdev
the_lanetly_052_ has quit [Ping timeout: 268 seconds]
frkzoid has quit [Ping timeout: 244 seconds]
matt__ has joined #osdev
matt__ is now known as freakazoid333
andydude has joined #osdev
heat has joined #osdev
freakazoid333 has quit [Ping timeout: 244 seconds]
gog` is now known as gog
smach has quit [Ping timeout: 260 seconds]
andydude has quit [Quit: andydude]
frkzoid has joined #osdev
saltd has quit [Quit: joins libera]
Matt|home has joined #osdev
eryjus has joined #osdev
eryjus has quit [Client Quit]
epony has joined #osdev
frkzoid has quit [Ping timeout: 244 seconds]
dh` has joined #osdev
smach has joined #osdev
<dzwdz> can anyone recommend an easily portable filesystem impl?
<dzwdz> also hi
<heat> hello dzdwdzdwdzdwadszdz
<heat> easily portable? that's kinda hard
<heat> maybe openzfs? :P
sonny has joined #osdev
<heat> if you're willing to emulate a efi-ish environment (or hack it a bit) for a driver, you can use my ext4 driver
<bslsk05> ​github.com: edk2-platforms/Features/Ext4Pkg/Ext4Dxe at master · tianocore/edk2-platforms · GitHub
carbonfiber has joined #osdev
<heat> i'm actually in the process of bringing in ext4 support to my OS and a good chunk of it has been backporting code
<dzwdz> that's a lot of ALL_CAPS_IDENTIFIERS
<heat> got read support pretty easily, write support will probably be harder
<heat> it is
<heat> it's Wintel style baby
<dzwdz> i've found lwext4 too
<dzwdz> which seems nice, but it uses cmake, and that terrifies me
<dzwdz> doesn't seem like i could just easily `CC=my_cc make` it
<heat> I can vouch for my driver, it works pretty well and is decently battle tested
<dzwdz> oh, that's a shame
xenos1984 has quit [Read error: Connection reset by peer]
<heat> actually actively maintained by your truly
<heat> yours*
<dzwdz> i hoped it'd fit in well with the rest of the os
<heat> lol
<heat> if you're going for a frankenstein design, efi-youros hybrid driver fits in perfectly
<heat> anyway, my recommendation is to roll your own
<heat> its hard and tricky, but this is osdev soooo
<dzwdz> eh, i'm putting it in userland anyways
<heat> particularly because there's more to filesystems than the actual filesystem code
<heat> mainly, dentry's, inodes, file descriptors, yadda yadda
<heat> page caches, buffer caches, etc
<heat> all of these things are supposed to fit in well
<heat> which is why you don't see really generic filesystem drivers
<dzwdz> and the more time i spend implementing the raw filesystem format, the less time i have for those things
<heat> Ext4Pkg is kind of different because firmware isn't really a full fledged kernel so things are simpler
<heat> yes, but you need to implement a filesystem to actually understand how it's going to work
<dzwdz> i have a tmpfs if that counts
<heat> I can guarantee you my design has significantly changed over time
<heat> and it will of course keep changing
<heat> as you battletest your design against more complex things, things are bound to change
smach has quit []
sonny has quit [Ping timeout: 252 seconds]
xenos1984 has joined #osdev
sonny has joined #osdev
<geist> yah i need to give heat's ext4 driver a looksie to see if it'll fit in LK
<dzwdz> you've inspired me to do something more fun instead
<dzwdz> but i think i'll try implementing ext2 soon
<dzwdz> btw, what do y'all think about sys/queue.h?
GeDaMo has quit [Quit: Physics -> Chemistry -> Biology -> Intelligence -> ???]
frkazoid333 has joined #osdev
sonny has quit [Quit: Client closed]
terminalpusher has joined #osdev
frkazoid333 has quit [Ping timeout: 255 seconds]
frkzoid has joined #osdev
mrvn has joined #osdev
terminalpusher has quit [Remote host closed the connection]
carbonfiber has quit [Quit: Connection closed for inactivity]
_xor has quit [Read error: Connection reset by peer]
joe9_ has quit [Quit: leaving]
heat has quit [Remote host closed the connection]
heat has joined #osdev
demindiro has joined #osdev
<demindiro> How do I get QEMU to expose MSI (*not* MSI-X) capabilities in the PCIe config space?
<demindiro> Or is it something I need to enable per device (e.g. xHCI)?
<heat> dzwdz, yay doing fun stuff
<heat> dzwdz, sys/queue.h's stuff is usually super bonkers and bad
<mjg> OH
<mjg> the never ending bsd bashing
<heat> demindiro, some devices expose MSI, others don't
<demindiro> Any (preferable simple) device you recommend?
<heat> ahci, e1000e
<heat> nvme I guess, virtio
<demindiro> Virtio will do, thanks!
<heat> np
<heat> mjg, isn't sys/queue.h the header with those data structures that are literally global (and need a GNU extension to not be global)?
<heat> or am I confusing it with another mindnumbingly stupid POSIX data structures header
<klange> sys/queue.h isn't posix at all
<heat> geist, fitting it is probably super easy, but the coding style is exceedingly anti-lk :)
pretty_dumm_guy has quit [Ping timeout: 268 seconds]
<heat> although it's not my fault, I don't like it more than you do lol
<heat> all in all, it's easy to integrate chunks of it due to the lack of kernel-ish stuff like struct pages, dentries, etc in UEFI
<heat> that's what I've been doing for the past day
<heat> aw yeah right, I was thinking about search.h
<heat> now those are really bonkers
<heat> I'd recommend you stay away from libc data structures though, i'm willing to bet they're all pretty shit
frkzoid has quit [Ping timeout: 255 seconds]
matt__ has joined #osdev
kof123 has quit [Ping timeout: 268 seconds]
demindiro has quit [Quit: Client closed]
[itchyjunk] has joined #osdev
joe9 has joined #osdev
[itchyjunk] has quit [Remote host closed the connection]
[itchyjunk] has joined #osdev
heat has quit [Remote host closed the connection]
heat has joined #osdev
<mjg> here is a funny question
<mjg> ... actually no
* moon-child looks around
<moon-child> where?
<mjg> there is not
* gog pets moon-child
* moon-child prrrrrs
matt__ has quit [Ping timeout: 244 seconds]
frkazoid333 has joined #osdev
frkazoid333 has quit [Ping timeout: 255 seconds]
frkzoid has joined #osdev
heat_ has joined #osdev
biblio has joined #osdev
heat has quit [Read error: Connection reset by peer]
biblio has quit [Client Quit]
simpl_e has quit [Remote host closed the connection]
simpl_e has joined #osdev
frkzoid has quit [Ping timeout: 255 seconds]