2008-02-26 21:21:18

by Roland McGrath

[permalink] [raw]
Subject: [PATCH] elfcore-compat fix uid/gid types


I overlooked the difference between __kernel_uid_t and uid_t when defining
struct compat_elf_prpsinfo. The result is a regression in 32-bit core
dumps on x86_64, where the NT_PRPSINFO note has the wrong size and layout.
This patch fixes it.

Signed-off-by: Roland McGrath <[email protected]>
---
include/linux/elfcore-compat.h | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/elfcore-compat.h b/include/linux/elfcore-compat.h
index 532d13a..0a90e1c 100644
--- a/include/linux/elfcore-compat.h
+++ b/include/linux/elfcore-compat.h
@@ -45,8 +45,8 @@ struct compat_elf_prpsinfo
char pr_zomb;
char pr_nice;
compat_ulong_t pr_flag;
- compat_uid_t pr_uid;
- compat_gid_t pr_gid;
+ __compat_uid_t pr_uid;
+ __compat_gid_t pr_gid;
compat_pid_t pr_pid, pr_ppid, pr_pgrp, pr_sid;
char pr_fname[16];
char pr_psargs[ELF_PRARGSZ];


2008-02-27 15:17:16

by Ingo Molnar

[permalink] [raw]
Subject: Re: [PATCH] elfcore-compat fix uid/gid types


* Roland McGrath <[email protected]> wrote:

> I overlooked the difference between __kernel_uid_t and uid_t when
> defining struct compat_elf_prpsinfo. The result is a regression in
> 32-bit core dumps on x86_64, where the NT_PRPSINFO note has the wrong
> size and layout. This patch fixes it.
>
> Signed-off-by: Roland McGrath <[email protected]>

Acked-by: Ingo Molnar <[email protected]>

Ingo