]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Merge branch 'unstable' into auth
authorSage Weil <sage@newdream.net>
Tue, 10 Nov 2009 05:12:16 +0000 (21:12 -0800)
committerSage Weil <sage@newdream.net>
Tue, 10 Nov 2009 05:12:16 +0000 (21:12 -0800)
Conflicts:
src/Makefile.am
src/mkmonfs.cc
src/msg/SimpleMessenger.cc

18 files changed:
1  2 
src/Makefile.am
src/client/Client.cc
src/config.cc
src/crush/grammar.h
src/include/buffer.h
src/include/ceph_fs.h
src/include/msgr.h
src/include/rados.h
src/mkmonfs.cc
src/mon/Monitor.cc
src/mon/mon_types.h
src/msg/SimpleMessenger.cc
src/msg/msg_types.h
src/osd/OSD.cc
src/osd/OSD.h
src/osd/osd_types.h
src/osdmaptool.cc
src/streamtest.cc

diff --cc src/Makefile.am
index 2385d83a111fa95b4c47b209afe9515b3664eb90,1f1cb1561dc465af50245fe90c9499d0f7652b5d..b3c2b3e448307c2e763e1cd52f69d68fae409ba2
@@@ -10,37 -10,35 +10,37 @@@ bin_SCRIPTS = cru
  
  # monitor
  cmon_SOURCES = cmon.cc msg/SimpleMessenger.cc
- cmon_LDADD = libmon.a libcrush.a libcommon.a -lcrypto
 -cmon_LDADD = libmon.a libcrush.a libcommon.a -lpthread -lm
++cmon_LDADD = libmon.a libcrush.a libcommon.a -lpthread -lm -lcrypto
  bin_PROGRAMS += cmon
  
  # osd
  cosd_SOURCES = cosd.cc msg/SimpleMessenger.cc objclass/class_debug.cc \
               objclass/class_api.cc
- cosd_LDADD = libosd.a libos.a libcrush.a libcommon.a -ldl -lcrypto
 -cosd_LDADD = libosd.a libos.a libcrush.a libcommon.a -ldl -lpthread -lm
++cosd_LDADD = libosd.a libos.a libcrush.a libcommon.a -ldl -lpthread -lm -lcrypto
  bin_PROGRAMS += cosd
  
  # mds
  cmds_SOURCES = cmds.cc msg/SimpleMessenger.cc
- cmds_LDADD = libmds.a libosdc.a libcrush.a libcommon.a -lcrypto
 -cmds_LDADD = libmds.a libosdc.a libcrush.a libcommon.a -lpthread -lm
++cmds_LDADD = libmds.a libosdc.a libcrush.a libcommon.a -lpthread -lm -lcrypto
  bin_PROGRAMS += cmds
  
  # admin tools
  ceph_SOURCES = ceph.cc msg/SimpleMessenger.cc
- ceph_LDADD = libcrush.a libcommon.a -ledit -lcrypto
 -ceph_LDADD = libcrush.a libcommon.a -ledit -lpthread -lm
++ceph_LDADD = libcrush.a libcommon.a -ledit -lpthread -lm -lcrypto
  mkmonfs_SOURCES = mkmonfs.cc
- mkmonfs_LDADD = libmon.a libcrush.a libcommon.a -lcrypto
 -mkmonfs_LDADD = libmon.a libcrush.a libcommon.a -lpthread -lm
++mkmonfs_LDADD = libmon.a libcrush.a libcommon.a -lpthread -lm -lcrypto
  cconf_SOURCES = cconf.cc
- cconf_LDADD = libcommon.a -lcrypto
 -cconf_LDADD = libcommon.a -lpthread -lm
 -bin_PROGRAMS += ceph mkmonfs cconf
++cconf_LDADD = libcommon.a -lpthread -lm -lcrypto
 +authtool_SOURCES = authtool.cc
- authtool_LDADD = libcommon.a -lcrypto
++authtool_LDADD = libcommon.a -lpthread -lm -lcrypto
 +bin_PROGRAMS += ceph mkmonfs cconf authtool
  
  monmaptool_SOURCES = monmaptool.cc
- monmaptool_LDADD = libcommon.a -lcrypto
 -monmaptool_LDADD = libcommon.a -lpthread -lm
++monmaptool_LDADD = libcommon.a -lpthread -lm -lcrypto
  crushtool_SOURCES = crushtool.cc
- crushtool_LDADD = libcrush.a libcommon.a -lcrypto
 -crushtool_LDADD = libcrush.a libcommon.a -lpthread -lm
++crushtool_LDADD = libcrush.a libcommon.a -lpthread -lm -lcrypto
  osdmaptool_SOURCES = osdmaptool.cc
- osdmaptool_LDADD = libcrush.a libcommon.a -lcrypto
 -osdmaptool_LDADD = libcrush.a libcommon.a -lpthread -lm
++osdmaptool_LDADD = libcrush.a libcommon.a -lpthread -lm -lcrypto
  bin_PROGRAMS += monmaptool crushtool osdmaptool
  
  mount_ceph_SOURCES = mount/mount.ceph.c
@@@ -51,20 -49,20 +51,20 @@@ core: cmon cosd cmds mkmonfs ceph ccon
  
  
  dumpjournal_SOURCES = dumpjournal.cc msg/SimpleMessenger.cc
- dumpjournal_LDADD = libosdc.a libcrush.a libcommon.a -lcrypto
 -dumpjournal_LDADD = libosdc.a libcrush.a libcommon.a -lpthread -lm
++dumpjournal_LDADD = libosdc.a libcrush.a libcommon.a -lpthread -lm -lcrypto
  dupstore_SOURCES = dupstore.cc
- dupstore_LDADD = libos.a libcommon.a -lcrypto
 -dupstore_LDADD = libos.a libcommon.a -lpthread -lm
++dupstore_LDADD = libos.a libcommon.a -lpthread -lm -lcrypto
  streamtest_SOURCES = streamtest.cc
- streamtest_LDADD = libos.a libcommon.a -lcrypto
 -streamtest_LDADD = libos.a libcommon.a -lpthread -lm
++streamtest_LDADD = libos.a libcommon.a -lpthread -lm -lcrypto
  bin_PROGRAMS += dumpjournal dupstore streamtest
  
  # synthetic client
  csyn_SOURCES = csyn.cc msg/SimpleMessenger.cc
- csyn_LDADD = libclient.a libosdc.a libcrush.a libcommon.a -lcrypto
 -csyn_LDADD = libclient.a libosdc.a libcrush.a libcommon.a -lpthread -lm
++csyn_LDADD = libclient.a libosdc.a libcrush.a libcommon.a -lpthread -lm -lcrypto
  bin_PROGRAMS += csyn
  
  testmsgr_SOURCES = testmsgr.cc msg/SimpleMessenger.cc
- testmsgr_LDADD = libcommon.a -lcrypto
 -testmsgr_LDADD = libcommon.a -lpthread -lm
++testmsgr_LDADD = libcommon.a -lpthread -lm -lcrypto
  bin_PROGRAMS += testmsgr
  
  test_ioctls_SOURCES = client/test_ioctls.c
@@@ -73,7 -71,7 +73,7 @@@ bin_PROGRAMS += test_ioctl
  # fuse targets?
  if WITH_FUSE
  cfuse_SOURCES = cfuse.cc msg/SimpleMessenger.cc client/fuse.cc client/fuse_ll.cc
- cfuse_LDADD = -lfuse libclient.a libosdc.a libcrush.a libcommon.a -lcrypto
 -cfuse_LDADD = -lfuse libclient.a libosdc.a libcrush.a libcommon.a -lpthread -lm
++cfuse_LDADD = -lfuse libclient.a libosdc.a libcrush.a libcommon.a -lpthread -lm -lcrypto
  bin_PROGRAMS += cfuse
  
  #if WITH_DEBUG
@@@ -88,7 -86,7 +88,7 @@@ endi
  # debug targets?
  if WITH_DEBUG
  psim_SOURCES = psim.cc
- psim_LDADD = libcrush.a libcommon.a -lcrypto
 -psim_LDADD = libcrush.a libcommon.a -lpthread -lm
++psim_LDADD = libcrush.a libcommon.a -lpthread -lm -lcrypto
  bin_PROGRAMS += psim
  
  #fakesyn_SOURCES = fakesyn.cc msg/FakeMessenger.cc
@@@ -117,18 -126,9 +128,9 @@@ libceph_la_LDFLAGS = -version-info 1:0:
  lib_LTLIBRARIES += libceph.la
  
  testceph_SOURCES = client/testceph.cc
- testceph_LDADD = libceph.la -lcrypto
 -testceph_LDADD = libceph.la libcrush.la -lpthread -lm
++testceph_LDADD = libceph.la libcrush.la -lpthread -lm -lcrypto
  bin_PROGRAMS += testceph
  
- # libcrush.so
- libcrush_la_SOURCES = \
-       crush/builder.c \
-       crush/mapper.c \
-       crush/crush.c
- libcrush_la_CFLAGS = ${AM_CFLAGS}
- libcrush_la_LDFLAGS = -version-info 1:0:0 -export-symbols-regex 'crush_.*'
- lib_LTLIBRARIES += libcrush.la
  # librados
  librados_SOURCES = \
        librados.cc \
@@@ -145,15 -147,15 +149,15 @@@ librados_a_CFLAGS = ${AM_CFLAGS
  librados_a_CXXFLAGS = ${AM_CXXFLAGS}
  
  rados_SOURCES = rados.cc
- rados_LDADD = librados.la libcrush.la -lcrypto
 -rados_LDADD = librados.la -lpthread -lm
++rados_LDADD = librados.la -lpthread -lm -lcrypto
  bin_PROGRAMS += rados
  
  testrados_SOURCES = testrados.c
- testrados_LDADD = librados.la libcrush.a -lcrypto
 -testrados_LDADD = librados.la -lpthread -lm
++testrados_LDADD = librados.la -lpthread -lm -lcrypto
  testradospp_SOURCES = testradospp.cc
- testradospp_LDADD = librados.a libcrush.la -lcrypto
 -testradospp_LDADD = librados.la -lpthread -lm
++testradospp_LDADD = librados.la -lpthread -lm -lcrypto
  radosacl_SOURCES = radosacl.cc
- radosacl_LDADD = librados.la libcrush.la -lcrypto
 -radosacl_LDADD = librados.la -lpthread -lm
++radosacl_LDADD = librados.la -lpthread -lm -lcrypto
  bin_PROGRAMS += testrados testradospp radosacl
  
  if WITH_RADOSGW
@@@ -176,13 -178,6 +180,13 @@@ radosgw_admin_LDADD = libradosgw.a libr
  bin_PROGRAMS += radosgw radosgw_admin
  endif
  
- testcrypto_LDADD = libcommon.a -lcrypto
 +testcrypto_SOURCES = testcrypto.cc
- testkeys_LDADD = libmon.a libcommon.a -lcrypto
++testcrypto_LDADD = libcommon.a -lpthread -lm -lcrypto
 +bin_PROGRAMS += testcrypto
 +
 +testkeys_SOURCES = testkeys.cc
++testkeys_LDADD = libmon.a libcommon.a -lpthread -lm -lcrypto
 +bin_PROGRAMS += testkeys
  ## object classes
  
  # libtestclass.so: testclass.cc
@@@ -333,12 -318,10 +338,13 @@@ libcommon_files = 
  libcrush_a_SOURCES = \
        crush/builder.c \
        crush/mapper.c \
-       crush/crush.c
+       crush/crush.c \
+       crush/hash.c
  
  libmon_a_SOURCES = \
 +      auth/cephx/CephxKeyServer.cc \
 +      auth/cephx/CephxServiceHandler.cc \
 +      auth/AuthServiceHandler.cc \
        mon/Monitor.cc \
        mon/Paxos.cc \
        mon/PaxosService.cc \
Simple merge
diff --cc src/config.cc
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc src/mkmonfs.cc
index fab2d06bb50b1acd72d2c3dfa5a013535e17e04d,3186f3299e610ee6dcffac0151412c5720423db0..604e03007ed78d94179cd15893874bf89b0391dc
@@@ -34,10 -34,9 +35,11 @@@ int main(int argc, const char **argv
    vector<const char*> args;
    argv_to_vec(argc, argv, args);
    DEFINE_CONF_VARS(usage);
 -  common_init(args, "mkmonfs", false);
 +  common_init(args, "mon", false, false);
  
    bool clobber = false;
 +  const char *fsdir = g_conf.mon_data;
++
    int whoami = -1;
    const char *monmapfn = g_conf.monmap;
    const char *osdmapfn = 0;
        CONF_SAFE_SET_ARG_VAL(&clobber, OPT_BOOL);
      } else if (CONF_ARG_EQ("mon", 'i')) {
        CONF_SAFE_SET_ARG_VAL(&whoami, OPT_INT);
 -    } else if (CONF_ARG_EQ("monmap", '\0')) {
 -      CONF_SAFE_SET_ARG_VAL(&monmapfn, OPT_STR);
      } else if (CONF_ARG_EQ("osdmap", '\0')) {
        CONF_SAFE_SET_ARG_VAL(&osdmapfn, OPT_STR);
 -    } else 
 +    } else {
-   cerr << "2 " <<  args[i] << std::endl;
        usage();
 +    }
    }
