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
netbsduser` has quit [Ping timeout: 246 seconds]
troseman has joined #osdev
troseman has quit [Client Quit]
goliath has quit [Quit: SIGSEGV]
craigo has quit [Quit: Leaving]
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
Arthuria has joined #osdev
cloudowind has quit [Ping timeout: 245 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 245 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 248 seconds]
cloudowind has joined #osdev
Bonstra has quit [Remote host closed the connection]
Bonstra has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 272 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 265 seconds]
heat has quit [Ping timeout: 248 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 246 seconds]
cloudowind has joined #osdev
xenos1984 has quit [Read error: Connection reset by peer]
cloudowind has quit [Ping timeout: 255 seconds]
cloudowind has joined #osdev
troseman has joined #osdev
troseman has quit [Client Quit]
_ngn- has joined #osdev
_ngn has quit [Remote host closed the connection]
cloudowind has quit [Ping timeout: 255 seconds]
cloudowind has joined #osdev
xenos1984 has joined #osdev
cloudowind has quit [Ping timeout: 248 seconds]
cloudowind has joined #osdev
edr has quit [Quit: Leaving]
x64S has joined #osdev
cloudowind has quit [Ping timeout: 248 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
qubasa has quit [Ping timeout: 252 seconds]
cloudowind has quit [Ping timeout: 265 seconds]
qubasa has joined #osdev
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 265 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 245 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 276 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
eluks has quit [Remote host closed the connection]
eluks has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 245 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 265 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
HeTo has quit [Read error: Connection reset by peer]
[Kalisto]2 has joined #osdev
HeTo has joined #osdev
mcrod has quit [Read error: Connection reset by peer]
rorx has quit [Ping timeout: 246 seconds]
TkTech8 has joined #osdev
mcrod has joined #osdev
Yoofie6464 has joined #osdev
SanchayanMaity has quit [Ping timeout: 264 seconds]
danlarkin has quit [Ping timeout: 248 seconds]
Enapiuz has quit [Ping timeout: 272 seconds]
citrons has quit [Ping timeout: 246 seconds]
pabs3 has quit [Ping timeout: 246 seconds]
Yoofie646 has quit [Ping timeout: 246 seconds]
Yoofie6464 is now known as Yoofie646
Enapiuz has joined #osdev
Matt|home has quit [Ping timeout: 252 seconds]
[Kalisto] has quit [Read error: Connection reset by peer]
[Kalisto]2 is now known as [Kalisto]
TkTech has quit [Ping timeout: 246 seconds]
TkTech8 is now known as TkTech
danlarkin has joined #osdev
citrons has joined #osdev
SanchayanMaity has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
pabs3 has joined #osdev
cloudowind has joined #osdev
rorx has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
khrbtxyz has quit [Ping timeout: 260 seconds]
khrbtxyz has joined #osdev
cloudowind has quit [Ping timeout: 272 seconds]
cloudowind has joined #osdev
Arthuria has quit [Ping timeout: 260 seconds]
cloudowind has quit [Ping timeout: 246 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 246 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 246 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 272 seconds]
netbsduser` has joined #osdev
cloudowind has joined #osdev
rorx has quit [Ping timeout: 264 seconds]
PublicWiFi has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
PublicWiFi has joined #osdev
cloudowind has quit [Ping timeout: 272 seconds]
cloudowind has joined #osdev
annamalai has quit [Ping timeout: 248 seconds]
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
annamalai has joined #osdev
netbsduser` has quit [Ping timeout: 252 seconds]
rorx has joined #osdev
annamalai has quit [Ping timeout: 272 seconds]
cloudowind has quit [Ping timeout: 272 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 272 seconds]
cloudowind has joined #osdev
x64S has quit [Ping timeout: 260 seconds]
x64S has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 248 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
x64S has quit [Quit: Leaving]
emntn has joined #osdev
cloudowind has quit [Ping timeout: 272 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 246 seconds]
cloudowind has joined #osdev
spare has joined #osdev
cloudowind has quit [Ping timeout: 265 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 246 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 246 seconds]
cloudowind has joined #osdev
Dead_Bush_Sanpai has quit [Read error: Connection reset by peer]
Dead_Bush_Sanpai has joined #osdev
cloudowind has quit [Ping timeout: 272 seconds]
cloudowind has joined #osdev
Brnocrist has quit [Ping timeout: 255 seconds]
cloudowind has quit [Ping timeout: 272 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 245 seconds]
cloudowind has joined #osdev
GeDaMo has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 276 seconds]
cloudowind has joined #osdev
hwpplayer1 has joined #osdev
spare has quit [Remote host closed the connection]
Left_Turn has joined #osdev
youcai has joined #osdev
obrien has joined #osdev
levitating_ has quit [Remote host closed the connection]
hwpplayer1 has quit [Remote host closed the connection]
V has quit [Remote host closed the connection]
goliath has joined #osdev
heat has joined #osdev
SupUser has joined #osdev
janemba has quit [Ping timeout: 252 seconds]
karenw has joined #osdev
V has joined #osdev
SupUser has quit [Ping timeout: 252 seconds]
hwpplayer1 has joined #osdev
MiningMarsh has quit [Read error: Connection reset by peer]
MiningMarsh has joined #osdev
bauen1 has joined #osdev
levitating has joined #osdev
edr has joined #osdev
Matt|home has joined #osdev
hwpplayer1 has quit [Ping timeout: 265 seconds]
Left_Turn has quit [Remote host closed the connection]
Left_Turn has joined #osdev
Turn_Left has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
Left_Turn has quit [Ping timeout: 265 seconds]
cloudowind has joined #osdev
hwpplayer1 has joined #osdev
cloudowind has quit [Ping timeout: 255 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
SophiaNya has quit [Remote host closed the connection]
ptrc has quit [Remote host closed the connection]
SophiaNya has joined #osdev
ptrc has joined #osdev
stolen has joined #osdev
SupUser has joined #osdev
Left_Turn has joined #osdev
xenos1984 has quit [Read error: Connection reset by peer]
Turn_Left has quit [Ping timeout: 265 seconds]
KarenTheDorf has joined #osdev
karenw is now known as Guest6537
Guest6537 has quit [Killed (tungsten.libera.chat (Nickname regained by services))]
KarenTheDorf is now known as karenw
xenos1984 has joined #osdev
zid has quit [Ping timeout: 248 seconds]
zid` has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
youcai has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
cloudowind has joined #osdev
Arthuria has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
hwpplayer1 has quit [Remote host closed the connection]
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 265 seconds]
Brnocrist has joined #osdev
obrien has quit [Remote host closed the connection]
levitating has quit [Remote host closed the connection]
bauen1 has quit [Ping timeout: 245 seconds]
PapaFrog has quit [Ping timeout: 276 seconds]
guideX has quit [Quit: Leaving]
Terlisimo has quit [Quit: Connection reset by beer]
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 272 seconds]
guideX has joined #osdev
Ermine has quit [Remote host closed the connection]
Terlisimo has joined #osdev
Ermine has joined #osdev
xenos1984 has quit [Ping timeout: 246 seconds]
Arthuria has quit [Ping timeout: 260 seconds]
xenos1984 has joined #osdev
karenw has quit [Ping timeout: 246 seconds]
bauen1 has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 248 seconds]
Left_Turn has joined #osdev
karenw has joined #osdev
Turn_Left has quit [Ping timeout: 265 seconds]
hwpplayer1 has joined #osdev
Turn_Left has joined #osdev
xenos1984 has quit [Ping timeout: 252 seconds]
Left_Turn has quit [Ping timeout: 265 seconds]
<heat> hello linux kernel useren
<heat> i have a semi question i've been thinking about today: when should you EOI an interrupt
<heat> my conclusions are that you must EOI before handling the IRQ for edge-triggered, and should EOI after handling the IRQ for level triggered
<heat> mainly because if you EOI after handling on edge triggered, you might lose IRQs if your irqchip can't buffer them or can't buffer them super deep
<heat> and if you EOI before handling the irq for level triggered, nothing disastrous will happen, but you'll get double the IRQs spuriously
<heat> which is what's been happening to me forever
<heat> thoughts? i think i have this right
xenos1984 has joined #osdev
<heat> the edge triggered irq loss problem might not matter in most circumstances due to x86 APICs having enough IRQ buffering, but idk, i dont exactly remember those details
<zid`> have you considered
<zid`> EOIing after you're ready for a new IRQ
<zid`> but not before
<heat> you might lose IRQs
<zid`> Then your device is faster than your cpu
<heat> not really
<zid`> if you're getting two IRQs while servicing another
<zid`> such that the third drops
<heat> imagine you getting a block device irq for a request completion, you've just handled all that shit in a loop, you go to EOI, and between <shit in a loop> and <EOI> another request completes <and you accidentally drop that IRQ>
<zid`> oh I forgor 'edge'
<zid`> I would have thought devices that use edgelord interrupts would be prepared for 'I issued more IRQs than there are cpus in a couple of microseconds total'
<heat> all relevant devices use edgelord interrupts these days
<heat> due to MSI being edge-triggered
<pog> triggered by edging? cringe
<heat> do not come, do not come
<zid`> yea but if you're on MSI surely you're set up to route irqs to a group of cpus and you're doing them quick irqs that just set a flag on a queue then return
<heat> IM GONNA COME
PapaFrog has joined #osdev
xenos1984 has quit [Ping timeout: 272 seconds]
* karenw EOIs all over the bus.
<zid`> dirty bugger
<Ermine> edgy interruts
<Ermine> maybe arm fiqs is a good idea
xenos1984 has joined #osdev
SupUser has quit [Ping timeout: 252 seconds]
Turn_Left has quit [Ping timeout: 252 seconds]
<heat> uhhh why has the interrupt line just gooned all over my couch
Turn_Left has joined #osdev
griddle has joined #osdev
Turn_Left has quit [Max SendQ exceeded]
Turn_Left has joined #osdev
op has joined #osdev
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 248 seconds]
netbsduser` has joined #osdev
clever has quit [Ping timeout: 255 seconds]
stolen has quit [Quit: Connection closed for inactivity]
<kof673> mechanism not policy...just give the user a rope they can hang themselves if they want :D
<kof673> maybe they want to simulate slowness, who am i to judge?
<kof673> or running inside an emulator, etc.
hwpplayer1 has quit [Quit: See you tomorrow take care !]
vdamewood has quit [Quit: Life beckons]
voidah has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
clever has joined #osdev
op has quit [Remote host closed the connection]
SupUser has joined #osdev
Ermine has quit [Remote host closed the connection]
Ermine has joined #osdev
melnary has quit [Read error: Connection reset by peer]
SupUser has quit [Ping timeout: 252 seconds]
Ermine has quit [Remote host closed the connection]
Ermine has joined #osdev
melnary has joined #osdev
karenw has quit [Ping timeout: 265 seconds]
voidah has quit [Ping timeout: 252 seconds]
GeDaMo has quit [Quit: 0wt 0f v0w3ls.]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 260 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 248 seconds]
<geist> edge triggered interrupts are just as usable, only real constraint is you can't realistically share edge IRQs between devices
<geist> which is, IMO, totally fine
<geist> though of course i prefer level irqs
<geist> i think the primary reason you generally use edge triggered irqs for MSIs (though i think MSIs support level just fine too) is it only requires one msi message to trigger the edge
<geist> vs two to set and then clear the level
griddle has quit [Quit: griddle]
<zid`> I think he's just overthinking it, the only way he could miss edge irqs is if the device is sending them faster than he can process them, which is.. an issue no matter how you try to 'handle' it
griddle has joined #osdev
<geist> right, and if you do that usually devices have a way to deal with that. you design your irq status registers, etc to deal with multiple events, hopefully
<geist> and yeah the acking sequence is very important on both edge and level
karenw has joined #osdev
<heat> i'm not overthinking it
<heat> linux definitely does special handling for edge irqs vs level
_ngn- is now known as _ngn
<heat> you need to EOI before actually "handling" the irq, otherwise you'll possibly miss some IRQs, it makes sense
divine has quit [Quit: Lost terminal]
<heat> otherwise you'll have a small window between "stopped looking at device regs" and "cleared interrupt"
<_ngn> question: in FAT32 do LFNs follow a certain order?
netbsduser` has quit [Ping timeout: 264 seconds]
voidah has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 260 seconds]
sbalmos has quit [Quit: WeeChat 4.4.3]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 248 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 246 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 265 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
netbsduser` has joined #osdev
cloudowind has joined #osdev
griddle has quit [Quit: griddle]
Turn_Left has quit [Read error: Connection reset by peer]
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
netbsduser` has quit [Ping timeout: 252 seconds]
cloudowind has quit [Ping timeout: 248 seconds]
levitating has joined #osdev
cloudowind has joined #osdev