]>
git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blob - io/log_writes.c
1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2017 Intel Corporation.
7 #include "platform_defs.h"
8 #include <libdevmapper.h>
13 static cmdinfo_t log_writes_cmd
;
16 mark_log(const char *device
, const char *mark
)
23 len
= snprintf(message
, size
, "mark %s", mark
);
25 printf("mark '%s' is too long\n", mark
);
29 if (!(dmt
= dm_task_create(DM_DEVICE_TARGET_MSG
)))
32 if (!dm_task_set_name(dmt
, device
))
35 if (!dm_task_set_sector(dmt
, 0))
38 if (!dm_task_set_message(dmt
, message
))
53 const char *device
= NULL
;
54 const char *mark
= NULL
;
58 while ((c
= getopt(argc
, argv
, "d:m:")) != EOF
) {
67 return command_usage(&log_writes_cmd
);
71 if (device
== NULL
|| mark
== NULL
)
72 return command_usage(&log_writes_cmd
);
74 if (mark_log(device
, mark
))
83 log_writes_cmd
.name
= "log_writes";
84 log_writes_cmd
.altname
= "lw";
85 log_writes_cmd
.cfunc
= log_writes_f
;
86 log_writes_cmd
.flags
= CMD_NOMAP_OK
| CMD_NOFILE_OK
| CMD_FOREIGN_OK
88 log_writes_cmd
.argmin
= 0;
89 log_writes_cmd
.argmax
= -1;
90 log_writes_cmd
.args
= _("-d device -m mark");
91 log_writes_cmd
.oneline
=
92 _("create mark <mark> in the dm-log-writes log specified by <device>");
94 add_command(&log_writes_cmd
);