Quoth Bakul Shah via 9fans <[email protected]>: > > You have a (control) connection with the mmap device to > set up mmap so might as well use it to convey errors! > This device would be strictly local to where a program > runs.
I'm not sure how this is supposed to work; I assume you'd need to fork a proc to handle errors, since you would need to block the faulting process while figuring out how to re-map the page so that the memory access could be handled? If the flush was done in the background due to cache pressure, the code that had done the failing I/O operation may have very well moved on, so you you'd need a complciated mechanism to know how long ago your writes had failed coded into your software. Memory isn't a good abstraction for failable i/o. It looks simple, but makes error handling impossibly hard. I think the only time it's acceptably behaved is when it's read-only, you're willing to treat i/o errors as irrecoverable, and you don't care about random pauses in your program's perforamce profile. I don't think that situation is all so common. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Te8d7c6e48b5c075b-M3dc790fee41d21884de7bacd Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
