Currently ring buffer manually map kernel pages to user space virtual memory. This causes issues if the user space app that caleld __new() on a previously pinned map; and thereafter crashes; the user mapped pages are not cleaned. A subsequent app that tries to call __new() on the same map will fail as the user mapping already exists.
The proposal is to move to kernel sections and views; such that every app that calls __new() has a handle to the view which gets cleaned up by Ob when the process terminates.
Currently ring buffer manually map kernel pages to user space virtual memory. This causes issues if the user space app that caleld __new() on a previously pinned map; and thereafter crashes; the user mapped pages are not cleaned. A subsequent app that tries to call __new() on the same map will fail as the user mapping already exists.
The proposal is to move to kernel sections and views; such that every app that calls __new() has a handle to the view which gets cleaned up by Ob when the process terminates.