From patchwork Thu Feb 6 06:54:02 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Greg Kroah-Hartman X-Patchwork-Id: 37704 Received: (qmail 31111 invoked by alias); 6 Feb 2020 06:55:04 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 31084 invoked by uid 89); 6 Feb 2020 06:55:04 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-6.1 required=5.0 tests=BAYES_00, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_SBL_CSS, SORTED_RECIPS autolearn=ham version=3.3.1 spammy=sparc32, titled, HContent-Transfer-Encoding:8bit X-HELO: mail.kernel.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1580972101; bh=D4ufECierJkc6AFuHV7wm6GfEHpQlJWBG4m+kcsa47g=; h=Subject:To:Cc:From:Date:From; b=GeLhTXTkEpa20z+aTiJjtzyVNDaucSUmpphBVHHLpif8lPf1njMfY1bHfreCVSD9D th1uDttEMnWDGoyZxzcqb169+b72Z1Dcly/eOjATsOzbaPYJxu32cG3M/T1kYUpAph qbXZ+e+Z5WPnIBBh2J2vjgP691VE3Mv+NxBWfkZA= Subject: Patch "[PATCH] sparc32: fix struct ipc64_perm type definition" has been added to the 5.5-stable tree To: arnd@arndb.de, dalias@libc.org, davem@davemloft.net, gregkh@linuxfoundation.org, ldv@altlinux.org, libc-alpha@sourceware.org, sam@ravnborg.org Cc: From: Date: Thu, 06 Feb 2020 06:54:02 +0000 Message-ID: <158097204221066@kroah.com> MIME-Version: 1.0 X-stable: commit X-Patchwork-Hint: ignore This is a note to let you know that I've just added the patch titled [PATCH] sparc32: fix struct ipc64_perm type definition to the 5.5-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: sparc32-fix-struct-ipc64_perm-type-definition.patch and it can be found in the queue-5.5 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let know about it. From foo@baz Thu 06 Feb 2020 06:48:21 AM GMT From: Arnd Bergmann Date: Tue, 14 Jan 2020 14:26:14 +0100 Subject: [PATCH] sparc32: fix struct ipc64_perm type definition From: Arnd Bergmann [ Upstream commit 34ca70ef7d3a9fa7e89151597db5e37ae1d429b4 ] As discussed in the strace issue tracker, it appears that the sparc32 sysvipc support has been broken for the past 11 years. It was however working in compat mode, which is how it must have escaped most of the regular testing. The problem is that a cleanup patch inadvertently changed the uid/gid fields in struct ipc64_perm from 32-bit types to 16-bit types in uapi headers. Both glibc and uclibc-ng still use the original types, so they should work fine with compat mode, but not natively. Change the definitions to use __kernel_uid32_t and __kernel_gid32_t again. Fixes: 83c86984bff2 ("sparc: unify ipcbuf.h") Link: https://github.com/strace/strace/issues/116 Cc: # v2.6.29 Cc: Sam Ravnborg Cc: "Dmitry V . Levin" Cc: Rich Felker Cc: libc-alpha@sourceware.org Signed-off-by: Arnd Bergmann Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- arch/sparc/include/uapi/asm/ipcbuf.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) Patches currently in stable-queue which might be from arnd@arndb.de are queue-5.5/sparc32-fix-struct-ipc64_perm-type-definition.patch queue-5.5/maintainers-correct-entries-for-isdn-misdn-section.patch --- a/arch/sparc/include/uapi/asm/ipcbuf.h +++ b/arch/sparc/include/uapi/asm/ipcbuf.h @@ -17,19 +17,19 @@ struct ipc64_perm { - __kernel_key_t key; - __kernel_uid_t uid; - __kernel_gid_t gid; - __kernel_uid_t cuid; - __kernel_gid_t cgid; + __kernel_key_t key; + __kernel_uid32_t uid; + __kernel_gid32_t gid; + __kernel_uid32_t cuid; + __kernel_gid32_t cgid; #ifndef __arch64__ - unsigned short __pad0; + unsigned short __pad0; #endif - __kernel_mode_t mode; - unsigned short __pad1; - unsigned short seq; - unsigned long long __unused1; - unsigned long long __unused2; + __kernel_mode_t mode; + unsigned short __pad1; + unsigned short seq; + unsigned long long __unused1; + unsigned long long __unused2; }; #endif /* __SPARC_IPCBUF_H */