Re: [PATCH] mm: remove global locks from mm/highmem.c

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Peter Zijlstra <a.p.zijlstra@...>
Cc: <linux-kernel@...>, <linux-mm@...>, Ingo Molnar <mingo@...>
Date: Sunday, January 28, 2007 - 6:29 pm

On Sun, 28 Jan 2007 15:11:34 +0100
Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:


I really don't recall any performance problems being reported out of that
code in recent years.

As Christoph says, it's very much preferred that code be migrated over to
kmap_atomic().  Partly because kmap() is deadlockable in situations where a
large number of threads are trying to take two kmaps at the same time and
we run out.  This happened in the past, but incidences have gone away,
probably because of kmap->kmap_atomic conversions.



Have you verified that all architectures which can implement
WANT_PAGE_VIRTUAL also implement cmpxchg?

Have you verified that sufficient headers are included for this to compile
correctly on all WANT_PAGE_VIRTUAL-enabling architectures on all configs? 
I don't see asm/system.h being included in mm.h and if I get yet another
damned it-wont-compile patch I might do something irreversible.


The old code used masking.


The new code does more-expensive modulus.  Necessary?


This looks wrong.  What happens if everyone else does their unmap between
the __set_current_state() and the add_wait_queue()?


-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH] mm: remove global locks from mm/highmem.c, Peter Zijlstra, (Sun Jan 28, 10:11 am)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Andrew Morton, (Sun Jan 28, 6:29 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Ingo Molnar, (Mon Jan 29, 3:08 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Nick Piggin, (Mon Jan 29, 10:02 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Ingo Molnar, (Mon Jan 29, 4:06 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Hugh Dickins, (Mon Jan 29, 3:19 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Ingo Molnar, (Mon Jan 29, 3:53 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Peter Zijlstra, (Mon Jan 29, 5:44 am)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Martin J. Bligh, (Mon Jan 29, 9:31 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Andrew Morton, (Mon Jan 29, 9:41 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Martin J. Bligh, (Mon Jan 29, 9:49 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Andrew Morton, (Mon Jan 29, 10:15 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, David Chinner, (Tue Jan 30, 8:44 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Andrew Morton, (Tue Jan 30, 9:11 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, David Chinner, (Tue Jan 30, 11:22 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Christoph Hellwig, (Fri Feb 2, 8:05 am)
Re: [PATCH] mm: remove global locks from mm/highmem.c, David Chinner, (Fri Feb 2, 7:14 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Matt Mackall, (Fri Feb 2, 3:24 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, David Chinner, (Fri Feb 2, 7:16 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Nick Piggin, (Sun Jan 28, 10:52 pm)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Christoph Hellwig, (Sun Jan 28, 10:49 am)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Ingo Molnar, (Sun Jan 28, 11:17 am)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Christoph Hellwig, (Sun Jan 28, 11:28 am)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Ingo Molnar, (Sun Jan 28, 11:48 am)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Christoph Hellwig, (Sun Jan 28, 11:54 am)
Re: [PATCH] mm: remove global locks from mm/highmem.c, Ingo Molnar, (Sun Jan 28, 2:19 pm)