49 lines
1.3 KiB
Diff
49 lines
1.3 KiB
Diff
From 8d443fe2c58e22166426438e6f6d5757934f7b31 Mon Sep 17 00:00:00 2001
|
|
From: Fabio M. Di Nitto <fdinitto@redhat.com>
|
|
Date: Tue, 13 Oct 2009 08:23:42 +0200
|
|
Subject: [PATCH 04/12] RH: fix kpartx
|
|
|
|
Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
|
|
---
|
|
:100644 100644 b61a81f... 103ed0a... M kpartx/kpartx.c
|
|
kpartx/kpartx.c | 6 ++++--
|
|
1 files changed, 4 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/kpartx/kpartx.c b/kpartx/kpartx.c
|
|
index b61a81f..103ed0a 100644
|
|
--- a/kpartx/kpartx.c
|
|
+++ b/kpartx/kpartx.c
|
|
@@ -488,6 +488,7 @@ main(int argc, char **argv){
|
|
d = c;
|
|
while (c) {
|
|
for (j = 0; j < n; j++) {
|
|
+ uint64_t start;
|
|
int k = slices[j].container - 1;
|
|
|
|
if (slices[j].size == 0)
|
|
@@ -498,7 +499,7 @@ main(int argc, char **argv){
|
|
continue;
|
|
|
|
/* Skip all simple slices */
|
|
- if (k < 0)
|
|
+ if (slices[j].container == 0)
|
|
continue;
|
|
|
|
/* Check container slice */
|
|
@@ -513,10 +514,11 @@ main(int argc, char **argv){
|
|
}
|
|
strip_slash(partname);
|
|
|
|
+ start = slices[j].start - slices[k].start;
|
|
if (safe_sprintf(params, "%d:%d %" PRIu64,
|
|
slices[k].major,
|
|
slices[k].minor,
|
|
- slices[j].start)) {
|
|
+ start)) {
|
|
fprintf(stderr, "params too small\n");
|
|
exit(1);
|
|
}
|
|
--
|
|
1.6.5.1
|
|
|