summaryrefslogtreecommitdiffstats
path: root/contrib/gcclibs/libcpp/files.c
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2012-12-05 19:02:22 +0000
committerkib <kib@FreeBSD.org>2012-12-05 19:02:22 +0000
commitefc06bd8013ad630fe9083f423265d89b9d717ff (patch)
tree8f3d09a6d5dadbd1bc9f6e8fc4a41fc802629004 /contrib/gcclibs/libcpp/files.c
parent97d8ae3890bf8dc9a8e2b6a9aab818d9a7778b07 (diff)
downloadFreeBSD-src-efc06bd8013ad630fe9083f423265d89b9d717ff.zip
FreeBSD-src-efc06bd8013ad630fe9083f423265d89b9d717ff.tar.gz
The softclock_call_cc() is executing with the callout already removed
from the callwheel. Calculate the cc->cc_next before removing the callout, otherwise the code followed the invalid tailq links. After this, make softclock_call_cc() return void, since it always return cc->cc_next, which is immediately available to the softclock() anyway. This also allows to eliminate a label under #ifdef SMP. Remove the assignment of cc->cc_next from callout_cc_del(), since the function is called with the callout already removed from callwheel. If cancelling the migration, also clear the CALLOUT_DFRMIGRATION flag. Postpone the free of the timeout(9) allocated callouts after the migration checks are done. Add some more strict asserts about the state of the callout in callout_call_cc(). Reviewed by: attilio Reported and tested by: pho (previous version) MFC after: 2 weeks
Diffstat (limited to 'contrib/gcclibs/libcpp/files.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud