[PATCH v3 1/5] pstore/blk: Improve failure reporting

From: Kees Cook
Date: Wed Jun 16 2021 - 12:40:59 EST


There was no feedback on bad registration attempts. Add details on the
failure cause.

Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
---
fs/pstore/blk.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/fs/pstore/blk.c b/fs/pstore/blk.c
index 4bb8a344957a..eca83820fb5d 100644
--- a/fs/pstore/blk.c
+++ b/fs/pstore/blk.c
@@ -114,8 +114,22 @@ static int __register_pstore_device(struct pstore_device_info *dev)

lockdep_assert_held(&pstore_blk_lock);

- if (!dev || !dev->total_size || !dev->read || !dev->write)
+ if (!dev) {
+ pr_err("NULL device info\n");
return -EINVAL;
+ }
+ if (!dev->total_size) {
+ pr_err("zero sized device\n");
+ return -EINVAL;
+ }
+ if (!dev->read) {
+ pr_err("no read handler for device\n");
+ return -EINVAL;
+ }
+ if (!dev->write) {
+ pr_err("no write handler for device\n");
+ return -EINVAL;
+ }

/* someone already registered before */
if (pstore_zone_info)
--
2.25.1