![]() | |||||||||||||
Messages in this thread |
On Wed, Oct 01, 2003 at 12:00:15AM -0700, Andrew Morton wrote: > Andi Kleen <ak@suse.de> wrote: > > > > Andrew Morton <akpm@osdl.org> writes: > > > > > Looking at Andi's patch, it is also a dead box if the fault happens inside > > > down_write(mmap_sem). That should be fixed, methinks. > > > > The only way to fix all that would be to move the instruction checks early > > into the fast path. > > Well the deadlock avoidance only needs to happen if the fault occured in > kernel mode. Presumably most faults are in userspace, so most of the > overhead can be avoided. Hmm. I guess that's possible, but will be somewhat intrusive in do_page_fault() Also you have to be very careful to avoid recursive faults (EIP unmapped) recursing further. In the original patch I did that for kernel mode by always checking the exception table first to catch the __get_user in __is_prefetch early. Maybe it would be better to just use a down_read_timeout(). -Andi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2005-03-22 13:49 [from the cache] ©2003-2008 | |||||||||||||