The size argument of the alloc memop, which allocates buffer memory, is
page aligned. Document it as such in the only caller as well as ops
documentation.

Signed-off-by: Sakari Ailus <sakari.ai...@linux.intel.com>
Reviewed-by: Hans Verkuil <hverkuil-ci...@xs4all.nl>
---
 drivers/media/common/videobuf2/videobuf2-core.c | 1 +
 include/media/videobuf2-core.h                  | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/media/common/videobuf2/videobuf2-core.c 
b/drivers/media/common/videobuf2/videobuf2-core.c
index 8fd0d80640c2..ffa798bc2496 100644
--- a/drivers/media/common/videobuf2/videobuf2-core.c
+++ b/drivers/media/common/videobuf2/videobuf2-core.c
@@ -205,6 +205,7 @@ static int __vb2_buf_mem_alloc(struct vb2_buffer *vb)
         * NOTE: mmapped areas should be page aligned
         */
        for (plane = 0; plane < vb->num_planes; ++plane) {
+               /* Memops alloc requires size to be page aligned. */
                unsigned long size = PAGE_ALIGN(vb->planes[plane].length);
 
                /* Did it wrap around? */
diff --git a/include/media/videobuf2-core.h b/include/media/videobuf2-core.h
index fe010ad62b90..c8c7b7fea9e8 100644
--- a/include/media/videobuf2-core.h
+++ b/include/media/videobuf2-core.h
@@ -54,7 +54,8 @@ struct vb2_threadio_data;
  *             will then be passed as @buf_priv argument to other ops in this
  *             structure. Additional gfp_flags to use when allocating the
  *             are also passed to this operation. These flags are from the
- *             gfp_flags field of vb2_queue.
+ *             gfp_flags field of vb2_queue. The size argument to this function
+ *             shall be *page aligned*.
  * @put:       inform the allocator that the buffer will no longer be used;
  *             usually will result in the allocator freeing the buffer (if
  *             no other users of this buffer are present); the @buf_priv
-- 
2.11.0

Reply via email to