From ac70c56300045c377c6f5b05aed0678a4e95f6fa Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Thu, 8 Apr 2010 08:53:03 -0700 Subject: [PATCH] page: move to ceph namespace, defs to common/page.cc --- src/Makefile.am | 1 + src/common/page.cc | 19 +++++++++++++++++++ src/config.cc | 12 ------------ src/include/page.h | 28 +++++++++++++++------------- 4 files changed, 35 insertions(+), 25 deletions(-) create mode 100644 src/common/page.cc diff --git a/src/Makefile.am b/src/Makefile.am index 8265462115ff6..dd78b5315608f 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -344,6 +344,7 @@ libcommon_files = \ include/ceph_strings.cc \ include/ceph_frag.cc \ config.cc \ + common/page.cc \ common/lockdep.cc libcrush_a_SOURCES = \ diff --git a/src/common/page.cc b/src/common/page.cc new file mode 100644 index 0000000000000..6ba421544d59b --- /dev/null +++ b/src/common/page.cc @@ -0,0 +1,19 @@ +#include + +namespace ceph { + + // page size crap, see page.h + int _get_bits_of(int v) { + int n = 0; + while (v) { + n++; + v = v >> 1; + } + return n; + } + + unsigned _page_size = sysconf(_SC_PAGESIZE); + unsigned long _page_mask = ~(unsigned long)(_page_size - 1); + unsigned _page_shift = _get_bits_of(_page_size); + +} diff --git a/src/config.cc b/src/config.cc index d4b594d920601..7739fda2c2c89 100644 --- a/src/config.cc +++ b/src/config.cc @@ -71,18 +71,6 @@ public: static ConfFileDestructor cfd; -// page size crap, see page.h -int _get_bits_of(int v) { - int n = 0; - while (v) { - n++; - v = v >> 1; - } - return n; -} -unsigned _page_size = sysconf(_SC_PAGESIZE); -unsigned long _page_mask = ~(unsigned long)(_page_size - 1); -unsigned _page_shift = _get_bits_of(_page_size); atomic_t _num_threads(0); diff --git a/src/include/page.h b/src/include/page.h index baadcf16cc932..0c620029c9d30 100644 --- a/src/include/page.h +++ b/src/include/page.h @@ -1,19 +1,21 @@ #ifndef __CEPH_PAGE_H #define __CEPH_PAGE_H -// these are in config.cc -extern unsigned _page_size; -extern unsigned long _page_mask; -extern unsigned _page_shift; +namespace ceph { + // these are in common/page.cc + extern unsigned _page_size; + extern unsigned long _page_mask; + extern unsigned _page_shift; +} -#define PAGE_SIZE _page_size -#define PAGE_MASK _page_mask -#define PAGE_SHIFT _page_shift - -/* -#define PAGE_SIZE 4096 -#define PAGE_MASK (~(4095)) -#define PAGE_SHIFT 12 -*/ +#ifndef PAGE_SIZE +#define PAGE_SIZE ceph::_page_size +#endif +#ifndef PAGE_MASK +#define PAGE_MASK ceph::_page_mask +#endif +#ifndef PAGE_SHIFT +#define PAGE_SHIFT ceph::_page_shift +#endif #endif -- 2.39.5