imp added a comment.
So why doesn't the lle* code set mpsafe to 1? After re-reading the man page
several times, I'm thinking that's the solution here. It already uses other
locks and reference counts to synchronize things, so why get Giant involved at
all?
REVISION DETAIL
https://reviews.fre
imp added a comment.
For the lle* code, it looks like the reference count for the data structure
improperly doesn't cover the implicit use of the mutex by the callout system.
That seems to be the real bug here, no? Protecting a mutex with a reference
count without holding a reference to that mu
imp accepted this revision.
imp added a comment.
I think we're ready to land. It fixes all the issues discussed, and enhanced
testing shows no additional errors.
INLINE COMMENTS
kern/kern_timeout.c:1159 "When the callout wheel runs, it will ignore this
callout" maybe is a better phrase to use
imp added a comment.
Except for the signed / unsigned issue, I like this change. However, please get
approval from some of the networking guys before committing.
INLINE COMMENTS
sys/netinet/ip_input.c:1450 Shouldn't this be unsigned?
sys/netinet/ip_output.c:129 shouldn't this be unsigned?
imp added a comment.
I agree that the kernel test framework should be done differently as well.
I didn't realize the number of mechanical changes my request to use the macros
produced :(
INLINE COMMENTS
sys/sys/callout_test.h:1 I'm not sure that the callout_test.h belong in sys.
Seems like n
imp added a comment.
For the commit, I'd separate out the timeout fix from the kernel testframework.
REVISION DETAIL
https://reviews.freebsd.org/D1711
To: rrs, gnn, rwatson, adrian, sbruno, lstewart, hselasky, imp
Cc: delphij, neel, erj, freebsd-net