This is an option for use by developers; most people should
          say N here. This enables comedi core and driver debugging.
 
+config COMEDI_DEFAULT_BUF_SIZE_KB
+       int "Comedi default initial asynchronous buffer size in KiB"
+       default "2048"
+       depends on COMEDI != n
+       ---help---
+         This is the default asynchronous buffer size which is used for
+         commands running in the background in kernel space.  This
+         defaults to 2048 KiB of memory so that a 16 channel card
+         running at 10 kHz has of 2-4 seconds of buffer.
+
+config COMEDI_DEFAULT_BUF_MAXSIZE_KB
+       int "Comedi default maximum asynchronous buffer size in KiB"
+       default "20480"
+       depends on COMEDI != n
+       ---help---
+         This is the default maximum asynchronous buffer size which can
+         be requested by a userspace program without root privileges.
+         This is set to 20480 KiB so that a fast I/O card with 16
+         channels running at 100 kHz has 2-4 seconds of buffer.
+
 menuconfig COMEDI_MISC_DRIVERS
        tristate "Comedi misc drivers"
        depends on COMEDI
 
 MODULE_DESCRIPTION("Comedi core module");
 MODULE_LICENSE("GPL");
 
-#define DEFAULT_BUF_MAXSIZE_KB 64
-#define DEFAULT_BUF_SIZE_KB 64
-
 #ifdef CONFIG_COMEDI_DEBUG
 int comedi_debug;
 EXPORT_SYMBOL(comedi_debug);
                 "number of comedi minor devices to reserve for non-auto-configured devices (default 0)"
                );
 
-unsigned int comedi_default_buf_size_kb = DEFAULT_BUF_SIZE_KB;
+unsigned int comedi_default_buf_size_kb = CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB;
 module_param(comedi_default_buf_size_kb, uint, S_IRUGO | S_IWUSR);
 MODULE_PARM_DESC(comedi_default_buf_size_kb,
                 "default asynchronous buffer size in KiB (default "
-                __MODULE_STRING(DEFAULT_BUF_SIZE_KB) ")");
+                __MODULE_STRING(CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB) ")");
 
-unsigned int comedi_default_buf_maxsize_kb = DEFAULT_BUF_MAXSIZE_KB;
+unsigned int comedi_default_buf_maxsize_kb
+       = CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB;
 module_param(comedi_default_buf_maxsize_kb, uint, S_IRUGO | S_IWUSR);
 MODULE_PARM_DESC(comedi_default_buf_maxsize_kb,
                 "default maximum size of asynchronous buffer in KiB (default "
-                __MODULE_STRING(DEFAULT_BUF_MAXSIZE_KB) ")");
+                __MODULE_STRING(CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB) ")");
 
 static DEFINE_SPINLOCK(comedi_file_info_table_lock);
 static struct comedi_device_file_info