>> Well we don't have to, I think Mikey wasn't totally clear about that >> "making all registers volatile" business :-) This is just something we >> need to handle in assembly if we are going to reclaim the suspended >> transaction.
Yeah, sorry. The slow path with all registers as volatile is only needed if we get pre-empted during the transaction. >> >> So basically, what we need is something along the lines of >> enable_kernel_tm() which checks if there's a suspended user transaction >> and if yes, kills/reclaims it. >> >> Then we also need to handle in our interrupt handlers that we have an >> active/suspended transaction from a kernel state, which we don't deal >> with at this point, and do whatever has to be done to kill it... we >> might get away with something simple if we can state that we only allow >> kernel transactions at task level and not from interrupt/softirq >> contexts, at least initially. > > Call me a coward, but this is starting to sound a bit scary. ;-) We are just wanting to prototype it for now to see if we could make it go faster. If it's worth it, then we'd consider the additional complexity this would bring. I don't think it'll be that bad, but I'd certainly want to make sure it's worth it before trying :-) Mikey -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/