hub_nmi 246 arch/x86/platform/uv/uv_nmi.c static inline int uv_nmi_test_mmr(struct uv_hub_nmi_s *hub_nmi) hub_nmi 248 arch/x86/platform/uv/uv_nmi.c hub_nmi->nmi_value = uv_read_local_mmr(nmi_mmr); hub_nmi 249 arch/x86/platform/uv/uv_nmi.c atomic_inc(&hub_nmi->read_mmr_count); hub_nmi 250 arch/x86/platform/uv/uv_nmi.c return !!(hub_nmi->nmi_value & nmi_mmr_pending); hub_nmi 422 arch/x86/platform/uv/uv_nmi.c static int uv_nmi_test_hubless(struct uv_hub_nmi_s *hub_nmi) hub_nmi 427 arch/x86/platform/uv/uv_nmi.c hub_nmi->nmi_value = status; hub_nmi 428 arch/x86/platform/uv/uv_nmi.c atomic_inc(&hub_nmi->read_mmr_count); hub_nmi 439 arch/x86/platform/uv/uv_nmi.c static int uv_test_nmi(struct uv_hub_nmi_s *hub_nmi) hub_nmi 441 arch/x86/platform/uv/uv_nmi.c if (hub_nmi->hub_present) hub_nmi 442 arch/x86/platform/uv/uv_nmi.c return uv_nmi_test_mmr(hub_nmi); hub_nmi 444 arch/x86/platform/uv/uv_nmi.c if (hub_nmi->pch_owner) /* Only PCH owner can check status */ hub_nmi 445 arch/x86/platform/uv/uv_nmi.c return uv_nmi_test_hubless(hub_nmi); hub_nmi 454 arch/x86/platform/uv/uv_nmi.c static int uv_set_in_nmi(int cpu, struct uv_hub_nmi_s *hub_nmi) hub_nmi 456 arch/x86/platform/uv/uv_nmi.c int first = atomic_add_unless(&hub_nmi->in_nmi, 1, 1); hub_nmi 459 arch/x86/platform/uv/uv_nmi.c atomic_set(&hub_nmi->cpu_owner, cpu); hub_nmi 463 arch/x86/platform/uv/uv_nmi.c atomic_inc(&hub_nmi->nmi_count); hub_nmi 469 arch/x86/platform/uv/uv_nmi.c static int uv_check_nmi(struct uv_hub_nmi_s *hub_nmi) hub_nmi 479 arch/x86/platform/uv/uv_nmi.c nmi = atomic_read(&hub_nmi->in_nmi); hub_nmi 483 arch/x86/platform/uv/uv_nmi.c if (raw_spin_trylock(&hub_nmi->nmi_lock)) { hub_nmi 484 arch/x86/platform/uv/uv_nmi.c nmi_detected = uv_test_nmi(hub_nmi); hub_nmi 488 arch/x86/platform/uv/uv_nmi.c uv_set_in_nmi(cpu, hub_nmi); hub_nmi 498 arch/x86/platform/uv/uv_nmi.c raw_spin_unlock(&hub_nmi->nmi_lock); hub_nmi 507 arch/x86/platform/uv/uv_nmi.c nmi = atomic_read(&hub_nmi->in_nmi); hub_nmi 519 arch/x86/platform/uv/uv_nmi.c uv_set_in_nmi(cpu, hub_nmi); hub_nmi 524 arch/x86/platform/uv/uv_nmi.c raw_spin_unlock(&hub_nmi->nmi_lock); hub_nmi 537 arch/x86/platform/uv/uv_nmi.c struct uv_hub_nmi_s *hub_nmi = uv_hub_nmi; hub_nmi 539 arch/x86/platform/uv/uv_nmi.c if (cpu == atomic_read(&hub_nmi->cpu_owner)) { hub_nmi 540 arch/x86/platform/uv/uv_nmi.c atomic_set(&hub_nmi->cpu_owner, -1); hub_nmi 541 arch/x86/platform/uv/uv_nmi.c atomic_set(&hub_nmi->in_nmi, 0); hub_nmi 542 arch/x86/platform/uv/uv_nmi.c if (hub_nmi->hub_present) hub_nmi 546 arch/x86/platform/uv/uv_nmi.c raw_spin_unlock(&hub_nmi->nmi_lock); hub_nmi 897 arch/x86/platform/uv/uv_nmi.c struct uv_hub_nmi_s *hub_nmi = uv_hub_nmi; hub_nmi 905 arch/x86/platform/uv/uv_nmi.c if (!this_cpu_read(uv_cpu_nmi.pinging) && !uv_check_nmi(hub_nmi)) {