[PATCH 1/1] lockmeter: lockmeter-lockmeter-fix-for-generic_read_trylock.patch

From: Ray Bryant (raybry_at_sgi.com)
Date: 10/07/04

  • Next message: Nick Piggin: "Re: kswapd in tight loop 2.6.9-rc3-bk-recent"
    Date:	Thu, 7 Oct 2004 11:26:12 -0700 (PDT)
    To: Andrew Morton <akpm@osdl.org>
    
    

    Andrew,

    The patch in the mm tree named: lockmeter-lockmeter-fix-for-generic_read_trylock.patch
    is incorrect. It should be as shown be replaced by this patch. (generic_raw_read_trylock()
    should be a copy of what is in kernel/spinlock.c and should not call _metered_read_lock()).

    The incorrect patch breaks lockmeter on any platform that uses generic_raw_read_trylock().
    (This is part of the problem with lockmeter for Altix.)

    (Thanks to John Hawkes for finding this.)

    From: Ray Bryant <raybry@sgi.com>

    Update lockmeter.c with generic_raw_read_trylock fix.

    Signed-off-by: Ray Bryant <raybry@sgi.com>
    Signed-off-by: Andrew Morton <akpm@osdl.org>

    ---
     25-akpm/kernel/lockmeter.c |   12 ++++++++++++
     1 files changed, 12 insertions(+)
    diff -puN kernel/lockmeter.c~lockmeter-lockmeter-fix-for-generic_read_trylock kernel/lockmeter.c
    --- 25/kernel/lockmeter.c~lockmeter-lockmeter-fix-for-generic_read_trylock	2004-09-16 21:32:25.175963856 -0700
    +++ 25-akpm/kernel/lockmeter.c	2004-09-16 21:32:25.180963096 -0700
    @@ -1213,6 +1213,18 @@ __read_lock_failed: \
      * except for the fact tht calls to _raw_ routines are replaced by
      * corresponding calls to the _metered_ routines
      */
    +
    +/*
    + * Generic declaration of the raw read_trylock() function,
    + * architectures are supposed to optimize this:
    + */
    +int __lockfunc generic_raw_read_trylock(rwlock_t *lock)
    +{
    +	_raw_read_lock(lock);
    +	return 1;
    +}
    +EXPORT_SYMBOL(generic_raw_read_trylock);
    +
     int __lockfunc _spin_trylock(spinlock_t *lock)
     {
     	preempt_disable();
    _
    -- 
    Best Regards,
    Ray
    -----------------------------------------------
    Ray Bryant                       raybry@sgi.com
    The box said: "Requires Windows 98 or better",
               so I installed Linux.
    -----------------------------------------------
    -
    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/
    

  • Next message: Nick Piggin: "Re: kswapd in tight loop 2.6.9-rc3-bk-recent"

    Relevant Pages