lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sat, 27 Jun 2015 19:32:39 +0200 From: Andreas Hartmann <andihartmann@...19freenet.de> To: linux-kernel@...r.kernel.org Subject: f_op->read seems to be always NULL since Linux 4.1 Hello! Given is a module like the following snippet running fine w/ Linux 4.0 and ext4 fs - but doesn't work w/ Linux 4.1 because f->f_op->read is not defined any more (= NULL). Is this the intended behavior now? vfs_read(f, buf, 128, &f->f_pos) works fine. module.c -------------------------------------------------------------------- #include <linux/module.h> #include <linux/kernel.h> #include <linux/fs.h> #include <asm/uaccess.h> int init_module(void) { struct file *f; char buf[128]; mm_segment_t fs; int i; int len=128; for(i=0;i<len;i++) buf[i] = 0; printk(KERN_INFO "My module is loaded\n"); f = filp_open("/etc/fedora-release", O_RDONLY, 0); if(f == NULL) printk(KERN_ALERT "filp_open error!!.\n"); else{ fs = get_fs(); set_fs(get_ds()); if (f->f_op->read) { f->f_op->read(f, buf, len, &f->f_pos); printk(KERN_INFO "buf:%s\n",buf); } else { printk(KERN_INFO "No read method\n"); } set_fs(fs); } filp_close(f,NULL); return 0; } void cleanup_module(void) { printk(KERN_INFO "My module is unloaded\n"); } ----------------------------------------------------------- Makefile: ----------------------------------------------------------- obj-m += module.o all: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules clean: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean ------------------------------------------------------------ Regards, Andreas -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists