rk29: vpu_mem: fix pass miscdevice pointer via file private data
author黄涛 <huangtao@rock-chips.com>
Wed, 14 Dec 2011 07:16:05 +0000 (15:16 +0800)
committer黄涛 <huangtao@rock-chips.com>
Wed, 14 Dec 2011 07:16:05 +0000 (15:16 +0800)
arch/arm/mach-rk29/vpu_mem.c

index 58accfd8ef56198371e2251e3869299219236445..bc05e6842ea4600295909caf20e46a626d9f46a6 100644 (file)
@@ -878,7 +878,7 @@ static int vpu_mem_open(struct inode *inode, struct file *file)
     DLOG("current %u file %p(%d)\n", current->pid, file, (int)file_count(file));\r
     /* setup file->private_data to indicate its unmapped */\r
     /*  you can only open a vpu_mem device one time */\r
-    if (file->private_data != NULL)\r
+    if (file->private_data != NULL && file->private_data != &vpu_mem.dev)\r
             return -1;\r
     session = kmalloc(sizeof(vdm_session), GFP_KERNEL);\r
     if (!session) {\r