aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext4/ioctl.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-18 13:32:00 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-18 13:32:00 -0400
commitd756d10e246a01515d07f8161181b8a14afba7cc (patch)
treede7336f2b4b596881468bf65cb2f2f88cedcde86 /fs/ext4/ioctl.c
parentcdf4a6482dd4c739f8c1132c5a9356912911fec5 (diff)
parente9f410b1c035b6e63f0b4c3d6cfe4298d6a04492 (diff)
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: ext4: extent macros cleanup Fix compilation with EXT_DEBUG, also fix leXX_to_cpu conversions. ext4: remove extra IS_RDONLY() check ext4: Use is_power_of_2() Use zero_user_page() in ext4 where possible ext4: Remove 65000 subdirectory limit ext4: Expand extra_inodes space per the s_{want,min}_extra_isize fields ext4: Add nanosecond timestamps jbd2: Move jbd2-debug file to debugfs jbd2: Fix CONFIG_JBD_DEBUG ifdef to be CONFIG_JBD2_DEBUG ext4: Set the journal JBD2_FEATURE_INCOMPAT_64BIT on large devices ext4: Make extents code sanely handle on-disk corruption ext4: copy i_flags to inode flags on write ext4: Enable extents by default Change on-disk format to support 2^15 uninitialized extents write support for preallocated blocks fallocate support in ext4 sys_fallocate() implementation on i386, x86_64 and powerpc
Diffstat (limited to 'fs/ext4/ioctl.c')
-rw-r--r--fs/ext4/ioctl.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c
index 7b4aa4543c83..c04c7ccba9e3 100644
--- a/fs/ext4/ioctl.c
+++ b/fs/ext4/ioctl.c
@@ -28,6 +28,7 @@ int ext4_ioctl (struct inode * inode, struct file * filp, unsigned int cmd,
28 28
29 switch (cmd) { 29 switch (cmd) {
30 case EXT4_IOC_GETFLAGS: 30 case EXT4_IOC_GETFLAGS:
31 ext4_get_inode_flags(ei);
31 flags = ei->i_flags & EXT4_FL_USER_VISIBLE; 32 flags = ei->i_flags & EXT4_FL_USER_VISIBLE;
32 return put_user(flags, (int __user *) arg); 33 return put_user(flags, (int __user *) arg);
33 case EXT4_IOC_SETFLAGS: { 34 case EXT4_IOC_SETFLAGS: {
@@ -96,7 +97,7 @@ int ext4_ioctl (struct inode * inode, struct file * filp, unsigned int cmd,
96 ei->i_flags = flags; 97 ei->i_flags = flags;
97 98
98 ext4_set_inode_flags(inode); 99 ext4_set_inode_flags(inode);
99 inode->i_ctime = CURRENT_TIME_SEC; 100 inode->i_ctime = ext4_current_time(inode);
100 101
101 err = ext4_mark_iloc_dirty(handle, inode, &iloc); 102 err = ext4_mark_iloc_dirty(handle, inode, &iloc);
102flags_err: 103flags_err:
@@ -133,14 +134,14 @@ flags_err:
133 return PTR_ERR(handle); 134 return PTR_ERR(handle);
134 err = ext4_reserve_inode_write(handle, inode, &iloc); 135 err = ext4_reserve_inode_write(handle, inode, &iloc);
135 if (err == 0) { 136 if (err == 0) {
136 inode->i_ctime = CURRENT_TIME_SEC; 137 inode->i_ctime = ext4_current_time(inode);
137 inode->i_generation = generation; 138 inode->i_generation = generation;
138 err = ext4_mark_iloc_dirty(handle, inode, &iloc); 139 err = ext4_mark_iloc_dirty(handle, inode, &iloc);
139 } 140 }
140 ext4_journal_stop(handle); 141 ext4_journal_stop(handle);
141 return err; 142 return err;
142 } 143 }
143#ifdef CONFIG_JBD_DEBUG 144#ifdef CONFIG_JBD2_DEBUG
144 case EXT4_IOC_WAIT_FOR_READONLY: 145 case EXT4_IOC_WAIT_FOR_READONLY:
145 /* 146 /*
146 * This is racy - by the time we're woken up and running, 147 * This is racy - by the time we're woken up and running,
@@ -282,7 +283,7 @@ long ext4_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
282 case EXT4_IOC32_SETVERSION_OLD: 283 case EXT4_IOC32_SETVERSION_OLD:
283 cmd = EXT4_IOC_SETVERSION_OLD; 284 cmd = EXT4_IOC_SETVERSION_OLD;
284 break; 285 break;
285#ifdef CONFIG_JBD_DEBUG 286#ifdef CONFIG_JBD2_DEBUG
286 case EXT4_IOC32_WAIT_FOR_READONLY: 287 case EXT4_IOC32_WAIT_FOR_READONLY:
287 cmd = EXT4_IOC_WAIT_FOR_READONLY; 288 cmd = EXT4_IOC_WAIT_FOR_READONLY;
288 break; 289 break;