diff --git a/src/kern/shootdown.zig b/src/kern/shootdown.zig index 758d90c..3a247e4 100644 --- a/src/kern/shootdown.zig +++ b/src/kern/shootdown.zig @@ -61,6 +61,8 @@ fn pcpu_init() linksection(r.init) void { .payload = undefined, .link = undefined, }); + + local.npages = .init(0); } comptime { @@ -189,6 +191,10 @@ pub fn submit(state: ShootdownState, target_mask: ke.CpuMask) !void { // Flush on our local TLB. flush_range(state.base, state.npages); + if (target_mask.is_all(false)) { + return; + } + // Get a slot and fill it. const curcpu = ke.cpu.current(); const cpu = percpu.local();