Page MenuHomeFreeBSD

Convert consumers to use the CPU_FOREACH_SET() macro
ClosedPublic

Authored by markj on Sep 20 2021, 7:11 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Jan 22, 5:24 PM
Unknown Object (File)
Thu, Jan 16, 12:27 PM
Unknown Object (File)
Dec 22 2024, 6:56 PM
Unknown Object (File)
Dec 14 2024, 11:21 PM
Unknown Object (File)
Nov 29 2024, 10:20 PM
Unknown Object (File)
Nov 25 2024, 6:01 AM
Unknown Object (File)
Nov 23 2024, 9:02 PM
Unknown Object (File)
Nov 23 2024, 8:25 PM

Details

Summary

This implementation is faster and doesn't modify the cpuset, so it lets
us avoid some unnecessary copying. No functional change intended.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 41609
Build 38498: arc lint + arc unit

Event Timeline

markj requested review of this revision.Sep 20 2021, 7:11 PM
This revision is now accepted and ready to land.Sep 20 2021, 7:16 PM

BTW there is enough similar iterations FFS/CLR done over the signal sets/masks. Do you plan to look at this as well?

In D32029#722803, @kib wrote:

BTW there is enough similar iterations FFS/CLR done over the signal sets/masks. Do you plan to look at this as well?

I will try implementing this for sigsets too. I guess it would be somewhat messy to change the kernel to use bitset(9) for signal sets?

sys/amd64/vmm/io/vlapic.c
895–897

This is currently broken due to the issue with break noted in D32028.

sys/amd64/vmm/vmm_lapic.c
92–94

Again, break is broken.

sys/amd64/vmm/io/vlapic.c
895–897

Thanks, I reverted this commit for now.