> It is edge triggered so it won't refire when unmasked (especially if we don't know).Well, we are smarter than that. soft-masking is a know well-solved problem. We just latch that something happened while masked and refire when unmasked. Not terribly hard. We already do that in various situations to mask edge interrupts. Masking in HW is totally optional. I don't mask in HW on cell for example, the HW just can't. We only re-fire if it actually occured while "masked", that should take care that we never fire once too much, no ? There must be some way of knowing what work is to do (ie, whether a DMA q entry is completed, some kind of done bit, etc...). There generally is at least, so that even in that case, spurrious MSIs are mostly a non issue, but I don't think we have them here. I still mostly dislike the new approach, I prefer Matthew's original one with SW masking of the MSIs. For example, if you have the MSIs be 'one' interrupt, then you hit all of the logic in the IRQ core to make sure only one happens at once. Might not be what you want, and -will- cause some to be dropped... not nice. Ben. --
| jjohansen | [AppArmor 39/45] AppArmor: Profile loading and manipulation, pathname matching |
| Vladislav Bolkhovitin | Re: Integration of SCST in the mainstream Linux kernel |
| Heiko Carstens | Re: -mm merge plans for 2.6.23 -- sys_fallocate |
| Andrew Morton | 2.6.23-rc6-mm1 |
git: | |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Evgeniy Polyakov | Re: [BUG] New Kernel Bugs |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | [GIT]: Networking |
