Messages in this thread | | | From | Jeff Moyer <> | Subject | Re: [RFC][PATCH v3 4/6] aio: Don't inherit aio ring memory at fork | Date | Tue, 14 Apr 2009 12:01:50 -0400 |
| |
KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> writes:
> AIO folks, Am I missing anything? > > =============== > Subject: [RFC][PATCH] aio: Don't inherit aio ring memory at fork > > Currently, mm_struct::ioctx_list member isn't copyed at fork. IOW aio context don't inherit at fork. > but only ring memory inherited. that's strange. > > This patch mark DONTFORK to ring-memory too.
Well, given that clearly nobody relies on io contexts being copied to the child, I think it's okay to make this change. I think the current behaviour violates the principal of least surprise, but I'm having a hard time getting upset about that. ;)
> In addition, This patch has good side effect. it also fix > "get_user_pages() vs fork" problem.
Hmm, I don't follow you, here. As I understand it, the get_user_pages vs. fork problem has to do with the pages used for the actual I/O, not the pages used to store the completion data. So, could you elaborate a bit on what you mean by the above statement?
> I think "man fork" also sould be changed. it only say > > * The child does not inherit outstanding asynchronous I/O operations from > its parent (aio_read(3), aio_write(3)). > but aio_context_t (return value of io_setup(2)) also don't inherit in current implementaion.
I can certainly make that change, as I have other changes I need to push to Michael, anyway.
Cheers, Jeff
| |