aboutsummaryrefslogtreecommitdiffstats
path: root/include/video
diff options
context:
space:
mode:
authorMikulas Patocka <mpatocka@redhat.com>2019-04-01 17:46:57 +0200
committerBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>2019-04-01 17:46:57 +0200
commitbabc250e278eac7b0e671bdaedf833759b43bb78 (patch)
tree035e773470ccd0629b2a925a017ee0381d515e6b /include/video
parentudlfb: fix sleeping inside spinlock (diff)
downloadlinux-dev-babc250e278eac7b0e671bdaedf833759b43bb78.tar.xz
linux-dev-babc250e278eac7b0e671bdaedf833759b43bb78.zip
udlfb: introduce a rendering mutex
Rendering calls may be done simultaneously from the workqueue, dlfb_ops_write, dlfb_ops_ioctl, dlfb_ops_set_par and dlfb_dpy_deferred_io. The code is robust enough so that it won't crash on concurrent rendering. However, concurrent rendering may cause display corruption if the same pixel is simultaneously being rendered. In order to avoid this corruption, this patch adds a mutex around the rendering calls. Signed-off-by: Mikulas Patocka <mpatocka@redhat.com> Cc: Bernie Thompson <bernie@plugable.com> Cc: Ladislav Michl <ladis@linux-mips.org> Cc: <stable@vger.kernel.org> [b.zolnierkie: replace "dlfb:" with "uldfb:" in the patch summary] Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Diffstat (limited to 'include/video')
-rw-r--r--include/video/udlfb.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/video/udlfb.h b/include/video/udlfb.h
index a3724f1fca1c..58fb5732831a 100644
--- a/include/video/udlfb.h
+++ b/include/video/udlfb.h
@@ -48,6 +48,7 @@ struct dlfb_data {
int base8;
u32 pseudo_palette[256];
int blank_mode; /*one of FB_BLANK_ */
+ struct mutex render_mutex;
int damage_x;
int damage_y;
int damage_x2;