diff for duplicates of <20170805200050.GA24804@altlinux.org> diff --git a/a/1.txt b/N1/1.txt index 7a6a1ff..e282e00 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,8 +1,8 @@ The latest change of compat_sys_sigpending has broken it in two ways. First, it tries to write 4 bytes more than userspace expects: -sizeof(old_sigset_t) = sizeof(long) = 8 instead of -sizeof(compat_old_sigset_t) = sizeof(u32) = 4. +sizeof(old_sigset_t) == sizeof(long) == 8 instead of +sizeof(compat_old_sigset_t) == sizeof(u32) == 4. Second, on big endian architectures these bytes are being written in the wrong order. @@ -28,7 +28,7 @@ index caed913..7e33f8c 100644 +#ifdef __BIG_ENDIAN sigset_t set; - int err = do_sigpending(&set, sizeof(old_sigset_t)); -- if (err = 0) +- if (err == 0) - if (copy_to_user(set32, &set, sizeof(old_sigset_t))) - err = -EFAULT; + int err = do_sigpending(&set, sizeof(set.sig[0])); diff --git a/a/content_digest b/N1/content_digest index d2fb0b1..26f927f 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,6 +1,6 @@ "From\0Dmitry V. Levin <ldv@altlinux.org>\0" "Subject\0[PATCH] Fix compat_sys_sigpending breakage introduced by v4.13-rc1~6^2~12\0" - "Date\0Sat, 05 Aug 2017 20:00:50 +0000\0" + "Date\0Sat, 5 Aug 2017 23:00:50 +0300\0" "To\0Al Viro <viro@zeniv.linux.org.uk>\0" "Cc\0Ingo Molnar <mingo@kernel.org>" Thomas Gleixner <tglx@linutronix.de> @@ -14,8 +14,8 @@ "The latest change of compat_sys_sigpending has broken it in two ways.\n" "\n" "First, it tries to write 4 bytes more than userspace expects:\n" - "sizeof(old_sigset_t) = sizeof(long) = 8 instead of\n" - "sizeof(compat_old_sigset_t) = sizeof(u32) = 4.\n" + "sizeof(old_sigset_t) == sizeof(long) == 8 instead of\n" + "sizeof(compat_old_sigset_t) == sizeof(u32) == 4.\n" "\n" "Second, on big endian architectures these bytes are being written\n" "in the wrong order.\n" @@ -41,7 +41,7 @@ "+#ifdef __BIG_ENDIAN\n" " \tsigset_t set;\n" "-\tint err = do_sigpending(&set, sizeof(old_sigset_t)); \n" - "-\tif (err = 0)\n" + "-\tif (err == 0)\n" "-\t\tif (copy_to_user(set32, &set, sizeof(old_sigset_t)))\n" "-\t\t\terr = -EFAULT;\n" "+\tint err = do_sigpending(&set, sizeof(set.sig[0]));\n" @@ -57,4 +57,4 @@ "-- \n" ldv -40653e6bba61e1c58602cbc9f3f672161e9a065888dadc539805130a1cefe3fa +3533214f3600b59e34f348cc35f9e8417b8003420ed03c956c24fadeb4540e3f
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.