Fixed ordering
diff --git a/samplecode/localattestation/attestation/src/func.rs b/samplecode/localattestation/attestation/src/func.rs
index cb40533..23dae48 100644
--- a/samplecode/localattestation/attestation/src/func.rs
+++ b/samplecode/localattestation/attestation/src/func.rs
@@ -48,15 +48,15 @@
 static CALLBACK_FN: AtomicPtr<()> = AtomicPtr::new(0 as * mut ());
 
 pub fn init(cb: Callback) {
-    let ptr = CALLBACK_FN.load(Ordering::SeqCst);
+    let ptr = CALLBACK_FN.load(Ordering::Relaxed);
     if ptr.is_null() {
         let ptr: * mut Callback = Box::into_raw(Box::new(cb));
-        CALLBACK_FN.store(ptr as * mut (), Ordering::SeqCst);
+        CALLBACK_FN.store(ptr as * mut (), Ordering::Relaxed);
     }
 }
 
 fn get_callback() -> Option<&'static Callback>{
-    let ptr = CALLBACK_FN.load(Ordering::SeqCst) as *mut Callback;
+    let ptr = CALLBACK_FN.load(Ordering::Relaxed) as *mut Callback;
     if ptr.is_null() {
          return None;
     }
diff --git a/samplecode/psi/SMCServer/enclave/src/lib.rs b/samplecode/psi/SMCServer/enclave/src/lib.rs
index 59eabec..b35d25e 100644
--- a/samplecode/psi/SMCServer/enclave/src/lib.rs
+++ b/samplecode/psi/SMCServer/enclave/src/lib.rs
@@ -85,7 +85,7 @@
 
 fn get_ref_hash_buffer() -> Option<&'static RefCell<SetIntersection>>
 {
-    let ptr = GLOBAL_HASH_BUFFER.load(Ordering::SeqCst) as * mut RefCell<SetIntersection>;
+    let ptr = GLOBAL_HASH_BUFFER.load(Ordering::Relaxed) as * mut RefCell<SetIntersection>;
     if ptr.is_null() {
         None
     } else {
@@ -107,7 +107,7 @@
 
     let data_box = Box::new(RefCell::<SetIntersection>::new(data));
     let ptr = Box::into_raw(data_box);
-    GLOBAL_HASH_BUFFER.store(ptr as *mut (), Ordering::SeqCst);
+    GLOBAL_HASH_BUFFER.store(ptr as *mut (), Ordering::Relaxed);
 
     sgx_status_t::SGX_SUCCESS
 }
@@ -116,7 +116,7 @@
 pub extern "C"
 fn uninitialize() {
 
-    let ptr = GLOBAL_HASH_BUFFER.swap(0 as * mut (), Ordering::SeqCst) as * mut RefCell<SetIntersection>;
+    let ptr = GLOBAL_HASH_BUFFER.swap(0 as * mut (), Ordering::Relaxed) as * mut RefCell<SetIntersection>;
     if ptr.is_null() {
        return;
     }
diff --git a/samplecode/thread/enclave/src/lib.rs b/samplecode/thread/enclave/src/lib.rs
index 7b7f1bd..7e7ea19 100644
--- a/samplecode/thread/enclave/src/lib.rs
+++ b/samplecode/thread/enclave/src/lib.rs
@@ -59,12 +59,12 @@
         SgxCondvar::new(),
     ));
     let ptr = Box::into_raw(lock);
-    GLOBAL_COND_BUFFER.store(ptr as *mut (), Ordering::SeqCst);
+    GLOBAL_COND_BUFFER.store(ptr as *mut (), Ordering::Relaxed);
 }
 
 #[no_mangle]
 pub extern "C" fn ecall_uninitialize() {
-    let ptr = GLOBAL_COND_BUFFER.swap(0 as *mut (), Ordering::SeqCst)
+    let ptr = GLOBAL_COND_BUFFER.swap(0 as *mut (), Ordering::Relaxed)
         as *mut (SgxMutex<CondBuffer>, SgxCondvar, SgxCondvar);
     if ptr.is_null() {
         return;
@@ -73,7 +73,7 @@
 }
 
 fn get_ref_cond_buffer() -> Option<&'static (SgxMutex<CondBuffer>, SgxCondvar, SgxCondvar)> {
-    let ptr = GLOBAL_COND_BUFFER.load(Ordering::SeqCst)
+    let ptr = GLOBAL_COND_BUFFER.load(Ordering::Relaxed)
         as *mut (SgxMutex<CondBuffer>, SgxCondvar, SgxCondvar);
     if ptr.is_null() {
         None