-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathobj_ndctl_bb.c
More file actions
60 lines (47 loc) · 1.07 KB
/
obj_ndctl_bb.c
File metadata and controls
60 lines (47 loc) · 1.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
// SPDX-License-Identifier: BSD-3-Clause
/* Copyright 2026, Hewlett Packard Enterprise Development LP */
/*
* obj_ndctl_bb.c -- crashes whenever badblocks-related code is run
*/
#include <libpmemobj.h>
#include "set.h"
#include "unittest.h"
FUNC_MOCK(badblocks_recovery_file_exists, int, struct pool_set *set)
FUNC_MOCK_RUN_DEFAULT {
UT_ASSERT(0);
}
FUNC_MOCK_END
FUNC_MOCK(badblocks_check_poolset, int, struct pool_set *set, int create)
FUNC_MOCK_RUN_DEFAULT {
UT_ASSERT(0);
}
FUNC_MOCK_END
int
main(int argc, char *argv[])
{
START(argc, argv, "obj_ndctl_bb");
if (argc < 3) {
UT_FATAL("usage: %s <path> <c|o>\nc - create\no - open",
argv[0]);
}
const char *path = argv[1];
const char *cmd = argv[2];
PMEMobjpool *pop;
if (strlen(cmd) != 1) {
UT_FATAL("unknown command: %s", cmd);
}
switch (cmd[0]) {
case 'c':
pop = pmemobj_create(path, NULL, PMEMOBJ_MIN_POOL,
0600);
break;
case 'o':
pop = pmemobj_open(path, NULL);
break;
default:
UT_FATAL("unknown command: %s", cmd);
}
UT_ASSERTne(pop, NULL);
pmemobj_close(pop);
DONE(NULL);
}