This adds a new quotactl, Q_GETNEXTQUOTA. Q_GETNEXTQUOTA is exactly like Q_GETQUOTA, except that it will return quota information for the id equal to or greater than the id requested. In other words, if the specified id has no quota, the command will return quota information for the next higher id which does have a quota set. If no higher id has an active quota, -ESRCH is returned. So if you ask for id X, you can get back quota for id X, id X+N, or -ESRCH if no higher id has a quota. This allows filesystems to do efficient iteration in kernelspace, much like extN filesystems do in userspace when asked to report all active quotas. Today, filesystems such as XFS require getpwent()-style iterations, and for systems which have i.e. LDAP backends, this can be very slow, or even impossible if iteration is not allowed in the configuration. Patches 1 and 4 are just small fixups that turned up along the way; 2 and 3 add the actual quota plumbing, and the rest are xfs-specific to allow xfs to support this new interface. For non-xfs quota, this does require a new structure which is able to pass back the discovered ID along with the quota info. For xfs-quota, the id is already present in the structure. V3: * Remove 32-bit compat stuff (i686/x86_64 at least works w/o it...) * Require CAP_SYS_ADMIN for these calls * Pass back found ID in &qid passed to ->get_nextdqblk, rather than modifying struct qc_dqblk * Munge that found ID back through user-namespace conversions before returning it in the user structure. Thanks, -Eric -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html