r2990 - in trunk/kernel/source: kernel-source-2.6.10-2.6.10/debian kernel-source-2.6.10-2.6.10/debian/patches kernel-source-2.6.10-2.6.10/debian/patches/series kernel-source-2.6.11-2.6.11/debian kernel-source-2.6.11-2.6.11/debian/patches kernel-source-2.6.11-2.6.11/debian/patches/series kernel-source-2.6.8-2.6.8/debian kernel-source-2.6.8-2.6.8/debian/patches kernel-source-2.6.8-2.6.8/debian/patches/series
Jurij Smakov
jurij-guest@costa.debian.org
Sun, 17 Apr 2005 23:29:24 +0000
Author: jurij-guest
Date: 2005-04-17 23:29:21 +0000 (Sun, 17 Apr 2005)
New Revision: 2990
Added:
trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/patches/sparc64-sigpoll-2.6.10.dpatch
trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/patches/sparc64-sigpoll-2.6.11.patch
trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/patches/sparc64-sigpoll-2.6.8.dpatch
Modified:
trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/changelog
trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/patches/series/2.6.10-7
trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/changelog
trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/patches/series/2.6.11-4
trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/changelog
trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/patches/series/2.6.8-16
Log:
Added sparc64-sigpoll patch which fixes incorrect behaviour
of fcntl's F_NOTIFY function (#272683) to all 2.6 branches.
Modified: trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/changelog
===================================================================
--- trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/changelog 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/changelog 2005-04-17 23:29:21 UTC (rev 2990)
@@ -1,5 +1,9 @@
kernel-source-2.6.10 (2.6.10-7) UNRELEASED; urgency=low
+ * sparc64-sigpoll-2.6.10.dpatch:
+ [sparc64] Correctly fill out the siginfo_t fields upon delivery
+ of SIGPOLL and friends (Jurij Smakov)
+
* [powerpc] replaced pegasos marvell gigabit ethernet driver by the backported
version (Sven Luther)
* [sparc] Added sparc-sunsab-serial-lockup.dpatch to eliminate the serial
Modified: trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/patches/series/2.6.10-7
===================================================================
--- trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/patches/series/2.6.10-7 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/patches/series/2.6.10-7 2005-04-17 23:29:21 UTC (rev 2990)
@@ -2,3 +2,4 @@
+ powerpc-mv643xx-enet.dpatch
+ powerpc-mv643xx-eth-pegasos.dpatch
+ sparc-sunsab-serial-lockup.dpatch
++ sparc64-sigpoll-2.6.10.dpatch
Added: trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/patches/sparc64-sigpoll-2.6.10.dpatch
===================================================================
--- trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/patches/sparc64-sigpoll-2.6.10.dpatch 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.10-2.6.10/debian/patches/sparc64-sigpoll-2.6.10.dpatch 2005-04-17 23:29:21 UTC (rev 2990)
@@ -0,0 +1,35 @@
+#> In Debian's bug 272683 [0] submitter describes incorrect behavior of the
+#> F_NOTIFY function of fcntl(), which reports the wrong number of the
+#> file descriptor, on which the event has occured. I believe that the
+#> culprit in this case is the copy_siginfo_to_user32() function in
+#> arch/sparc64/kernel/signal32.c. Comparison with other arches (like
+#> ppc64), shows that the __SI_POLL branch in the case statement should
+#> fill out the si_band and si_fd fields of the siginfo_t structure (si_fd is
+#> used by fcntl() to pass the fd number back to user). Currently it does not
+#> do that. Attached patch (against 2.6.11.7) separates __SI_FAULT and
+#> __SI_POLL branches and does (presumably) the right thing in the latter by
+#> copying the si_band and si_fd into the siginfo_t passed to user. With this
+#> change the test program attached to the bug [0] works as expected (tested
+#> on 2.6.8, against which the original bug was filed).
+#
+# Refs: http://marc.theaimsgroup.com/?l=linux-sparc&m=111363552425781&w=2
+# http://marc.theaimsgroup.com/?l=linux-sparc&m=111377422704236&w=2
+#
+# -- Jurij Smakov <jurij@wooyd.org> Sun, 17 Apr 2005 19:12:11 -0400
+--- a/arch/sparc64/kernel/signal32.c 2004-12-24 16:33:48.000000000 -0500
++++ b/arch/sparc64/kernel/signal32.c 2005-04-17 18:48:25.000000000 -0400
+@@ -192,10 +192,13 @@
+ err |= __put_user(from->si_uid, &to->si_uid);
+ break;
+ case __SI_FAULT >> 16:
+- case __SI_POLL >> 16:
+ err |= __put_user(from->si_trapno, &to->si_trapno);
+ err |= __put_user((long)from->si_addr, &to->si_addr);
+ break;
++ case __SI_POLL >> 16:
++ err |= __put_user(from->si_band, &to->si_band);
++ err |= __put_user(from->si_fd, &to->si_fd);
++ break;
+ case __SI_RT >> 16: /* This is not generated by the kernel as of now. */
+ case __SI_MESGQ >> 16:
+ err |= __put_user(from->si_pid, &to->si_pid);
Modified: trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/changelog
===================================================================
--- trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/changelog 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/changelog 2005-04-17 23:29:21 UTC (rev 2990)
@@ -1,5 +1,9 @@
kernel-source-2.6.11 (2.6.11-4) UNRELEASED; urgency=low
+ * sparc64-sigpoll-2.6.11.patch:
+ [sparc64] Correctly fill out the siginfo_t fields upon delivery
+ of SIGPOLL and friends (Jurij Smakov)
+
* [sparc64] Replaced sparc-sunsab-serial-lockup.patch by a more
official version approved by upstream (sunsab-uart-update-timeout.patch)
which appears to perform marginally better (Jurij Smakov).
Modified: trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/patches/series/2.6.11-4
===================================================================
--- trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/patches/series/2.6.11-4 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/patches/series/2.6.11-4 2005-04-17 23:29:21 UTC (rev 2990)
@@ -1,3 +1,4 @@
- sparc-sunsab-serial-lockup.patch
+ sunsab-uart-update-timeout.patch
+ sparc64-compat-nanoseconds.patch
++ sparc64-sigpoll-2.6.11.patch
Added: trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/patches/sparc64-sigpoll-2.6.11.patch
===================================================================
--- trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/patches/sparc64-sigpoll-2.6.11.patch 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.11-2.6.11/debian/patches/sparc64-sigpoll-2.6.11.patch 2005-04-17 23:29:21 UTC (rev 2990)
@@ -0,0 +1,35 @@
+#> In Debian's bug 272683 [0] submitter describes incorrect behavior of the
+#> F_NOTIFY function of fcntl(), which reports the wrong number of the
+#> file descriptor, on which the event has occured. I believe that the
+#> culprit in this case is the copy_siginfo_to_user32() function in
+#> arch/sparc64/kernel/signal32.c. Comparison with other arches (like
+#> ppc64), shows that the __SI_POLL branch in the case statement should
+#> fill out the si_band and si_fd fields of the siginfo_t structure (si_fd is
+#> used by fcntl() to pass the fd number back to user). Currently it does not
+#> do that. Attached patch (against 2.6.11.7) separates __SI_FAULT and
+#> __SI_POLL branches and does (presumably) the right thing in the latter by
+#> copying the si_band and si_fd into the siginfo_t passed to user. With this
+#> change the test program attached to the bug [0] works as expected (tested
+#> on 2.6.8, against which the original bug was filed).
+#
+# Refs: http://marc.theaimsgroup.com/?l=linux-sparc&m=111363552425781&w=2
+# http://marc.theaimsgroup.com/?l=linux-sparc&m=111377422704236&w=2
+#
+# -- Jurij Smakov <jurij@wooyd.org> Sun, 17 Apr 2005 19:12:11 -0400
+--- a/arch/sparc64/kernel/signal32.c 2005-04-07 14:58:42.000000000 -0400
++++ b/arch/sparc64/kernel/signal32.c 2005-04-16 03:01:00.162300632 -0400
+@@ -192,10 +192,13 @@
+ err |= __put_user(from->si_uid, &to->si_uid);
+ break;
+ case __SI_FAULT >> 16:
+- case __SI_POLL >> 16:
+ err |= __put_user(from->si_trapno, &to->si_trapno);
+ err |= __put_user((unsigned long)from->si_addr, &to->si_addr);
+ break;
++ case __SI_POLL >> 16:
++ err |= __put_user(from->si_band, &to->si_band);
++ err |= __put_user(from->si_fd, &to->si_fd);
++ break;
+ case __SI_RT >> 16: /* This is not generated by the kernel as of now. */
+ case __SI_MESGQ >> 16:
+ err |= __put_user(from->si_pid, &to->si_pid);
Modified: trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/changelog
===================================================================
--- trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/changelog 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/changelog 2005-04-17 23:29:21 UTC (rev 2990)
@@ -1,5 +1,9 @@
kernel-source-2.6.8 (2.6.8-16) UNRELEASED; urgency=low
+ * sparc64-sigpoll-2.6.8.dpatch:
+ [sparc64] Correctly fill out the siginfo_t fields upon delivery
+ of SIGPOLL and friends (Jurij Smakov) (closes: #272683)
+
* smbfs-overrun.dpatch:
Reinstated smbfs-overrun.dpatch to complete fix for CAN-2004-1191
(Simon Horman) (closes: #300163)
Modified: trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/patches/series/2.6.8-16
===================================================================
--- trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/patches/series/2.6.8-16 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/patches/series/2.6.8-16 2005-04-17 23:29:21 UTC (rev 2990)
@@ -26,3 +26,4 @@
+ arch-ia64-syscall-audit.dpatch
+ drivers-i2c-chips-eprom.dpatch
+ lib-rwsem-spinlock.dpatch
++ sparc64-sigpoll-2.6.8.dpatch
Added: trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/patches/sparc64-sigpoll-2.6.8.dpatch
===================================================================
--- trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/patches/sparc64-sigpoll-2.6.8.dpatch 2005-04-17 19:43:56 UTC (rev 2989)
+++ trunk/kernel/source/kernel-source-2.6.8-2.6.8/debian/patches/sparc64-sigpoll-2.6.8.dpatch 2005-04-17 23:29:21 UTC (rev 2990)
@@ -0,0 +1,35 @@
+#> In Debian's bug 272683 [0] submitter describes incorrect behavior of the
+#> F_NOTIFY function of fcntl(), which reports the wrong number of the
+#> file descriptor, on which the event has occured. I believe that the
+#> culprit in this case is the copy_siginfo_to_user32() function in
+#> arch/sparc64/kernel/signal32.c. Comparison with other arches (like
+#> ppc64), shows that the __SI_POLL branch in the case statement should
+#> fill out the si_band and si_fd fields of the siginfo_t structure (si_fd is
+#> used by fcntl() to pass the fd number back to user). Currently it does not
+#> do that. Attached patch (against 2.6.11.7) separates __SI_FAULT and
+#> __SI_POLL branches and does (presumably) the right thing in the latter by
+#> copying the si_band and si_fd into the siginfo_t passed to user. With this
+#> change the test program attached to the bug [0] works as expected (tested
+#> on 2.6.8, against which the original bug was filed).
+#
+# Refs: http://marc.theaimsgroup.com/?l=linux-sparc&m=111363552425781&w=2
+# http://marc.theaimsgroup.com/?l=linux-sparc&m=111377422704236&w=2
+#
+# -- Jurij Smakov <jurij@wooyd.org> Sun, 17 Apr 2005 19:12:11 -0400
+--- a/arch/sparc64/kernel/signal32.c 2004-08-14 01:36:10.000000000 -0400
++++ b/arch/sparc64/kernel/signal32.c 2005-04-16 01:39:32.000000000 -0400
+@@ -130,10 +130,13 @@
+ err |= __put_user(from->si_uid, &to->si_uid);
+ break;
+ case __SI_FAULT >> 16:
+- case __SI_POLL >> 16:
+ err |= __put_user(from->si_trapno, &to->si_trapno);
+ err |= __put_user((long)from->si_addr, &to->si_addr);
+ break;
++ case __SI_POLL >> 16:
++ err |= __put_user(from->si_band, &to->si_band);
++ err |= __put_user(from->si_fd, &to->si_fd);
++ break;
+ case __SI_RT >> 16: /* This is not generated by the kernel as of now. */
+ case __SI_MESGQ >> 16:
+ err |= __put_user(from->si_pid, &to->si_pid);