summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/barebox-state/backend_storage.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/barebox-state/backend_storage.c b/src/barebox-state/backend_storage.c
index c619b3e..3c2fdd9 100644
--- a/src/barebox-state/backend_storage.c
+++ b/src/barebox-state/backend_storage.c
@@ -269,6 +269,7 @@ static int state_storage_mtd_buckets_init(struct state_backend_storage *storage,
ssize_t end = dev_offset + max_size;
int nr_copies = 0;
off_t offset;
+ ssize_t writesize;
if (!end || end > meminfo->size)
end = meminfo->size;
@@ -279,15 +280,16 @@ static int state_storage_mtd_buckets_init(struct state_backend_storage *storage,
return -EINVAL;
}
+ if (circular)
+ writesize = meminfo->writesize;
+ else
+ writesize = meminfo->erasesize;
+
for (offset = dev_offset; offset < end; offset += meminfo->erasesize) {
int ret;
- ssize_t writesize = meminfo->writesize;
unsigned int eraseblock = offset / meminfo->erasesize;
bool lazy_init = true;
- if (!circular)
- writesize = meminfo->erasesize;
-
ret = state_backend_bucket_circular_create(storage->dev, path,
&bucket,
eraseblock,