Skip to contentSkip to conversation

process events connector - uid_t gid_t size issues

PATCH New Matt Helsley 1 participant 1 message Nov 28, 2005 Network drivers

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 process events connector - uid_t gid_t size issues

Andrew,

I noticed this follow up patch did not make it's way into -mm and
subsequently to 2.6.15-rc2. The uid_t and gid_t fields appear to present a 32/64-bit userspace/kernel problem for some archs.

This patch addresses the problem by fixing the size to the largest
size for uid_t/gid_t used in the kernel. This preserves the total size of the event structure while ensuring that the layouts of the ID change event match in 32 and 64-bit kernels and applications.

Please apply.

---

include/linux/cn_proc.h +4 -4
Index: linux-2.6.15-rc2/include/linux/cn_proc.h
===================================================================
@@ -84,16 +84,16 @@ struct proc_event {
 
 		struct id_proc_event {
 			pid_t process_pid;
 			pid_t process_tgid;
 			union {
-				uid_t ruid; /* current->uid */
-				gid_t rgid; /* current->gid */
+				__u32 ruid; /* task uid */
+				__u32 rgid; /* task gid */
 			} r;
 			union {
-				uid_t euid;
-				gid_t egid;
+				__u32 euid;
+				__u32 egid;
 			} e;
 		} id;
 
 		struct exit_proc_event {
 			pid_t process_pid;