Thread (43 messages) 43 messages, 4 authors, 2018-01-17

Re: [PATCH 03/32] fs: introduce new ->get_poll_head and ->poll_mask methods

From: Christoph Hellwig <hch@lst.de>
Date: 2018-01-11 08:28:13
Also in: linux-api, linux-fsdevel, lkml

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: <a href=mailto:"aart@kvack.org">aart@kvack.org</a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help