Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Jan 2015 02:23:44 +0000
From:      "rrs (Randall Stewart)" <phabric-noreply@FreeBSD.org>
To:        freebsd-net@freebsd.org
Subject:   [Differential] [Commented On] D1711: Changes to the callout code to restore active semantics and also add a test-framework and test to validate thecallout code (and potentially for use by other tests).
Message-ID:  <03037b55642e637b0123a296025a5ab8@localhost.localdomain>
In-Reply-To: <differential-rev-PHID-DREV-vhk6ww63dvpj6egspuyt-req@FreeBSD.org>
References:  <differential-rev-PHID-DREV-vhk6ww63dvpj6egspuyt-req@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
rrs added a comment.

Hans:

We have discussed that, and *no* it will *not* return the incorrect thing once
it can't be stopped. There is code in the callout_reset_sbt_on() that makes sure
zero is returned. The only way that zero will *not* be returned is if the PENDING
flag is set. That won't happen if the callout is the one waiting on a lock. So
the answer will be 0, and the new callout will be scheduled at the end
of the current one. However if before that can return (the callout) yes you will
get a 1, since the rescheduled callout from the first one that set the migration 
will see the subsequent migration flag and return one since that *was* rescheduled.

The exec_cancel flag is only valid or looked at in the case where the lock is set
on the callout.

REVISION DETAIL
  https://reviews.freebsd.org/D1711

To: rrs, gnn, rwatson, adrian, sbruno, lstewart, hselasky, imp
Cc: delphij, neel, erj, freebsd-net



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