All of lore.kernel.org
 help / color / mirror / Atom feed
From: Izik Eidus <ieidus@redhat.com>
To: Chris Wright <chrisw@redhat.com>
Cc: Anthony Liguori <anthony@codemonkey.ws>,
	Andrea Arcangeli <aarcange@redhat.com>,
	linux-kernel@vger.kernel.org, kvm@vger.kernel.org,
	linux-mm@kvack.org, avi@redhat.com, riel@redhat.com,
	jeremy@goop.org, mtosatti@redhat.com, hugh@veritas.com,
	corbet@lwn.net, yaniv@redhat.com, dmonakhov@openvz.org
Subject: Re: [PATCH 5/4] update ksm userspace interfaces
Date: Thu, 02 Apr 2009 16:32:20 +0300	[thread overview]
Message-ID: <49D4BE64.8020508@redhat.com> (raw)
In-Reply-To: <20090402053114.GF1117@x200.localdomain>

Chris Wright wrote:
> * Anthony Liguori (anthony@codemonkey.ws) wrote:
>   
>> Using an interface like madvise() would force the issue to be dealt with  
>> properly from the start :-)
>>     
>
> Yeah, I'm not at all opposed to it.
>
> This updates to madvise for register and sysfs for control.
>
> madvise issues:
> - MADV_SHAREABLE
>   - register only ATM, can add MADV_UNSHAREABLE to allow an app to proactively
>     unregister, but need a cleanup when ->mm goes away via exit/exec
>   - will register a region per vma, should probably push the whole thing
>     into vma rather than keep [mm,addr,len] tuple in ksm
>
>   
The main problem that ksm will face when removing the fd interface is:
right now when you register memory into ksm, you open fd, and then ksm 
do get_task_mm(), we will do mmput when the file will be closed
(note that this doesnt mean that if you fork and not close the fd the 
memory wont go away...., get_task_mm() doesnt protect the vmas inside 
the mm strcture and therefore they will be able to get removed)

So if we move into madvice and we remove the get_task_mm() usage, we 
will have to add notification to exit_mm() so ksm will know it should 
stop using this mm strcture, and drop it from all the trees data...

Is this what we want?

WARNING: multiple messages have this Message-ID (diff)
From: Izik Eidus <ieidus@redhat.com>
To: Chris Wright <chrisw@redhat.com>
Cc: Anthony Liguori <anthony@codemonkey.ws>,
	Andrea Arcangeli <aarcange@redhat.com>,
	linux-kernel@vger.kernel.org, kvm@vger.kernel.org,
	linux-mm@kvack.org, avi@redhat.com, riel@redhat.com,
	jeremy@goop.org, mtosatti@redhat.com, hugh@veritas.com,
	corbet@lwn.net, yaniv@redhat.com, dmonakhov@openvz.org
Subject: Re: [PATCH 5/4] update ksm userspace interfaces
Date: Thu, 02 Apr 2009 16:32:20 +0300	[thread overview]
Message-ID: <49D4BE64.8020508@redhat.com> (raw)
In-Reply-To: <20090402053114.GF1117@x200.localdomain>

Chris Wright wrote:
> * Anthony Liguori (anthony@codemonkey.ws) wrote:
>   
>> Using an interface like madvise() would force the issue to be dealt with  
>> properly from the start :-)
>>     
>
> Yeah, I'm not at all opposed to it.
>
> This updates to madvise for register and sysfs for control.
>
> madvise issues:
> - MADV_SHAREABLE
>   - register only ATM, can add MADV_UNSHAREABLE to allow an app to proactively
>     unregister, but need a cleanup when ->mm goes away via exit/exec
>   - will register a region per vma, should probably push the whole thing
>     into vma rather than keep [mm,addr,len] tuple in ksm
>
>   
The main problem that ksm will face when removing the fd interface is:
right now when you register memory into ksm, you open fd, and then ksm 
do get_task_mm(), we will do mmput when the file will be closed
(note that this doesnt mean that if you fork and not close the fd the 
memory wont go away...., get_task_mm() doesnt protect the vmas inside 
the mm strcture and therefore they will be able to get removed)

