• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/fs/xfs/quota/

Lines Matching refs:ip

649 	xfs_inode_t	*ip,
659 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
718 error = xfs_qm_dqget(ip->i_mount, ip, id, type, XFS_QMOPT_DOWARN, &dqp);
803 xfs_inode_t *ip,
806 xfs_mount_t *mp = ip->i_mount;
812 !XFS_NOT_DQATTACHED(mp, ip) ||
813 ip->i_ino == mp->m_sb.sb_uquotino ||
814 ip->i_ino == mp->m_sb.sb_gquotino)
817 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
820 error = xfs_qm_dqattach_one(ip, ip->i_d.di_uid, XFS_DQ_USER,
822 NULL, &ip->i_udquot);
828 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
831 xfs_qm_dqattach_one(ip, ip->i_d.di_gid, XFS_DQ_GROUP,
833 ip->i_udquot, &ip->i_gdquot) :
834 xfs_qm_dqattach_one(ip, ip->i_d.di_projid, XFS_DQ_PROJ,
836 ip->i_udquot, &ip->i_gdquot);
851 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
852 ASSERT(ip->i_udquot);
853 ASSERT(ip->i_gdquot);
861 if (ip->i_udquot->q_gdquot == ip->i_gdquot)
866 xfs_qm_dqattach_grouphint(ip->i_udquot, ip->i_gdquot);
873 ASSERT(ip->i_udquot);
875 ASSERT(ip->i_gdquot);
877 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
884 struct xfs_inode *ip,
889 xfs_ilock(ip, XFS_ILOCK_EXCL);
890 error = xfs_qm_dqattach_locked(ip, flags);
891 xfs_iunlock(ip, XFS_ILOCK_EXCL);
903 xfs_inode_t *ip)
905 if (!(ip->i_udquot || ip->i_gdquot))
908 trace_xfs_dquot_dqdetach(ip);
910 ASSERT(ip->i_ino != ip->i_mount->m_sb.sb_uquotino);
911 ASSERT(ip->i_ino != ip->i_mount->m_sb.sb_gquotino);
912 if (ip->i_udquot) {
913 xfs_qm_dqrele(ip->i_udquot);
914 ip->i_udquot = NULL;
916 if (ip->i_gdquot) {
917 xfs_qm_dqrele(ip->i_gdquot);
918 ip->i_gdquot = NULL;
1203 xfs_inode_t *ip,
1211 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
1212 mp = ip->i_mount;
1217 ASSERT(ip->i_udquot == NULL);
1221 if ((error = xfs_qm_dqget(mp, ip, ip->i_d.di_uid, XFS_DQ_USER,
1235 ASSERT(ip->i_gdquot == NULL);
1239 xfs_qm_dqget(mp, ip,
1240 ip->i_d.di_gid, XFS_DQ_GROUP,
1243 xfs_qm_dqget(mp, ip,
1244 ip->i_d.di_projid, XFS_DQ_PROJ,
1283 xfs_inode_t **ip,
1302 &xfs_zerocr, 0, 1, ip, &committed))) {
1312 ASSERT(xfs_isilocked(*ip, XFS_ILOCK_EXCL));
1313 IHOLD(*ip);
1336 mp->m_sb.sb_uquotino = (*ip)->i_ino;
1338 mp->m_sb.sb_gquotino = (*ip)->i_ino;
1587 xfs_inode_t *ip,
1596 ASSERT(XFS_IS_REALTIME_INODE(ip));
1597 ifp = XFS_IFORK_PTR(ip, XFS_DATA_FORK);
1599 if ((error = xfs_iread_extents(NULL, ip, XFS_DATA_FORK)))
1624 xfs_inode_t *ip;
1646 if ((error = xfs_iget(mp, NULL, ino, 0, XFS_ILOCK_EXCL, &ip))) {
1657 if ((error = xfs_qm_dqget_noattach(ip, &udqp, &gdqp))) {
1658 xfs_iunlock(ip, XFS_ILOCK_EXCL);
1659 IRELE(ip);
1665 if (! XFS_IS_REALTIME_INODE(ip)) {
1666 nblks = (xfs_qcnt_t)ip->i_d.di_nblocks;
1671 if ((error = xfs_qm_get_rtblks(ip, &rtblks))) {
1672 xfs_iunlock(ip, XFS_ILOCK_EXCL);
1673 IRELE(ip);
1681 nblks = (xfs_qcnt_t)ip->i_d.di_nblocks - rtblks;
1683 ASSERT(ip->i_delayed_blks == 0);
1690 xfs_iunlock(ip, XFS_ILOCK_EXCL);
1718 IRELE(ip);
2226 struct xfs_inode *ip,
2234 struct xfs_mount *mp = ip->i_mount;
2243 xfs_ilock(ip, lockflags);
2245 if ((flags & XFS_QMOPT_INHERIT) && XFS_INHERIT_GID(ip))
2246 gid = ip->i_d.di_gid;
2252 if (XFS_NOT_DQATTACHED(mp, ip)) {
2253 error = xfs_qm_dqattach_locked(ip, XFS_QMOPT_DQALLOC);
2255 xfs_iunlock(ip, lockflags);
2262 if (ip->i_d.di_uid != uid) {
2272 xfs_iunlock(ip, lockflags);
2286 xfs_ilock(ip, lockflags);
2292 ASSERT(ip->i_udquot);
2293 uq = ip->i_udquot;
2300 if (ip->i_d.di_gid != gid) {
2301 xfs_iunlock(ip, lockflags);
2314 xfs_ilock(ip, lockflags);
2316 ASSERT(ip->i_gdquot);
2317 gq = ip->i_gdquot;
2323 if (ip->i_d.di_projid != prid) {
2324 xfs_iunlock(ip, lockflags);
2337 xfs_ilock(ip, lockflags);
2339 ASSERT(ip->i_gdquot);
2340 gq = ip->i_gdquot;
2347 trace_xfs_dquot_dqalloc(ip);
2349 xfs_iunlock(ip, lockflags);
2368 xfs_inode_t *ip,
2373 uint bfield = XFS_IS_REALTIME_INODE(ip) ?
2377 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
2378 ASSERT(XFS_IS_QUOTA_RUNNING(ip->i_mount));
2385 xfs_trans_mod_dquot(tp, prevdq, bfield, -(ip->i_d.di_nblocks));
2389 xfs_trans_mod_dquot(tp, newdq, bfield, ip->i_d.di_nblocks);
2411 xfs_inode_t *ip,
2416 xfs_mount_t *mp = ip->i_mount;
2422 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL|XFS_ILOCK_SHARED));
2425 delblks = ip->i_delayed_blks;
2427 blkflags = XFS_IS_REALTIME_INODE(ip) ?
2431 ip->i_d.di_uid != (uid_t)be32_to_cpu(udqp->q_core.d_id)) {
2439 ASSERT(ip->i_udquot);
2440 unresudq = ip->i_udquot;
2443 if (XFS_IS_OQUOTA_ON(ip->i_mount) && gdqp) {
2444 if (XFS_IS_PQUOTA_ON(ip->i_mount) &&
2445 ip->i_d.di_projid != be32_to_cpu(gdqp->q_core.d_id))
2449 (XFS_IS_GQUOTA_ON(ip->i_mount) &&
2450 ip->i_d.di_gid != be32_to_cpu(gdqp->q_core.d_id))) {
2453 ASSERT(ip->i_gdquot);
2454 unresgdq = ip->i_gdquot;
2459 if ((error = xfs_trans_reserve_quota_bydquots(tp, ip->i_mount,
2460 delblksudq, delblksgdq, ip->i_d.di_nblocks, 1,
2476 if ((error = xfs_trans_reserve_quota_bydquots(NULL, ip->i_mount,
2480 xfs_trans_reserve_quota_bydquots(NULL, ip->i_mount,
2499 struct xfs_inode *ip = i_tab[i];
2505 if (i == 0 || ip != i_tab[i-1]) {
2506 if (XFS_NOT_DQATTACHED(mp, ip)) {
2507 error = xfs_qm_dqattach(ip, 0);
2519 struct xfs_inode *ip,
2528 ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
2535 ASSERT(ip->i_udquot == NULL);
2536 ip->i_udquot = udqp;
2538 ASSERT(ip->i_d.di_uid == be32_to_cpu(udqp->q_core.d_id));
2545 ASSERT(ip->i_gdquot == NULL);
2546 ip->i_gdquot = gdqp;
2549 ip->i_d.di_gid : ip->i_d.di_projid) ==