linux/drivers/media/v4l2-core
Colin Cross fee0c54e28 dma-buf: avoid using IS_ERR_OR_NULL
dma_buf_map_attachment and dma_buf_vmap can return NULL or
ERR_PTR on a error.  This encourages a common buggy pattern in
callers:
	sgt = dma_buf_map_attachment(attach, DMA_BIDIRECTIONAL);
	if (IS_ERR_OR_NULL(sgt))
                return PTR_ERR(sgt);

This causes the caller to return 0 on an error.  IS_ERR_OR_NULL
is almost always a sign of poorly-defined error handling.

This patch converts dma_buf_map_attachment to always return
ERR_PTR, and fixes the callers that incorrectly handled NULL.
There are a few more callers that were not checking for NULL
at all, which would have dereferenced a NULL pointer later.
There are also a few more callers that correctly handled NULL
and ERR_PTR differently, I left those alone but they could also
be modified to delete the NULL check.

This patch also converts dma_buf_vmap to always return NULL.
All the callers to dma_buf_vmap only check for NULL, and would
have dereferenced an ERR_PTR and panic'd if one was ever
returned. This is not consistent with the rest of the dma buf
APIs, but matches the expectations of all of the callers.

Signed-off-by: Colin Cross <ccross@android.com>
Reviewed-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-02-07 14:21:09 -08:00
..
Kconfig [media] omap24xx/tcm825x: move to staging for future removal 2013-12-20 13:45:22 -02:00
Makefile [media] omap24xx/tcm825x: move to staging for future removal 2013-12-20 13:45:22 -02:00
tuner-core.c Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2013-11-18 15:50:07 -08:00
v4l2-async.c [media] v4l2-async: Don't use dynamic static allocation 2013-11-08 09:45:43 -02:00
v4l2-clk.c [media] V4L2: add v4l2-clock helpers to register and unregister a fixed-rate clock 2013-10-31 04:31:30 -02:00
v4l2-common.c media: core: Don't use i2c_client->driver 2013-10-03 22:28:23 +02:00
v4l2-compat-ioctl32.c [media] v4l2-core: remove support for obsolete VIDIOC_DBG_G_CHIP_IDENT 2013-06-21 10:46:44 -03:00
v4l2-ctrls.c [media] s5p-mfc: Add controls to set vp8 enc profile 2014-01-13 10:59:11 -02:00
v4l2-dev.c [media] media: v4l2-dev: fix video device index assignment 2014-01-27 21:42:42 -02:00
v4l2-device.c [media] v4l2-device: check if already unregistered 2013-06-21 11:00:51 -03:00
v4l2-dv-timings.c [media] v4l2-dv-timings: add callback to handle exceptions 2013-08-24 04:30:01 -03:00
v4l2-event.c [media] V4L: Add v4l2_event_subdev_unsubscribe() helper function 2013-02-05 15:04:55 -02:00
v4l2-fh.c [media] v4l, smiapp, smiapp-pll, adp1653: Update contact information 2012-11-21 13:34:50 -02:00
v4l2-ioctl.c [media] v4l2: move tracepoints to video_usercopy 2014-01-07 06:51:41 -02:00
v4l2-mem2mem.c [media] V4L: Add mem2mem ioctl and file operation helpers 2013-12-04 15:34:24 -02:00
v4l2-of.c [media] v4l: of: Drop endpoint node reference in v4l2_of_get_remote_port() 2013-12-18 06:26:20 -02:00
v4l2-subdev.c [media] v4l: Don't warn during link validation when encountering a V4L2 devnode 2012-11-22 12:09:49 -02:00
videobuf-core.c [media] v4l: Tell user space we're using monotonic timestamps 2012-12-21 11:20:51 -02:00
videobuf-dma-contig.c [media] videobuf-dma-contig: use vm_iomap_memory() 2013-05-21 09:22:12 -03:00
videobuf-dma-sg.c [media] videobuf_vm_{open,close} race fixes 2013-05-21 08:56:56 -03:00
videobuf-dvb.c
videobuf-vmalloc.c [media] videobuf_vm_{open,close} race fixes 2013-05-21 08:56:56 -03:00
videobuf2-core.c [media] vb2: Fix comment in __qbuf_dmabuf 2014-01-07 09:46:29 -02:00
videobuf2-dma-contig.c dma-buf: avoid using IS_ERR_OR_NULL 2014-02-07 14:21:09 -08:00
videobuf2-dma-sg.c Merge branch 'upstream-fixes' into patchwork 2013-12-13 05:04:00 -02:00
videobuf2-memops.c [media] v4l: vb2-dma-contig: let mmap method to use dma_mmap_coherent call 2012-11-25 17:20:25 -02:00
videobuf2-vmalloc.c [media] videobuf2: add gfp_flags 2013-03-21 13:17:51 -03:00