gru 753 arch/x86/kernel/apic/x2apic_uv_x.c union uvh_rh_gam_gru_overlay_config_mmr_u gru; gru 758 arch/x86/kernel/apic/x2apic_uv_x.c gru.v = c; gru 761 arch/x86/kernel/apic/x2apic_uv_x.c gru_dist_base = gru.v & 0x000007fff0000000UL; gru 789 arch/x86/kernel/apic/x2apic_uv_x.c union uvh_rh_gam_gru_overlay_config_mmr_u gru; gru 794 arch/x86/kernel/apic/x2apic_uv_x.c gru.v = uv_read_local_mmr(UVH_RH_GAM_GRU_OVERLAY_CONFIG_MMR); gru 795 arch/x86/kernel/apic/x2apic_uv_x.c if (!gru.s.enable) { gru 801 arch/x86/kernel/apic/x2apic_uv_x.c if (is_uv3_hub() && gru.s3.mode) { gru 802 arch/x86/kernel/apic/x2apic_uv_x.c map_gru_distributed(gru.v); gru 806 arch/x86/kernel/apic/x2apic_uv_x.c base = (gru.v & mask) >> shift; gru 141 drivers/misc/sgi-gru/grufault.c static void get_clear_fault_map(struct gru_state *gru, gru 148 drivers/misc/sgi-gru/grufault.c tfm = get_tfm_for_cpu(gru, gru_cpu_fault_map_id()); gru 309 drivers/misc/sgi-gru/grufault.c static void gru_preload_tlb(struct gru_state *gru, gru 338 drivers/misc/sgi-gru/grufault.c atomic ? "atomic" : "non-atomic", gru->gs_gid, gts, tfh, gru 355 drivers/misc/sgi-gru/grufault.c static int gru_try_dropin(struct gru_state *gru, gru 428 drivers/misc/sgi-gru/grufault.c gru_preload_tlb(gru, gts, atomic, vaddr, asid, write, tlb_preload_count, tfh, cbe); gru 439 drivers/misc/sgi-gru/grufault.c atomic ? "atomic" : "non-atomic", gru->gs_gid, gts, tfh, vaddr, asid, gru 521 drivers/misc/sgi-gru/grufault.c struct gru_state *gru; gru 530 drivers/misc/sgi-gru/grufault.c gru = &gru_base[blade]->bs_grus[chiplet]; gru 531 drivers/misc/sgi-gru/grufault.c if (!gru) { gru 536 drivers/misc/sgi-gru/grufault.c get_clear_fault_map(gru, &imap, &dmap); gru 539 drivers/misc/sgi-gru/grufault.c smp_processor_id(), chiplet, gru->gs_gid, gru 545 drivers/misc/sgi-gru/grufault.c cmp = gru->gs_blade->bs_async_wq; gru 549 drivers/misc/sgi-gru/grufault.c gru->gs_gid, cbrnum, cmp ? cmp->done : -1); gru 554 drivers/misc/sgi-gru/grufault.c tfh = get_tfh_by_index(gru, cbrnum); gru 564 drivers/misc/sgi-gru/grufault.c gts = gru->gs_gts[ctxnum]; gru 579 drivers/misc/sgi-gru/grufault.c gru_try_dropin(gru, gts, tfh, NULL); gru 740 drivers/misc/sgi-gru/grufault.c struct gru_state *gru; gru 746 drivers/misc/sgi-gru/grufault.c gru = GID_TO_GRU(gid); gru 747 drivers/misc/sgi-gru/grufault.c spin_lock(&gru->gs_lock); gru 749 drivers/misc/sgi-gru/grufault.c gts = gru->gs_gts[ctxnum]; gru 751 drivers/misc/sgi-gru/grufault.c spin_unlock(&gru->gs_lock); gru 754 drivers/misc/sgi-gru/grufault.c spin_lock(&gru->gs_lock); gru 757 drivers/misc/sgi-gru/grufault.c spin_unlock(&gru->gs_lock); gru 229 drivers/misc/sgi-gru/grufile.c static void gru_init_chiplet(struct gru_state *gru, unsigned long paddr, gru 232 drivers/misc/sgi-gru/grufile.c spin_lock_init(&gru->gs_lock); gru 233 drivers/misc/sgi-gru/grufile.c spin_lock_init(&gru->gs_asid_lock); gru 234 drivers/misc/sgi-gru/grufile.c gru->gs_gru_base_paddr = paddr; gru 235 drivers/misc/sgi-gru/grufile.c gru->gs_gru_base_vaddr = vaddr; gru 236 drivers/misc/sgi-gru/grufile.c gru->gs_gid = blade_id * GRU_CHIPLETS_PER_BLADE + chiplet_id; gru 237 drivers/misc/sgi-gru/grufile.c gru->gs_blade = gru_base[blade_id]; gru 238 drivers/misc/sgi-gru/grufile.c gru->gs_blade_id = blade_id; gru 239 drivers/misc/sgi-gru/grufile.c gru->gs_chiplet_id = chiplet_id; gru 240 drivers/misc/sgi-gru/grufile.c gru->gs_cbr_map = (GRU_CBR_AU == 64) ? ~0 : (1UL << GRU_CBR_AU) - 1; gru 241 drivers/misc/sgi-gru/grufile.c gru->gs_dsr_map = (1UL << GRU_DSR_AU) - 1; gru 242 drivers/misc/sgi-gru/grufile.c gru->gs_asid_limit = MAX_ASID; gru 243 drivers/misc/sgi-gru/grufile.c gru_tgh_flush_init(gru); gru 244 drivers/misc/sgi-gru/grufile.c if (gru->gs_gid >= gru_max_gids) gru 245 drivers/misc/sgi-gru/grufile.c gru_max_gids = gru->gs_gid + 1; gru 247 drivers/misc/sgi-gru/grufile.c blade_id, gru->gs_gid, gru->gs_gru_base_vaddr, gru 248 drivers/misc/sgi-gru/grufile.c gru->gs_gru_base_paddr); gru 257 drivers/misc/sgi-gru/grufile.c struct gru_state *gru; gru 277 drivers/misc/sgi-gru/grufile.c for (gru = gru_base[bid]->bs_grus, chip = 0; gru 279 drivers/misc/sgi-gru/grufile.c chip++, gru++) { gru 282 drivers/misc/sgi-gru/grufile.c gru_init_chiplet(gru, paddr, vaddr, bid, chip); gru 283 drivers/misc/sgi-gru/grufile.c n = hweight64(gru->gs_cbr_map) * GRU_CBR_AU_SIZE; gru 285 drivers/misc/sgi-gru/grufile.c n = hweight64(gru->gs_dsr_map) * GRU_DSR_AU_BYTES; gru 67 drivers/misc/sgi-gru/grukdump.c static int gru_dump_tfm(struct gru_state *gru, gru 77 drivers/misc/sgi-gru/grukdump.c tfm = get_tfm(gru->gs_gru_base_vaddr, i); gru 87 drivers/misc/sgi-gru/grukdump.c static int gru_dump_tgh(struct gru_state *gru, gru 97 drivers/misc/sgi-gru/grukdump.c tgh = get_tgh(gru->gs_gru_base_vaddr, i); gru 107 drivers/misc/sgi-gru/grukdump.c static int gru_dump_context(struct gru_state *gru, int ctxnum, gru 119 drivers/misc/sgi-gru/grukdump.c grubase = gru->gs_gru_base_vaddr; gru 140 drivers/misc/sgi-gru/grukdump.c gts = gru->gs_gts[ctxnum]; gru 164 drivers/misc/sgi-gru/grukdump.c hdr.gid = gru->gs_gid; gru 177 drivers/misc/sgi-gru/grukdump.c struct gru_state *gru; gru 191 drivers/misc/sgi-gru/grukdump.c gru = GID_TO_GRU(req.gid); gru 195 drivers/misc/sgi-gru/grukdump.c ret = gru_dump_tfm(gru, ubuf, ubufend); gru 200 drivers/misc/sgi-gru/grukdump.c ret = gru_dump_tgh(gru, ubuf, ubufend); gru 207 drivers/misc/sgi-gru/grukdump.c ret = gru_dump_context(gru, ctxnum, ubuf, ubufend, gru 141 drivers/misc/sgi-gru/grukservices.c struct gru_state *gru; gru 173 drivers/misc/sgi-gru/grukservices.c gru = bs->bs_kgts->ts_gru; gru 174 drivers/misc/sgi-gru/grukservices.c vaddr = gru->gs_gru_base_vaddr; gru 84 drivers/misc/sgi-gru/grumain.c static int gru_wrap_asid(struct gru_state *gru) gru 86 drivers/misc/sgi-gru/grumain.c gru_dbg(grudev, "gid %d\n", gru->gs_gid); gru 88 drivers/misc/sgi-gru/grumain.c gru->gs_asid_gen++; gru 93 drivers/misc/sgi-gru/grumain.c static int gru_reset_asid_limit(struct gru_state *gru, int asid) gru 97 drivers/misc/sgi-gru/grumain.c gru_dbg(grudev, "gid %d, asid 0x%x\n", gru->gs_gid, asid); gru 101 drivers/misc/sgi-gru/grumain.c asid = gru_wrap_asid(gru); gru 102 drivers/misc/sgi-gru/grumain.c gru_flush_all_tlb(gru); gru 103 drivers/misc/sgi-gru/grumain.c gid = gru->gs_gid; gru 106 drivers/misc/sgi-gru/grumain.c if (!gru->gs_gts[i] || is_kernel_context(gru->gs_gts[i])) gru 108 drivers/misc/sgi-gru/grumain.c inuse_asid = gru->gs_gts[i]->ts_gms->ms_asids[gid].mt_asid; gru 110 drivers/misc/sgi-gru/grumain.c gru->gs_gid, gru->gs_gts[i], gru->gs_gts[i]->ts_gms, gru 121 drivers/misc/sgi-gru/grumain.c asid = gru_wrap_asid(gru); gru 129 drivers/misc/sgi-gru/grumain.c gru->gs_asid_limit = limit; gru 130 drivers/misc/sgi-gru/grumain.c gru->gs_asid = asid; gru 131 drivers/misc/sgi-gru/grumain.c gru_dbg(grudev, "gid %d, new asid 0x%x, new_limit 0x%x\n", gru->gs_gid, gru 137 drivers/misc/sgi-gru/grumain.c static int gru_assign_asid(struct gru_state *gru) gru 141 drivers/misc/sgi-gru/grumain.c gru->gs_asid += ASID_INC; gru 142 drivers/misc/sgi-gru/grumain.c asid = gru->gs_asid; gru 143 drivers/misc/sgi-gru/grumain.c if (asid >= gru->gs_asid_limit) gru 144 drivers/misc/sgi-gru/grumain.c asid = gru_reset_asid_limit(gru, asid); gru 146 drivers/misc/sgi-gru/grumain.c gru_dbg(grudev, "gid %d, asid 0x%x\n", gru->gs_gid, asid); gru 172 drivers/misc/sgi-gru/grumain.c unsigned long gru_reserve_cb_resources(struct gru_state *gru, int cbr_au_count, gru 175 drivers/misc/sgi-gru/grumain.c return reserve_resources(&gru->gs_cbr_map, cbr_au_count, GRU_CBR_AU, gru 179 drivers/misc/sgi-gru/grumain.c unsigned long gru_reserve_ds_resources(struct gru_state *gru, int dsr_au_count, gru 182 drivers/misc/sgi-gru/grumain.c return reserve_resources(&gru->gs_dsr_map, dsr_au_count, GRU_DSR_AU, gru 186 drivers/misc/sgi-gru/grumain.c static void reserve_gru_resources(struct gru_state *gru, gru 189 drivers/misc/sgi-gru/grumain.c gru->gs_active_contexts++; gru 191 drivers/misc/sgi-gru/grumain.c gru_reserve_cb_resources(gru, gts->ts_cbr_au_count, gru 194 drivers/misc/sgi-gru/grumain.c gru_reserve_ds_resources(gru, gts->ts_dsr_au_count, NULL); gru 197 drivers/misc/sgi-gru/grumain.c static void free_gru_resources(struct gru_state *gru, gru 200 drivers/misc/sgi-gru/grumain.c gru->gs_active_contexts--; gru 201 drivers/misc/sgi-gru/grumain.c gru->gs_cbr_map |= gts->ts_cbr_map; gru 202 drivers/misc/sgi-gru/grumain.c gru->gs_dsr_map |= gts->ts_dsr_map; gru 212 drivers/misc/sgi-gru/grumain.c static int check_gru_resources(struct gru_state *gru, int cbr_au_count, gru 215 drivers/misc/sgi-gru/grumain.c return hweight64(gru->gs_cbr_map) >= cbr_au_count gru 216 drivers/misc/sgi-gru/grumain.c && hweight64(gru->gs_dsr_map) >= dsr_au_count gru 217 drivers/misc/sgi-gru/grumain.c && gru->gs_active_contexts < max_active_contexts; gru 224 drivers/misc/sgi-gru/grumain.c static int gru_load_mm_tracker(struct gru_state *gru, gru 228 drivers/misc/sgi-gru/grumain.c struct gru_mm_tracker *asids = &gms->ms_asids[gru->gs_gid]; gru 235 drivers/misc/sgi-gru/grumain.c spin_lock(&gru->gs_asid_lock); gru 237 drivers/misc/sgi-gru/grumain.c gru->gs_asid_gen)) { gru 238 drivers/misc/sgi-gru/grumain.c asid = gru_assign_asid(gru); gru 240 drivers/misc/sgi-gru/grumain.c asids->mt_asid_gen = gru->gs_asid_gen; gru 245 drivers/misc/sgi-gru/grumain.c spin_unlock(&gru->gs_asid_lock); gru 249 drivers/misc/sgi-gru/grumain.c if (!test_bit(gru->gs_gid, gms->ms_asidmap)) gru 250 drivers/misc/sgi-gru/grumain.c __set_bit(gru->gs_gid, gms->ms_asidmap); gru 255 drivers/misc/sgi-gru/grumain.c gru->gs_gid, gts, gms, gts->ts_ctxnum, asid, gru 260 drivers/misc/sgi-gru/grumain.c static void gru_unload_mm_tracker(struct gru_state *gru, gru 267 drivers/misc/sgi-gru/grumain.c asids = &gms->ms_asids[gru->gs_gid]; gru 270 drivers/misc/sgi-gru/grumain.c spin_lock(&gru->gs_asid_lock); gru 274 drivers/misc/sgi-gru/grumain.c gru->gs_gid, gts, gms, gts->ts_ctxnum, gms->ms_asidmap[0]); gru 275 drivers/misc/sgi-gru/grumain.c spin_unlock(&gru->gs_asid_lock); gru 426 drivers/misc/sgi-gru/grumain.c struct gru_state *gru; gru 428 drivers/misc/sgi-gru/grumain.c gru = gts->ts_gru; gru 429 drivers/misc/sgi-gru/grumain.c gru_dbg(grudev, "gts %p, gid %d\n", gts, gru->gs_gid); gru 431 drivers/misc/sgi-gru/grumain.c spin_lock(&gru->gs_lock); gru 432 drivers/misc/sgi-gru/grumain.c gru->gs_gts[gts->ts_ctxnum] = NULL; gru 433 drivers/misc/sgi-gru/grumain.c free_gru_resources(gru, gts); gru 434 drivers/misc/sgi-gru/grumain.c BUG_ON(test_bit(gts->ts_ctxnum, &gru->gs_context_map) == 0); gru 435 drivers/misc/sgi-gru/grumain.c __clear_bit(gts->ts_ctxnum, &gru->gs_context_map); gru 439 drivers/misc/sgi-gru/grumain.c spin_unlock(&gru->gs_lock); gru 544 drivers/misc/sgi-gru/grumain.c struct gru_state *gru = gts->ts_gru; gru 550 drivers/misc/sgi-gru/grumain.c cch = get_cch(gru->gs_gru_base_vaddr, ctxnum); gru 559 drivers/misc/sgi-gru/grumain.c gru_unload_mm_tracker(gru, gts); gru 561 drivers/misc/sgi-gru/grumain.c gru_unload_context_data(gts->ts_gdata, gru->gs_gru_base_vaddr, gru 580 drivers/misc/sgi-gru/grumain.c struct gru_state *gru = gts->ts_gru; gru 584 drivers/misc/sgi-gru/grumain.c cch = get_cch(gru->gs_gru_base_vaddr, ctxnum); gru 613 drivers/misc/sgi-gru/grumain.c asid = gru_load_mm_tracker(gru, gts); gru 628 drivers/misc/sgi-gru/grumain.c gru_load_context_data(gts->ts_gdata, gru->gs_gru_base_vaddr, ctxnum, gru 648 drivers/misc/sgi-gru/grumain.c struct gru_state *gru = gts->ts_gru; gru 651 drivers/misc/sgi-gru/grumain.c cch = get_cch(gru->gs_gru_base_vaddr, ctxnum); gru 655 drivers/misc/sgi-gru/grumain.c if (gru->gs_gts[gts->ts_ctxnum] != gts) gru 699 drivers/misc/sgi-gru/grumain.c static int gru_check_chiplet_assignment(struct gru_state *gru, gru 710 drivers/misc/sgi-gru/grumain.c return gru->gs_blade_id == blade_id && gru 711 drivers/misc/sgi-gru/grumain.c (chiplet_id < 0 || chiplet_id == gru->gs_chiplet_id); gru 721 drivers/misc/sgi-gru/grumain.c struct gru_state *gru; gru 728 drivers/misc/sgi-gru/grumain.c gru = gts->ts_gru; gru 729 drivers/misc/sgi-gru/grumain.c if (!gru || gts->ts_tgid_owner != current->tgid) gru 732 drivers/misc/sgi-gru/grumain.c if (!gru_check_chiplet_assignment(gru, gts)) { gru 773 drivers/misc/sgi-gru/grumain.c struct gru_state *gru, *gru0; gru 788 drivers/misc/sgi-gru/grumain.c gru = blade->bs_lru_gru; gru 790 drivers/misc/sgi-gru/grumain.c gru = next_gru(blade, gru); gru 791 drivers/misc/sgi-gru/grumain.c blade->bs_lru_gru = gru; gru 794 drivers/misc/sgi-gru/grumain.c gru0 = gru; gru 796 drivers/misc/sgi-gru/grumain.c if (gru_check_chiplet_assignment(gru, gts)) { gru 797 drivers/misc/sgi-gru/grumain.c if (check_gru_resources(gru, cbr, dsr, GRU_NUM_CCH)) gru 799 drivers/misc/sgi-gru/grumain.c spin_lock(&gru->gs_lock); gru 801 drivers/misc/sgi-gru/grumain.c if (flag && gru == gru0 && ctxnum == ctxnum0) gru 803 drivers/misc/sgi-gru/grumain.c ngts = gru->gs_gts[ctxnum]; gru 814 drivers/misc/sgi-gru/grumain.c spin_unlock(&gru->gs_lock); gru 815 drivers/misc/sgi-gru/grumain.c if (ngts || (flag && gru == gru0 && ctxnum == ctxnum0)) gru 818 drivers/misc/sgi-gru/grumain.c if (flag && gru == gru0) gru 822 drivers/misc/sgi-gru/grumain.c gru = next_gru(blade, gru); gru 837 drivers/misc/sgi-gru/grumain.c gru->gs_gid, ctxnum, ngts, cbr, dsr, hweight64(gru->gs_cbr_map), gru 838 drivers/misc/sgi-gru/grumain.c hweight64(gru->gs_dsr_map)); gru 844 drivers/misc/sgi-gru/grumain.c static int gru_assign_context_number(struct gru_state *gru) gru 848 drivers/misc/sgi-gru/grumain.c ctxnum = find_first_zero_bit(&gru->gs_context_map, GRU_NUM_CCH); gru 849 drivers/misc/sgi-gru/grumain.c __set_bit(ctxnum, &gru->gs_context_map); gru 858 drivers/misc/sgi-gru/grumain.c struct gru_state *gru, *grux; gru 865 drivers/misc/sgi-gru/grumain.c gru = NULL; gru 873 drivers/misc/sgi-gru/grumain.c gru = grux; gru 880 drivers/misc/sgi-gru/grumain.c if (gru) { gru 881 drivers/misc/sgi-gru/grumain.c spin_lock(&gru->gs_lock); gru 882 drivers/misc/sgi-gru/grumain.c if (!check_gru_resources(gru, gts->ts_cbr_au_count, gru 884 drivers/misc/sgi-gru/grumain.c spin_unlock(&gru->gs_lock); gru 887 drivers/misc/sgi-gru/grumain.c reserve_gru_resources(gru, gts); gru 888 drivers/misc/sgi-gru/grumain.c gts->ts_gru = gru; gru 889 drivers/misc/sgi-gru/grumain.c gts->ts_blade = gru->gs_blade_id; gru 890 drivers/misc/sgi-gru/grumain.c gts->ts_ctxnum = gru_assign_context_number(gru); gru 892 drivers/misc/sgi-gru/grumain.c gru->gs_gts[gts->ts_ctxnum] = gts; gru 893 drivers/misc/sgi-gru/grumain.c spin_unlock(&gru->gs_lock); gru 906 drivers/misc/sgi-gru/grumain.c return gru; gru 163 drivers/misc/sgi-gru/gruprocfs.c struct gru_state *gru = GID_TO_GRU(gid); gru 170 drivers/misc/sgi-gru/gruprocfs.c if (gru) gru 172 drivers/misc/sgi-gru/gruprocfs.c ts = gru->gs_gts[i]; gru 176 drivers/misc/sgi-gru/gruprocfs.c gru->gs_gid, gru->gs_blade_id, i, gru 191 drivers/misc/sgi-gru/gruprocfs.c struct gru_state *gru = GID_TO_GRU(gid); gru 199 drivers/misc/sgi-gru/gruprocfs.c if (gru) { gru 200 drivers/misc/sgi-gru/gruprocfs.c ctxfree = GRU_NUM_CCH - gru->gs_active_contexts; gru 201 drivers/misc/sgi-gru/gruprocfs.c cbrfree = hweight64(gru->gs_cbr_map) * GRU_CBR_AU_SIZE; gru 202 drivers/misc/sgi-gru/gruprocfs.c dsrfree = hweight64(gru->gs_dsr_map) * GRU_DSR_AU_BYTES; gru 204 drivers/misc/sgi-gru/gruprocfs.c gru->gs_gid, gru->gs_blade_id, GRU_NUM_CCH - ctxfree, gru 508 drivers/misc/sgi-gru/grutables.h #define for_each_gru_on_blade(gru, nid, i) \ gru 509 drivers/misc/sgi-gru/grutables.h for ((gru) = gru_base[nid]->bs_grus, (i) = 0; \ gru 511 drivers/misc/sgi-gru/grutables.h (i)++, (gru)++) gru 518 drivers/misc/sgi-gru/grutables.h #define for_each_gts_on_gru(gts, gru, ctxnum) \ gru 520 drivers/misc/sgi-gru/grutables.h if (((gts) = (gru)->gs_gts[ctxnum])) gru 538 drivers/misc/sgi-gru/grutables.h #define gseg_physical_address(gru, ctxnum) \ gru 539 drivers/misc/sgi-gru/grutables.h ((gru)->gs_gru_base_paddr + ctxnum * GRU_GSEG_STRIDE) gru 540 drivers/misc/sgi-gru/grutables.h #define gseg_virtual_address(gru, ctxnum) \ gru 541 drivers/misc/sgi-gru/grutables.h ((gru)->gs_gru_base_vaddr + ctxnum * GRU_GSEG_STRIDE) gru 627 drivers/misc/sgi-gru/grutables.h extern void gru_tgh_flush_init(struct gru_state *gru); gru 643 drivers/misc/sgi-gru/grutables.h extern void gru_flush_all_tlb(struct gru_state *gru); gru 650 drivers/misc/sgi-gru/grutables.h extern unsigned long gru_reserve_cb_resources(struct gru_state *gru, gru 652 drivers/misc/sgi-gru/grutables.h extern unsigned long gru_reserve_ds_resources(struct gru_state *gru, gru 47 drivers/misc/sgi-gru/grutlbpurge.c static inline int get_off_blade_tgh(struct gru_state *gru) gru 51 drivers/misc/sgi-gru/grutlbpurge.c n = GRU_NUM_TGH - gru->gs_tgh_first_remote; gru 53 drivers/misc/sgi-gru/grutlbpurge.c n += gru->gs_tgh_first_remote; gru 57 drivers/misc/sgi-gru/grutlbpurge.c static inline int get_on_blade_tgh(struct gru_state *gru) gru 59 drivers/misc/sgi-gru/grutlbpurge.c return uv_blade_processor_id() >> gru->gs_tgh_local_shift; gru 63 drivers/misc/sgi-gru/grutlbpurge.c *gru) gru 69 drivers/misc/sgi-gru/grutlbpurge.c if (uv_numa_blade_id() == gru->gs_blade_id) gru 70 drivers/misc/sgi-gru/grutlbpurge.c n = get_on_blade_tgh(gru); gru 72 drivers/misc/sgi-gru/grutlbpurge.c n = get_off_blade_tgh(gru); gru 73 drivers/misc/sgi-gru/grutlbpurge.c tgh = get_tgh_by_index(gru, n); gru 148 drivers/misc/sgi-gru/grutlbpurge.c struct gru_state *gru; gru 167 drivers/misc/sgi-gru/grutlbpurge.c gru = GID_TO_GRU(gid); gru 176 drivers/misc/sgi-gru/grutlbpurge.c tgh = get_lock_tgh_handle(gru); gru 183 drivers/misc/sgi-gru/grutlbpurge.c __clear_bit(gru->gs_gid, gms->ms_asidmap); gru 196 drivers/misc/sgi-gru/grutlbpurge.c void gru_flush_all_tlb(struct gru_state *gru) gru 200 drivers/misc/sgi-gru/grutlbpurge.c gru_dbg(grudev, "gid %d\n", gru->gs_gid); gru 201 drivers/misc/sgi-gru/grutlbpurge.c tgh = get_lock_tgh_handle(gru); gru 295 drivers/misc/sgi-gru/grutlbpurge.c void gru_tgh_flush_init(struct gru_state *gru) gru 299 drivers/misc/sgi-gru/grutlbpurge.c cpus = uv_blade_nr_possible_cpus(gru->gs_blade_id); gru 313 drivers/misc/sgi-gru/grutlbpurge.c gru->gs_tgh_local_shift = shift; gru 316 drivers/misc/sgi-gru/grutlbpurge.c gru->gs_tgh_first_remote = (cpus + (1 << shift) - 1) >> shift;