From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: architectures that still need to remove set_fs() Date: Tue, 18 Jan 2022 08:48:36 +0100 Message-ID: <20220118074836.GA20994@lst.de> Mime-Version: 1.0 Return-path: Content-Disposition: inline List-ID: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Richard Henderson , Ivan Kokshaysky , Matt Turner , Vineet Gupta , Guo Ren , Brian Cain , Michal Simek , Nick Hu , Greentime Hu , Vincent Chen , Dinh Nguyen , Jonas Bonn , Stefan Kristiansson , Stafford Horne , Yoshinori Sato , Rich Felker , "David S. Miller" , Chris Zankel , Max Filippov Cc: linux-alpha@vger.kernel.org, linux-snps-arc@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, linux-ia64@vger.kernel.org, openrisc@lists.librecores.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-xtensa@linux-xtensa.org, linux-arch@linux-xtensa.org, linux-kernel@linux-xtensa.org Hi all, you are in this list because your architecture still implements and uses address space overrides using set_fs(), which are deprecated and have been removed from all mainstream architecture ports. To help cleanup the core kernel it would be great to make progress on removing set_fs entirely. The following steps are required: (1) implement the __get_kernel_nofault and __put_kernel_nofault helper to access kernel memory without page faults, replacing the get/put_user under set_fs(KERNEL_DS) abuse. Mips has a good example for a trivial implementation for architectures that use a common address space in commit 04324f44cb69 (2) remove any architecture specific use of such constructs. This only affects ia64 and sh. (3) stop selecting the SET_FS and remove all the set_fs-related infrastructure. The above mips commit is a good guide once again. Thanks!