Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*

*** 582,597 **** cp->cpu_next_lgrp = cp; cp->cpu_prev_lgrp = cp; cp->cpu_lpl = lpl_bootstrap; lgrp_plat_config(event, resource); ! atomic_add_32(&lgrp_gen, 1); break; case LGRP_CONFIG_CPU_DEL: lgrp_plat_config(event, resource); ! atomic_add_32(&lgrp_gen, 1); break; case LGRP_CONFIG_CPU_ONLINE: cp = (cpu_t *)resource; lgrp_cpu_init(cp); --- 582,597 ---- cp->cpu_next_lgrp = cp; cp->cpu_prev_lgrp = cp; cp->cpu_lpl = lpl_bootstrap; lgrp_plat_config(event, resource); ! atomic_inc_32(&lgrp_gen); break; case LGRP_CONFIG_CPU_DEL: lgrp_plat_config(event, resource); ! atomic_inc_32(&lgrp_gen); break; case LGRP_CONFIG_CPU_ONLINE: cp = (cpu_t *)resource; lgrp_cpu_init(cp);
*** 599,609 **** rc = lpl_topo_verify(cp->cpu_part); if (rc != LPL_TOPO_CORRECT) { panic("lpl_topo_verify failed: %d", rc); } lgrp_plat_config(event, resource); ! atomic_add_32(&lgrp_gen, 1); break; case LGRP_CONFIG_CPU_OFFLINE: cp = (cpu_t *)resource; id = cp->cpu_lpl->lpl_lgrpid; --- 599,609 ---- rc = lpl_topo_verify(cp->cpu_part); if (rc != LPL_TOPO_CORRECT) { panic("lpl_topo_verify failed: %d", rc); } lgrp_plat_config(event, resource); ! atomic_inc_32(&lgrp_gen); break; case LGRP_CONFIG_CPU_OFFLINE: cp = (cpu_t *)resource; id = cp->cpu_lpl->lpl_lgrpid;
*** 612,622 **** rc = lpl_topo_verify(cp->cpu_part); if (rc != LPL_TOPO_CORRECT) { panic("lpl_topo_verify failed: %d", rc); } lgrp_plat_config(event, resource); ! atomic_add_32(&lgrp_gen, 1); break; case LGRP_CONFIG_CPUPART_ADD: cp = (cpu_t *)resource; lgrp_part_add_cpu((cpu_t *)resource, (lgrp_id_t)where); --- 612,622 ---- rc = lpl_topo_verify(cp->cpu_part); if (rc != LPL_TOPO_CORRECT) { panic("lpl_topo_verify failed: %d", rc); } lgrp_plat_config(event, resource); ! atomic_inc_32(&lgrp_gen); break; case LGRP_CONFIG_CPUPART_ADD: cp = (cpu_t *)resource; lgrp_part_add_cpu((cpu_t *)resource, (lgrp_id_t)where);
*** 641,671 **** * The following events are initiated by the memnode * subsystem. */ case LGRP_CONFIG_MEM_ADD: lgrp_mem_init((int)resource, where, B_FALSE); ! atomic_add_32(&lgrp_gen, 1); break; case LGRP_CONFIG_MEM_DEL: lgrp_mem_fini((int)resource, where, B_FALSE); ! atomic_add_32(&lgrp_gen, 1); break; case LGRP_CONFIG_MEM_RENAME: { lgrp_config_mem_rename_t *ren_arg = (lgrp_config_mem_rename_t *)where; lgrp_mem_rename((int)resource, ren_arg->lmem_rename_from, ren_arg->lmem_rename_to); ! atomic_add_32(&lgrp_gen, 1); break; } case LGRP_CONFIG_GEN_UPDATE: ! atomic_add_32(&lgrp_gen, 1); break; case LGRP_CONFIG_FLATTEN: if (where == 0) lgrp_topo_levels = (int)resource; --- 641,671 ---- * The following events are initiated by the memnode * subsystem. */ case LGRP_CONFIG_MEM_ADD: lgrp_mem_init((int)resource, where, B_FALSE); ! atomic_inc_32(&lgrp_gen); break; case LGRP_CONFIG_MEM_DEL: lgrp_mem_fini((int)resource, where, B_FALSE); ! atomic_inc_32(&lgrp_gen); break; case LGRP_CONFIG_MEM_RENAME: { lgrp_config_mem_rename_t *ren_arg = (lgrp_config_mem_rename_t *)where; lgrp_mem_rename((int)resource, ren_arg->lmem_rename_from, ren_arg->lmem_rename_to); ! atomic_inc_32(&lgrp_gen); break; } case LGRP_CONFIG_GEN_UPDATE: ! atomic_inc_32(&lgrp_gen); break; case LGRP_CONFIG_FLATTEN: if (where == 0) lgrp_topo_levels = (int)resource;