• Kirill Smelkov's avatar
    wcfs: Do not cancel pin handler by a READ interrupt · 7a79bdd6
    Kirill Smelkov authored
    Pinning is critical operation whose failure will soon lead to client
    being killed with SIGBUS. WCFS correctness also depend fundamentally on
    pin operation, if started, to be handled by the client.
    
    -> rework the READ handler not to cancel pin if a READ interrupt comes
       in from the OS client.
    
    Do this via organizing WatchLink.serveCtx and running pins under this
    context instead of under READ context. Later we will adjust pins to also
    cancel this context on any error.
    
    Test is, hopefully, TODO.
    
    /reviewed-by @levin.zimmermann
    /reviewed-on nexedi/wendelin.core!18
    7a79bdd6
wcfs.go 83 KB