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=-2.5 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS,USER_AGENT_MUTT autolearn=unavailable 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 12468C282CC for ; Mon, 4 Feb 2019 17:49:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id E1B9620821 for ; Mon, 4 Feb 2019 17:49:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728720AbfBDRtE (ORCPT ); Mon, 4 Feb 2019 12:49:04 -0500 Received: from verein.lst.de ([213.95.11.211]:49916 "EHLO newverein.lst.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726585AbfBDRtD (ORCPT ); Mon, 4 Feb 2019 12:49:03 -0500 Received: by newverein.lst.de (Postfix, from userid 2407) id D734568D93; Mon, 4 Feb 2019 18:49:00 +0100 (CET) Date: Mon, 4 Feb 2019 18:49:00 +0100 From: Christoph Hellwig To: Bart Van Assche Cc: Alexander Viro , linux-fsdevel@vger.kernel.org, linux-aio@kvack.org, syzbot , Christoph Hellwig , Avi Kivity , Eric Dumazet , stable@vger.kernel.org Subject: Re: [PATCH] aio: Fix locking in aio_poll() Message-ID: <20190204174900.GA16229@lst.de> References: <20190204174555.83603-1-bvanassche@acm.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190204174555.83603-1-bvanassche@acm.org> User-Agent: Mutt/1.5.17 (2007-11-01) Sender: linux-fsdevel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fsdevel@vger.kernel.org On Mon, Feb 04, 2019 at 09:45:55AM -0800, Bart Van Assche wrote: > Since kioctx.ctx_lock may be acquired from IRQ context, all code that > acquires that lock from thread context must disable interrupts. This > patch fixes the following lockdep complaint: But breaks the real life users of this interface :( aio_poll_wake is assigned as the wake function to a waitqueue, and the waitqueue interface requires that function to be called with irqs disabled. It looks like the fuse code is breaking that contract, so we need to fix that instead of disable irqs.