[lkml]   [2012]   [Feb]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [RFC][PATCH] fix move/migrate_pages() race on task struct
Dave Hansen <> writes:

> sys_move_pages() and sys_migrate_pages() are a pretty nice copy
> and paste job of each other. They both take a pid, find the task
> struct, and then grab a ref on the mm. They both also do an
> rcu_read_unlock() after they've taken the mm and then proceed to
> access 'task'. I think this is a bug in both cases.

Can we share code?

> This patch takes the pid-to-task code along with the credential
> and security checks in sys_move_pages() and sys_migrate_pages()
> and consolidates them. It now takes a task reference in
> the new function and requires the caller to drop it. I
> believe this resolves the race.

Looks good to me.

Reviewed-by: Andi Kleen <>

BTW looks like we really need a better stress test for these


-- -- Speaking for myself only

 \ /
  Last update: 2012-02-23 19:47    [W:0.080 / U:2.568 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site