[Pkg-uml-commit] user-mode-linux: Changes to 'master'
Ritesh Raj Sarraf
rrs at moszumanska.debian.org
Tue Jan 30 13:30:24 UTC 2018
debian/changelog | 7 ++++
debian/patches/08-use-posix-ucontext.patch | 42 +++++++++++++++++++++++++++++
debian/patches/series | 1
3 files changed, 50 insertions(+)
New commits:
commit 96e32ffb16e513a3a3ed174f70c1a9b7bf0ff1f8
Author: Ritesh Raj Sarraf <rrs at debian.org>
Date: Tue Jan 30 17:39:33 2018 +0530
Update changelog for release to Unstable
diff --git a/debian/changelog b/debian/changelog
index cdbebd9..2d93f78 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+user-mode-linux (4.14-1um-2) unstable; urgency=medium
+
+ * [5b667b5] Use POSIX ucontext_t instead of struct ucontext
+ (Closes: #887761)
+
+ -- Ritesh Raj Sarraf <rrs at debian.org> Tue, 30 Jan 2018 17:39:04 +0530
+
user-mode-linux (4.14-1um-1) unstable; urgency=medium
* [8fdb9d1] Newer Linux version, 4.14
commit 5b667b5dc52a123c3da11ab4d06ae94a34bf2db8
Author: Ritesh Raj Sarraf <rrs at debian.org>
Date: Tue Jan 30 17:35:46 2018 +0530
Use POSIX ucontext_t instead of struct ucontext
Closes: #887761
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=aad882d0438793a155caf6babcfa22dee9f08608
glibc 2.26 removed the 'struct ucontext' to "improve" POSIX compliance
and break programs, including User Mode Linux. Fix User Mode Linux
by using POSIX ucontext_t.
This fixes:
arch/um/os-Linux/signal.c: In function 'hard_handler':
arch/um/os-Linux/signal.c:163:22: error: dereferencing pointer to incomplete type 'struct ucontext'
mcontext_t *mc = &uc->uc_mcontext;
arch/x86/um/stub_segv.c: In function 'stub_segv_handler':
arch/x86/um/stub_segv.c:16:13: error: dereferencing pointer to incomplete type 'struct ucontext'
&uc->uc_mcontext);
diff --git a/debian/patches/08-use-posix-ucontext.patch b/debian/patches/08-use-posix-ucontext.patch
new file mode 100644
index 0000000..e72c0a2
--- /dev/null
+++ b/debian/patches/08-use-posix-ucontext.patch
@@ -0,0 +1,42 @@
+um: Use POSIX ucontext_t instead of struct ucontext
+
+glibc 2.26 removed the 'struct ucontext' to "improve" POSIX compliance
+and break programs, including User Mode Linux. Fix User Mode Linux
+by using POSIX ucontext_t.
+
+This fixes:
+
+arch/um/os-Linux/signal.c: In function 'hard_handler':
+arch/um/os-Linux/signal.c:163:22: error: dereferencing pointer to incomplete type 'struct ucontext'
+ mcontext_t *mc = &uc->uc_mcontext;
+arch/x86/um/stub_segv.c: In function 'stub_segv_handler':
+arch/x86/um/stub_segv.c:16:13: error: dereferencing pointer to incomplete type 'struct ucontext'
+ &uc->uc_mcontext);
+
+Cc: stable at vger.kernel.org
+Signed-off-by: Krzysztof Mazur <krzysiek at podlesie.net>
+Signed-off-by: Richard Weinberger <richard at nod.at>
+
+https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=aad882d0438793a155caf6babcfa22dee9f08608
+--- a/arch/um/os-Linux/signal.c
++++ b/arch/um/os-Linux/signal.c
+@@ -159,7 +159,7 @@
+
+ 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;
+
+--- a/arch/x86/um/stub_segv.c
++++ b/arch/x86/um/stub_segv.c
+@@ -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);
diff --git a/debian/patches/series b/debian/patches/series
index 29faa0f..bf03a86 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@
05_fix_static_build.patch
06-fix-linkage-on-386-arch.patch
07-remove-rpath.patch
+08-use-posix-ucontext.patch
More information about the Pkg-uml-commit
mailing list