mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 04:04:43 +01:00
media: dvb-core: dmxdevfilter must always flush bufs
Currently the buffers are being filled until full, which works fine for the transport stream, but not when reading sections, those have to be returned to userspace immediately, otherwise dvbv5-scan will just wait forever. Add a 'flush' argument to dvb_vb2_fill_buffer to indicate whether the buffer must be flushed or wait until it is full. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
parent
8f0b4cce44
commit
c4e620eccb
3 changed files with 11 additions and 8 deletions
|
|
@ -124,7 +124,7 @@ static inline int dvb_vb2_release(struct dvb_vb2_ctx *ctx)
|
|||
return 0;
|
||||
};
|
||||
#define dvb_vb2_is_streaming(ctx) (0)
|
||||
#define dvb_vb2_fill_buffer(ctx, file, wait, flags) (0)
|
||||
#define dvb_vb2_fill_buffer(ctx, file, wait, flags, flush) (0)
|
||||
|
||||
static inline __poll_t dvb_vb2_poll(struct dvb_vb2_ctx *ctx,
|
||||
struct file *file,
|
||||
|
|
@ -166,10 +166,12 @@ int dvb_vb2_is_streaming(struct dvb_vb2_ctx *ctx);
|
|||
* @buffer_flags:
|
||||
* pointer to buffer flags as defined by &enum dmx_buffer_flags.
|
||||
* can be NULL.
|
||||
* @flush: flush the buffer, even if it isn't full.
|
||||
*/
|
||||
int dvb_vb2_fill_buffer(struct dvb_vb2_ctx *ctx,
|
||||
const unsigned char *src, int len,
|
||||
enum dmx_buffer_flags *buffer_flags);
|
||||
enum dmx_buffer_flags *buffer_flags,
|
||||
bool flush);
|
||||
|
||||
/**
|
||||
* dvb_vb2_poll - Wrapper to vb2_core_streamon() for Digital TV
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue