diff --git a/fs/pstore/ram_core.c b/fs/pstore/ram_core.c index b7dd93741ff2..d476f493e478 100644 --- a/fs/pstore/ram_core.c +++ b/fs/pstore/ram_core.c @@ -500,6 +500,11 @@ static int persistent_ram_post_init(struct persistent_ram_zone *prz, u32 sig, sig ^= PERSISTENT_RAM_SIG; if (prz->buffer->sig == sig) { + if (buffer_size(prz) == 0) { + pr_debug("found existing empty buffer\n"); + return 0; + } + if (buffer_size(prz) > prz->buffer_size || buffer_start(prz) > buffer_size(prz)) pr_info("found existing invalid buffer, size %zu, start %zu\n",