Loading drivers/char/nvram.c +4 −0 Original line number Diff line number Diff line Loading @@ -107,6 +107,7 @@ #include <linux/init.h> #include <linux/proc_fs.h> #include <linux/spinlock.h> #include <linux/smp_lock.h> #include <asm/io.h> #include <asm/uaccess.h> Loading Loading @@ -333,12 +334,14 @@ nvram_ioctl(struct inode *inode, struct file *file, static int nvram_open(struct inode *inode, struct file *file) { lock_kernel(); spin_lock(&nvram_state_lock); if ((nvram_open_cnt && (file->f_flags & O_EXCL)) || (nvram_open_mode & NVRAM_EXCL) || ((file->f_mode & 2) && (nvram_open_mode & NVRAM_WRITE))) { spin_unlock(&nvram_state_lock); unlock_kernel(); return -EBUSY; } Loading @@ -349,6 +352,7 @@ nvram_open(struct inode *inode, struct file *file) nvram_open_cnt++; spin_unlock(&nvram_state_lock); unlock_kernel(); return 0; } Loading Loading
drivers/char/nvram.c +4 −0 Original line number Diff line number Diff line Loading @@ -107,6 +107,7 @@ #include <linux/init.h> #include <linux/proc_fs.h> #include <linux/spinlock.h> #include <linux/smp_lock.h> #include <asm/io.h> #include <asm/uaccess.h> Loading Loading @@ -333,12 +334,14 @@ nvram_ioctl(struct inode *inode, struct file *file, static int nvram_open(struct inode *inode, struct file *file) { lock_kernel(); spin_lock(&nvram_state_lock); if ((nvram_open_cnt && (file->f_flags & O_EXCL)) || (nvram_open_mode & NVRAM_EXCL) || ((file->f_mode & 2) && (nvram_open_mode & NVRAM_WRITE))) { spin_unlock(&nvram_state_lock); unlock_kernel(); return -EBUSY; } Loading @@ -349,6 +352,7 @@ nvram_open(struct inode *inode, struct file *file) nvram_open_cnt++; spin_unlock(&nvram_state_lock); unlock_kernel(); return 0; } Loading