--- setup/Linux/oss/build/osscore.c 2012-05-22 00:23:41.000000000 +0200 +++ newCore.c 2013-06-02 01:00:16.187019464 +0200 @@ -276,28 +276,59 @@ return strlen (tmp); } + +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0) static struct file_operations oss_proc_operations = { .read = oss_read_devfiles, }; +#else +static struct file_operations fops = { + .owner = THIS_MODULE, + .read = oss_read_devfiles, +}; +#endif + static void init_proc_fs (void) { + +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0) + if ((oss_proc_root = - create_proc_entry ("opensound", 0700 | S_IFDIR, NULL)) == NULL) + create_proc_entry ("opensound", 0700 | S_IFDIR, NULL)) == NULL) + { + oss_cmn_err (CE_CONT, "Cannot create /proc/opensound\n"); + return; + } + + if ((oss_proc_devfiles = + create_proc_entry ("devfiles", 0600, oss_proc_root)) == NULL) + { + oss_cmn_err (CE_CONT, "Cannot create /proc/opensound/devfiles\n"); + return; + } + + oss_proc_devfiles->proc_fops = &oss_proc_operations; + +#else + + if ((oss_proc_root = + proc_mkdir ("opensound", NULL)) == NULL ) { - oss_cmn_err (CE_CONT, "Cannot create /proc/opensound\n"); - return; + oss_cmn_err (CE_CONT, "Cannot create /proc/opensound\n"); + return; } if ((oss_proc_devfiles = - create_proc_entry ("devfiles", 0600, oss_proc_root)) == NULL) + proc_create ("devfiles", 0600, oss_proc_root, &fops)) == NULL) { - oss_cmn_err (CE_CONT, "Cannot create /proc/opensound/devfiles\n"); - return; + oss_cmn_err (CE_CONT, "Cannot create /proc/opensound/devfiles\n"); + return; } - oss_proc_devfiles->proc_fops = &oss_proc_operations; +#endif + } static void