From: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx> shmctl also don't need synchrounous pagevec drain. This patch replace it with lru_add_drain_all_async(). Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx> --- ipc/shm.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ipc/shm.c b/ipc/shm.c index 02ecf2c..1eb25f0 100644 --- a/ipc/shm.c +++ b/ipc/shm.c @@ -872,8 +872,6 @@ SYSCALL_DEFINE3(shmctl, int, shmid, int, cmd, struct shmid_ds __user *, buf) { struct file *uninitialized_var(shm_file); - lru_add_drain_all(); /* drain pagevecs to lru lists */ - shp = shm_lock_check(ns, shmid); if (IS_ERR(shp)) { err = PTR_ERR(shp); @@ -911,6 +909,8 @@ SYSCALL_DEFINE3(shmctl, int, shmid, int, cmd, struct shmid_ds __user *, buf) shp->mlock_user = NULL; } shm_unlock(shp); + /* prevent user visible mismatch of unevictable accounting */ + lru_add_drain_all_async(); goto out; } case IPC_RMID: -- 1.7.1 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>