fault.c (d0034a7a4ac7fae708146ac0059b9c47a1543f0d) | fault.c (36ef159f4408b08eae7f2af6d62bedd3f4343758) |
---|---|
1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 1995 - 2000 by Ralf Baechle 7 */ 8#include <linux/context_tracking.h> --- 157 unchanged lines hidden (view full) --- 166 if (fault & VM_FAULT_OOM) 167 goto out_of_memory; 168 else if (fault & VM_FAULT_SIGSEGV) 169 goto bad_area; 170 else if (fault & VM_FAULT_SIGBUS) 171 goto do_sigbus; 172 BUG(); 173 } | 1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 1995 - 2000 by Ralf Baechle 7 */ 8#include <linux/context_tracking.h> --- 157 unchanged lines hidden (view full) --- 166 if (fault & VM_FAULT_OOM) 167 goto out_of_memory; 168 else if (fault & VM_FAULT_SIGSEGV) 169 goto bad_area; 170 else if (fault & VM_FAULT_SIGBUS) 171 goto do_sigbus; 172 BUG(); 173 } |
174 if (flags & FAULT_FLAG_ALLOW_RETRY) { 175 if (fault & VM_FAULT_RETRY) { 176 flags |= FAULT_FLAG_TRIED; | |
177 | 174 |
178 /* 179 * No need to mmap_read_unlock(mm) as we would 180 * have already released it in __lock_page_or_retry 181 * in mm/filemap.c. 182 */ | 175 if (fault & VM_FAULT_RETRY) { 176 flags |= FAULT_FLAG_TRIED; |
183 | 177 |
184 goto retry; 185 } | 178 /* 179 * No need to mmap_read_unlock(mm) as we would 180 * have already released it in __lock_page_or_retry 181 * in mm/filemap.c. 182 */ 183 184 goto retry; |
186 } 187 188 mmap_read_unlock(mm); 189 return; 190 191/* 192 * Something tried to access memory that isn't in our memory map.. 193 * Fix it, but check if it's kernel or user first.. --- 142 unchanged lines hidden --- | 185 } 186 187 mmap_read_unlock(mm); 188 return; 189 190/* 191 * Something tried to access memory that isn't in our memory map.. 192 * Fix it, but check if it's kernel or user first.. --- 142 unchanged lines hidden --- |