diff options
Diffstat (limited to 'mm/shmem.c')
| -rw-r--r-- | mm/shmem.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/mm/shmem.c b/mm/shmem.c index a1f2f02af724..343b3c0937e5 100644 --- a/mm/shmem.c +++ b/mm/shmem.c | |||
| @@ -1370,7 +1370,7 @@ shmem_file_write(struct file *file, const char __user *buf, size_t count, loff_t | |||
| 1370 | if (!access_ok(VERIFY_READ, buf, count)) | 1370 | if (!access_ok(VERIFY_READ, buf, count)) |
| 1371 | return -EFAULT; | 1371 | return -EFAULT; |
| 1372 | 1372 | ||
| 1373 | down(&inode->i_sem); | 1373 | mutex_lock(&inode->i_mutex); |
| 1374 | 1374 | ||
| 1375 | pos = *ppos; | 1375 | pos = *ppos; |
| 1376 | written = 0; | 1376 | written = 0; |
| @@ -1455,7 +1455,7 @@ shmem_file_write(struct file *file, const char __user *buf, size_t count, loff_t | |||
| 1455 | if (written) | 1455 | if (written) |
| 1456 | err = written; | 1456 | err = written; |
| 1457 | out: | 1457 | out: |
| 1458 | up(&inode->i_sem); | 1458 | mutex_unlock(&inode->i_mutex); |
| 1459 | return err; | 1459 | return err; |
| 1460 | } | 1460 | } |
| 1461 | 1461 | ||
| @@ -1491,7 +1491,7 @@ static void do_shmem_file_read(struct file *filp, loff_t *ppos, read_descriptor_ | |||
| 1491 | 1491 | ||
| 1492 | /* | 1492 | /* |
| 1493 | * We must evaluate after, since reads (unlike writes) | 1493 | * We must evaluate after, since reads (unlike writes) |
| 1494 | * are called without i_sem protection against truncate | 1494 | * are called without i_mutex protection against truncate |
| 1495 | */ | 1495 | */ |
| 1496 | nr = PAGE_CACHE_SIZE; | 1496 | nr = PAGE_CACHE_SIZE; |
| 1497 | i_size = i_size_read(inode); | 1497 | i_size = i_size_read(inode); |
