Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Sep 2006 09:55:43 +0000 (UTC)
From:      Randall Stewart <rrs@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:  <200609210955.k8L9thBn069706@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
rrs         2006-09-21 09:55:43 UTC

  FreeBSD src repository

  Modified files:
    sys/kern             uipc_mbuf.c 
  Log:
  atomic_fetchadd_int is used by mb_free_ext(), but it
  returns the previous value that the "add" effected (In
  this case we are adding -1), afterwhich we compare it
  to '0'... to see if we free the mbuf... we should
  be comparing it to '1'... Note that this only effects
  when there is contention since there is a first part
  to the comparison that checks to see if its '1'. So
  this bug would only crop up if two CPU's are trying
  to free the same mbuf refcount at the same time. This
  will happen in SCTP but I doubt can happen in TCP or
  UDP.
  PR:             N/A
  Submitted by:   rrs
  Reviewed by:    gnn,sam
  Approved by:    gnn,sam
  
  Revision  Changes    Path
  1.167     +1 -1      src/sys/kern/uipc_mbuf.c



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