Bug 97208
Summary: | quotactl() doesn't work | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Michael Redinger <michael.redinger> |
Component: | glibc-kernheaders | Assignee: | David Woodhouse <dwmw2> |
Status: | CLOSED NOTABUG | QA Contact: | Brian Brock <bbrock> |
Severity: | high | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | mitr |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2005-07-14 11:41:20 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: |
Description
Michael Redinger
2003-06-11 16:04:44 UTC
Well, right after filing this bug a co-worker actually found the problem. The problem is that glibc-kernheaders-2.4-8.10 is very different from the kernel includes (only checked the quota.h)! The first three 3 examples I saw (there are probably many others): /usr/include/linux/quota.h: #define Q_GETQUOTA 0x0D00 /* get limits and usage */ #define Q_SETQUOTA 0x0E00 /* set limits and usage */ #define Q_SETQLIM 0x0700 /* set limits */ /usr/src/linux-2.4.20-18.9/include/linux/quota.h: #define Q_GETQUOTA 0x800007 /* get user quota structure */ #define Q_SETQUOTA 0x800008 /* set user quota structure */ /* Q_SETQLIM is missing */ Glibc seems to have the old headers for ancient 16bit uid quota still. What I don't understand given that is how our quota tools built 8) The glibc headers are completely incompatible with the kernel interface and AFAICS glibc is not doing any conversion, so the only way to use quotactl () is currently to ship a private copy of original linux/quota.h. The current (glibc-kernheaders-2.4-9.1.94) linux/quota.h that includes sys/quota.h really doesn't help. You shouldn't be looking at linux/quota.h -- that's a private kernel header. You should be using sys/quota.h, which I believe is fixed in current glibc packages. |