aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext4
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-15 19:39:15 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-15 19:39:15 -0400
commiteea3a00264cf243a28e4331566ce67b86059339d (patch)
tree487f16389e0dfa32e9caa7604d1274a7dcda8f04 /fs/ext4
parente7c82412433a8039616c7314533a0a1c025d99bf (diff)
parente693d73c20ffdb06840c9378f367bad849ac0d5d (diff)
Merge branch 'akpm' (patches from Andrew)
Merge second patchbomb from Andrew Morton: - the rest of MM - various misc bits - add ability to run /sbin/reboot at reboot time - printk/vsprintf changes - fiddle with seq_printf() return value * akpm: (114 commits) parisc: remove use of seq_printf return value lru_cache: remove use of seq_printf return value tracing: remove use of seq_printf return value cgroup: remove use of seq_printf return value proc: remove use of seq_printf return value s390: remove use of seq_printf return value cris fasttimer: remove use of seq_printf return value cris: remove use of seq_printf return value openrisc: remove use of seq_printf return value ARM: plat-pxa: remove use of seq_printf return value nios2: cpuinfo: remove use of seq_printf return value microblaze: mb: remove use of seq_printf return value ipc: remove use of seq_printf return value rtc: remove use of seq_printf return value power: wakeup: remove use of seq_printf return value x86: mtrr: if: remove use of seq_printf return value linux/bitmap.h: improve BITMAP_{LAST,FIRST}_WORD_MASK MAINTAINERS: CREDITS: remove Stefano Brivio from B43 .mailmap: add Ricardo Ribalda CREDITS: add Ricardo Ribalda Delgado ...
Diffstat (limited to 'fs/ext4')
-rw-r--r--fs/ext4/ext4.h1
-rw-r--r--fs/ext4/file.c19
-rw-r--r--fs/ext4/inode.c5
-rw-r--r--fs/ext4/namei.c10
4 files changed, 4 insertions, 31 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
index f63c3d5805c4..8a3981ea35d8 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
@@ -2593,7 +2593,6 @@ extern const struct file_operations ext4_dir_operations;
2593/* file.c */ 2593/* file.c */
2594extern const struct inode_operations ext4_file_inode_operations; 2594extern const struct inode_operations ext4_file_inode_operations;
2595extern const struct file_operations ext4_file_operations; 2595extern const struct file_operations ext4_file_operations;
2596extern const struct file_operations ext4_dax_file_operations;
2597extern loff_t ext4_llseek(struct file *file, loff_t offset, int origin); 2596extern loff_t ext4_llseek(struct file *file, loff_t offset, int origin);
2598 2597
2599/* inline.c */ 2598/* inline.c */
diff --git a/fs/ext4/file.c b/fs/ext4/file.c
index 9ad03036d9f5..7a6defcf3352 100644
--- a/fs/ext4/file.c
+++ b/fs/ext4/file.c
@@ -206,6 +206,7 @@ static int ext4_dax_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf)
206static const struct vm_operations_struct ext4_dax_vm_ops = { 206static const struct vm_operations_struct ext4_dax_vm_ops = {
207 .fault = ext4_dax_fault, 207 .fault = ext4_dax_fault,
208 .page_mkwrite = ext4_dax_mkwrite, 208 .page_mkwrite = ext4_dax_mkwrite,
209 .pfn_mkwrite = dax_pfn_mkwrite,
209}; 210};
210#else 211#else
211#define ext4_dax_vm_ops ext4_file_vm_ops 212#define ext4_dax_vm_ops ext4_file_vm_ops
@@ -622,24 +623,6 @@ const struct file_operations ext4_file_operations = {
622 .fallocate = ext4_fallocate, 623 .fallocate = ext4_fallocate,
623}; 624};
624 625
625#ifdef CONFIG_FS_DAX
626const struct file_operations ext4_dax_file_operations = {
627 .llseek = ext4_llseek,
628 .read_iter = generic_file_read_iter,
629 .write_iter = ext4_file_write_iter,
630 .unlocked_ioctl = ext4_ioctl,
631#ifdef CONFIG_COMPAT
632 .compat_ioctl = ext4_compat_ioctl,
633#endif
634 .mmap = ext4_file_mmap,
635 .open = ext4_file_open,
636 .release = ext4_release_file,
637 .fsync = ext4_sync_file,
638 /* Splice not yet supported with DAX */
639 .fallocate = ext4_fallocate,
640};
641#endif
642
643const struct inode_operations ext4_file_inode_operations = { 626const struct inode_operations ext4_file_inode_operations = {
644 .setattr = ext4_setattr, 627 .setattr = ext4_setattr,
645 .getattr = ext4_getattr, 628 .getattr = ext4_getattr,
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index a3f451370bef..035b7a06f1c3 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -4090,10 +4090,7 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
4090 4090
4091 if (S_ISREG(inode->i_mode)) { 4091 if (S_ISREG(inode->i_mode)) {
4092 inode->i_op = &ext4_file_inode_operations; 4092 inode->i_op = &ext4_file_inode_operations;
4093 if (test_opt(inode->i_sb, DAX)) 4093 inode->i_fop = &ext4_file_operations;
4094 inode->i_fop = &ext4_dax_file_operations;
4095 else
4096 inode->i_fop = &ext4_file_operations;
4097 ext4_set_aops(inode); 4094 ext4_set_aops(inode);
4098 } else if (S_ISDIR(inode->i_mode)) { 4095 } else if (S_ISDIR(inode->i_mode)) {
4099 inode->i_op = &ext4_dir_inode_operations; 4096 inode->i_op = &ext4_dir_inode_operations;
diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c
index 28fe71a2904c..2291923dae4e 100644
--- a/fs/ext4/namei.c
+++ b/fs/ext4/namei.c
@@ -2235,10 +2235,7 @@ retry:
2235 err = PTR_ERR(inode); 2235 err = PTR_ERR(inode);
2236 if (!IS_ERR(inode)) { 2236 if (!IS_ERR(inode)) {
2237 inode->i_op = &ext4_file_inode_operations; 2237 inode->i_op = &ext4_file_inode_operations;
2238 if (test_opt(inode->i_sb, DAX)) 2238 inode->i_fop = &ext4_file_operations;
2239 inode->i_fop = &ext4_dax_file_operations;
2240 else
2241 inode->i_fop = &ext4_file_operations;
2242 ext4_set_aops(inode); 2239 ext4_set_aops(inode);
2243 err = ext4_add_nondir(handle, dentry, inode); 2240 err = ext4_add_nondir(handle, dentry, inode);
2244 if (!err && IS_DIRSYNC(dir)) 2241 if (!err && IS_DIRSYNC(dir))
@@ -2302,10 +2299,7 @@ retry:
2302 err = PTR_ERR(inode); 2299 err = PTR_ERR(inode);
2303 if (!IS_ERR(inode)) { 2300 if (!IS_ERR(inode)) {
2304 inode->i_op = &ext4_file_inode_operations; 2301 inode->i_op = &ext4_file_inode_operations;
2305 if (test_opt(inode->i_sb, DAX)) 2302 inode->i_fop = &ext4_file_operations;
2306 inode->i_fop = &ext4_dax_file_operations;
2307 else
2308 inode->i_fop = &ext4_file_operations;
2309 ext4_set_aops(inode); 2303 ext4_set_aops(inode);
2310 d_tmpfile(dentry, inode); 2304 d_tmpfile(dentry, inode);
2311 err = ext4_orphan_add(handle, inode); 2305 err = ext4_orphan_add(handle, inode);