Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f647d33f authored by Paul Mundt's avatar Paul Mundt
Browse files

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: default avatarPaul Mundt <lethal@linux-sh.org>
parent c4706628
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -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);