Linux kernelと言えばlist_for_eachみたいな謎のマクロでよくわからないがforeachできる事はよく知られているが、他にも色々あるのだなぁと知ったのでメモ。 #define for_each_possible_cpu(cpu) for_each_cpu((cpu), cpu_possible_mask) #define for_each_online_cpu(cpu) for_each_cpu((cpu), cpu_online_mask) #define for_each_present_cpu(cpu) for_each_cpu((cpu), cpu_present_mask) for_each_possible_cpuはシステムに存在可能なCPU番号をイテレート、for_each_online_cpuはシステムで今オンラインなCPU番号をイテレート、for_ea