In fact inode_get_rsv_space() function is special in comparison
with inode_{add,sub,claim}_rsv_space() functions, because
it may return correct result even for fs without reserved space
support(correct val == 0). Add trivial check for that case.
The patch fix regression(BUG at fs/quota/dquot.c:1350) introduced
in following commit: fd8fbfc1709822bd94247c5b2ab15a5f5041e103
Signed-off-by: Dmitry Monakhov <dmonakhov@xxxxxxxxxx>
---
fs/quota/dquot.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c
index dea86ab..d9f06cf 100644
--- a/fs/quota/dquot.c
+++ b/fs/quota/dquot.c
@@ -1377,6 +1377,8 @@ static void inode_sub_rsv_space(struct inode *inode, qsize_t number)
static qsize_t inode_get_rsv_space(struct inode *inode)
{
qsize_t ret;
+ if (!inode->i_sb->dq_op->get_reserved_space)
+ return 0;
spin_lock(&inode->i_lock);
ret = *inode_reserved_space(inode);
spin_unlock(&inode->i_lock);