summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2019-02-16 17:31:36 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2019-02-16 17:31:36 -0800
commit9a7dcde4a661ccad2b641e873b15ce26bf302c4e (patch)
tree4f0abea50669671c9d22eed6c600a11b5ed97b03
parent0b999ae3614d09d97a1575936bcee884f912b10e (diff)
parent69ef9bc54715fb1cb7786ada15774e469e822209 (diff)
downloadlinux-9a7dcde4a661ccad2b641e873b15ce26bf302c4e.tar.bz2
Merge tag 'auxdisplay-for-linus-v5.0-rc7' of git://github.com/ojeda/linux
Pull auxdisplay fix from Miguel Ojeda: "Fix potential user-after-free on ht16k33 module unload. Reported by Sven Van Asbroeck" * tag 'auxdisplay-for-linus-v5.0-rc7' of git://github.com/ojeda/linux: auxdisplay: ht16k33: fix potential user-after-free on module unload
-rw-r--r--drivers/auxdisplay/ht16k33.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/auxdisplay/ht16k33.c b/drivers/auxdisplay/ht16k33.c
index a43276c76fc6..21393ec3b9a4 100644
--- a/drivers/auxdisplay/ht16k33.c
+++ b/drivers/auxdisplay/ht16k33.c
@@ -509,7 +509,7 @@ static int ht16k33_remove(struct i2c_client *client)
struct ht16k33_priv *priv = i2c_get_clientdata(client);
struct ht16k33_fbdev *fbdev = &priv->fbdev;
- cancel_delayed_work(&fbdev->work);
+ cancel_delayed_work_sync(&fbdev->work);
unregister_framebuffer(fbdev->info);
framebuffer_release(fbdev->info);
free_page((unsigned long) fbdev->buffer);