[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