linux/drivers
Benjamin Gaignard 6662edcd32 media: videobuf2: Add min_reqbufs_allocation field to vb2_queue structure
Add 'min_reqbufs_allocation' field in the vb2_queue structure so drivers
can specify the minimum number of buffers to allocate when calling
VIDIOC_REQBUFS.
When initializing the queue, v4l2 core makes sure that the following
constraints are respected:
- the minimum number of buffers to allocate must be at least 2 because
one buffer is used by the hardware while the other is being processed
by userspace.
-if the driver needs 'min_queued_buffers' in the queue before calling
start_streaming(), then the minimum requirement is 'min_queued_buffers + 1'
to keep at least one buffer available for userspace.

Simplify __vb2_init_fileio() by using 'min_reqbufs_allocation' directly
to avoid duplicating the minimum number of buffers to allocate computation.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
Reviewed-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2024-03-25 12:00:44 +01:00
..
accel
accessibility Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
acpi RISC-V Patches for the 6.9 Merge Window 2024-03-22 10:41:13 -07:00
amba
android Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
ata
atm
auxdisplay
base Driver core changes for 6.9-rc1 2024-03-21 13:34:15 -07:00
bcma
block block-6.9-20240322 2024-03-22 12:46:07 -07:00
bluetooth TTY/Serial driver update for 6.9-rc1 2024-03-21 12:44:10 -07:00
bus Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
cache
cdrom
cdx
char Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
clk
clocksource A set of updates for clocksource and clockevent drivers: 2024-03-23 14:42:45 -07:00
comedi Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
connector
counter
cpufreq RISC-V Patches for the 6.9 Merge Window 2024-03-22 10:41:13 -07:00
cpuidle RISC-V Patches for the 6.9 Merge Window 2024-03-22 10:41:13 -07:00
crypto
cxl
dax
dca
devfreq
dio
dma
dma-buf
dpll
edac
eisa
extcon
firewire firewire: core: add memo about the caller of show functions for device attributes 2024-03-21 21:20:18 +09:00
firmware EFI fixes for v6.9 #2 2024-03-24 13:54:06 -07:00
fpga Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
fsi
gnss
gpio
gpu drm fixes for 6.9-rc1 2024-03-21 19:04:31 -07:00
greybus Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
hid
hsi
hte
hv hyperv-next for v6.9 2024-03-21 10:01:02 -07:00
hwmon
hwspinlock
hwtracing
i2c
i3c
idle
iio Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
infiniband
input TTY/Serial driver update for 6.9-rc1 2024-03-21 12:44:10 -07:00
interconnect
iommu dma-mapping fixes for Linux 6.9 2024-03-24 10:45:31 -07:00
ipack
irqchip
isdn
leds
macintosh
mailbox
mcb
md - Fix a memory leak in DM integrity recheck code that was added during 2024-03-22 12:34:26 -07:00
media media: videobuf2: Add min_reqbufs_allocation field to vb2_queue structure 2024-03-25 12:00:44 +01:00
memory Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
memstick
message
mfd TTY/Serial driver update for 6.9-rc1 2024-03-21 12:44:10 -07:00
misc hardening fixes for v6.9-rc1 2024-03-23 08:43:21 -07:00
mmc
most
mtd This pull request contains updates for UBI and UBIFS: 2024-03-21 15:09:29 -07:00
mux
net hardening fixes for v6.9-rc1 2024-03-23 08:43:21 -07:00
nfc
ntb
nubus
nvdimm
nvme nvme updates for Linux 6.9 2024-03-21 13:23:07 -06:00
nvmem
of Driver core changes for 6.9-rc1 2024-03-21 13:34:15 -07:00
opp
parisc
parport
pci
pcmcia
peci
perf RISC-V Patches for the 6.9 Merge Window 2024-03-22 10:41:13 -07:00
phy USB/Thunderbolt changes for 6.9-rc1 2024-03-21 12:35:20 -07:00
pinctrl
platform Char/Misc and other driver subsystem updates for 6.9-rc1 2024-03-21 13:21:31 -07:00
pmdomain
pnp
power
powercap
pps
ps3
ptp
pwm
rapidio
ras
regulator regulator: Fix for v6.9 2024-03-22 09:52:37 -07:00
remoteproc remoteproc updates for v6.9 2024-03-21 10:37:39 -07:00
reset
rpmsg
rtc RTC for 6.9 2024-03-21 17:16:46 -07:00
s390
sbus
scsi SCSI misc on 20240322 2024-03-22 13:31:07 -07:00
sh
siox SIOX changes for 6.9-rc1 2024-03-21 15:18:18 -07:00
slimbus
soc Including fixes from CAN, netfilter, wireguard and IPsec. 2024-03-21 14:50:39 -07:00
soundwire
spi spi: Fixes for v6.9 2024-03-22 09:57:00 -07:00
spmi
ssb
staging Staging driver cleanups for 6.9-rc1 2024-03-21 13:03:44 -07:00
target
tc
tee
thermal
thunderbolt USB/Thunderbolt changes for 6.9-rc1 2024-03-21 12:35:20 -07:00
tty TTY/Serial driver update for 6.9-rc1 2024-03-21 12:44:10 -07:00
ufs
uio
usb USB/Thunderbolt changes for 6.9-rc1 2024-03-21 12:35:20 -07:00
vdpa
vfio
vhost
video fbdev fixes and cleanups for 6.9-rc1: 2024-03-22 10:09:08 -07:00
virt
virtio
w1
watchdog
xen
zorro
Kconfig
Makefile