Skip to contentSkip to conversation

uml: Fix build with recent glibc

PATCH In review Andi Kleen 3 participants 3 messages Mar 1, 2018 – Mar 2, 2018

Subsystems (2)
lore
Share & tools
lore

Andi Kleen

author
#0 lore raw

PATCH 1/1 uml: Fix build with recent glibc

From: Andi Kleen <[email protected]>

Newer glibc did some include namespace "cleanups" and removed struct ucontext and friends. This already broke a lot of software, and UML seems to be the latest victim.

Use the typedefs which are still available. They also work on older glibcs.

---
 arch/um/os-Linux/signal.c | 2 +-
 arch/x86/um/stub_segv.c   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
arch/um/os-Linux/signal.c +1 -1
index a86d7cc2c2d8..a5c0c909c48b 100644
@@ -159,7 +159,7 @@ static void (*handlers[_NSIG])(int sig, struct siginfo *si, mcontext_t *mc) = {
 
 static void hard_handler(int sig, siginfo_t *si, void *p)
 {
-	struct ucontext *uc = p;
+	ucontext_t *uc = p;
 	mcontext_t *mc = &uc->uc_mcontext;
 	unsigned long pending = 1UL << sig;
 
arch/x86/um/stub_segv.c +1 -1
index 1518d2805ae8..fd6825537b97 100644
@@ -10,7 +10,7 @@
 void __attribute__ ((__section__ (".__syscall_stub")))
 stub_segv_handler(int sig, siginfo_t *info, void *p)
 {
-	struct ucontext *uc = p;
+	ucontext_t *uc = p;
 
 	GET_FAULTINFO_FROM_MC(*((struct faultinfo *) STUB_DATA),
 			      &uc->uc_mcontext);
Signature · 1 line
2.14.3
Reviewed-by on v1 1/1
#1 lore raw
Quoted 10 lines · On Wed, 28 Feb 2018 19:08:44 -0800 Andi Kleen <[email protected]> wrote:

From: Andi Kleen <[email protected]>

Newer glibc did some include namespace "cleanups" and removed struct ucontext and friends. This already broke a lot of software, and UML seems to be the latest victim.

Use the typedefs which are still available. They also work on older glibcs.

same patch that I sent on Feb 1st. Hope you can get more traction than I did.

https://www.mail-archive.com/[email protected]/msg10071.html

#2 lore raw

Am Freitag, 2. März 2018, 03:30:23 CET schrieb Jesse Brandeburg:

Quoted 14 lines

On Wed, 28 Feb 2018 19:08:44 -0800

Quoted 10 lines · Andi Kleen

From: Andi Kleen <[email protected]>

Newer glibc did some include namespace "cleanups" and removed struct ucontext and friends. This already broke a lot of software, and UML seems to be the latest victim.

Use the typedefs which are still available. They also work on older glibcs.

Quoted 7 lines

same patch that I sent on Feb 1st. Hope you can get more traction than I did.

https://www.mail-archive.com/[email protected]/msg
10071.html

Sorry guys, due to various reasons in the last months I had not much time for UML. But things get better now.
The fix from the first sender is in -next and will hit Linus' tree soon.

Thanks,
//richard