Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

iio:callback buffer: free the scan_mask

Reported-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>

+4 -1
+4 -1
drivers/iio/buffer_cb.c
··· 64 64 while (chan->indio_dev) { 65 65 if (chan->indio_dev != indio_dev) { 66 66 ret = -EINVAL; 67 - goto error_release_channels; 67 + goto error_free_scan_mask; 68 68 } 69 69 set_bit(chan->channel->scan_index, 70 70 cb_buff->buffer.scan_mask); ··· 73 73 74 74 return cb_buff; 75 75 76 + error_free_scan_mask: 77 + kfree(cb_buff->buffer.scan_mask); 76 78 error_release_channels: 77 79 iio_channel_release_all(cb_buff->channels); 78 80 error_free_cb_buff: ··· 102 100 103 101 void iio_channel_release_all_cb(struct iio_cb_buffer *cb_buff) 104 102 { 103 + kfree(cb_buff->buffer.scan_mask); 105 104 iio_channel_release_all(cb_buff->channels); 106 105 kfree(cb_buff); 107 106 }