TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

The 5-year journey to bring restartable sequences to Linux (2019)

34 pointsby gbrown_about 3 years ago

3 comments

throwaway81523about 3 years ago
I hadn&#x27;t heard about this. Cool. Two obvious questions:<p>1) You are supposed to check the cpu number at the start and end of your critical section, to make sure it hasn&#x27;t changed. But what if it has changed twice? There should be a &quot;changed&quot; flag in the struct, I&#x27;d think.<p>2) Does the single instruction commit not itself need a lock prefix or something similar? Futex has to do something like that unless I&#x27;m mistaken.<p>Actually, 3) if your cpu supports something like TSX (did Intel ever get that working right?), would you want to use that in preference to rseq?
评论 #30819225 未加载
评论 #30819758 未加载
convolvatronabout 3 years ago
I couldn&#x27;t follow the reference, and it isn&#x27;t spelled out in the entry. this sounds like optimistic concurrency control. which is lovely, but performs poorly under high contention. does anyone know offhand (I guess I should track down that paper)
jaytaylorabout 3 years ago
This looks cool!<p>Predictably it&#x27;s a C-only API. I&#x27;m curious what using this facility would look like from within Golang or Java.<p>I&#x27;ll admit I&#x27;m not savvy enough to say whether it would really even make sense to try. I&#x27;m curious on how it&#x27;d interact with the JVM.
评论 #30817479 未加载