Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Jul 2003 20:12:06 -0700 (PDT)
From:      Mike Silbersack <silby@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/kern uipc_mbuf.c
Message-ID:  <200307210312.h6L3C6MA082887@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
silby       2003/07/20 20:12:06 PDT

  FreeBSD src repository

  Modified files:        (Branch: RELENG_4)
    sys/kern             uipc_mbuf.c 
  Log:
  Add in the promised cluster refcount limit hack.  (Not applicable to
  -current, which has int size refcounts.)
  
  4.x uses char refcounts, which can be overflowed, causing neat panics.
  This patch works around the problem by hooking into every m_* function
  that increases the refcount and doing two things:
  
  1.  Panicing if the refcount went negative (perhaps due to some external
  function messing with the refcount.)
  
  2.  Making a full copy of the resulting chain in order to keep the
  refcount under a reasonable threshold if necessary.
  
  The kern.ipc.m_clreflimithits sysctl has been made available so that
  the number of times a copy had to be performed can be monitored.  Luckily,
  this should not be a common occurance.
  
  Revision   Changes    Path
  1.51.2.29  +43 -0     src/sys/kern/uipc_mbuf.c



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