From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C9CB9C433DF for ; Sat, 27 Jun 2020 13:04:02 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 84FA62137B for ; Sat, 27 Jun 2020 13:04:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726402AbgF0NEC (ORCPT ); Sat, 27 Jun 2020 09:04:02 -0400 Received: from out01.mta.xmission.com ([166.70.13.231]:57696 "EHLO out01.mta.xmission.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726177AbgF0NEB (ORCPT ); Sat, 27 Jun 2020 09:04:01 -0400 Received: from in01.mta.xmission.com ([166.70.13.51]) by out01.mta.xmission.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jpAUs-0005jA-Kz; Sat, 27 Jun 2020 07:03:54 -0600 Received: from ip68-227-160-95.om.om.cox.net ([68.227.160.95] helo=x220.xmission.com) by in01.mta.xmission.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.87) (envelope-from ) id 1jpAUr-0008TJ-Nz; Sat, 27 Jun 2020 07:03:54 -0600 From: ebiederm@xmission.com (Eric W. Biederman) To: Tetsuo Handa Cc: Linus Torvalds , David Miller , Greg Kroah-Hartman , Alexei Starovoitov , Kees Cook , Andrew Morton , Alexei Starovoitov , Al Viro , bpf , linux-fsdevel , Daniel Borkmann , Jakub Kicinski , Masahiro Yamada , Gary Lin , Bruno Meneguele , LSM List , Casey Schaufler References: <20200625095725.GA3303921@kroah.com> <778297d2-512a-8361-cf05-42d9379e6977@i-love.sakura.ne.jp> <20200625120725.GA3493334@kroah.com> <20200625.123437.2219826613137938086.davem@davemloft.net> <87pn9mgfc2.fsf_-_@x220.int.ebiederm.org> <40720db5-92f0-4b5b-3d8a-beb78464a57f@i-love.sakura.ne.jp> Date: Sat, 27 Jun 2020 07:59:25 -0500 In-Reply-To: <40720db5-92f0-4b5b-3d8a-beb78464a57f@i-love.sakura.ne.jp> (Tetsuo Handa's message of "Sat, 27 Jun 2020 20:38:33 +0900") Message-ID: <87366g8y1e.fsf@x220.int.ebiederm.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-XM-SPF: eid=1jpAUr-0008TJ-Nz;;;mid=<87366g8y1e.fsf@x220.int.ebiederm.org>;;;hst=in01.mta.xmission.com;;;ip=68.227.160.95;;;frm=ebiederm@xmission.com;;;spf=neutral X-XM-AID: U2FsdGVkX1/YkAZr0C5jEfgsil9qPDA/pLV/aYtliaA= X-SA-Exim-Connect-IP: 68.227.160.95 X-SA-Exim-Mail-From: ebiederm@xmission.com Subject: Re: [PATCH 00/14] Make the user mode driver code a better citizen X-SA-Exim-Version: 4.2.1 (built Thu, 05 May 2016 13:38:54 -0600) X-SA-Exim-Scanned: Yes (on in01.mta.xmission.com) Sender: owner-linux-security-module@vger.kernel.org Precedence: bulk List-ID: Tetsuo Handa writes: > On 2020/06/26 21:51, Eric W. Biederman wrote: >> Please let me know if you see any bugs. Once the code review is >> finished I plan to take this through my tree. > [sniped example code] > causes > > BUG_ON(!(task->flags & PF_KTHREAD)); > > in __fput_sync(). Do we want to forbid umd_load_blob() from process context (e.g. > upon module initialization time) ? Interesting. I had not realized that fput_sync would not work from module context. Forcing the fput to finish is absolutely necessary. Otherwise the file will still be open for write and deny_write_access in execve will fail. Can you try replacing the __fput_sync with: fput(file); flush_delayed_fput(); task_work_run(); Given that there is a big requirement for the code to run before init I don't necessarily think it is a problem __fput_sync is a problem. But it also seems silly to forbid modules if we can easily fix the code. Eric