]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
quota: Inline inode_{incr,decr}_space() into callsites
authorJan Kara <jack@suse.cz>
Mon, 7 Aug 2017 15:17:10 +0000 (17:17 +0200)
committerJan Kara <jack@suse.cz>
Thu, 17 Aug 2017 20:01:14 +0000 (22:01 +0200)
inode_incr_space() and inode_decr_space() have only two callsites.
Inline them there as that will make locking changes simpler.

Signed-off-by: Jan Kara <jack@suse.cz>
fs/quota/dquot.c

index d881d5a073b91aa9843503daec2f273fc8d895a9..6c0cc7870e8fc6b36787873a5f0b44c068b4b4f8 100644 (file)
@@ -1595,29 +1595,6 @@ static qsize_t inode_get_rsv_space(struct inode *inode)
        return ret;
 }
 
-static void inode_incr_space(struct inode *inode, qsize_t number,
-                               int reserve)
-{
-       if (reserve) {
-               spin_lock(&inode->i_lock);
-               *inode_reserved_space(inode) += number;
-               spin_unlock(&inode->i_lock);
-       } else {
-               inode_add_bytes(inode, number);
-       }
-}
-
-static void inode_decr_space(struct inode *inode, qsize_t number, int reserve)
-{
-       if (reserve) {
-               spin_lock(&inode->i_lock);
-               *inode_reserved_space(inode) -= number;
-               spin_unlock(&inode->i_lock);
-       } else {
-               inode_sub_bytes(inode, number);
-       }
-}
-
 /*
  * This functions updates i_blocks+i_bytes fields and quota information
  * (together with appropriate checks).
@@ -1639,7 +1616,13 @@ int __dquot_alloc_space(struct inode *inode, qsize_t number, int flags)
        struct dquot **dquots;
 
        if (!dquot_active(inode)) {
-               inode_incr_space(inode, number, reserve);
+               if (reserve) {
+                       spin_lock(&inode->i_lock);
+                       *inode_reserved_space(inode) += number;
+                       spin_unlock(&inode->i_lock);
+               } else {
+                       inode_add_bytes(inode, number);
+               }
                goto out;
        }
 
@@ -1667,7 +1650,13 @@ int __dquot_alloc_space(struct inode *inode, qsize_t number, int flags)
                else
                        dquot_incr_space(dquots[cnt], number);
        }
-       inode_incr_space(inode, number, reserve);
+       if (reserve) {
+               spin_lock(&inode->i_lock);
+               *inode_reserved_space(inode) += number;
+               spin_unlock(&inode->i_lock);
+       } else {
+               inode_add_bytes(inode, number);
+       }
        spin_unlock(&dq_data_lock);
 
        if (reserve)
@@ -1805,7 +1794,13 @@ void __dquot_free_space(struct inode *inode, qsize_t number, int flags)
        int reserve = flags & DQUOT_SPACE_RESERVE, index;
 
        if (!dquot_active(inode)) {
-               inode_decr_space(inode, number, reserve);
+               if (reserve) {
+                       spin_lock(&inode->i_lock);
+                       *inode_reserved_space(inode) -= number;
+                       spin_unlock(&inode->i_lock);
+               } else {
+                       inode_sub_bytes(inode, number);
+               }
                return;
        }
 
@@ -1826,7 +1821,13 @@ void __dquot_free_space(struct inode *inode, qsize_t number, int flags)
                else
                        dquot_decr_space(dquots[cnt], number);
        }
-       inode_decr_space(inode, number, reserve);
+       if (reserve) {
+               spin_lock(&inode->i_lock);
+               *inode_reserved_space(inode) -= number;
+               spin_unlock(&inode->i_lock);
+       } else {
+               inode_sub_bytes(inode, number);
+       }
        spin_unlock(&dq_data_lock);
 
        if (reserve)