Hi, I am studying v4l2 m2m driver example. I want to know why the set format function in the example fails when it is called again after user application req_buf? In set format function checks for vb2_is_busy(vq) and that function returns true after user space app calls req_buf. For example in here: http://stuff.mit.edu/afs/sipb/contrib/linux/drivers/media/platform/mem2mem_testdev.c static int vidioc_s_fmt(struct m2mtest_ctx *ctx, struct v4l2_format *f) { //... // Check for vb2_is_busy() here: if (vb2_is_busy(vq)) { v4l2_err(&ctx->dev->v4l2_dev, "%s queue busy\n", __func__); return -EBUSY; } //... } Why the driver prevents user space application change format after it request buffers? Thank you. -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html