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>