diff options
author | Alasdair Kergon <agk@redhat.com> | 2002-11-18 14:04:08 +0000 |
---|---|---|
committer | Alasdair Kergon <agk@redhat.com> | 2002-11-18 14:04:08 +0000 |
commit | 5a52dca9c26ade9f233abcf5213300560d7a13a9 (patch) | |
tree | 9afbc621c07148c96a1ba1878a262dbd8aec613a /tools/vgck.c | |
parent | d1d9800ef1c7ec38a5f72b8e2586f927ab68188c (diff) | |
download | lvm2-5a52dca9c26ade9f233abcf5213300560d7a13a9.tar.gz lvm2-5a52dca9c26ade9f233abcf5213300560d7a13a9.tar.xz lvm2-5a52dca9c26ade9f233abcf5213300560d7a13a9.zip |
Some new features.
Diffstat (limited to 'tools/vgck.c')
-rw-r--r-- | tools/vgck.c | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/tools/vgck.c b/tools/vgck.c index e90f5317..6a6eb1ec 100644 --- a/tools/vgck.c +++ b/tools/vgck.c @@ -20,20 +20,15 @@ #include "tools.h" -static int vgck_single(struct cmd_context *cmd, const char *vg_name); - -int vgck(struct cmd_context *cmd, int argc, char **argv) +static int vgck_single(struct cmd_context *cmd, const char *vg_name, + struct volume_group *vg, int consistent, void *handle) { - return process_each_vg(cmd, argc, argv, LCK_VG_READ, &vgck_single); -} - -static int vgck_single(struct cmd_context *cmd, const char *vg_name) -{ - struct volume_group *vg; - - log_verbose("Checking volume group \"%s\"", vg_name); + if (!consistent) { + log_error("Volume group \"%s\" inconsistent", vg_name); + return ECMD_FAILED; + } - if (!(vg = vg_read(cmd, vg_name))) { + if (!vg) { log_error("Volume group \"%s\" not found", vg_name); return ECMD_FAILED; } @@ -43,12 +38,12 @@ static int vgck_single(struct cmd_context *cmd, const char *vg_name) return ECMD_FAILED; } -/******* FIXME Must be caught and logged by vg_read - log_error("not all physical volumes of volume group \"%s\" online", - log_error("volume group \"%s\" has physical volumes with ", - "invalid version", -********/ - /* FIXME: free */ return 0; } + +int vgck(struct cmd_context *cmd, int argc, char **argv) +{ + return process_each_vg(cmd, argc, argv, LCK_VG_READ, 0, NULL, + &vgck_single); +} |