src/share/vm/gc_implementation/parallelScavenge/psTasks.hpp

changeset 1
2d8a650513c2
parent 0
f90c822e73f8
child 25
873fd82b133d
     1.1 --- a/src/share/vm/gc_implementation/parallelScavenge/psTasks.hpp	Wed Apr 27 01:25:04 2016 +0800
     1.2 +++ b/src/share/vm/gc_implementation/parallelScavenge/psTasks.hpp	Fri Apr 29 00:06:10 2016 +0800
     1.3 @@ -22,6 +22,12 @@
     1.4   *
     1.5   */
     1.6  
     1.7 +/*
     1.8 + * This file has been modified by Loongson Technology in 2015. These
     1.9 + * modifications are Copyright (c) 2015 Loongson Technology, and are made
    1.10 + * available on the same license terms set forth above.
    1.11 + */
    1.12 +
    1.13  #ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSTASKS_HPP
    1.14  #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSTASKS_HPP
    1.15  
    1.16 @@ -67,7 +73,7 @@
    1.17   private:
    1.18    RootType _root_type;
    1.19   public:
    1.20 -  ScavengeRootsTask(RootType value) : _root_type(value) {}
    1.21 +  ScavengeRootsTask(RootType value) : _root_type(value) {set_task_numa_id(-1);}
    1.22  
    1.23    char* name() { return (char *)"scavenge-roots-task"; }
    1.24  
    1.25 @@ -86,8 +92,8 @@
    1.26    JavaThread* _java_thread;
    1.27    VMThread* _vm_thread;
    1.28   public:
    1.29 -  ThreadRootsTask(JavaThread* root) : _java_thread(root), _vm_thread(NULL) {}
    1.30 -  ThreadRootsTask(VMThread* root) : _java_thread(NULL), _vm_thread(root) {}
    1.31 +  ThreadRootsTask(JavaThread* root) : _java_thread(root), _vm_thread(NULL) {set_task_numa_id(root->lgrp_id());}
    1.32 +  ThreadRootsTask(VMThread* root) : _java_thread(NULL), _vm_thread(root) {set_task_numa_id(root->lgrp_id());}
    1.33  
    1.34    char* name() { return (char *)"thread-roots-task"; }
    1.35  
    1.36 @@ -173,11 +179,34 @@
    1.37      _gen(gen),
    1.38      _gen_top(gen_top),
    1.39      _stripe_number(stripe_number),
    1.40 -    _stripe_total(stripe_total) { }
    1.41 +    _stripe_total(stripe_total) {set_task_numa_id(-1);}
    1.42  
    1.43    char* name() { return (char *)"old-to-young-roots-task"; }
    1.44  
    1.45    virtual void do_it(GCTaskManager* manager, uint which);
    1.46  };
    1.47  
    1.48 +class OldToYoungRootsTask_OldNUMA : public GCTask {
    1.49 + private:
    1.50 +  PSOldGen* _gen;
    1.51 +  HeapWord** _gen_top;
    1.52 +  uint _stripe_number;
    1.53 +  uint _stripe_total;
    1.54 +
    1.55 + public:
    1.56 +  OldToYoungRootsTask_OldNUMA(PSOldGen *gen, 
    1.57 +                              HeapWord** gen_top, 
    1.58 +                              uint stripe_number,
    1.59 +                              uint stripe_total) :
    1.60 +     _gen(gen), 
    1.61 +     _gen_top(gen_top), 
    1.62 +     _stripe_number(stripe_number),
    1.63 +     _stripe_total(stripe_total) {set_task_numa_id(-1);}
    1.64 +
    1.65 +  char* name() { return (char *)"OldNUMA-old-to-young-roots-task"; }
    1.66 +
    1.67 +  virtual void do_it(GCTaskManager* manager, uint which);
    1.68 +};
    1.69 +
    1.70 +
    1.71  #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSTASKS_HPP

mercurial