So if we move into madvice and we remove the get_task_mm() usage, we 
will have to add notification to exit_mm() so ksm will know it should 
stop using this mm strcture, and drop it from all the trees data...

Is this what we want?

--
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>

  reply	other threads:[~2009-04-02 13:37 UTC|newest]

Thread overview: 107+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-30 23:59 [PATCH 0/4] ksm - dynamic page sharing driver for linux Izik Eidus
2009-03-30 23:59 ` Izik Eidus
2009-03-30 23:59 ` [PATCH 1/4] MMU_NOTIFIERS: add set_pte_at_notify() Izik Eidus
2009-03-30 23:59   ` Izik Eidus
2009-03-30 23:59   ` [PATCH 2/4] add page_wrprotect(): write protecting page Izik Eidus
2009-03-30 23:59     ` Izik Eidus
2009-03-30 23:59     ` [PATCH 3/4] add replace_page(): change the page pte is pointing to Izik Eidus
2009-03-30 23:59       ` Izik Eidus
2009-03-30 23:59       ` [PATCH 4/4] add ksm kernel shared memory driver Izik Eidus
2009-03-30 23:59         ` Izik Eidus
2009-03-31  2:12         ` Anthony Liguori
2009-03-31  2:12           ` Anthony Liguori
2009-03-31 12:24           ` Izik Eidus
2009-03-31 12:24             ` Izik Eidus
2009-03-31 13:31             ` Anthony Liguori
2009-03-31 13:31               ` Anthony Liguori
2009-03-31 14:25               ` Andrea Arcangeli
2009-03-31 14:25                 ` Andrea Arcangeli
2009-03-31 14:37                 ` Anthony Liguori
2009-03-31 14:37                   ` Anthony Liguori
2009-03-31 15:02                   ` Andrea Arcangeli
2009-03-31 15:02                     ` Andrea Arcangeli
2009-03-31 15:09                     ` Anthony Liguori
2009-03-31 15:09                       ` Anthony Liguori
2009-03-31 15:18                       ` Andrea Arcangeli
2009-03-31 15:18                         ` Andrea Arcangeli
2009-03-31 15:54                         ` Anthony Liguori
2009-03-31 15:54                           ` Anthony Liguori
2009-03-31 16:25                           ` Andrea Arcangeli
2009-03-31 16:25                             ` Andrea Arcangeli
2009-03-31 16:51                             ` Anthony Liguori
2009-03-31 16:51                               ` Anthony Liguori
2009-03-31 17:11                               ` Andrea Arcangeli
2009-03-31 17:11                                 ` Andrea Arcangeli
2009-04-01 22:54                               ` Izik Eidus
2009-04-01 22:54                                 ` Izik Eidus
2009-04-02  0:31                                 ` Anthony Liguori
2009-04-02  0:31                                   ` Anthony Liguori
2009-04-02  0:48                                   ` Chris Wright
2009-04-02  0:48                                     ` Chris Wright
2009-04-02  1:22                               ` Chris Wright
2009-04-02  1:22                                 ` Chris Wright
2009-04-02  2:36                                 ` Anthony Liguori
2009-04-02  2:36                                   ` Anthony Liguori
2009-04-02  5:31                                   ` [PATCH 5/4] update ksm userspace interfaces Chris Wright
2009-04-02  5:31                                     ` Chris Wright
2009-04-02 13:32                                     ` Izik Eidus [this message]
2009-04-02 13:32                                       ` Izik Eidus
2009-04-02 15:20                                       ` Chris Wright
2009-04-02 15:20                                         ` Chris Wright
2009-04-02 15:56                                       ` Chris Wright
2009-04-02 15:56                                         ` Chris Wright
2009-04-02 15:55                                         ` Izik Eidus
2009-04-02 15:55                                           ` Izik Eidus
2009-04-03 10:16                                       ` Gerd Hoffmann
2009-04-03 10:16                                         ` Gerd Hoffmann
2009-04-03 10:49                                         ` Izik Eidus
2009-04-03 10:49                                           ` Izik Eidus
2009-04-03 11:08                                           ` Gerd Hoffmann
2009-04-03 11:08                                             ` Gerd Hoffmann
2009-04-03 16:22                                             ` Chris Wright
2009-04-03 16:22                                               ` Chris Wright
2009-04-02 14:41                                     ` Andrea Arcangeli
2009-04-02 14:41                                       ` Andrea Arcangeli
2009-04-02 15:12                                       ` Chris Wright
2009-04-02 15:12                                         ` Chris Wright
2009-04-02 15:25                                         ` Andrea Arcangeli
2009-04-02 15:25                                           ` Andrea Arcangeli
2009-04-02  5:48                                   ` [PATCH 4/4 alternative userspace] add ksm kernel shared memory driver Chris Wright
2009-04-02  5:48                                     ` Chris Wright
2009-04-02  5:57                                     ` Bert Wesarg
2009-04-02  5:57                                       ` Bert Wesarg
2009-04-02  5:57                                       ` Bert Wesarg
2009-04-02  5:59                                       ` Chris Wright
2009-04-02  5:59                                         ` Chris Wright
2009-04-02  6:00                                         ` Bert Wesarg
2009-04-02  6:00                                           ` Bert Wesarg
2009-04-02  7:09                                         ` Avi Kivity
2009-04-02  7:09                                           ` Avi Kivity
2009-04-02  7:24                                   ` [PATCH 4/4] " Avi Kivity
2009-04-02  7:24                                     ` Avi Kivity
2009-04-02  9:38                                   ` Andrea Arcangeli
2009-04-02  9:38                                     ` Andrea Arcangeli
2009-04-02 11:23                                   ` Izik Eidus
2009-04-02 11:23                                     ` Izik Eidus
2009-03-31  2:15         ` KAMEZAWA Hiroyuki
2009-03-31  2:15           ` KAMEZAWA Hiroyuki
2009-03-31 12:21           ` Izik Eidus
2009-03-31 12:21             ` Izik Eidus
2009-03-31 23:57             ` KAMEZAWA Hiroyuki
2009-03-31 23:57               ` KAMEZAWA Hiroyuki
2009-04-01 17:28               ` Izik Eidus
2009-04-01 17:28                 ` Izik Eidus
2009-03-31 20:52         ` Andrea Arcangeli
2009-03-31 20:52           ` Andrea Arcangeli
2009-03-31  1:42 ` [PATCH 0/4] ksm - dynamic page sharing driver for linux Anthony Liguori
2009-03-31  1:42   ` Anthony Liguori
2009-03-31 12:33   ` Izik Eidus
2009-03-31 12:33     ` Izik Eidus
2009-04-02 19:22 ` Jesper Juhl
2009-04-02 19:22   ` Jesper Juhl
2009-04-02 19:38   ` Izik Eidus
2009-04-02 19:38     ` Izik Eidus
2009-04-02 19:39   ` Chris Wright
2009-04-02 19:39     ` Chris Wright
2009-04-02 19:49     ` Jesper Juhl
2009-04-02 19:49       ` Jesper Juhl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49D4BE64.8020508@redhat.com \
    --to=ieidus@redhat.com \
    --cc=aarcange@redhat.com \
    --cc=anthony@codemonkey.ws \
    --cc=avi@redhat.com \
    --cc=chrisw@redhat.com \
    --cc=corbet@lwn.net \
    --cc=dmonakhov@openvz.org \
    --cc=hugh@veritas.com \
    --cc=jeremy@goop.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mtosatti@redhat.com \
    --cc=riel@redhat.com \
    --cc=yaniv@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.