All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felipe W Damasio <felipewd@terra.com.br>
To: linux-kernel@vger.kernel.org
Cc: sisopiii-l@cscience.org
Subject: [PATCH] 32-bit process accounting
Date: Fri, 23 Apr 2004 11:04:44 -0300	[thread overview]
Message-ID: <4089227C.9060101@terra.com.br> (raw)

[-- Attachment #1: Type: text/plain, Size: 893 bytes --]

	Hi,

	According to Andrew's must-fix list:

"32bit uid support is *still* broken for process accounting."

	Ok, so I went and tried to see why we can't just use uid_t/gid_t for 
the uid, gid fields on struct acct.

	I saw the GNU acct source, and it uses unsigned int fields on the hash 
tabels and doesn't assume any 16-bit only fields on the acct structure.

	So, it seems to me that the only reason we still have broken 32-bit 
process accounting is so that old tools can behave nicely. Please tell 
me other reasons as I couldn't find them.

	There are 2 patches attached.

	The first, does the obvious uid_t/gid_t replacement..since it defines 
16/32-bits for UIDs on a per-architecture basis.

	The second, uses CONFIG_UID16 as a basis for forcing 16-bit UIDs.

	I'd like to request review of these patches and pointers on what I'm 
missing to get this problem fixed.

	Thanks,

Felipe

[-- Attachment #2: acct-32bit-config.patch --]
[-- Type: text/plain, Size: 646 bytes --]

--- linux-2.6.6-rc2/include/linux/acct.h.orig	Fri Apr 23 09:30:16 2004
+++ linux-2.6.6-rc2/include/linux/acct.h	Fri Apr 23 10:53:29 2004
@@ -41,8 +41,13 @@
  *	No binary format break with 2.0 - but when we hit 32bit uid we'll
  *	have to bite one
  */
+#ifdef CONFIG_UID16
 	__u16		ac_uid;			/* Accounting Real User ID */
 	__u16		ac_gid;			/* Accounting Real Group ID */
+#else
+	uid_t		ac_uid;			/* Accounting Real User ID */
+	gid_t		ac_gid;			/* Accounting Real Group ID */
+#endif
 	__u16		ac_tty;			/* Accounting Control Terminal */
 	__u32		ac_btime;		/* Accounting Process Creation Time */
 	comp_t		ac_utime;		/* Accounting User Time */

[-- Attachment #3: acct-32bit.patch --]
[-- Type: text/plain, Size: 609 bytes --]

--- linux-2.6.6-rc2/include/linux/acct.h.orig	Fri Apr 23 09:30:16 2004
+++ linux-2.6.6-rc2/include/linux/acct.h	Fri Apr 23 09:31:16 2004
@@ -41,8 +41,8 @@
  *	No binary format break with 2.0 - but when we hit 32bit uid we'll
  *	have to bite one
  */
-	__u16		ac_uid;			/* Accounting Real User ID */
-	__u16		ac_gid;			/* Accounting Real Group ID */
+	uid_t		ac_uid;			/* Accounting Real User ID */
+	gid_t		ac_gid;			/* Accounting Real Group ID */
 	__u16		ac_tty;			/* Accounting Control Terminal */
 	__u32		ac_btime;		/* Accounting Process Creation Time */
 	comp_t		ac_utime;		/* Accounting User Time */

             reply	other threads:[~2004-04-23 14:02 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-23 14:04 Felipe W Damasio [this message]
2004-04-23 16:57 ` [PATCH] 32-bit process accounting Tim Schmielau

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4089227C.9060101@terra.com.br \
    --to=felipewd@terra.com.br \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sisopiii-l@cscience.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.