Thread (47 messages) flat view 47 messages, 9 authors, 2014-11-06

Re: [Qemu-devel] [PATCH 08/17] mm: madvise MADV_USERFAULT

From: Kirill A. Shutemov <hidden>
Date: 2014-10-07 10:53:51
Also in: kvm, linux-mm, lkml, qemu-devel

On Tue, Oct 07, 2014 at 11:46:04AM +0100, Dr. David Alan Gilbert wrote:
* Kirill A. Shutemov (kirill@shutemov.name) wrote:
quoted
On Fri, Oct 03, 2014 at 07:07:58PM +0200, Andrea Arcangeli wrote:
quoted
MADV_USERFAULT is a new madvise flag that will set VM_USERFAULT in the
vma flags. Whenever VM_USERFAULT is set in an anonymous vma, if
userland touches a still unmapped virtual address, a sigbus signal is
sent instead of allocating a new page. The sigbus signal handler will
then resolve the page fault in userland by calling the
remap_anon_pages syscall.
Hm. I wounder if this functionality really fits madvise(2) interface: as
far as I understand it, it provides a way to give a *hint* to kernel which
may or may not trigger an action from kernel side. I don't think an
application will behaive reasonably if kernel ignore the *advise* and will
not send SIGBUS, but allocate memory.
Aren't DONTNEED and DONTDUMP  similar cases of madvise operations that are
expected to do what they say ?
No. If kernel would ignore MADV_DONTNEED or MADV_DONTDUMP it will not
affect correctness, just behaviour will be suboptimal: more than needed
memory used or wasted space in coredump.

-- 
 Kirill A. Shutemov

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help