percpu_swap_cluster
static DEFINE_PER_CPU(struct percpu_swap_cluster, percpu_swap_cluster) = {
si = this_cpu_read(percpu_swap_cluster.si[order]);
offset = this_cpu_read(percpu_swap_cluster.offset[order]);
local_lock(&percpu_swap_cluster.lock);
local_unlock(&percpu_swap_cluster.lock);
local_lock(&percpu_swap_cluster.lock);
local_unlock(&percpu_swap_cluster.lock);
pcp_si = per_cpu_ptr(percpu_swap_cluster.si, cpu);
lockdep_assert_held(&this_cpu_ptr(&percpu_swap_cluster)->lock);
local_unlock(&percpu_swap_cluster.lock);
local_lock(&percpu_swap_cluster.lock);
this_cpu_write(percpu_swap_cluster.offset[order], next);
this_cpu_write(percpu_swap_cluster.si[order], si);