]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Merge pull request #3004 from guangyy/wip-10183
authorSamuel Just <sam.just@inktank.com>
Fri, 1 May 2015 16:01:47 +0000 (09:01 -0700)
committerSamuel Just <sam.just@inktank.com>
Fri, 1 May 2015 16:01:47 +0000 (09:01 -0700)
Add a new tick timer which does not need to hold osd_lock, put sched_scrub to that tick timer

Reviewed-by: Samuel Just <sjust@redhat.com>
1  2 
src/osd/OSD.cc
src/osd/OSD.h

diff --cc src/osd/OSD.cc
index 933d35daaf22220716396e6316dd05b0dc1aa451,3d0fa724c2d41935d474e1a83ac1f6d7e60bc4a8..3d2e7081e7fd80501ff1ab97738a7e9669de1ad1
@@@ -1454,14 -1502,16 +1456,16 @@@ OSD::OSD(CephContext *cct_, ObjectStor
    Dispatcher(cct_),
    osd_lock("OSD::osd_lock"),
    tick_timer(cct, osd_lock),
+   tick_timer_lock("OSD::tick_timer_lock"),
+   tick_timer_without_osd_lock(cct, tick_timer_lock),
    authorize_handler_cluster_registry(new AuthAuthorizeHandlerRegistry(cct,
 -                                                                    cct->_conf->auth_supported.length() ?
 -                                                                    cct->_conf->auth_supported :
 -                                                                    cct->_conf->auth_cluster_required)),
 +                                                                    cct->_conf->auth_supported.empty() ?
 +                                                                    cct->_conf->auth_cluster_required :
 +                                                                    cct->_conf->auth_supported)),
    authorize_handler_service_registry(new AuthAuthorizeHandlerRegistry(cct,
 -                                                                    cct->_conf->auth_supported.length() ?
 -                                                                    cct->_conf->auth_supported :
 -                                                                    cct->_conf->auth_service_required)),
 +                                                                    cct->_conf->auth_supported.empty() ?
 +                                                                    cct->_conf->auth_service_required :
 +                                                                    cct->_conf->auth_supported)),
    cluster_messenger(internal_messenger),
    client_messenger(external_messenger),
    objecter_messenger(osdc_messenger),
diff --cc src/osd/OSD.h
Simple merge