提交 f647d33f 编写于 作者: P Paul Mundt

sh: Fix split ptlock for user mappings in __do_page_fault().

There was a bug that got introduced when the split ptlock changes
went in where mm could be unintialized for user mappings, this
fixes it up..
Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
上级 c4706628
......@@ -210,10 +210,11 @@ asmlinkage int __do_page_fault(struct pt_regs *regs, unsigned long writeaccess,
* are always mapped, whether it be due to legacy behaviour in
* 29-bit mode, or due to PMB configuration in 32-bit mode.
*/
if (address >= P3SEG && address < P3_ADDR_MAX)
if (address >= P3SEG && address < P3_ADDR_MAX) {
pgd = pgd_offset_k(address);
else {
if (unlikely(address >= TASK_SIZE || !current->mm))
mm = NULL;
} else {
if (unlikely(address >= TASK_SIZE || !(mm = current->mm)))
return 1;
pgd = pgd_offset(current->mm, address);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册