diff options
Diffstat (limited to 'mm/shmem.c')
-rw-r--r-- | mm/shmem.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/mm/shmem.c b/mm/shmem.c index 5a0b3d4055f3..46936601e37f 100644 --- a/mm/shmem.c +++ b/mm/shmem.c | |||
@@ -1630,8 +1630,8 @@ shmem_write_end(struct file *file, struct address_space *mapping, | |||
1630 | if (pos + copied > inode->i_size) | 1630 | if (pos + copied > inode->i_size) |
1631 | i_size_write(inode, pos + copied); | 1631 | i_size_write(inode, pos + copied); |
1632 | 1632 | ||
1633 | unlock_page(page); | ||
1634 | set_page_dirty(page); | 1633 | set_page_dirty(page); |
1634 | unlock_page(page); | ||
1635 | page_cache_release(page); | 1635 | page_cache_release(page); |
1636 | 1636 | ||
1637 | return copied; | 1637 | return copied; |
@@ -1968,13 +1968,13 @@ static int shmem_symlink(struct inode *dir, struct dentry *dentry, const char *s | |||
1968 | iput(inode); | 1968 | iput(inode); |
1969 | return error; | 1969 | return error; |
1970 | } | 1970 | } |
1971 | unlock_page(page); | ||
1972 | inode->i_mapping->a_ops = &shmem_aops; | 1971 | inode->i_mapping->a_ops = &shmem_aops; |
1973 | inode->i_op = &shmem_symlink_inode_operations; | 1972 | inode->i_op = &shmem_symlink_inode_operations; |
1974 | kaddr = kmap_atomic(page, KM_USER0); | 1973 | kaddr = kmap_atomic(page, KM_USER0); |
1975 | memcpy(kaddr, symname, len); | 1974 | memcpy(kaddr, symname, len); |
1976 | kunmap_atomic(kaddr, KM_USER0); | 1975 | kunmap_atomic(kaddr, KM_USER0); |
1977 | set_page_dirty(page); | 1976 | set_page_dirty(page); |
1977 | unlock_page(page); | ||
1978 | page_cache_release(page); | 1978 | page_cache_release(page); |
1979 | } | 1979 | } |
1980 | if (dir->i_mode & S_ISGID) | 1980 | if (dir->i_mode & S_ISGID) |