Print this page
XXXX pass in cpu_pause_func via pause_cpus

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/sun4u/io/mem_cache.c
          +++ new/usr/src/uts/sun4u/io/mem_cache.c
↓ open down ↓ 807 lines elided ↑ open up ↑
 808  808  #ifdef DEBUG
 809  809                  case MEM_CACHE_READ_ERROR_INJECTED_TAGS:
 810  810  #endif
 811  811                          /*
 812  812                           * Read tag and data for all the ways at a given afar
 813  813                           */
 814  814                          afar = (uint64_t)(cache_info->index
 815  815                              << PN_CACHE_LINE_SHIFT);
 816  816                          mutex_enter(&cpu_lock);
 817  817                          affinity_set(cache_info->cpu_id);
 818      -                        (void) pause_cpus(NULL);
      818 +                        (void) pause_cpus(NULL, NULL);
 819  819                          mutex_exit(&cpu_lock);
 820  820                          /*
 821  821                           * We bind ourself to a CPU and send cross trap to
 822  822                           * ourself. On return from xt_one we can rely on the
 823  823                           * data in clop being filled in. Normally one would
 824  824                           * do a xt_sync to make sure that the CPU has completed
 825  825                           * the cross trap call xt_one.
 826  826                           */
 827  827                          xt_one(cache_info->cpu_id,
 828  828                              (xcfunc_t *)(get_ecache_dtags_tl1),
↓ open down ↓ 141 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX