https://github.com/torvalds/linux
Revision 7317c75e66fce0c9f82fbe6f72f7e5256b315422 authored by Jesse Barnes on 29 August 2011, 16:45:28 UTC, committed by Keith Packard on 16 December 2011, 16:49:58 UTC
This fixes a race where we may try to finish a page flip and decrement
the refcount even if our vblank_get failed and we ended up with a
spurious flip pending interrupt.

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=34211.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
1 parent c0f372b
Raw File
Tip revision: 7317c75e66fce0c9f82fbe6f72f7e5256b315422 authored by Jesse Barnes on 29 August 2011, 16:45:28 UTC
drm/i915: don't set unpin_work if vblank_get fails
Tip revision: 7317c75
read_write.h
/*
 * This file is only for sharing some helpers from read_write.c with compat.c.
 * Don't use anywhere else.
 */


typedef ssize_t (*io_fn_t)(struct file *, char __user *, size_t, loff_t *);
typedef ssize_t (*iov_fn_t)(struct kiocb *, const struct iovec *,
		unsigned long, loff_t);

ssize_t do_sync_readv_writev(struct file *filp, const struct iovec *iov,
		unsigned long nr_segs, size_t len, loff_t *ppos, iov_fn_t fn);
ssize_t do_loop_readv_writev(struct file *filp, struct iovec *iov,
		unsigned long nr_segs, loff_t *ppos, io_fn_t fn);
back to top