Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Jul 2002 11:26:05 -0400
From:      Bosko Milekic <bmilekic@unixdaemons.com>
To:        Bosko Milekic <bmilekic@FreeBSD.org>
Cc:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/kern subr_mbuf.c
Message-ID:  <20020723112605.A74237@unixdaemons.com>
In-Reply-To: <200207231455.g6NEtZen084267@freefall.freebsd.org>; from bmilekic@FreeBSD.org on Tue, Jul 23, 2002 at 07:55:35AM -0700
References:  <200207231455.g6NEtZen084267@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Tue, Jul 23, 2002 at 07:55:35AM -0700, Bosko Milekic wrote:
> bmilekic    2002/07/23 07:55:35 PDT
> 
>   Modified files:
>     sys/kern             subr_mbuf.c 
>   Log:
>   Introduce mb_free() to the MBP_PERSIST{,ENT} interface.  What this means
>   is that grouped frees will be done as most often as possible without
>   dropping the cache lock in between.  So, for the most part, they'll be
>   done without the lock being dropped.  This is particularly true if you
>   have something that does a grouped m_getm() or m_getcl() (a cluster and
>   mbuf at the same time) - most likely getting the buffers from the
>   same per-CPU cache - and then frees them with m_free{,m}().  Unless
>   the buffers' underlying buckets were moved, the free will be done without
>   the lock getting dropped in between.  So far, only m_free() has been
>   shown how to do this, and m_freem() will shortly follow.
>   
>   Since I'm here, I also fixed a small (but mostly harmless) type-mismatch
>   introduced in the last commit.
>   
>   Revision  Changes    Path
>   1.22      +70 -17    src/sys/kern/subr_mbuf.c

  I should also mention that I'm moving a bit of code around internally
  in that file (not gratuitist, only to make the stuff work) so if
  anyone else is reading this code, please bear with me as things get
  settled in once again.

Regards,
-- 
Bosko Milekic
bmilekic@unixdaemons.com
bmilekic@FreeBSD.org


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020723112605.A74237>