ubifs: return err value than 0
Subsystems (2)
PATCH 1/1 ubifs: return err value than 0
Currently, ubifs_readpage only returns 0 even if ubifs_bulk_read() fails. Like the other file systems, the error value should be propagated further instead of 0.
Another check that is missing is ENOMEM for kmalloc.
Signed-off-by Sanidhya Kashyap <[email protected]>
--- fs/ubifs/file.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-)
fs/ubifs/file.c +9 -4
@@ -863,8 +863,10 @@ static int ubifs_bulk_read(struct page *page) bu = &c->bu; else { bu =kmalloc (sizeof (struct bu_info ),GFP_NOFS | __GFP_NOWARN); -if (!bu) +if (!bu) { + err = -ENOMEM ; goto out_unlock; + } bu->buf =NULL ; allocated =1 ;
@@ -887,11 +889,14 @@ out_unlock:static int ubifs_readpage (struct file *file,struct page *page) { -if (ubifs_bulk_read (page)) -return 0 ; +int err =0 ; + + err =ubifs_bulk_read (page); +if (err) +return err;do_readpage (page);unlock_page (page); -return 0 ; +return err; }static int do_writepage (struct page *page,int len)
Signature · 1 line
2.1.0