static ssize_t dvb_dvr_read(struct file *file, char __user *buf, size_t count,
#define pr_fmt(fmt) "dmxdev: " fmt
#include <linux/spinlock.h>
#include <linux/vmalloc.h>
#include <linux/module.h>
#include <linux/uaccess.h>
#include <media/dmxdev.h>
#include <media/dvb_vb2.h>
module_param(debug, int, 0644);
MODULE_PARM_DESC(debug, "Turn on/off debugging (default:off).");
#define dprintk(fmt, arg...) do { \
printk(KERN_DEBUG pr_fmt("%s: " fmt), \
static int dvb_dmxdev_buffer_write(struct dvb_ringbuffer *buf,
const u8 *src, size_t len)
free = dvb_ringbuffer_free(buf);
dprintk("buffer overflow\n");
return dvb_ringbuffer_write(buf, src, len);
static ssize_t dvb_dmxdev_buffer_read(struct dvb_ringbuffer *src,