- processor = processor_list;
- do {
- if (needs_cause_ast_mask & (1U << processor->cpu_id)) {
- if (processor == current_processor())
- ast_on(AST_SFI);
- else
- cause_ast_check(processor);
+ for (int cpuid = lsb_first(needs_cause_ast_mask); cpuid >= 0; cpuid = lsb_next(needs_cause_ast_mask, cpuid)) {
+ processor = processor_array[cpuid];
+ if (processor == current_processor()) {
+ ast_on(AST_SFI);
+ } else {
+ cause_ast_check(processor);