Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Jul 14, 2009
  1. mxge: Clean up Makefile a little more.

    Sascha Wildner authored
  2. mxge: Add opt_inet.h to the Makefile.

    Sascha Wildner authored
Commits on Jul 13, 2009
  1. mxge.4: Some small changes.

    Sascha Wildner authored
    * We use local time line, not FreeBSD's.
    * Kick unneeded .Pp.
    * First appeared in 2.3.
  2. Merge branch 'mxge'

    Aggelos Economopoulos authored
  3. mxge.4: sync with the status of the driver in DragonFly

    Aggelos Economopoulos authored
  4. mxge: import mxge.4 from FreeBSD

    Aggelos Economopoulos authored
  5. telnet.1: Remove unnecessary .Pp

    Sascha Wildner authored
  6. priv.9: Update for recent changes.

    Sascha Wildner authored
    Approved-by: mneumann
  7. mxge: use ether_input_chain()

    Aggelos Economopoulos authored
  8. mxge: call bus_setup_intr() after the if serializer has been set

    Aggelos Economopoulos authored
  9. mxge: properly initialize m_pkthdr.len as well

    Aggelos Economopoulos authored
  10. mxge: use normal ethernet mtu by default

    Aggelos Economopoulos authored
    We don't properly support jumbo frames yet, so
    change the default mtu
  11. mxge: properly remove the sysctls

    Aggelos Economopoulos authored
  12. pipe - fix UP build error.

    Matthew Dillon authored
    Reported-by: Hasso Tepper <>
  13. SYSPERF - update pipe1, pipe2

    Matthew Dillon authored
    * pipe1 now does a 1-second timing run.
    * pipe2 now does a 2-second timing run, just so it runs just a tad longer.
  14. Merge branch 'master' of ssh://…

    Matthew Dillon authored
  15. pipe - replace use of DELAY() with a better solution, add features.

    Matthew Dillon authored
    * Use the new tsc functions to poll for new read data in a pipe for a short
      period of time on a SMP box.  This greatly increases the odds of a pipe
      writer on one cpu being able to pipeline data to a reader on another cpu
      without having to use an IPI or tsleep/wakeup.
      For the pipe1 test this brings the synchronous communications path
      over a pipe (Awrite, Bread, Bwrite, Aread) down from 7uS to around 2uS.
      For the pipe2 test this value greatly reduces the number of IPIs
      and improves bandwidth by a few hundred megabytes/sec (the old DELAY
      did the same thing so there is no change for the pipe2 test).
    * Add sysctl kern.pipe.delay which defaults to 5000 nanoseconds (5uS).
      This is the maximum a pipe reader will wait for additional data before
      falling back to tsleep/wakeup (and related ipis).  pipe_delay may be
      set to 0 to disable the function.  I value of at least 3000 is
      recomended.  Pipelining large buffers efficiently requires a higher value,
      say up to 8000 or so.
    * Allow kern.pipe.mpsafe to be set to 2 which adds a predictive wakeup
      when a writer is found to be stalled.  This currently has no significant
      effect on operations due to token collisions.
    * Add statistics: kern.pipe.wblocked and kern.pipe.rblocked, counting
      the number of times a pipe blocks in "pipewr" or "piperd".
    * Fix MP races in pipe_ioctl().
  16. clocks - Add fine-grained spin delay function via TSC

    Matthew Dillon authored
    Add int64_t target = tsc_get_target(ns) and tsc_test_target(target).
    See routines for details.  These functions are available when the system
    supports an extremely fine-grained counter such as a TSC and may be used
    to generate finely tuned delays.
  17. Oops! Actually install /usr/libexec/telnetd.

    Peter Avalos authored
    Noticed-by: swildner
  18. bootpgw: Use err(3).

    Peter Avalos authored
    Obtained-from: FreeBSD
  19. pipe - Fix piperd/pipewr deadlock in mpsafe case

    Matthew Dillon authored
    * Fix a bug where piperd and pipewr could be entered simultaniously
      by the reader and writer and neither gets woken up.
    * Redo the hysteresis slightly to reduce IPIs even more.
Commits on Jul 12, 2009
  1. Merge branch 'master' of ssh://…

    Matthew Dillon authored
  2. pipe - Make pipe r/w MPSAFE, add kern.pipe.mpsafe (disabled by default)

    Matthew Dillon authored
    * Make pipe_read and pipe_write MPSAFE.
    * Add a sysctl kern.pipe.mpsafe which defaults to disabled.  Set to
      1 to test the MPSAFE pipe code.  The expectation is that it will be
      set to 1 for the release.  Currently only pipe_read and pipe_write
      is MPSAFE.
    * The new code in mpsafe mode also implements a streaming optimization
      to avoid unnecessary tsleep/wakeup/IPIs.  If the reader and writer
      are operating on different cpus this feature results in more uniform
      performance across a wide swath of block sizes.
    * The new code currently does not use any page mapping optimizations.
      Page table overhead is fairly nasty on SMP so for now we rely on cpu
      caches and do an extra copy.  This means the code is tuned better for
      more recent cpus and tuned worse for older cpus.  At least for now.
    OLD pipe code:  dwe = dwrite_enable, sfb = dwrite_sfbuf mode
    NEW pipe code:  mpsafe = 0 (gets bgl) or 1 (does not use bgl)
    Using /usr/src/test/sysperf/pipe2.c to test, all results in MBytes/sec
    			  8K	 16K	 32K	 64K	128K	256K
    			----	----	----	----	----	----
    OLD dwe=0		1193	1167	1555	1525	1473	1477
    OLD dwe=1 sfb=0		 856    1458	2307	2182	2275	2307
    OLD dwe=1 sfb=1		 955	1537	2300	2356	2363	2708
    OLD dwe=1 sfb=2		 939	1561	2367	2477	2379	2360
    NEW mpsafe=0		1150	1369	1536	1591	1358	1270
    NEW mpsafe=1		2133	2319	2375	2387	2396	2418
  3. @mneumann

    priv: Finally get completely rid of PRISON_ROOT flag.

    mneumann authored
    This means that from now on, what is allowed within a jail
    is purely defined in function prison_priv_check().
  4. @mneumann
  5. @mneumann
  6. @mneumann
  7. @mneumann

    Simplify expressions

    mneumann authored
  8. @mneumann
  9. @mneumann
  10. @mneumann

    priv: Use PRIV_VFS_SETGID

    mneumann authored
    Note that in case of UFS, the priv_cred_check() call will now
    succeed in a jail, whereas it failed before.
  11. @mneumann
  12. @mneumann
Something went wrong with that request. Please try again.