Remove residual blank line at start of MakefileThis is a residual of the $FreeBSD$ removal.MFC After: 3 days (though I'll just run the command on the branches)Sponsored by: Netflix
Remove $FreeBSD$: one-line sh patternRemove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
Remove $FreeBSD$: two-line .h patternRemove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
Save the last callout function executed on each CPUSave the last callout function pointer (and its argument) executedon each CPU for inspection by a debugger. Add a ddb `show callout_last`comman
Save the last callout function executed on each CPUSave the last callout function pointer (and its argument) executedon each CPU for inspection by a debugger. Add a ddb `show callout_last`command to show these pointers. Add a kernel module that I usedfor testing that command.Relocate `ce_migration_cpu` to reduce padding and therefore preservethe size of `struct callout_cpu` (320 bytes on amd64) despite theadded members.This should help diagnose reference-after-free bugs where thecallout's mutex has already been freed when `softclock_call_cc`tries to unlock it.You might hope that the pointer would still be available, but itisn't. The argument to that function is on the stack (because`softclock_call_cc` uses it later), and that might be enough insome cases, but even then, it's very laborious. A pointer to thecallout is saved right before these newly added fields, but thatcallout might have been freed. We still have the pointer to itsassociated mutex, and the name within might be enough, but it mightalso have been freed.Reviewed by: markj jhbMFC after: 2 weeksSponsored by: Dell EMC IsilonDifferential Revision: https://reviews.freebsd.org/D20794
show more ...