summaryrefslogtreecommitdiffstats
path: root/src/barebox-state/backend_storage.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2017-03-22 16:16:26 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2017-03-31 13:57:46 +0200
commit5079c67e049039f3b6f7e94b4b020f8032b5108e (patch)
treed340571dd8f6edfe2df87cbf0c7a8e31898c6891 /src/barebox-state/backend_storage.c
parenteee08770763c327385650c8b7b343dcc590875d0 (diff)
downloaddt-utils-5079c67e049039f3b6f7e94b4b020f8032b5108e.tar.gz
dt-utils-5079c67e049039f3b6f7e94b4b020f8032b5108e.tar.xz
state: drop lazy_init
lazy_init is an optimization that makes it possible to read only up to the first valid bucket when starting. However, when restoring consistency, immediately afterwards we have we have to initialize all buckets anyway, so being lazy doesn't give us any gain. Remove it to simplify the code. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'src/barebox-state/backend_storage.c')
-rw-r--r--src/barebox-state/backend_storage.c34
1 files changed, 1 insertions, 33 deletions
diff --git a/src/barebox-state/backend_storage.c b/src/barebox-state/backend_storage.c
index 3c2fdd9..b793fb6 100644
--- a/src/barebox-state/backend_storage.c
+++ b/src/barebox-state/backend_storage.c
@@ -28,23 +28,6 @@
const unsigned int min_copies_written = 1;
-static int bucket_lazy_init(struct state_backend_storage_bucket *bucket)
-{
- int ret;
-
- if (bucket->initialized)
- return 0;
-
- if (bucket->init) {
- ret = bucket->init(bucket);
- if (ret)
- return ret;
- }
- bucket->initialized = true;
-
- return 0;
-}
-
/**
* state_storage_write - Writes the given data to the storage
* @param storage Storage object
@@ -70,13 +53,6 @@ int state_storage_write(struct state_backend_storage *storage,
return 0;
list_for_each_entry(bucket, &storage->buckets, bucket_list) {
- ret = bucket_lazy_init(bucket);
- if (ret) {
- dev_warn(storage->dev, "Failed to init bucket/write state backend bucket, %d\n",
- ret);
- continue;
- }
-
ret = bucket->write(bucket, buf, len);
if (ret < 0) {
dev_warn(storage->dev, "Failed to write state backend bucket, %d\n",
@@ -137,12 +113,6 @@ int state_storage_read(struct state_backend_storage *storage,
list_for_each_entry(bucket, &storage->buckets, bucket_list) {
*len = 0;
- ret = bucket_lazy_init(bucket);
- if (ret) {
- dev_warn(storage->dev, "Failed to init bucket/read state backend bucket, %d\n",
- ret);
- continue;
- }
ret = bucket->read(bucket, buf, len);
if (ret) {
@@ -288,14 +258,12 @@ static int state_storage_mtd_buckets_init(struct state_backend_storage *storage,
for (offset = dev_offset; offset < end; offset += meminfo->erasesize) {
int ret;
unsigned int eraseblock = offset / meminfo->erasesize;
- bool lazy_init = true;
ret = state_backend_bucket_circular_create(storage->dev, path,
&bucket,
eraseblock,
writesize,
- meminfo,
- lazy_init);
+ meminfo);
if (ret) {
dev_warn(storage->dev, "Failed to create bucket at '%s' eraseblock %u\n",
path, eraseblock);