diff --git a/fs/pstore/ram.c b/fs/pstore/ram.c
index d06e2f3e3bec9ec0dcc97f1a0b03f95b88516de1..ec0e1da0596a5375299b85fa567f71a01a0e6918 100644
--- a/fs/pstore/ram.c
+++ b/fs/pstore/ram.c
@@ -425,6 +425,9 @@ static int notrace ramoops_pstore_write(struct pstore_record *record)
 
 	/* Build header and append record contents. */
 	hlen = ramoops_write_kmsg_hdr(prz, record);
+	if (!hlen)
+		return -ENOMEM;
+
 	size = record->size;
 	if (size + hlen > prz->buffer_size)
 		size = prz->buffer_size - hlen;