-   if (!fsdir || !monmapfn || whoami < 0)
+   if (!g_conf.mon_data || !monmapfn || whoami < 0)
      usage();
  
    if (!clobber) {
Simple merge
Simple merge
index 607b4387c052a8611089dffb671e05cb517d9f5b,58e87a671daad94f38372530326f516067c92022..fb44d0ef3a6296e891c27e6c865b4af0f9fd8707
@@@ -866,7 -834,7 +874,8 @@@ int SimpleMessenger::Pipe::connect(
    char banner[strlen(CEPH_BANNER)];
    entity_addr_t paddr;
    entity_addr_t peer_addr_for_me, socket_addr;
 +  AuthAuthorizer *authorizer = NULL;
+   bufferlist addrbl, myaddrbl;
  
    // create socket?
    sd = ::socket(AF_INET, SOCK_STREAM, 0);
Simple merge
diff --cc src/osd/OSD.cc
index 63de4d4772395a771ac2cf8f63d28217bb35a971,28b5c0c77928566ccd1846632e639e8173187b59..a1e14f336ca73529786d9154622cb26008a1a236
@@@ -423,17 -421,8 +423,14 @@@ int OSD::init(
    monc->init();
  
    monc->sub_want("monmap", 0);
 -  monc->renew_subs();  
 +
 +  osd_lock.Unlock();
 +
 +  monc->authenticate(30.0);
 +  monc->wait_auth_rotating(30.0);
 +
 +  osd_lock.Lock();
  
-   // announce to monitor i exist and have booted.
-   send_boot();
-   
    op_tp.start();
    recovery_tp.start();
    disk_tp.start();
@@@ -1422,19 -1400,9 +1419,19 @@@ bool OSD::_share_map_incoming(const ent
  
    // does client have old map?
    if (inst.name.is_client()) {
 -    if (epoch < osdmap->get_epoch()) {
 +    bool sendmap = epoch < osdmap->get_epoch();
 +    if (sendmap && session) {
 +      if ( session->last_sent_epoch < osdmap->get_epoch() ) {
 +      session->last_sent_epoch = osdmap->get_epoch();
 +      }
 +      else {
 +      sendmap = false; //we don't need to send it out again
 +      dout(15) << inst.name << " already sent incremental to update from epoch "<< epoch << dendl;
 +      }
 +    }
 +    if (sendmap) {
        dout(10) << inst.name << " has old map " << epoch << " < " << osdmap->get_epoch() << dendl;
-       send_incremental_map(epoch, inst, true);
+       send_incremental_map(epoch, inst);
        shared = true;
      }
    }
diff --cc src/osd/OSD.h
Simple merge
Simple merge
Simple merge
Simple merge