Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
For bugs related to Red Hat Enterprise Linux 5 product line. The current stable release is 5.10. For Red Hat Enterprise Linux 6 and above, please visit Red Hat JIRA https://issues.redhat.com/secure/CreateIssue!default.jspa?pid=12332745 to report new issues.

Bug 667360

Summary: rpc.rquotad can't handle quotas >4TB
Product: Red Hat Enterprise Linux 5 Reporter: Sachin Prabhu <sprabhu>
Component: quotaAssignee: Petr Pisar <ppisar>
Status: CLOSED ERRATA QA Contact: Branislav Blaškovič <bblaskov>
Severity: high Docs Contact:
Priority: high    
Version: 5.5CC: azelinka, bblaskov, bfields, dhowells, jlayton, pasteur, plambri, rwheeler, steved, tom.willems
Target Milestone: rcKeywords: Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://sourceforge.net/tracker/?func=detail&aid=3152423&group_id=18136&atid=118136
Whiteboard:
Fixed In Version: quota-3.13-6.el5 Doc Type: Bug Fix
Doc Text:
Cause Querying quota usage or limits for network-mounted file system if quota values are 2^32 or bigger. Consequence Values are not properly transported over RPC and interpreted by client. Mangled values (wrapped to 32 bits) are reported by client then. Fix Proper interpretation of RPC values by client has been back-ported from upstream and proper reporting big values by rpc.rquotad has been implemented. Result Block quota usage and limits values bigger than 2^32-1 are properly reported by client for network file systems.
Story Points: ---
Clone Of:
: 667755 (view as bug list) Environment:
Last Closed: 2013-01-08 04:55:31 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 831520    
Bug Blocks: 743405, 798457, 807971    
Attachments:
Description Flags
Use factor signalled in RPC to compute real values
none
Make RPC block factor dynamic none

Description Sachin Prabhu 2011-01-05 12:38:32 UTC
A user reports a problem with the quotas reported over NFS for a user who has been allocated 5Tb of quota. The quota for that user is reported as being only 650G instead of the actual 5Tb.

On the client client:

Filesystem blocks quota limit grace files quota limit grace
nfs:/export/work 696848372* 200000000 0 179days 73350427 0 0

On the server:

Disk quotas for user user1 (uid 123):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdc 4991815668* 200000000 0 179days 73350427 0 0 

This problem is similar to the problem reported on the centos bug tracker
http://bugs.centos.org/bug_view_advanced_page.php?bug_id=4071
which also contains a patch for this issue.

Comment 1 Petr Pisar 2011-01-06 13:26:18 UTC
The patch does not fix it. It just divides limits by 2^20 on transmission from rpc.rquotad making mangled values on client site. It would break compatibility between patched and unpatched servers and clients.

In addition, server needs to use VFSV1 quota file format to allow 64b limits on the ext file system. This will be supported by quota and kernel since RHEL-6.1 probably. Supported VFSV0 quota format can handle 32b values only. (See bug #609795 for more details.)

I agree there is a bug in RPC (as reported problem presents even in upstream development version), however I cannot see how user could set >2^32 limits on server. (I assume XFS is not supported by RHEL-5.)

If I understand correctly, administrator set 200000000 KB soft limit, user exceeded it and quota on client shows bad count of used blocks now. However the limit is forced by server correctly. So the only problem is used blocks are not reported correctly on the client.

Comment 3 RHEL Program Management 2011-01-11 20:11:41 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated in the
current release, Red Hat is unfortunately unable to address this
request at this time. Red Hat invites you to ask your support
representative to propose this request, if appropriate and relevant,
in the next release of Red Hat Enterprise Linux.

Comment 4 RHEL Program Management 2011-01-11 23:24:59 UTC
This request was erroneously denied for the current release of
Red Hat Enterprise Linux.  The error has been fixed and this
request has been re-proposed for the current release.

Comment 9 RHEL Program Management 2011-09-23 00:09:28 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated in the
current release, Red Hat is unfortunately unable to address this
request at this time. Red Hat invites you to ask your support
representative to propose this request, if appropriate and relevant,
in the next release of Red Hat Enterprise Linux.

Comment 10 RHEL Program Management 2012-04-02 10:29:00 UTC
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux release.  Product Management has
requested further review of this request by Red Hat Engineering, for
potential inclusion in a Red Hat Enterprise Linux release for currently
deployed products.  This request is not yet committed for inclusion in
a release.

Comment 14 Petr Pisar 2012-05-10 11:42:00 UTC
Created attachment 583519 [details]
Use factor signalled in RPC to compute real values

RHEL-6 patch applies cleanly.

Comment 15 Petr Pisar 2012-05-10 11:42:57 UTC
Created attachment 583520 [details]
Make RPC block factor dynamic

RHEL-6 patch applies cleanly.

Comment 17 Petr Pisar 2012-05-10 12:06:03 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause
    Querying quota usage or limits for network-mounted file
    system if quota values are 2^32 or bigger.
Consequence
    Values are not properly transported over RPC and
    interpreted by client. Mangled values (wrapped to 32
    bits) are reported by client then.
Fix
    Proper interpretation of RPC values by client has been
    back-ported from upstream and proper reporting big
    values by rpc.rquotad has been implemented.
Result
    Block quota usage and limits values bigger than 2^32-1
    are properly reported by client for network file
    systems.

Comment 20 Petr Pisar 2012-10-10 06:39:08 UTC
*** Bug 864500 has been marked as a duplicate of this bug. ***

Comment 22 errata-xmlrpc 2013-01-08 04:55:31 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2013-0120.html