git: DragonFly_RELEASE_4_6 kernel - Fix atomic op comparison

Matthew Dillon dillon at crater.dragonflybsd.org
Sun Jul 24 01:03:42 PDT 2016


commit dbc5f8a42089cbfd127d2dab0df8d97957caf312
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Sun Jul 24 00:56:04 2016 -0700

    kernel - Fix atomic op comparison
    
    * The sequence was testing a signed integer and then testing the same
      variable using atomic_fetchadd_int(&var, 0).  Unfortunately, the
      atomic-op returns an unsigned value so the result is that when the
      buffer count was exhausted, the program would hard-loop without
      calling tsleep.
    
    * Fixed by casting the atomic op.
    
    * Should fix the hardlock issue once and for all.

Summary of changes:
 sys/vm/vm_pager.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/dbc5f8a42089cbfd127d2dab0df8d97957caf312


-- 
DragonFly BSD source repository



More information about the Commits mailing list