Author: ken
Date: 2005-11-08 07:02:51 -0700 (Tue, 08 Nov 2005)
New Revision: 1248
Added:
trunk/strace/
trunk/strace/strace-4.5.12-quota_fixes-1.patch
Log:
add strace patch for recent glibc
Added: trunk/strace/strace-4.5.12-quota_fixes-1.patch
===================================================================
--- trunk/strace/strace-4.5.12-quota_fixes-1.patch 2005-11-08 04:05:20 UTC
(rev 1247)
+++ trunk/strace/strace-4.5.12-quota_fixes-1.patch 2005-11-08 14:02:51 UTC
(rev 1248)
@@ -0,0 +1,93 @@
+Extracted By: Ken Moffat <[EMAIL PROTECTED]>
+Date: 2005-11-08
+Initial Package Version: 4.5.12
+Upstream Status: From CVS, will be fixed in 4.5.13
+Origin: from strace CVS
+Description: Allows strace to compile when LINUX_QUOTA_VERSION is defined as 2.
+Required for glibc snapshots (e.g. CLFS), and now reported to be needed for
glibc-2.3.6.
+
+--- strace-4.5.12/configure.ac.orig 2005-09-13 22:48:07.000000000 +0100
++++ strace-4.5.12/configure.ac 2005-09-13 22:48:29.000000000 +0100
+@@ -216,6 +216,8 @@
+
+ AC_CHECK_TYPES([struct user_desc],,, [#include <asm/ldt.h>])
+
++AC_CHECK_MEMBERS([struct dqblk.dqb_curblocks],,, [#include <sys/quota.h>])
++
+ AC_CHECK_DECLS([sys_errlist])
+ AC_CHECK_DECLS([sys_siglist, _sys_siglist],,, [#include <signal.h>])
+
+--- strace-4.5.12/resource.c.orig 2005-09-13 22:48:14.000000000 +0100
++++ strace-4.5.12/resource.c 2005-09-13 22:48:29.000000000 +0100
+@@ -464,6 +464,7 @@
+
+ #ifdef LINUX
+
++#define OLD_CMD(c) ((c)<<8)
+ #define NEW_CMD(c) ((0x80<<16)+(c))
+ #define XQM_CMD(c) (('X'<<8)+(c))
+ #define NEW_COMMAND(c) (( ((c) >> SUBCMDSHIFT) & (0x80 << 16)))
+@@ -471,15 +472,15 @@
+ #define OLD_COMMAND(c) (!NEW_COMMAND(c) && !XQM_COMMAND(c))
+
+ static const struct xlat quotacmds[] = {
+- { Q_QUOTAON, "Q_QUOTAON" },
+- { Q_QUOTAOFF, "Q_QUOTAOFF" },
+- { Q_GETQUOTA, "Q_GETQUOTA" },
+- { Q_SETQUOTA, "Q_SETQUOTA" },
+- { Q_SETUSE, "Q_SETUSE" },
+- { Q_SYNC, "Q_SYNC" },
+- { Q_SETQLIM, "Q_SETQLIM" },
+- { Q_GETSTATS, "Q_GETSTATS" },
+- { Q_RSQUASH, "Q_RSQUASH" },
++ { OLD_CMD(0x1), "Q_QUOTAON" },
++ { OLD_CMD(0x2), "Q_QUOTAOFF" },
++ { OLD_CMD(0x3), "Q_GETQUOTA" },
++ { OLD_CMD(0x4), "Q_SETQUOTA" },
++ { OLD_CMD(0x5), "Q_SETUSE" },
++ { OLD_CMD(0x6), "Q_SYNC" },
++ { OLD_CMD(0x7), "Q_SETQLIM" },
++ { OLD_CMD(0x8), "Q_GETSTATS" },
++ { OLD_CMD(0x10),"Q_RSQUASH" },
+ { NEW_CMD(0x1), "Q_SYNC" },
+ { NEW_CMD(0x2), "Q_QUOTAON" },
+ { NEW_CMD(0x3), "Q_QUOTAOFF" },
+@@ -528,21 +529,29 @@
+
+ if (!tcp->u_arg[3])
+ tprintf("NULL");
+- else if (!verbose(tcp) || !OLD_COMMAND(cmd))
++ else if (!verbose(tcp) ||
++#ifdef HAVE_STRUCT_DQBLK_DQB_CURBLOCKS
++ !
++#endif
++ OLD_COMMAND(cmd))
+ tprintf("%#lx", tcp->u_arg[3]);
+ else if (umoven(tcp, tcp->u_arg[3], sizeof(struct dqblk),
+ (char *) &dq) < 0)
+ tprintf("???");
+ else {
+ tprintf("{");
+- tprintf("%u, ", dq.dqb_bhardlimit);
+- tprintf("%u, ", dq.dqb_bsoftlimit);
+- tprintf("%u, ", dq.dqb_curblocks);
+- tprintf("%u, ", dq.dqb_ihardlimit);
+- tprintf("%u, ", dq.dqb_isoftlimit);
+- tprintf("%u, ", dq.dqb_curinodes);
+- tprintf("%lu, ", dq.dqb_btime);
+- tprintf("%lu", dq.dqb_itime);
++ tprintf("%llu, ", (unsigned long long)
dq.dqb_bhardlimit);
++ tprintf("%llu, ", (unsigned long long)
dq.dqb_bsoftlimit);
++#ifdef HAVE_STRUCT_DQBLK_DQB_CURBLOCKS
++ tprintf("%llu, ", (unsigned long long)
dq.dqb_curblocks);
++#else
++ tprintf("%llu, ", (unsigned long long) dq.dqb_curspace);
++#endif
++ tprintf("%llu, ", (unsigned long long)
dq.dqb_ihardlimit);
++ tprintf("%llu, ", (unsigned long long)
dq.dqb_isoftlimit);
++ tprintf("%llu, ", (unsigned long long)
dq.dqb_curinodes);
++ tprintf("%llu, ", (unsigned long long) dq.dqb_btime);
++ tprintf("%llu", (unsigned long long) dq.dqb_itime);
+ tprintf("}");
+ }
+
--
http://linuxfromscratch.org/mailman/listinfo/patches
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page