summaryrefslogtreecommitdiffstats
path: root/lib/irq_poll.c
diff options
context:
space:
mode:
authorPhil Elwell <phil@raspberrypi.org>2017-09-24 15:20:49 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-10-18 15:09:45 +0200
commitc97d96b4e612c7dc1b37d7afc61b598a9a25994d (patch)
tree0e6b16525e082f13bf06a31c9a4fb5e09e9655a0 /lib/irq_poll.c
parentaa444bd230f832d4e75cfac826255cfd66f545c3 (diff)
downloadlinux-0-day-c97d96b4e612c7dc1b37d7afc61b598a9a25994d.tar.gz
linux-0-day-c97d96b4e612c7dc1b37d7afc61b598a9a25994d.tar.xz
staging: bcm2835-audio: Fix memory corruption
The previous commit (0adbfd46) fixed a memory leak but also freed a block in the success case, causing a stale pointer to be used with potentially fatal results. Only free the vchi_instance block in the case that vchi_connect fails; once connected, the instance is retained for subsequent connections. Simplifying the code by removing a bunch of gotos and returning errors directly. Signed-off-by: Phil Elwell <phil@raspberrypi.org> Fixes: 0adbfd4694c2 ("staging: bcm2835-audio: fix memory leak in bcm2835_audio_open_connection()") Cc: stable <stable@vger.kernel.org> # 4.12+ Tested-by: Stefan Wahren <stefan.wahren@i2se.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'lib/irq_poll.c')
0 files changed, 0 insertions, 0 deletions