Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

quota: Inline functions into their callsites

inode_add_rsv_space() and inode_sub_rsv_space() had only one callsite.
Inline them there directly. inode_claim_rsv_space() and
inode_reclaim_rsv_space() had two callsites so inline them there as
well. This will simplify further locking changes.

Signed-off-by: Jan Kara <jack@suse.cz>

Jan Kara 0ed60de3 91389240

+28 -49
+28 -44
fs/quota/dquot.c
··· 1583 1583 return inode->i_sb->dq_op->get_reserved_space(inode); 1584 1584 } 1585 1585 1586 - void inode_add_rsv_space(struct inode *inode, qsize_t number) 1587 - { 1588 - spin_lock(&inode->i_lock); 1589 - *inode_reserved_space(inode) += number; 1590 - spin_unlock(&inode->i_lock); 1591 - } 1592 - EXPORT_SYMBOL(inode_add_rsv_space); 1593 - 1594 - void inode_claim_rsv_space(struct inode *inode, qsize_t number) 1595 - { 1596 - spin_lock(&inode->i_lock); 1597 - *inode_reserved_space(inode) -= number; 1598 - __inode_add_bytes(inode, number); 1599 - spin_unlock(&inode->i_lock); 1600 - } 1601 - EXPORT_SYMBOL(inode_claim_rsv_space); 1602 - 1603 - void inode_reclaim_rsv_space(struct inode *inode, qsize_t number) 1604 - { 1605 - spin_lock(&inode->i_lock); 1606 - *inode_reserved_space(inode) += number; 1607 - __inode_sub_bytes(inode, number); 1608 - spin_unlock(&inode->i_lock); 1609 - } 1610 - EXPORT_SYMBOL(inode_reclaim_rsv_space); 1611 - 1612 - void inode_sub_rsv_space(struct inode *inode, qsize_t number) 1613 - { 1614 - spin_lock(&inode->i_lock); 1615 - *inode_reserved_space(inode) -= number; 1616 - spin_unlock(&inode->i_lock); 1617 - } 1618 - EXPORT_SYMBOL(inode_sub_rsv_space); 1619 - 1620 1586 static qsize_t inode_get_rsv_space(struct inode *inode) 1621 1587 { 1622 1588 qsize_t ret; ··· 1598 1632 static void inode_incr_space(struct inode *inode, qsize_t number, 1599 1633 int reserve) 1600 1634 { 1601 - if (reserve) 1602 - inode_add_rsv_space(inode, number); 1603 - else 1635 + if (reserve) { 1636 + spin_lock(&inode->i_lock); 1637 + *inode_reserved_space(inode) += number; 1638 + spin_unlock(&inode->i_lock); 1639 + } else { 1604 1640 inode_add_bytes(inode, number); 1641 + } 1605 1642 } 1606 1643 1607 1644 static void inode_decr_space(struct inode *inode, qsize_t number, int reserve) 1608 1645 { 1609 - if (reserve) 1610 - inode_sub_rsv_space(inode, number); 1611 - else 1646 + if (reserve) { 1647 + spin_lock(&inode->i_lock); 1648 + *inode_reserved_space(inode) -= number; 1649 + spin_unlock(&inode->i_lock); 1650 + } else { 1612 1651 inode_sub_bytes(inode, number); 1652 + } 1613 1653 } 1614 1654 1615 1655 /* ··· 1731 1759 int cnt, index; 1732 1760 1733 1761 if (!dquot_active(inode)) { 1734 - inode_claim_rsv_space(inode, number); 1762 + spin_lock(&inode->i_lock); 1763 + *inode_reserved_space(inode) -= number; 1764 + __inode_add_bytes(inode, number); 1765 + spin_unlock(&inode->i_lock); 1735 1766 return 0; 1736 1767 } 1737 1768 ··· 1747 1772 dquot_claim_reserved_space(dquots[cnt], number); 1748 1773 } 1749 1774 /* Update inode bytes */ 1750 - inode_claim_rsv_space(inode, number); 1775 + spin_lock(&inode->i_lock); 1776 + *inode_reserved_space(inode) -= number; 1777 + __inode_add_bytes(inode, number); 1778 + spin_unlock(&inode->i_lock); 1751 1779 spin_unlock(&dq_data_lock); 1752 1780 mark_all_dquot_dirty(dquots); 1753 1781 srcu_read_unlock(&dquot_srcu, index); ··· 1767 1789 int cnt, index; 1768 1790 1769 1791 if (!dquot_active(inode)) { 1770 - inode_reclaim_rsv_space(inode, number); 1792 + spin_lock(&inode->i_lock); 1793 + *inode_reserved_space(inode) += number; 1794 + __inode_sub_bytes(inode, number); 1795 + spin_unlock(&inode->i_lock); 1771 1796 return; 1772 1797 } 1773 1798 ··· 1783 1802 dquot_reclaim_reserved_space(dquots[cnt], number); 1784 1803 } 1785 1804 /* Update inode bytes */ 1786 - inode_reclaim_rsv_space(inode, number); 1805 + spin_lock(&inode->i_lock); 1806 + *inode_reserved_space(inode) += number; 1807 + __inode_sub_bytes(inode, number); 1808 + spin_unlock(&inode->i_lock); 1787 1809 spin_unlock(&dq_data_lock); 1788 1810 mark_all_dquot_dirty(dquots); 1789 1811 srcu_read_unlock(&dquot_srcu, index);
-5
include/linux/quotaops.h
··· 38 38 /* 39 39 * declaration of quota_function calls in kernel. 40 40 */ 41 - void inode_add_rsv_space(struct inode *inode, qsize_t number); 42 - void inode_claim_rsv_space(struct inode *inode, qsize_t number); 43 - void inode_sub_rsv_space(struct inode *inode, qsize_t number); 44 - void inode_reclaim_rsv_space(struct inode *inode, qsize_t number); 45 - 46 41 int dquot_initialize(struct inode *inode); 47 42 bool dquot_initialize_needed(struct inode *inode); 48 43 void dquot_drop(struct inode *inode);