All of lore.kernel.org
 help / color / mirror / Atom feed
From: Palmer Dabbelt <palmer@dabbelt.com>
To: arnd@arndb.de
To: dhowells@redhat.com
Cc: viro@zeniv.linux.org.uk
Cc: ast@plumgrid.com
Cc: aishchuk@linux.vnet.ibm.com
Cc: aarcange@redhat.com
Cc: akpm@linux-foundation.org
Cc: luto@kernel.org
Cc: acme@kernel.org
Cc: bhe@redhat.com
Cc: 3chas3@gmail.com
Cc: chris@zankel.net
Cc: dave@sr71.net
Cc: dyoung@redhat.com
Cc: drysdale@google.com
Cc: davem@davemloft.net
Cc: ebiederm@xmission.com
Cc: geoff@infradead.org
Cc: gregkh@linuxfoundation.org
Cc: hpa@zytor.com
Cc: mingo@kernel.org
Cc: iulia.manda21@gmail.com
Cc: plagnioj@jcrosoft.com
Cc: jikos@kernel.org
Cc: josh@joshtriplett.org
Cc: kexec@lists.infradead.org
Cc: linux-api@vger.kernel.org
Cc: linux-arch@vger.kernel.org
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-xtensa@linux-xtensa.org
Cc: mathieu.desnoyers@efficios.com
Cc: jcmvbkbc@gmail.com
Cc: paulmck@linux.vnet.ibm.com
Cc: a.p.zijlstra@chello.nl
Cc: tglx@linutronix.de
Cc: tomi.valkeinen@ti.com
Cc: vgoyal@redhat.com
Cc: x86@kernel.org
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Subject: [PATCH 05/13] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus"
Date: Tue,  3 Nov 2015 11:46:26 -0800	[thread overview]
Message-ID: <1446579994-9937-6-git-send-email-palmer@dabbelt.com> (raw)
In-Reply-To: <1446579994-9937-1-git-send-email-palmer@dabbelt.com>

This is a pretty big change that I haven't tested any, which worries
me a lot.  The general idea here is that "struct elf_prstatus" can be
visible to userspace (from <linux/ptrace.h>)

  "
   Generic ptrace interface that exports the architecture specific
   regsets using the corresponding NT_* types (which are also used in
   the core dump).  Please note that the NT_PRSTATUS note type in a
   core dump contains a full 'struct elf_prstatus'. But the
   user_regset for NT_PRSTATUS contains just the elf_gregset_t that is
   the pr_reg field of 'struct elf_prstatus'. For all the other
   user_regset flavors, the user_regset layout and the ELF core dump
   note payload are exactly the same layout.
  "

so it shouldn't have an "#ifdef CONFIG_" in there.

This splits the structure into two different structures, one still
named "struct elf_prstatus", and one for ELF FDPIC that is named
"struct elf_fdpic_prstatus" -- the idea here is that most users are
standard ELF, so that's the name that didn't change.

I tried to fix all the users of "struct elf_prstatus" that should now
be using "struct elf_fdpic_prstatus".  The only testing I did here was
to build a Blackfin defconfig with "struct elf_prstatus" not defined,
and to build an x86 defconfig with "struct elf_fdpic_prstatus" not
defined.

Note that this fails checkpatch.pl with a complaint about wanting open
braces on the same line as struct definitions.  The existing struct
definitions in this file have the brace a line afterwards, so I'm
going to leave this alone.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: Andrew Waterman <waterman@eecs.berkeley.edu>
Reviewed-by: Albert Ou <aou@eecs.berkeley.edu>
---
 fs/binfmt_elf_fdpic.c        |  6 +++---
 fs/proc/kcore.c              | 16 ++++++++++++++++
 include/linux/kexec.h        |  4 ++++
 include/uapi/linux/elfcore.h | 37 +++++++++++++++++++++++++++++++++++--
 kernel/kexec_core.c          |  4 ++++
 5 files changed, 62 insertions(+), 5 deletions(-)

diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c
index d3634bf..587bf04 100644
--- a/fs/binfmt_elf_fdpic.c
+++ b/fs/binfmt_elf_fdpic.c
@@ -1323,7 +1323,7 @@ static inline void fill_note(struct memelfnote *note, const char *name, int type
  * fill up all the fields in prstatus from the given task struct, except
  * registers which need to be filled up separately.
  */
-static void fill_prstatus(struct elf_prstatus *prstatus,
+static void fill_prstatus(struct elf_fdpic_prstatus *prstatus,
 			  struct task_struct *p, long signr)
 {
 	prstatus->pr_info.si_signo = prstatus->pr_cursig = signr;
@@ -1406,7 +1406,7 @@ static int fill_psinfo(struct elf_prpsinfo *psinfo, struct task_struct *p,
 struct elf_thread_status
 {
 	struct list_head list;
-	struct elf_prstatus prstatus;	/* NT_PRSTATUS */
+	struct elf_fdpic_prstatus prstatus;	/* NT_PRSTATUS */
 	elf_fpregset_t fpu;		/* NT_PRFPREG */
 	struct task_struct *thread;
 #ifdef ELF_CORE_COPY_XFPREGS
@@ -1539,7 +1539,7 @@ static int elf_fdpic_core_dump(struct coredump_params *cprm)
 	loff_t offset = 0, dataoff;
 	int numnote;
 	struct memelfnote *notes = NULL;
-	struct elf_prstatus *prstatus = NULL;	/* NT_PRSTATUS */
+	struct elf_fdpic_prstatus *prstatus = NULL;	/* NT_PRSTATUS */
 	struct elf_prpsinfo *psinfo = NULL;	/* NT_PRPSINFO */
  	LIST_HEAD(thread_list);
  	struct list_head *t;
diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c
index 92e6726..b1edd77e 100644
--- a/fs/proc/kcore.c
+++ b/fs/proc/kcore.c
@@ -90,7 +90,11 @@ static size_t get_kcore_size(int *nphdr, size_t *elf_buflen)
 			(*nphdr + 2)*sizeof(struct elf_phdr) + 
 			3 * ((sizeof(struct elf_note)) +
 			     roundup(sizeof(CORE_STR), 4)) +
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+			roundup(sizeof(struct elf_fdpic_prstatus), 4) +
+#else
 			roundup(sizeof(struct elf_prstatus), 4) +
+#endif
 			roundup(sizeof(struct elf_prpsinfo), 4) +
 			roundup(arch_task_struct_size, 4);
 	*elf_buflen = PAGE_ALIGN(*elf_buflen);
@@ -318,7 +322,11 @@ static char *storenote(struct memelfnote *men, char *bufp)
  */
 static void elf_kcore_store_hdr(char *bufp, int nphdr, int dataoff)
 {
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	struct elf_fdpic_prstatus prstatus;	/* NT_PRSTATUS */
+#else
 	struct elf_prstatus prstatus;	/* NT_PRSTATUS */
+#endif
 	struct elf_prpsinfo prpsinfo;	/* NT_PRPSINFO */
 	struct elf_phdr *nhdr, *phdr;
 	struct elfhdr *elf;
@@ -387,10 +395,18 @@ static void elf_kcore_store_hdr(char *bufp, int nphdr, int dataoff)
 	/* set up the process status */
 	notes[0].name = CORE_STR;
 	notes[0].type = NT_PRSTATUS;
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	notes[0].datasz = sizeof(struct elf_fdpic_prstatus);
+#else
 	notes[0].datasz = sizeof(struct elf_prstatus);
+#endif
 	notes[0].data = &prstatus;
 
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	memset(&prstatus, 0, sizeof(struct elf_fdpic_prstatus));
+#else
 	memset(&prstatus, 0, sizeof(struct elf_prstatus));
+#endif
 
 	nhdr->p_filesz	= notesize(&notes[0]);
 	bufp = storenote(&notes[0], bufp);
diff --git a/include/linux/kexec.h b/include/linux/kexec.h
index d140b1e..d9196cc 100644
--- a/include/linux/kexec.h
+++ b/include/linux/kexec.h
@@ -63,7 +63,11 @@
 #define KEXEC_NOTE_HEAD_BYTES ALIGN(sizeof(struct elf_note), 4)
 #define KEXEC_CORE_NOTE_NAME "CORE"
 #define KEXEC_CORE_NOTE_NAME_BYTES ALIGN(sizeof(KEXEC_CORE_NOTE_NAME), 4)
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+#define KEXEC_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_fdpic_prstatus), 4)
+#else
 #define KEXEC_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_prstatus), 4)
+#endif
 /*
  * The per-cpu notes area is a list of notes terminated by a "NULL"
  * note header.  For kdump, the code in vmcore.c runs in the context
diff --git a/include/uapi/linux/elfcore.h b/include/uapi/linux/elfcore.h
index 569737c..697c52d 100644
--- a/include/uapi/linux/elfcore.h
+++ b/include/uapi/linux/elfcore.h
@@ -60,7 +60,40 @@ struct elf_prstatus
 	long	pr_instr;		/* Current instruction */
 #endif
 	elf_gregset_t pr_reg;	/* GP registers */
-#ifdef CONFIG_BINFMT_ELF_FDPIC
+	int pr_fpvalid;		/* True if math co-processor being used.  */
+};
+
+/* Architectures that set CONFIG_BINFMT_ELF_FDPIC use this instead of
+ * "struct elf_prstatus".
+ */
+struct elf_fdpic_prstatus
+{
+#if 0
+	long	pr_flags;	/* XXX Process flags */
+	short	pr_why;		/* XXX Reason for process halt */
+	short	pr_what;	/* XXX More detailed reason */
+#endif
+	struct elf_siginfo pr_info;	/* Info associated with signal */
+	short	pr_cursig;		/* Current signal */
+	unsigned long pr_sigpend;	/* Set of pending signals */
+	unsigned long pr_sighold;	/* Set of held signals */
+#if 0
+	struct sigaltstack pr_altstack;	/* Alternate stack info */
+	struct sigaction pr_action;	/* Signal action for current sig */
+#endif
+	pid_t	pr_pid;
+	pid_t	pr_ppid;
+	pid_t	pr_pgrp;
+	pid_t	pr_sid;
+	struct timeval pr_utime;	/* User time */
+	struct timeval pr_stime;	/* System time */
+	struct timeval pr_cutime;	/* Cumulative user time */
+	struct timeval pr_cstime;	/* Cumulative system time */
+#if 0
+	long	pr_instr;		/* Current instruction */
+#endif
+	elf_gregset_t pr_reg;	/* GP registers */
+
 	/* When using FDPIC, the loadmap addresses need to be communicated
 	 * to GDB in order for GDB to do the necessary relocations.  The
 	 * fields (below) used to communicate this information are placed
@@ -69,7 +102,7 @@ struct elf_prstatus
 	 */
 	unsigned long pr_exec_fdpic_loadmap;
 	unsigned long pr_interp_fdpic_loadmap;
-#endif
+
 	int pr_fpvalid;		/* True if math co-processor being used.  */
 };
 
diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
index 201b453..8d2fc70 100644
--- a/kernel/kexec_core.c
+++ b/kernel/kexec_core.c
@@ -977,7 +977,11 @@ static void final_note(u32 *buf)
 
 void crash_save_cpu(struct pt_regs *regs, int cpu)
 {
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	struct elf_fdpic_prstatus prstatus;
+#else
 	struct elf_prstatus prstatus;
+#endif
 	u32 *buf;
 
 	if ((cpu < 0) || (cpu >= nr_cpu_ids))
-- 
2.4.10


WARNING: multiple messages have this Message-ID (diff)
From: Palmer Dabbelt <palmer@dabbelt.com>
To: arnd@arndb.de, dhowells@redhat.com
Cc: viro@zeniv.linux.org.uk, ast@plumgrid.com,
	aishchuk@linux.vnet.ibm.com, aarcange@redhat.com,
	akpm@linux-foundation.org, luto@kernel.org, acme@kernel.org,
	bhe@redhat.com, 3chas3@gmail.com, chris@zankel.net,
	dave@sr71.net, dyoung@redhat.com, drysdale@google.com,
	davem@davemloft.net, ebiederm@xmission.com, geoff@infradead.org,
	gregkh@linuxfoundation.org, hpa@zytor.com, mingo@kernel.org,
	iulia.manda21@gmail.com, plagnioj@jcrosoft.com, jikos@kernel.org,
	josh@joshtriplett.org, kexec@lists.infradead.org,
	linux-api@vger.kernel.org, linux-arch@vger.kernel.org,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-xtensa@linux-xtensa.org, mathieu.desnoyers@efficios.com,
	jcmvbkbc@gmail.com, paulmck@linux.vnet.ibm.com,
	a.p.zijlstra@chello.nl, tglx@linutronix.de,
	tomi.valkeinen@ti.com, vgoyal@redhat.com, x86@kernel.org,
	Palmer Dabbelt <palmer@dabbelt.com>
Subject: [PATCH 05/13] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus"
Date: Tue,  3 Nov 2015 11:46:26 -0800	[thread overview]
Message-ID: <1446579994-9937-6-git-send-email-palmer@dabbelt.com> (raw)
In-Reply-To: <1446579994-9937-1-git-send-email-palmer@dabbelt.com>

This is a pretty big change that I haven't tested any, which worries
me a lot.  The general idea here is that "struct elf_prstatus" can be
visible to userspace (from <linux/ptrace.h>)

  "
   Generic ptrace interface that exports the architecture specific
   regsets using the corresponding NT_* types (which are also used in
   the core dump).  Please note that the NT_PRSTATUS note type in a
   core dump contains a full 'struct elf_prstatus'. But the
   user_regset for NT_PRSTATUS contains just the elf_gregset_t that is
   the pr_reg field of 'struct elf_prstatus'. For all the other
   user_regset flavors, the user_regset layout and the ELF core dump
   note payload are exactly the same layout.
  "

so it shouldn't have an "#ifdef CONFIG_" in there.

This splits the structure into two different structures, one still
named "struct elf_prstatus", and one for ELF FDPIC that is named
"struct elf_fdpic_prstatus" -- the idea here is that most users are
standard ELF, so that's the name that didn't change.

I tried to fix all the users of "struct elf_prstatus" that should now
be using "struct elf_fdpic_prstatus".  The only testing I did here was
to build a Blackfin defconfig with "struct elf_prstatus" not defined,
and to build an x86 defconfig with "struct elf_fdpic_prstatus" not
defined.

Note that this fails checkpatch.pl with a complaint about wanting open
braces on the same line as struct definitions.  The existing struct
definitions in this file have the brace a line afterwards, so I'm
going to leave this alone.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: Andrew Waterman <waterman@eecs.berkeley.edu>
Reviewed-by: Albert Ou <aou@eecs.berkeley.edu>
---
 fs/binfmt_elf_fdpic.c        |  6 +++---
 fs/proc/kcore.c              | 16 ++++++++++++++++
 include/linux/kexec.h        |  4 ++++
 include/uapi/linux/elfcore.h | 37 +++++++++++++++++++++++++++++++++++--
 kernel/kexec_core.c          |  4 ++++
 5 files changed, 62 insertions(+), 5 deletions(-)

diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c
index d3634bf..587bf04 100644
--- a/fs/binfmt_elf_fdpic.c
+++ b/fs/binfmt_elf_fdpic.c
@@ -1323,7 +1323,7 @@ static inline void fill_note(struct memelfnote *note, const char *name, int type
  * fill up all the fields in prstatus from the given task struct, except
  * registers which need to be filled up separately.
  */
-static void fill_prstatus(struct elf_prstatus *prstatus,
+static void fill_prstatus(struct elf_fdpic_prstatus *prstatus,
 			  struct task_struct *p, long signr)
 {
 	prstatus->pr_info.si_signo = prstatus->pr_cursig = signr;
@@ -1406,7 +1406,7 @@ static int fill_psinfo(struct elf_prpsinfo *psinfo, struct task_struct *p,
 struct elf_thread_status
 {
 	struct list_head list;
-	struct elf_prstatus prstatus;	/* NT_PRSTATUS */
+	struct elf_fdpic_prstatus prstatus;	/* NT_PRSTATUS */
 	elf_fpregset_t fpu;		/* NT_PRFPREG */
 	struct task_struct *thread;
 #ifdef ELF_CORE_COPY_XFPREGS
@@ -1539,7 +1539,7 @@ static int elf_fdpic_core_dump(struct coredump_params *cprm)
 	loff_t offset = 0, dataoff;
 	int numnote;
 	struct memelfnote *notes = NULL;
-	struct elf_prstatus *prstatus = NULL;	/* NT_PRSTATUS */
+	struct elf_fdpic_prstatus *prstatus = NULL;	/* NT_PRSTATUS */
 	struct elf_prpsinfo *psinfo = NULL;	/* NT_PRPSINFO */
  	LIST_HEAD(thread_list);
  	struct list_head *t;
diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c
index 92e6726..b1edd77e 100644
--- a/fs/proc/kcore.c
+++ b/fs/proc/kcore.c
@@ -90,7 +90,11 @@ static size_t get_kcore_size(int *nphdr, size_t *elf_buflen)
 			(*nphdr + 2)*sizeof(struct elf_phdr) + 
 			3 * ((sizeof(struct elf_note)) +
 			     roundup(sizeof(CORE_STR), 4)) +
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+			roundup(sizeof(struct elf_fdpic_prstatus), 4) +
+#else
 			roundup(sizeof(struct elf_prstatus), 4) +
+#endif
 			roundup(sizeof(struct elf_prpsinfo), 4) +
 			roundup(arch_task_struct_size, 4);
 	*elf_buflen = PAGE_ALIGN(*elf_buflen);
@@ -318,7 +322,11 @@ static char *storenote(struct memelfnote *men, char *bufp)
  */
 static void elf_kcore_store_hdr(char *bufp, int nphdr, int dataoff)
 {
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	struct elf_fdpic_prstatus prstatus;	/* NT_PRSTATUS */
+#else
 	struct elf_prstatus prstatus;	/* NT_PRSTATUS */
+#endif
 	struct elf_prpsinfo prpsinfo;	/* NT_PRPSINFO */
 	struct elf_phdr *nhdr, *phdr;
 	struct elfhdr *elf;
@@ -387,10 +395,18 @@ static void elf_kcore_store_hdr(char *bufp, int nphdr, int dataoff)
 	/* set up the process status */
 	notes[0].name = CORE_STR;
 	notes[0].type = NT_PRSTATUS;
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	notes[0].datasz = sizeof(struct elf_fdpic_prstatus);
+#else
 	notes[0].datasz = sizeof(struct elf_prstatus);
+#endif
 	notes[0].data = &prstatus;
 
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	memset(&prstatus, 0, sizeof(struct elf_fdpic_prstatus));
+#else
 	memset(&prstatus, 0, sizeof(struct elf_prstatus));
+#endif
 
 	nhdr->p_filesz	= notesize(&notes[0]);
 	bufp = storenote(&notes[0], bufp);
diff --git a/include/linux/kexec.h b/include/linux/kexec.h
index d140b1e..d9196cc 100644
--- a/include/linux/kexec.h
+++ b/include/linux/kexec.h
@@ -63,7 +63,11 @@
 #define KEXEC_NOTE_HEAD_BYTES ALIGN(sizeof(struct elf_note), 4)
 #define KEXEC_CORE_NOTE_NAME "CORE"
 #define KEXEC_CORE_NOTE_NAME_BYTES ALIGN(sizeof(KEXEC_CORE_NOTE_NAME), 4)
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+#define KEXEC_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_fdpic_prstatus), 4)
+#else
 #define KEXEC_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_prstatus), 4)
+#endif
 /*
  * The per-cpu notes area is a list of notes terminated by a "NULL"
  * note header.  For kdump, the code in vmcore.c runs in the context
diff --git a/include/uapi/linux/elfcore.h b/include/uapi/linux/elfcore.h
index 569737c..697c52d 100644
--- a/include/uapi/linux/elfcore.h
+++ b/include/uapi/linux/elfcore.h
@@ -60,7 +60,40 @@ struct elf_prstatus
 	long	pr_instr;		/* Current instruction */
 #endif
 	elf_gregset_t pr_reg;	/* GP registers */
-#ifdef CONFIG_BINFMT_ELF_FDPIC
+	int pr_fpvalid;		/* True if math co-processor being used.  */
+};
+
+/* Architectures that set CONFIG_BINFMT_ELF_FDPIC use this instead of
+ * "struct elf_prstatus".
+ */
+struct elf_fdpic_prstatus
+{
+#if 0
+	long	pr_flags;	/* XXX Process flags */
+	short	pr_why;		/* XXX Reason for process halt */
+	short	pr_what;	/* XXX More detailed reason */
+#endif
+	struct elf_siginfo pr_info;	/* Info associated with signal */
+	short	pr_cursig;		/* Current signal */
+	unsigned long pr_sigpend;	/* Set of pending signals */
+	unsigned long pr_sighold;	/* Set of held signals */
+#if 0
+	struct sigaltstack pr_altstack;	/* Alternate stack info */
+	struct sigaction pr_action;	/* Signal action for current sig */
+#endif
+	pid_t	pr_pid;
+	pid_t	pr_ppid;
+	pid_t	pr_pgrp;
+	pid_t	pr_sid;
+	struct timeval pr_utime;	/* User time */
+	struct timeval pr_stime;	/* System time */
+	struct timeval pr_cutime;	/* Cumulative user time */
+	struct timeval pr_cstime;	/* Cumulative system time */
+#if 0
+	long	pr_instr;		/* Current instruction */
+#endif
+	elf_gregset_t pr_reg;	/* GP registers */
+
 	/* When using FDPIC, the loadmap addresses need to be communicated
 	 * to GDB in order for GDB to do the necessary relocations.  The
 	 * fields (below) used to communicate this information are placed
@@ -69,7 +102,7 @@ struct elf_prstatus
 	 */
 	unsigned long pr_exec_fdpic_loadmap;
 	unsigned long pr_interp_fdpic_loadmap;
-#endif
+
 	int pr_fpvalid;		/* True if math co-processor being used.  */
 };
 
diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
index 201b453..8d2fc70 100644
--- a/kernel/kexec_core.c
+++ b/kernel/kexec_core.c
@@ -977,7 +977,11 @@ static void final_note(u32 *buf)
 
 void crash_save_cpu(struct pt_regs *regs, int cpu)
 {
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	struct elf_fdpic_prstatus prstatus;
+#else
 	struct elf_prstatus prstatus;
+#endif
 	u32 *buf;
 
 	if ((cpu < 0) || (cpu >= nr_cpu_ids))
-- 
2.4.10

WARNING: multiple messages have this Message-ID (diff)
From: Palmer Dabbelt <palmer@dabbelt.com>
To: arnd@arndb.de, dhowells@redhat.com
Cc: dave@sr71.net, linux-xtensa@linux-xtensa.org, jcmvbkbc@gmail.com,
	hpa@zytor.com, mingo@kernel.org, ast@plumgrid.com,
	aarcange@redhat.com, bhe@redhat.com, x86@kernel.org,
	tomi.valkeinen@ti.com, 3chas3@gmail.com,
	paulmck@linux.vnet.ibm.com, plagnioj@jcrosoft.com,
	vgoyal@redhat.com, aishchuk@linux.vnet.ibm.com,
	linux-arch@vger.kernel.org, a.p.zijlstra@chello.nl,
	jikos@kernel.org, josh@joshtriplett.org, acme@kernel.org,
	mathieu.desnoyers@efficios.com, viro@zeniv.linux.org.uk,
	luto@kernel.org, tglx@linutronix.de, drysdale@google.com,
	chris@zankel.net, iulia.manda21@gmail.com, geoff@infradead.org,
	gregkh@linuxfoundation.org, dyoung@redhat.com,
	kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
	Palmer Dabbelt <palmer@dabbelt.com>,
	ebiederm@xmission.com, linux-api@vger.kernel.org,
	linux-fsdevel@vger.kernel.org, akpm@linux-foundation.org,
	davem@davemloft.net
Subject: [PATCH 05/13] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus"
Date: Tue,  3 Nov 2015 11:46:26 -0800	[thread overview]
Message-ID: <1446579994-9937-6-git-send-email-palmer@dabbelt.com> (raw)
In-Reply-To: <1446579994-9937-1-git-send-email-palmer@dabbelt.com>

This is a pretty big change that I haven't tested any, which worries
me a lot.  The general idea here is that "struct elf_prstatus" can be
visible to userspace (from <linux/ptrace.h>)

  "
   Generic ptrace interface that exports the architecture specific
   regsets using the corresponding NT_* types (which are also used in
   the core dump).  Please note that the NT_PRSTATUS note type in a
   core dump contains a full 'struct elf_prstatus'. But the
   user_regset for NT_PRSTATUS contains just the elf_gregset_t that is
   the pr_reg field of 'struct elf_prstatus'. For all the other
   user_regset flavors, the user_regset layout and the ELF core dump
   note payload are exactly the same layout.
  "

so it shouldn't have an "#ifdef CONFIG_" in there.

This splits the structure into two different structures, one still
named "struct elf_prstatus", and one for ELF FDPIC that is named
"struct elf_fdpic_prstatus" -- the idea here is that most users are
standard ELF, so that's the name that didn't change.

I tried to fix all the users of "struct elf_prstatus" that should now
be using "struct elf_fdpic_prstatus".  The only testing I did here was
to build a Blackfin defconfig with "struct elf_prstatus" not defined,
and to build an x86 defconfig with "struct elf_fdpic_prstatus" not
defined.

Note that this fails checkpatch.pl with a complaint about wanting open
braces on the same line as struct definitions.  The existing struct
definitions in this file have the brace a line afterwards, so I'm
going to leave this alone.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: Andrew Waterman <waterman@eecs.berkeley.edu>
Reviewed-by: Albert Ou <aou@eecs.berkeley.edu>
---
 fs/binfmt_elf_fdpic.c        |  6 +++---
 fs/proc/kcore.c              | 16 ++++++++++++++++
 include/linux/kexec.h        |  4 ++++
 include/uapi/linux/elfcore.h | 37 +++++++++++++++++++++++++++++++++++--
 kernel/kexec_core.c          |  4 ++++
 5 files changed, 62 insertions(+), 5 deletions(-)

diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c
index d3634bf..587bf04 100644
--- a/fs/binfmt_elf_fdpic.c
+++ b/fs/binfmt_elf_fdpic.c
@@ -1323,7 +1323,7 @@ static inline void fill_note(struct memelfnote *note, const char *name, int type
  * fill up all the fields in prstatus from the given task struct, except
  * registers which need to be filled up separately.
  */
-static void fill_prstatus(struct elf_prstatus *prstatus,
+static void fill_prstatus(struct elf_fdpic_prstatus *prstatus,
 			  struct task_struct *p, long signr)
 {
 	prstatus->pr_info.si_signo = prstatus->pr_cursig = signr;
@@ -1406,7 +1406,7 @@ static int fill_psinfo(struct elf_prpsinfo *psinfo, struct task_struct *p,
 struct elf_thread_status
 {
 	struct list_head list;
-	struct elf_prstatus prstatus;	/* NT_PRSTATUS */
+	struct elf_fdpic_prstatus prstatus;	/* NT_PRSTATUS */
 	elf_fpregset_t fpu;		/* NT_PRFPREG */
 	struct task_struct *thread;
 #ifdef ELF_CORE_COPY_XFPREGS
@@ -1539,7 +1539,7 @@ static int elf_fdpic_core_dump(struct coredump_params *cprm)
 	loff_t offset = 0, dataoff;
 	int numnote;
 	struct memelfnote *notes = NULL;
-	struct elf_prstatus *prstatus = NULL;	/* NT_PRSTATUS */
+	struct elf_fdpic_prstatus *prstatus = NULL;	/* NT_PRSTATUS */
 	struct elf_prpsinfo *psinfo = NULL;	/* NT_PRPSINFO */
  	LIST_HEAD(thread_list);
  	struct list_head *t;
diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c
index 92e6726..b1edd77e 100644
--- a/fs/proc/kcore.c
+++ b/fs/proc/kcore.c
@@ -90,7 +90,11 @@ static size_t get_kcore_size(int *nphdr, size_t *elf_buflen)
 			(*nphdr + 2)*sizeof(struct elf_phdr) + 
 			3 * ((sizeof(struct elf_note)) +
 			     roundup(sizeof(CORE_STR), 4)) +
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+			roundup(sizeof(struct elf_fdpic_prstatus), 4) +
+#else
 			roundup(sizeof(struct elf_prstatus), 4) +
+#endif
 			roundup(sizeof(struct elf_prpsinfo), 4) +
 			roundup(arch_task_struct_size, 4);
 	*elf_buflen = PAGE_ALIGN(*elf_buflen);
@@ -318,7 +322,11 @@ static char *storenote(struct memelfnote *men, char *bufp)
  */
 static void elf_kcore_store_hdr(char *bufp, int nphdr, int dataoff)
 {
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	struct elf_fdpic_prstatus prstatus;	/* NT_PRSTATUS */
+#else
 	struct elf_prstatus prstatus;	/* NT_PRSTATUS */
+#endif
 	struct elf_prpsinfo prpsinfo;	/* NT_PRPSINFO */
 	struct elf_phdr *nhdr, *phdr;
 	struct elfhdr *elf;
@@ -387,10 +395,18 @@ static void elf_kcore_store_hdr(char *bufp, int nphdr, int dataoff)
 	/* set up the process status */
 	notes[0].name = CORE_STR;
 	notes[0].type = NT_PRSTATUS;
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	notes[0].datasz = sizeof(struct elf_fdpic_prstatus);
+#else
 	notes[0].datasz = sizeof(struct elf_prstatus);
+#endif
 	notes[0].data = &prstatus;
 
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	memset(&prstatus, 0, sizeof(struct elf_fdpic_prstatus));
+#else
 	memset(&prstatus, 0, sizeof(struct elf_prstatus));
+#endif
 
 	nhdr->p_filesz	= notesize(&notes[0]);
 	bufp = storenote(&notes[0], bufp);
diff --git a/include/linux/kexec.h b/include/linux/kexec.h
index d140b1e..d9196cc 100644
--- a/include/linux/kexec.h
+++ b/include/linux/kexec.h
@@ -63,7 +63,11 @@
 #define KEXEC_NOTE_HEAD_BYTES ALIGN(sizeof(struct elf_note), 4)
 #define KEXEC_CORE_NOTE_NAME "CORE"
 #define KEXEC_CORE_NOTE_NAME_BYTES ALIGN(sizeof(KEXEC_CORE_NOTE_NAME), 4)
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+#define KEXEC_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_fdpic_prstatus), 4)
+#else
 #define KEXEC_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_prstatus), 4)
+#endif
 /*
  * The per-cpu notes area is a list of notes terminated by a "NULL"
  * note header.  For kdump, the code in vmcore.c runs in the context
diff --git a/include/uapi/linux/elfcore.h b/include/uapi/linux/elfcore.h
index 569737c..697c52d 100644
--- a/include/uapi/linux/elfcore.h
+++ b/include/uapi/linux/elfcore.h
@@ -60,7 +60,40 @@ struct elf_prstatus
 	long	pr_instr;		/* Current instruction */
 #endif
 	elf_gregset_t pr_reg;	/* GP registers */
-#ifdef CONFIG_BINFMT_ELF_FDPIC
+	int pr_fpvalid;		/* True if math co-processor being used.  */
+};
+
+/* Architectures that set CONFIG_BINFMT_ELF_FDPIC use this instead of
+ * "struct elf_prstatus".
+ */
+struct elf_fdpic_prstatus
+{
+#if 0
+	long	pr_flags;	/* XXX Process flags */
+	short	pr_why;		/* XXX Reason for process halt */
+	short	pr_what;	/* XXX More detailed reason */
+#endif
+	struct elf_siginfo pr_info;	/* Info associated with signal */
+	short	pr_cursig;		/* Current signal */
+	unsigned long pr_sigpend;	/* Set of pending signals */
+	unsigned long pr_sighold;	/* Set of held signals */
+#if 0
+	struct sigaltstack pr_altstack;	/* Alternate stack info */
+	struct sigaction pr_action;	/* Signal action for current sig */
+#endif
+	pid_t	pr_pid;
+	pid_t	pr_ppid;
+	pid_t	pr_pgrp;
+	pid_t	pr_sid;
+	struct timeval pr_utime;	/* User time */
+	struct timeval pr_stime;	/* System time */
+	struct timeval pr_cutime;	/* Cumulative user time */
+	struct timeval pr_cstime;	/* Cumulative system time */
+#if 0
+	long	pr_instr;		/* Current instruction */
+#endif
+	elf_gregset_t pr_reg;	/* GP registers */
+
 	/* When using FDPIC, the loadmap addresses need to be communicated
 	 * to GDB in order for GDB to do the necessary relocations.  The
 	 * fields (below) used to communicate this information are placed
@@ -69,7 +102,7 @@ struct elf_prstatus
 	 */
 	unsigned long pr_exec_fdpic_loadmap;
 	unsigned long pr_interp_fdpic_loadmap;
-#endif
+
 	int pr_fpvalid;		/* True if math co-processor being used.  */
 };
 
diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
index 201b453..8d2fc70 100644
--- a/kernel/kexec_core.c
+++ b/kernel/kexec_core.c
@@ -977,7 +977,11 @@ static void final_note(u32 *buf)
 
 void crash_save_cpu(struct pt_regs *regs, int cpu)
 {
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+	struct elf_fdpic_prstatus prstatus;
+#else
 	struct elf_prstatus prstatus;
+#endif
 	u32 *buf;
 
 	if ((cpu < 0) || (cpu >= nr_cpu_ids))
-- 
2.4.10


_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  parent reply	other threads:[~2015-11-03 19:51 UTC|newest]

Thread overview: 607+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-02  0:10 [PATCH] Remove #ifdef CONFIG_64BIT from all asm-generic/fcntl.h Palmer Dabbelt
2015-09-02  0:10 ` Palmer Dabbelt
2015-09-07 13:16 ` Arnd Bergmann
2015-09-07 13:35   ` Palmer Dabbelt
2015-09-07 13:35     ` Palmer Dabbelt
2015-09-07 13:59     ` Arnd Bergmann
2015-09-09 21:08       ` Palmer Dabbelt
2015-09-09 21:08         ` Palmer Dabbelt
2015-09-09 21:08         ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 01/13] " Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 02/13] Always expose __SYSCALL(... fork ...) Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 03/13] Hide COMPAT_ATM_ADDPARTY behind #ifdef __KERNEL__ Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 04/13] Always expose MAP_UNINITIALIZED to userspace Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 05/13] Hide some of "struct elf_prstatus" behind #ifdef __KERNEL__ Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 06/13] Hide ep_take_care_of_epollwakeup() " Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 07/13] Make FB_BACKLIGHT_{LEVELS,MAX} always visible Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 08/13] Hide MAX_SHARED_LIBS behind #ifdef __KERNEL__ Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 09/13] Hide bp_type_idx " Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 10/13] Hide USE_WCACHING " Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 11/13] Hide MAX_RAW_MINORS " Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 12/13] Hide AT_VECTOR_SIZE_ARCH " Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08         ` [PATCH 13/13] Re-enable and clean up "check_config()" in headers_check.pl Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-09 21:08           ` Palmer Dabbelt
2015-09-10 11:11         ` [PATCH 09/13] Hide bp_type_idx behind #ifdef __KERNEL__ David Howells
2015-09-10 11:11           ` David Howells
2015-09-10 11:12         ` [PATCH 10/13] Hide USE_WCACHING " David Howells
2015-09-10 11:12           ` David Howells
2015-09-10 11:13         ` [PATCH 11/13] Hide MAX_RAW_MINORS " David Howells
2015-09-10 11:13           ` David Howells
2015-09-10 11:14         ` [PATCH 12/13] Hide AT_VECTOR_SIZE_ARCH " David Howells
2015-09-10 11:14           ` David Howells
     [not found]         ` <1441832902-28993-1-git-send-email-palmer-96lFi9zoCfxBDgjK7y7TUQ@public.gmane.org>
2015-09-14 22:50           ` [PATCH v3] Remove #ifdef CONFIG_* from all userspace headers Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50         ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50         ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 01/13] Remove #ifdef CONFIG_64BIT from all asm-generic/fcntl.h Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
     [not found]           ` <1442271047-4908-1-git-send-email-palmer-96lFi9zoCfxBDgjK7y7TUQ@public.gmane.org>
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 02/13] Use sys_ni.c instead of #ifdef to disable fork on CONFIG_NOMMU Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 03/13] Move COMPAT_ATM_ADDPARTY to net/atm/svc.c Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 04/13] Always expose MAP_UNINITIALIZED to userspace Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 05/13] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus" Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 06/13] Move ep_take_care_of_epollwakeup() to fs/eventpoll.c Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 07/13] Make FB_BACKLIGHT_{LEVELS,MAX} always visible Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 08/13] Move MAX_SHARED_LIBS to fs/binfmt_flat.c Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 09/13] Move bp_type_idx to kernel/event/hw_breakpoint.c Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 10/13] Move USE_WCACHING to drivers/block/pktcdvd.c Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 11/13] Always define MAX_RAW_MINORS as 65535 in userspace Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 12/13] Remove AT_VECTOR_SIZE_ARCH on x86 Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` [PATCH 13/13] Re-enable and clean up "check_config()" in headers_check.pl Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH v4] Remove #ifdef CONFIG_* from all userspace headers Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 02/13] Use sys_ni.c instead of #ifdef to disable fork on CONFIG_NOMMU Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 03/13] Move COMPAT_ATM_ADDPARTY to net/atm/svc.c Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 04/13] Always expose MAP_UNINITIALIZED to userspace Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-15  0:23             ` Kirill A. Shutemov
2015-09-15  0:23               ` Kirill A. Shutemov
2015-09-15  0:52               ` Palmer Dabbelt
2015-09-15  0:52                 ` Palmer Dabbelt
2015-09-15  0:52               ` Palmer Dabbelt
2015-09-15  0:52                 ` Palmer Dabbelt
2015-09-15  0:52               ` Palmer Dabbelt
2015-09-15  0:52                 ` Palmer Dabbelt
2015-09-15  0:52                 ` Palmer Dabbelt
     [not found]               ` <20150915002358.GA12618-nhfs4B5ZimeFUdmeq17FyvUpdFzICT1y@public.gmane.org>
2015-09-15  0:52                 ` Palmer Dabbelt
2015-09-15  0:52                   ` Palmer Dabbelt
2015-09-15  0:52                 ` Palmer Dabbelt
2015-09-15  0:52                   ` Palmer Dabbelt
2015-09-15  5:19               ` Josh Triplett
2015-09-15  5:19                 ` Josh Triplett
2015-09-15  5:19                 ` Josh Triplett
2015-09-15  9:42                 ` Kirill A. Shutemov
2015-09-15  9:42                   ` Kirill A. Shutemov
2015-09-15  9:42                   ` Kirill A. Shutemov
2015-09-15 14:07                   ` Josh Triplett
2015-09-15 14:07                     ` Josh Triplett
2015-09-17 10:13                   ` David Howells
2015-09-17 10:13                     ` David Howells
2015-09-17 10:13                     ` David Howells
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 05/13] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus" Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 06/13] Move ep_take_care_of_epollwakeup() to fs/eventpoll.c Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 07/13] Make FB_BACKLIGHT_{LEVELS,MAX} always visible Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 08/13] Move MAX_SHARED_LIBS to fs/binfmt_flat.c Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 09/13] Move bp_type_idx to kernel/event/hw_breakpoint.c Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-15  8:06             ` Peter Zijlstra
2015-09-15  8:06               ` Peter Zijlstra
2015-09-15  8:06               ` Peter Zijlstra
2015-09-15  8:06               ` Peter Zijlstra
2015-09-15 18:40               ` Palmer Dabbelt
2015-09-15 18:40                 ` Palmer Dabbelt
2015-09-15 18:40                 ` Palmer Dabbelt
2015-09-15 19:39                 ` Peter Zijlstra
2015-09-15 19:39                   ` Peter Zijlstra
2015-09-17  3:56                   ` Palmer Dabbelt
2015-09-17  3:56                     ` Palmer Dabbelt
2015-09-17  3:56                     ` Palmer Dabbelt
2015-09-17  3:56                     ` Palmer Dabbelt
2015-09-17  3:56                     ` Palmer Dabbelt
2015-09-15 21:15               ` Arnd Bergmann
2015-09-24 12:15                 ` Frederic Weisbecker
2015-09-24 12:15                   ` Frederic Weisbecker
2015-09-17 10:28               ` David Howells
2015-09-17 10:28                 ` David Howells
2015-09-17 10:28                 ` David Howells
2015-09-14 22:50           ` [PATCH 10/13] Move USE_WCACHING to drivers/block/pktcdvd.c Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 11/13] Always define MAX_RAW_MINORS as 65535 in userspace Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-15 20:42             ` H. Peter Anvin
2015-09-15 20:42               ` H. Peter Anvin
2015-09-15 20:42               ` H. Peter Anvin
2015-09-15 20:42               ` H. Peter Anvin
2015-09-15 20:42               ` H. Peter Anvin
2015-09-17  3:08               ` Palmer Dabbelt
2015-09-17  3:08                 ` Palmer Dabbelt
2015-09-17  3:08                 ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 12/13] Remove AT_VECTOR_SIZE_ARCH on x86 Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` [PATCH 13/13] Re-enable and clean up "check_config()" in headers_check.pl Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-14 22:50             ` Palmer Dabbelt
2015-09-17  9:57           ` [PATCH 03/13] Move COMPAT_ATM_ADDPARTY to net/atm/svc.c David Howells
2015-09-17  9:57             ` David Howells
2015-09-17 20:53             ` Palmer Dabbelt
2015-09-17 20:53               ` Palmer Dabbelt
2015-09-17 20:53               ` Palmer Dabbelt
2015-09-17 20:53               ` Palmer Dabbelt
2015-09-17 10:17           ` [PATCH 05/13] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus" David Howells
2015-09-17 10:17             ` David Howells
2015-11-03 19:46           ` [PATCH v4] Remove #ifdef CONFIG_* from all userspace headers Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 01/13] Remove #ifdef CONFIG_64BIT from all asm-generic/fcntl.h Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 02/13] Use sys_ni.c instead of #ifdef to disable fork on CONFIG_NOMMU Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 03/13] Move COMPAT_ATM_ADDPARTY to net/atm/svc.c Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 04/13] Always expose MAP_UNINITIALIZED to userspace Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 05/13] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus" Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt [this message]
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 06/13] Move ep_take_care_of_epollwakeup() to fs/eventpoll.c Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 07/13] Make FB_BACKLIGHT_{LEVELS,MAX} always visible Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 08/13] Move MAX_SHARED_LIBS to fs/binfmt_flat.c Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 09/13] Move bp_type_idx to kernel/event/hw_breakpoint.c Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 21:28               ` kbuild test robot
2015-11-03 21:28                 ` kbuild test robot
2015-11-03 21:28                 ` kbuild test robot
2015-11-03 21:28                 ` kbuild test robot
2015-11-03 21:29               ` kbuild test robot
2015-11-03 21:29                 ` kbuild test robot
2015-11-03 21:29                 ` kbuild test robot
2015-11-03 21:29                 ` kbuild test robot
2015-11-04 11:41               ` Peter Zijlstra
2015-11-04 11:41                 ` Peter Zijlstra
2015-11-04 12:21                 ` Peter Zijlstra
2015-11-04 12:21                   ` Peter Zijlstra
2015-11-04 12:21                   ` Peter Zijlstra
2015-11-07  6:44                   ` Palmer Dabbelt
2015-11-07  6:44                     ` Palmer Dabbelt
2015-11-07  6:44                     ` Palmer Dabbelt
2015-11-07  6:44                     ` Palmer Dabbelt
2015-11-07  6:44                     ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 10/13] Move USE_WCACHING to drivers/block/pktcdvd.c Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 11/13] Always define MAX_RAW_MINORS as 2**20 in userspace Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 20:11               ` kbuild test robot
2015-11-03 20:11                 ` kbuild test robot
2015-11-03 20:11                 ` kbuild test robot
2015-11-03 20:11                 ` kbuild test robot
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
     [not found]             ` <1446579994-9937-1-git-send-email-palmer-96lFi9zoCfxBDgjK7y7TUQ@public.gmane.org>
2015-11-03 19:46               ` [PATCH 01/13] Remove #ifdef CONFIG_64BIT from all asm-generic/fcntl.h Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 02/13] Use sys_ni.c instead of #ifdef to disable fork on CONFIG_NOMMU Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 03/13] Move COMPAT_ATM_ADDPARTY to net/atm/svc.c Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 04/13] Always expose MAP_UNINITIALIZED to userspace Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 05/13] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus" Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 06/13] Move ep_take_care_of_epollwakeup() to fs/eventpoll.c Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 07/13] Make FB_BACKLIGHT_{LEVELS,MAX} always visible Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 08/13] Move MAX_SHARED_LIBS to fs/binfmt_flat.c Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 09/13] Move bp_type_idx to kernel/event/hw_breakpoint.c Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 10/13] Move USE_WCACHING to drivers/block/pktcdvd.c Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 11/13] Always define MAX_RAW_MINORS as 2**20 in userspace Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 12/13] Remove AT_VECTOR_SIZE_ARCH on x86 Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` [PATCH 13/13] Re-enable and clean up "check_config()" in headers_check.pl Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46                 ` Palmer Dabbelt
2015-11-10  1:30               ` [PATCH v5] Remove #ifdef CONFIG_* from all userspace headers Palmer Dabbelt
2015-11-10  1:30                 ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 12/13] Remove AT_VECTOR_SIZE_ARCH on x86 Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` [PATCH 13/13] Re-enable and clean up "check_config()" in headers_check.pl Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-03 20:25               ` kbuild test robot
2015-11-03 20:25                 ` kbuild test robot
2015-11-03 20:25                 ` kbuild test robot
2015-11-03 20:25                 ` kbuild test robot
2015-11-03 20:26               ` kbuild test robot
2015-11-03 20:26                 ` kbuild test robot
2015-11-03 20:26                 ` kbuild test robot
2015-11-03 20:26                 ` kbuild test robot
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46               ` Palmer Dabbelt
2015-11-10  1:30             ` [PATCH v5] Remove #ifdef CONFIG_* from all userspace headers Palmer Dabbelt
2015-11-10  1:30               ` Palmer Dabbelt
2015-11-10  1:30             ` Palmer Dabbelt
2015-11-10  1:30               ` Palmer Dabbelt
2015-11-10  1:30               ` [PATCH 01/14] Remove #ifdef CONFIG_64BIT from all asm-generic/fcntl.h Palmer Dabbelt
2015-11-10  1:30                 ` Palmer Dabbelt
2015-11-10  1:30               ` Palmer Dabbelt
2015-11-10  1:30                 ` Palmer Dabbelt
2015-11-10  1:30               ` Palmer Dabbelt
2015-11-10  1:30                 ` Palmer Dabbelt
     [not found]               ` <1447119071-19392-1-git-send-email-palmer-96lFi9zoCfxBDgjK7y7TUQ@public.gmane.org>
2015-11-10  1:30                 ` Palmer Dabbelt
2015-11-10  1:30                   ` Palmer Dabbelt
2015-11-10  1:30                 ` [PATCH 02/14] Use sys_ni.c instead of #ifdef to disable fork on CONFIG_NOMMU Palmer Dabbelt
2015-11-10  1:30                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 03/14] Move COMPAT_ATM_ADDPARTY to net/atm/svc.c Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 04/14] Always expose MAP_UNINITIALIZED to userspace Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 05/14] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus" Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 06/14] Move ep_take_care_of_epollwakeup() to fs/eventpoll.c Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 07/14] Make FB_BACKLIGHT_{LEVELS,MAX} always visible Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 08/14] Move MAX_SHARED_LIBS to fs/binfmt_flat.c Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 09/14] Move bp_type_idx to include/linux/hw_breakpoint.h Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 12/14] Remove AT_VECTOR_SIZE_ARCH on x86 Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:31                 ` [PATCH 14/14] Re-enable and clean up "check_config()" in headers_check.pl Palmer Dabbelt
2015-11-10  1:31                   ` Palmer Dabbelt
2015-11-10  1:30               ` [PATCH 02/14] Use sys_ni.c instead of #ifdef to disable fork on CONFIG_NOMMU Palmer Dabbelt
2015-11-10  1:30                 ` Palmer Dabbelt
2015-11-10  1:30               ` Palmer Dabbelt
2015-11-10  1:30                 ` Palmer Dabbelt
2015-11-10  1:30               ` Palmer Dabbelt
2015-11-10  1:30                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 03/14] Move COMPAT_ATM_ADDPARTY to net/atm/svc.c Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2023-02-10 14:55                 ` Thomas Huth
2023-02-10 15:10                   ` Arnd Bergmann
2015-11-10  1:31               ` [PATCH 04/14] Always expose MAP_UNINITIALIZED to userspace Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 05/14] Split FDPIC "struct elf_prstatus" to "struct elf_fdpic_prstatus" Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 06/14] Move ep_take_care_of_epollwakeup() to fs/eventpoll.c Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2023-02-10 14:45                 ` Thomas Huth
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 07/14] Make FB_BACKLIGHT_{LEVELS,MAX} always visible Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 08/14] Move MAX_SHARED_LIBS to fs/binfmt_flat.c Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 09/14] Move bp_type_idx to include/linux/hw_breakpoint.h Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 10/14] Move USE_WCACHING to drivers/block/pktcdvd.c Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 11/14] Always define MAX_RAW_MINORS as 2**20 in userspace Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 12/14] Remove AT_VECTOR_SIZE_ARCH on x86 Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 13/14] Hide CONFIG_PHY_RAM_BASE_ADDRESS from userspace Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` [PATCH 14/14] Re-enable and clean up "check_config()" in headers_check.pl Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:31               ` Palmer Dabbelt
2015-11-10  1:31                 ` Palmer Dabbelt
2015-11-10  1:30             ` [PATCH v5] Remove #ifdef CONFIG_* from all userspace headers Palmer Dabbelt
2015-11-10  1:30               ` Palmer Dabbelt
2015-11-03 19:46           ` [PATCH v4] " Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-11-03 19:46           ` Palmer Dabbelt
2015-11-03 19:46             ` Palmer Dabbelt
2015-09-14 22:50         ` [PATCH v3] " Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-10 11:15       ` [PATCH] Remove #ifdef CONFIG_64BIT from all asm-generic/fcntl.h David Howells
2015-09-10 11:15         ` David Howells
2015-09-10 11:15         ` David Howells
2015-09-10 11:18       ` David Howells
2015-09-10 11:18         ` David Howells
2015-09-10 11:18         ` David Howells
2015-09-14 22:50         ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt
2015-09-14 22:50           ` Palmer Dabbelt

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=1446579994-9937-6-git-send-email-palmer@dabbelt.com \
    --to=palmer@dabbelt.com \
    --cc=arnd@arndb.de \
    --cc=viro@zeniv.linux.org.uk \
    /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.