diff options
| -rw-r--r-- | fs/xfs/xfs_qm_syscalls.c | 59 |
1 files changed, 20 insertions, 39 deletions
diff --git a/fs/xfs/xfs_qm_syscalls.c b/fs/xfs/xfs_qm_syscalls.c index b7a8f5665d7b..42a15ddedb07 100644 --- a/fs/xfs/xfs_qm_syscalls.c +++ b/fs/xfs/xfs_qm_syscalls.c | |||
| @@ -415,20 +415,12 @@ xfs_qm_scall_getqstat( | |||
| 415 | memset(out, 0, sizeof(fs_quota_stat_t)); | 415 | memset(out, 0, sizeof(fs_quota_stat_t)); |
| 416 | 416 | ||
| 417 | out->qs_version = FS_QSTAT_VERSION; | 417 | out->qs_version = FS_QSTAT_VERSION; |
| 418 | if (!xfs_sb_version_hasquota(&mp->m_sb)) { | ||
| 419 | out->qs_uquota.qfs_ino = NULLFSINO; | ||
| 420 | out->qs_gquota.qfs_ino = NULLFSINO; | ||
| 421 | return 0; | ||
| 422 | } | ||
| 423 | |||
| 424 | out->qs_flags = (__uint16_t) xfs_qm_export_flags(mp->m_qflags & | 418 | out->qs_flags = (__uint16_t) xfs_qm_export_flags(mp->m_qflags & |
| 425 | (XFS_ALL_QUOTA_ACCT| | 419 | (XFS_ALL_QUOTA_ACCT| |
| 426 | XFS_ALL_QUOTA_ENFD)); | 420 | XFS_ALL_QUOTA_ENFD)); |
| 427 | if (q) { | 421 | uip = q->qi_uquotaip; |
| 428 | uip = q->qi_uquotaip; | 422 | gip = q->qi_gquotaip; |
| 429 | gip = q->qi_gquotaip; | 423 | pip = q->qi_pquotaip; |
| 430 | pip = q->qi_pquotaip; | ||
| 431 | } | ||
| 432 | if (!uip && mp->m_sb.sb_uquotino != NULLFSINO) { | 424 | if (!uip && mp->m_sb.sb_uquotino != NULLFSINO) { |
| 433 | if (xfs_iget(mp, NULL, mp->m_sb.sb_uquotino, | 425 | if (xfs_iget(mp, NULL, mp->m_sb.sb_uquotino, |
| 434 | 0, 0, &uip) == 0) | 426 | 0, 0, &uip) == 0) |
| @@ -474,14 +466,13 @@ xfs_qm_scall_getqstat( | |||
| 474 | if (temppqip) | 466 | if (temppqip) |
| 475 | IRELE(pip); | 467 | IRELE(pip); |
| 476 | } | 468 | } |
| 477 | if (q) { | 469 | out->qs_incoredqs = q->qi_dquots; |
| 478 | out->qs_incoredqs = q->qi_dquots; | 470 | out->qs_btimelimit = q->qi_btimelimit; |
| 479 | out->qs_btimelimit = q->qi_btimelimit; | 471 | out->qs_itimelimit = q->qi_itimelimit; |
| 480 | out->qs_itimelimit = q->qi_itimelimit; | 472 | out->qs_rtbtimelimit = q->qi_rtbtimelimit; |
| 481 | out->qs_rtbtimelimit = q->qi_rtbtimelimit; | 473 | out->qs_bwarnlimit = q->qi_bwarnlimit; |
| 482 | out->qs_bwarnlimit = q->qi_bwarnlimit; | 474 | out->qs_iwarnlimit = q->qi_iwarnlimit; |
| 483 | out->qs_iwarnlimit = q->qi_iwarnlimit; | 475 | |
| 484 | } | ||
| 485 | return 0; | 476 | return 0; |
| 486 | } | 477 | } |
| 487 | 478 | ||
| @@ -502,13 +493,6 @@ xfs_qm_scall_getqstatv( | |||
| 502 | bool tempgqip = false; | 493 | bool tempgqip = false; |
| 503 | bool temppqip = false; | 494 | bool temppqip = false; |
| 504 | 495 | ||
| 505 | if (!xfs_sb_version_hasquota(&mp->m_sb)) { | ||
| 506 | out->qs_uquota.qfs_ino = NULLFSINO; | ||
| 507 | out->qs_gquota.qfs_ino = NULLFSINO; | ||
| 508 | out->qs_pquota.qfs_ino = NULLFSINO; | ||
| 509 | return 0; | ||
| 510 | } | ||
| 511 | |||
| 512 | out->qs_flags = (__uint16_t) xfs_qm_export_flags(mp->m_qflags & | 496 | out->qs_flags = (__uint16_t) xfs_qm_export_flags(mp->m_qflags & |
| 513 | (XFS_ALL_QUOTA_ACCT| | 497 | (XFS_ALL_QUOTA_ACCT| |
| 514 | XFS_ALL_QUOTA_ENFD)); | 498 | XFS_ALL_QUOTA_ENFD)); |
| @@ -516,11 +500,9 @@ xfs_qm_scall_getqstatv( | |||
| 516 | out->qs_gquota.qfs_ino = mp->m_sb.sb_gquotino; | 500 | out->qs_gquota.qfs_ino = mp->m_sb.sb_gquotino; |
| 517 | out->qs_pquota.qfs_ino = mp->m_sb.sb_pquotino; | 501 | out->qs_pquota.qfs_ino = mp->m_sb.sb_pquotino; |
| 518 | 502 | ||
| 519 | if (q) { | 503 | uip = q->qi_uquotaip; |
| 520 | uip = q->qi_uquotaip; | 504 | gip = q->qi_gquotaip; |
| 521 | gip = q->qi_gquotaip; | 505 | pip = q->qi_pquotaip; |
| 522 | pip = q->qi_pquotaip; | ||
| 523 | } | ||
| 524 | if (!uip && mp->m_sb.sb_uquotino != NULLFSINO) { | 506 | if (!uip && mp->m_sb.sb_uquotino != NULLFSINO) { |
| 525 | if (xfs_iget(mp, NULL, mp->m_sb.sb_uquotino, | 507 | if (xfs_iget(mp, NULL, mp->m_sb.sb_uquotino, |
| 526 | 0, 0, &uip) == 0) | 508 | 0, 0, &uip) == 0) |
| @@ -555,14 +537,13 @@ xfs_qm_scall_getqstatv( | |||
| 555 | if (temppqip) | 537 | if (temppqip) |
| 556 | IRELE(pip); | 538 | IRELE(pip); |
| 557 | } | 539 | } |
| 558 | if (q) { | 540 | out->qs_incoredqs = q->qi_dquots; |
| 559 | out->qs_incoredqs = q->qi_dquots; | 541 | out->qs_btimelimit = q->qi_btimelimit; |
| 560 | out->qs_btimelimit = q->qi_btimelimit; | 542 | out->qs_itimelimit = q->qi_itimelimit; |
| 561 | out->qs_itimelimit = q->qi_itimelimit; | 543 | out->qs_rtbtimelimit = q->qi_rtbtimelimit; |
| 562 | out->qs_rtbtimelimit = q->qi_rtbtimelimit; | 544 | out->qs_bwarnlimit = q->qi_bwarnlimit; |
| 563 | out->qs_bwarnlimit = q->qi_bwarnlimit; | 545 | out->qs_iwarnlimit = q->qi_iwarnlimit; |
| 564 | out->qs_iwarnlimit = q->qi_iwarnlimit; | 546 | |
| 565 | } | ||
| 566 | return 0; | 547 | return 0; |
| 567 | } | 548 | } |
| 568 | 549 | ||
