x86/ldt: Fix support_pte_mask filtering in map_ldt_struct()
authorJoerg Roedel <[email protected]>
Mon, 16 Apr 2018 09:43:57 +0000 (11:43 +0200)
committerLinus Torvalds <[email protected]>
Mon, 16 Apr 2018 18:20:34 +0000 (11:20 -0700)
commite6f39e87b6439939a14cb7fdd94086a082b63b87
tree6df2d211a3e49359466e8b0dd3183a5d2d285495
parent60cc43fc888428bb2f18f08997432d426a243338
x86/ldt: Fix support_pte_mask filtering in map_ldt_struct()

The |= operator will let us end up with an invalid PTE. Use
the correct &= instead.

[ The bug was also independently reported by Shuah Khan ]

Fixes: fb43d6cb91ef ('x86/mm: Do not auto-massage page protections')
Acked-by: Andy Lutomirski <[email protected]>
Acked-by: Dave Hansen <[email protected]>
Signed-off-by: Joerg Roedel <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
arch/x86/kernel/ldt.c