[Midnightbsd-cvs] [MidnightBSD/src] 10cd2c: Callouts may be bound to a specific CPU, in which ...

Lucas Holt noreply at github.com
Tue Dec 1 16:40:22 EST 2020


  Branch: refs/heads/master
  Home:   https://github.com/MidnightBSD/src
  Commit: 10cd2c7a3af89913ad034da327b65a1ab3f67e40
      https://github.com/MidnightBSD/src/commit/10cd2c7a3af89913ad034da327b65a1ab3f67e40
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2020-12-01 (Tue, 01 Dec 2020)

  Changed paths:
    M sys/kern/kern_timeout.c

  Log Message:
  -----------
  Callouts may be bound to a specific CPU, in which case that CPU is
responsible for raising the timer interrupt which schedules execution of the
callout.

A kernel thread may attempt to stop a callout while it is actively executing,
in which case the thread goes to sleep until execution has completed.  In the
meantime the callout may be re-scheduled and re-executed on a different CPU.
In this scenario, when the sleeping thread finally completes removal of the
callout from some internal data structures, it may modify the wrong CPU's
data structures and thus leave them in an invalid state.

Obtained from: FreeBSD




More information about the Midnightbsd-cvs mailing list