Uh oh!
There was an error while loading. Please reload this page.
Support punchthrough tokens that have lifetime restrictions - #9
Support punchthrough tokens that have lifetime restrictions#9Jay Bosamiya (Microsoft) (jaybosamiya-ms) wants to merge 1 commit into
Conversation
Ah, it looks like this particular feature breaks dyn-compatibility (thus the semver checks complaint). I'll have to think a little bit if it is possible to maintain dyn compatibility while also supporting the restricted lifetimes we want to support. I suspect it is not possible (we need to give up one or the other). In general, I don't expect us to ever want to have multiple runtime-generic platforms that are fully-runtime-dynamic-dispatched. Thus, I don't think we actually need dyn-compatibility. Indeed, we would still be able to support multiple static platforms at the same time if we wanted to, so this is not a major restriction. Thus, I feel we can give up on dyn compatibility here. |
Weiteng Chen (CvvT)
commented
Feb 12, 2025
As discussed with Jay this afternoon, the current design assumes that punchthrough does not block. One example of blocking punchthrough is futex (might be the only one). Either we remove |
Weidong Cui (wdcui)
commented
Feb 12, 2025
What's the downside of just removing
|
Weiteng Chen (CvvT)
commented
Feb 12, 2025
I drafted a new PR: #10. I removed most punchthroughs and only kept syscalls, now it does not need to specify lifetime. |
Weiteng Chen (CvvT)
commented
Feb 12, 2025
Jay just told me futex could be supported in litebox given RawMutexProvider implementation and our single process assumption. Probably we won't have any blocking punchthroughs. |
I'm closing this PR, since it appears that we don't need it. If necessary, we can resurrect it. Keeping the |
This PR adds a generic lifetime bound to the associated type for the
PunchthroughToken, which allows us to more precisely capture lifetimes, and thereby de-restrict the conditions under which punchthrough tokens can be implemented (such as those with explicit lifetimes within them).