Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Apr 2009 19:14:13 +0000 (UTC)
From:      Maksim Yevmenkin <emax@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/kern uipc_sockbuf.c
Message-ID:  <200904211914.n3LJEQYI062182@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
emax        2009-04-21 19:14:13 UTC

  FreeBSD src repository

  Modified files:
    sys/kern             uipc_sockbuf.c 
  Log:
  SVN rev 191366 on 2009-04-21 19:14:13Z by emax
  
  Fix sbappendrecord_locked().
  
  The main problem is that sbappendrecord_locked() relies on sbcompress()
  to set sb_mbtail. This will not happen if sbappendrecord_locked() is
  called with mbuf chain made of exactly one mbuf (i.e. m0->m_next == NULL).
  In this case sbcompress() will be called with m == NULL and will do
  nothing. I'm not entirely sure if m == NULL is a valid argument for
  sbcompress(), and, it rather pointless to call it like that, but keep
  calling it so it can do SBLASTMBUFCHK().
  
  The problem is triggered by the SOCKBUF_DEBUG kernel option that
  enables SBLASTRECORDCHK() and SBLASTMBUFCHK() checks.
  
  PR:                     kern/126742
  Investigated by:        pluknet < pluknet -at- gmail -dot- com >
  No response from:       freebsd-current@, freebsd-bluetooth@
  MFC after:              3 days
  
  Revision  Changes    Path
  1.180     +2 -8      src/sys/kern/uipc_sockbuf.c



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