Thread (4 messages) 4 messages, 1 author, 2013-09-24
STALE4660d

[PATCH 1/2] DDF: add_to_super_ddf: leave invalid secondary_lba untouched

From: <hidden>
Date: 2013-09-24 17:18:51
Subsystem: the rest · Maintainer: Linus Torvalds

If the current DDF structure doesn't have a secondary header,
don't set it.

Signed-off-by: Martin Wilck <redacted>
---
 super-ddf.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/super-ddf.c b/super-ddf.c
index 002b271..3e13ff0 100644
--- a/super-ddf.c
+++ b/super-ddf.c
@@ -2822,8 +2822,9 @@ static int add_to_super_ddf(struct supertype *st,
 	} while (0)
 	__calc_lba(dd, ddf->dlist, workspace_lba, 32);
 	__calc_lba(dd, ddf->dlist, primary_lba, 16);
-	if (ddf->dlist == NULL ||
-	    be64_to_cpu(ddf->dlist->secondary_lba) != ~(__u64)0)
+	if (be64_to_cpu(ddf->active->secondary_lba) == ~(__u64)0)
+		dd->secondary_lba = ddf->active->secondary_lba;
+	else
 		__calc_lba(dd, ddf->dlist, secondary_lba, 32);
 	pde->config_size = dd->workspace_lba;
 
-- 
1.7.3.4
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help