Since Linux kernel version 3.2, the mremap() syscall performs TLB flushes after dropping pagetable locks. If a syscall such as ftruncate() removes entries from the pagetables of a task that is in the middle of mremap(), a stale TLB entry can remain for a short time that permits access to a physical page after it has been released back to the page allocator and reused. This is fixed in the following kernel versions: 4.9.135, 4.14.78, 4.18.16, 4.19.
The product does not properly “clean up” and remove temporary or supporting resources after they have been used.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Linux_kernel | Linux | 3.2 (including) | 4.9.135 (excluding) |
Linux_kernel | Linux | 4.9.136 (including) | 4.14.78 (excluding) |
Linux_kernel | Linux | 4.14.79 (including) | 4.18.16 (excluding) |
Linux_kernel | Linux | 4.18.17 (including) | 4.19 (excluding) |