From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: Re: [PATCH 03/32] fs: introduce new ->get_poll_head and ->poll_mask methods Date: Thu, 11 Jan 2018 09:28:13 +0100 Message-ID: <20180111082813.GA760@lst.de> References: <20180110155853.32348-1-hch@lst.de> <20180110155853.32348-4-hch@lst.de> <20180110210416.GH13338@ZenIV.linux.org.uk> <20180111052200.GJ13338@ZenIV.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <20180111052200.GJ13338@ZenIV.linux.org.uk> Sender: owner-linux-aio@kvack.org To: Al Viro Cc: Christoph Hellwig , Avi Kivity , linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, netdev@vger.kernel.org, linux-api@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-api@vger.kernel.org On Thu, Jan 11, 2018 at 05:22:00AM +0000, Al Viro wrote: > Whee... The very first ->poll() instance in alphabetic order on pathnames: > in arch/cris/arch-v10/drivers/gpio.c > > static __poll_t gpio_poll(struct file *file, poll_table *wait) > { > __poll_t mask = 0; > struct gpio_private *priv = file->private_data; > unsigned long data; > unsigned long flags; > > spin_lock_irqsave(&gpio_lock, flags); > > poll_wait(file, &priv->alarm_wq, wait); > > IOW, we are doing poll_wait() (== possible GFP_KERNEL __get_free_page()) under > a spinlock... Yes. Another god reason to separate poll_wait and the actual event check callback.. -- To unsubscribe, send a message with 'unsubscribe linux-aio' in the body to majordomo@kvack.org. For more info on Linux AIO, see: http://www.kvack.org/aio/ Don't email: aart@kvack.org