diff --git a/src/include/libpmemobj.h b/src/include/libpmemobj.h
index 87607e32fb3272686df8c19e9585d185fe3cf64b..6bdbaec5b3afe21cece8a827bddb4b13f889307e 100644
--- a/src/include/libpmemobj.h
+++ b/src/include/libpmemobj.h
@@ -384,86 +384,86 @@ for (OID_ASSIGN_TYPED((var), POBJ_LIST_LAST((head), field));\
#define POBJ_LIST_INSERT_HEAD(pop, head, elm, field)\
pmemobj_list_insert((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)), POBJ_LIST_FIRST((head)).oid,\
+ (head), POBJ_LIST_FIRST((head)).oid,\
1 /* before */, (elm).oid)
#define POBJ_LIST_INSERT_TAIL(pop, head, elm, field)\
pmemobj_list_insert((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)), POBJ_LIST_LAST((head), field).oid,\
+ (head), POBJ_LIST_LAST((head), field).oid,\
0 /* after */, (elm).oid)
#define POBJ_LIST_INSERT_AFTER(pop, head, listelm, elm, field)\
pmemobj_list_insert((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)), (listelm).oid,\
+ (head), (listelm).oid,\
0 /* after */, (elm).oid)
#define POBJ_LIST_INSERT_BEFORE(pop, head, listelm, elm, field)\
pmemobj_list_insert((pop), offsetof(typeof (*D_RO((elm))),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)), (listelm).oid,\
+ (head), (listelm).oid,\
1 /* before */, (elm).oid)
#define POBJ_LIST_INSERT_NEW_HEAD(pop, head, type_num, field)\
pmemobj_list_insert_new((pop),\
offsetof(typeof (*((head)->pe_first._type)), field),\
- &POBJ_LIST_FIRST((head)), POBJ_LIST_FIRST((head)).oid,\
+ (head), POBJ_LIST_FIRST((head)).oid,\
1 /* before */, sizeof (*(POBJ_LIST_FIRST(head)._type)), type_num)
#define POBJ_LIST_INSERT_NEW_TAIL(pop, head, type_num, field)\
pmemobj_list_insert_new((pop),\
offsetof(typeof (*((head)->pe_first._type)), field),\
- &POBJ_LIST_FIRST((head)), POBJ_LIST_LAST((head), field).oid,\
+ (head), POBJ_LIST_LAST((head), field).oid,\
0 /* after */, sizeof (*(POBJ_LIST_FIRST(head)._type)), type_num)
#define POBJ_LIST_INSERT_NEW_AFTER(pop, head, listelm, type_num, field)\
pmemobj_list_insert_new((pop),\
offsetof(typeof (*((head)->pe_first._type)), field),\
- &POBJ_LIST_FIRST((head)), (listelm).oid, 0 /* after */,\
+ (head), (listelm).oid, 0 /* after */,\
sizeof (*(POBJ_LIST_FIRST(head)._type)), type_num)
#define POBJ_LIST_INSERT_NEW_BEFORE(pop, head, listelm, type_num, field)\
pmemobj_list_insert_new((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)), (listelm).oid, 1 /* before */,\
+ (head), (listelm).oid, 1 /* before */,\
sizeof (*(POBJ_LIST_FIRST(head)._type)), type_num)
#define POBJ_LIST_REMOVE(pop, head, elm, field)\
pmemobj_list_remove((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)), (elm).oid, 0 /* no free */)
+ (head), (elm).oid, 0 /* no free */)
#define POBJ_LIST_REMOVE_FREE(pop, head, elm, field)\
pmemobj_list_remove((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)), (elm).oid, 1 /* free */)
+ (head), (elm).oid, 1 /* free */)
#define POBJ_LIST_MOVE_ELEMENT_HEAD(pop, head, head_new, elm, field, field_new)\
pmemobj_list_move((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)),\
+ (head),\
offsetof(typeof (*(POBJ_LIST_FIRST(head_new)._type)), field_new),\
- &POBJ_LIST_FIRST((head_new)),\
- POBJ_LIST_FIRST((head)).oid,\
+ (head_new),\
+ POBJ_LIST_FIRST((head_new)).oid,\
1 /* before */, (elm).oid)
#define POBJ_LIST_MOVE_ELEMENT_TAIL(pop, head, head_new, elm, field, field_new)\
pmemobj_list_move((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)),\
+ (head),\
offsetof(typeof (*(POBJ_LIST_FIRST(head_new)._type)), field_new),\
- &POBJ_LIST_FIRST((head_new)),\
- POBJ_LIST_LAST((head)).oid,\
+ (head_new),\
+ POBJ_LIST_LAST((head_new)).oid,\
0 /* after */, (elm).oid)
#define POBJ_LIST_MOVE_ELEMENT_AFTER(pop,\
head, head_new, listelm, elm, field, field_new)\
pmemobj_list_move((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)),\
+ (head),\
offsetof(typeof (*(POBJ_LIST_FIRST(head_new)._type)), field_new),\
- &POBJ_LIST_FIRST((head_new)),\
+ (head_new),\
(listelm).oid,\
0 /* after */, (elm).oid)
@@ -471,9 +471,9 @@ pmemobj_list_move((pop),\
head, head_new, listelm, elm, field, field_new)\
pmemobj_list_move((pop),\
offsetof(typeof (*(POBJ_LIST_FIRST(head)._type)), field),\
- &POBJ_LIST_FIRST((head)),\
+ (head),\
offsetof(typeof (*(POBJ_LIST_FIRST(head_new)._type)), field_new),\
- &POBJ_LIST_FIRST((head_new)),\
+ (head_new),\
(listelm).oid,\
1 /* before */, (elm).oid)
diff --git a/src/libpmemobj/tx.c b/src/libpmemobj/tx.c
index 92324ecdafd3101d8fc3a0164c8b8d47853d074a..fc52a6ab2c414698985d44bfaa3d4c00c4053dad 100644
--- a/src/libpmemobj/tx.c
+++ b/src/libpmemobj/tx.c
@@ -521,7 +521,6 @@ tx_post_commit(PMEMobjpool *pop, struct lane_tx_layout *layout)
return 0;
}
-
/*
* tx_abort -- (internal) abort all allocated objects
*/
diff --git a/src/test/obj_basic_integration/TEST0 b/src/test/obj_basic_integration/TEST0
index 7608994df3a6bb8eb48712929d3acc7332b81fe7..167011952047b0e1a6b4c5fb8e299b705a6a550e 100755
--- a/src/test/obj_basic_integration/TEST0
+++ b/src/test/obj_basic_integration/TEST0
@@ -39,7 +39,7 @@ export UNITTEST_NUM=0
setup
-expect_abnormal_exit\
+expect_normal_exit\
./obj_basic_integration$EXESUFFIX $DIR/testfile1 2> /dev/null
rm -rf $DIR/testfile1
diff --git a/src/test/obj_basic_integration/obj_basic_integration.c b/src/test/obj_basic_integration/obj_basic_integration.c
index 381aa5093ed259e93fca67d07086d9ab8d9b02df..3e2d6291fa01a44eefafaa5c8620a8e753ed94cc 100644
--- a/src/test/obj_basic_integration/obj_basic_integration.c
+++ b/src/test/obj_basic_integration/obj_basic_integration.c
@@ -179,15 +179,14 @@ test_tx_api(PMEMobjpool *pop)
TX_MEMCPY(D_RW(root)->node, teststr, TEST_STR, TEST_STR_LEN);
TX_SET(D_RW(root)->node, value, TEST_VALUE);
} TX_FINALLY {
- if (vstate)
- FREE(vstate);
+ FREE(vstate);
vstate = NULL;
} TX_END
ASSERTeq(vstate, NULL);
ASSERTeq(D_RW(root)->value, TEST_VALUE);
- TX_BEGIN_LOCK(pop, &D_RW(root)->lock) {
+ TX_BEGIN_LOCK(pop, TX_LOCK_MUTEX, &D_RW(root)->lock) {
ASSERT(!OID_IS_NULL(D_RW(root)->node));
TX_FREE(D_RW(root)->node);
OID_ASSIGN(D_RW(root)->node, OID_NULL);