Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp5521058imm; Tue, 16 Oct 2018 11:31:15 -0700 (PDT) X-Google-Smtp-Source: ACcGV62PsyI26E8zuMKttlYoN1jl1hbMVU/vtuUH3UZkIjk47qlWHZbQq97ds+NfEbAZyARcQknJ X-Received: by 2002:a62:2315:: with SMTP id j21-v6mr23447289pfj.90.1539714675740; Tue, 16 Oct 2018 11:31:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1539714675; cv=none; d=google.com; s=arc-20160816; b=e8ILCEreBKUORLBkDFqeLd6BkyZBxqhQTfmHD5oxK9dV6F1CfKCsQWb2OyVSGfysCN lLzOtJjqZvL40PutgfIbshLWNOUFzwVWSc1A0LhKCeabHTigq/+goijjiivPnGfOwcQY U8NajtFJF1xxQSfdWQqz8AqYGTvjs/ovZv4+YZM78v48f9JYuJckwg45G24FA9vP6JCS DPRo0wXKNUO0sMzgStnorv0ueuZHrsjdMKt4O6IY974TSMDSX7hWIt3rStctuYK7RkEI hQYBONzHi10DkkVM6hbTCA5RoOoOqOtqLPJHyAVuYw5a0qYmGGE1ClMt7gIRaMMcXAq6 Zlxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date; bh=9KYzymD4JKVium6ulWRf1UBSIv56TdmBkLS3av25Y5k=; b=g9o4647qf/Ap2B+nogz923H/JLA5NzVxU6vEMv7V0Py1vKJEWc9KzolpOTVxhfIhzD QdLWFLWDoFJ6s6e00DEsTfaCFurAGt4b3vD2Pv1bs+r4lX1nhLBpac4dpeL/oBOJdNKh qeT43kQ6QWI0yz/zEoMu4MWEPmnE5U9MHURjAWtJYO/O88omUjw1yfOPSt/i7HBNHj2b jl8Q+5u1Q4z2TU2hzcTu+Hevjd+3qdUFn+uvLx+TDhG9crQGDhRsc7qKhFDSfkiIzgyH /kpDQjjUnjU6GqeKTxd0CLOrqEOfRxH/phxAYcU+kmTVktEgYSzXBPA59jxIH66WEmHE WpQQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v2-v6si15435002pfa.103.2018.10.16.11.31.00; Tue, 16 Oct 2018 11:31:15 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727416AbeJQCWE (ORCPT + 99 others); Tue, 16 Oct 2018 22:22:04 -0400 Received: from mail.kernel.org ([198.145.29.99]:55354 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727006AbeJQCWE (ORCPT ); Tue, 16 Oct 2018 22:22:04 -0400 Received: from gandalf.local.home (cpe-66-24-56-78.stny.res.rr.com [66.24.56.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 6545120645; Tue, 16 Oct 2018 18:30:18 +0000 (UTC) Date: Tue, 16 Oct 2018 14:30:16 -0400 From: Steven Rostedt To: Mathieu Desnoyers Cc: Peter Zijlstra , "Paul E . McKenney" , Boqun Feng , linux-kernel@vger.kernel.org, linux-api@vger.kernel.org, Thomas Gleixner , Andy Lutomirski , Dave Watson , Paul Turner , Andrew Morton , Russell King , Ingo Molnar , "H . Peter Anvin" , Andi Kleen , Chris Lameter , Ben Maurer , Josh Triplett , Linus Torvalds , Catalin Marinas , Will Deacon , Michael Kerrisk , Joel Fernandes , Sergey Senozhatsky Subject: Re: [RFC PATCH for 4.21 04/16] mm: Introduce vm_map_user_ram, vm_unmap_user_ram Message-ID: <20181016143016.10da89bd@gandalf.local.home> In-Reply-To: <20181010191936.7495-5-mathieu.desnoyers@efficios.com> References: <20181010191936.7495-1-mathieu.desnoyers@efficios.com> <20181010191936.7495-5-mathieu.desnoyers@efficios.com> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 10 Oct 2018 15:19:24 -0400 Mathieu Desnoyers wrote: > + * vm_unmap_user_ram - unmap linear kernel address space set up by vm_map_user_ram > + * @mem: the pointer returned by vm_map_user_ram > + * @count: the count passed to that vm_map_user_ram call (cannot unmap partial) > + */ > +void vm_unmap_user_ram(const void *mem, unsigned int count) > +{ > + unsigned long size = (unsigned long)count << PAGE_SHIFT; > + unsigned long addr = (unsigned long)mem; > + struct vmap_area *va; > + > + might_sleep(); > + BUG_ON(!addr); > + BUG_ON(addr < VMALLOC_START); > + BUG_ON(addr > VMALLOC_END); > + BUG_ON(!PAGE_ALIGNED(addr)); > + > + debug_check_no_locks_freed(mem, size); > + va = find_vmap_area(addr); > + BUG_ON(!va); > + free_unmap_vmap_area(va); > +} > +EXPORT_SYMBOL(vm_unmap_user_ram); > + Noticing this from Sergey's question in another patch, why are you using BUG_ON()? That's rather extreme and something we are trying to avoid adding more of (I still need to remove the BUG_ON()s I've added over ten years ago). I don't see why all these BUG_ON's can't be turned into: if (WARN_ON(x)) return; -- Steve