diff options
author | Jonathan E Brassow <jbrassow@redhat.com> | 2007-05-09 05:32:58 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-09 15:30:47 -0400 |
commit | 315dcc226f066c1d3cef79283dcde807fe0e32d1 (patch) | |
tree | f3abf75905aec13819292564ef4c2711c8bf4b8d /drivers/md/dm-log.c | |
parent | 01d03a660e73fb524957c09825a3eb7c2ae7c205 (diff) |
dm log: report fault status
This patch reports the status of the log device so that userspace can detect
the error and take appropriate action.
Signed-off-by: Jonathan E Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/md/dm-log.c')
-rw-r--r-- | drivers/md/dm-log.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/md/dm-log.c b/drivers/md/dm-log.c index a503d12c2ff8..8d301409d814 100644 --- a/drivers/md/dm-log.c +++ b/drivers/md/dm-log.c | |||
@@ -615,6 +615,7 @@ static int core_status(struct dirty_log *log, status_type_t status, | |||
615 | 615 | ||
616 | switch(status) { | 616 | switch(status) { |
617 | case STATUSTYPE_INFO: | 617 | case STATUSTYPE_INFO: |
618 | DMEMIT("1 %s", log->type->name); | ||
618 | break; | 619 | break; |
619 | 620 | ||
620 | case STATUSTYPE_TABLE: | 621 | case STATUSTYPE_TABLE: |
@@ -630,17 +631,17 @@ static int disk_status(struct dirty_log *log, status_type_t status, | |||
630 | char *result, unsigned int maxlen) | 631 | char *result, unsigned int maxlen) |
631 | { | 632 | { |
632 | int sz = 0; | 633 | int sz = 0; |
633 | char buffer[16]; | ||
634 | struct log_c *lc = log->context; | 634 | struct log_c *lc = log->context; |
635 | 635 | ||
636 | switch(status) { | 636 | switch(status) { |
637 | case STATUSTYPE_INFO: | 637 | case STATUSTYPE_INFO: |
638 | DMEMIT("3 %s %s %c", log->type->name, lc->log_dev->name, | ||
639 | lc->log_dev_failed ? 'D' : 'A'); | ||
638 | break; | 640 | break; |
639 | 641 | ||
640 | case STATUSTYPE_TABLE: | 642 | case STATUSTYPE_TABLE: |
641 | format_dev_t(buffer, lc->log_dev->bdev->bd_dev); | ||
642 | DMEMIT("%s %u %s %u ", log->type->name, | 643 | DMEMIT("%s %u %s %u ", log->type->name, |
643 | lc->sync == DEFAULTSYNC ? 2 : 3, buffer, | 644 | lc->sync == DEFAULTSYNC ? 2 : 3, lc->log_dev->name, |
644 | lc->region_size); | 645 | lc->region_size); |
645 | DMEMIT_SYNC; | 646 | DMEMIT_SYNC; |
646 | } | 647 | } |