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];
* 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