From: Martin Schwidefsky Date: Tue, 24 Aug 2010 07:26:21 +0000 (+0200) Subject: [S390] fix tlb flushing vs. concurrent /proc accesses X-Git-Tag: v2.6.36-rc3~32^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=050eef364ad700590a605a0749f825cab4834b1e;p=pandora-kernel.git [S390] fix tlb flushing vs. concurrent /proc accesses The tlb flushing code uses the mm_users field of the mm_struct to decide if each page table entry needs to be flushed individually with IPTE or if a global flush for the mm_struct is sufficient after all page table updates have been done. The comment for mm_users says "How many users with user space?" but the /proc code increases mm_users after it found the process structure by pid without creating a new user process. Which makes mm_users useless for the decision between the two tlb flusing methods. The current code can be confused to not flush tlb entries by a concurrent access to /proc files if e.g. a fork is in progres. The solution for this problem is to make the tlb flushing logic independent from the mm_users field. Signed-off-by: Martin Schwidefsky --- Reading git-diff-tree failed