Christoph Hellwig
2fe17c1075
fallocate should be a file operation
...
Currently all filesystems except XFS implement fallocate asynchronously,
while XFS forced a commit. Both of these are suboptimal - in case of O_SYNC
I/O we really want our allocation on disk, especially for the !KEEP_SIZE
case where we actually grow the file with user-visible zeroes. On the
other hand always commiting the transaction is a bad idea for fast-path
uses of fallocate like for example in recent Samba versions. Given
that block allocation is a data plane operation anyway change it from
an inode operation to a file operation so that we have the file structure
available that lets us check for O_SYNC.
This also includes moving the code around for a few of the filesystems,
and remove the already unnedded S_ISDIR checks given that we only wire
up fallocate for regular files.
Signed-off-by: Christoph Hellwig <hch@lst.de >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2011-01-17 02:25:31 -05:00
..
2011-01-12 15:15:14 -08:00
2011-01-13 08:03:25 -08:00
2011-01-09 09:10:10 -08:00
2011-01-13 09:58:14 -08:00
2011-01-14 12:38:18 +01:00
2011-01-12 14:37:42 +09:00
2011-01-10 20:11:38 +01:00
2011-01-13 08:03:19 -08:00
2011-01-13 21:04:07 -05:00
2011-01-14 18:11:59 +03:00
2011-01-12 14:33:05 +00:00
2011-01-07 17:08:46 -08:00
2011-01-14 13:17:26 -08:00
2011-01-13 08:03:08 -08:00
2011-01-07 13:16:28 -08:00
2011-01-12 16:11:30 -05:00
2011-01-10 08:51:44 -08:00
2011-01-15 20:07:45 -05:00
2011-01-10 13:31:14 -08:00
2011-01-13 08:03:12 -08:00
2011-01-07 17:50:31 +11:00
2011-01-13 10:45:01 -08:00
2011-01-13 08:03:17 -08:00
2011-01-13 17:32:46 -08:00
2011-01-12 12:47:34 -05:00
2011-01-13 08:03:22 -08:00
2011-01-13 08:03:13 -08:00
2011-01-15 20:07:47 -05:00
2011-01-10 08:51:44 -08:00
2011-01-13 20:00:02 +00:00
2011-01-10 16:10:33 -08:00
2011-01-13 19:59:58 +00:00
2011-01-13 19:59:52 +00:00
2011-01-07 23:36:59 -05:00
2011-01-13 21:49:56 -08:00
2011-01-10 19:04:07 +01:00
2011-01-12 20:16:43 -05:00
2011-01-15 20:07:33 -05:00
2011-01-09 15:42:55 -08:00
2011-01-10 08:51:44 -08:00
2011-01-07 17:50:27 +11:00
2011-01-17 02:25:31 -05:00
2011-01-07 17:50:23 +11:00
2011-01-07 17:50:23 +11:00
2011-01-07 17:50:29 +11:00
2011-01-13 14:47:54 +01:00
2011-01-13 17:32:45 -08:00
2011-01-10 22:11:23 +01:00
2011-01-14 08:06:39 -08:00
2011-01-13 09:58:38 -08:00
2011-01-10 07:38:53 -08:00
2011-01-13 17:32:48 -08:00
2011-01-10 22:11:23 +01:00
2011-01-11 23:55:51 +01:00
2011-01-13 09:58:14 -08:00
2011-01-13 17:32:31 -08:00
2011-01-10 12:29:43 -05:00
2011-01-13 10:25:58 -08:00
2011-01-13 17:32:31 -08:00
2011-01-13 17:32:33 -08:00
2011-01-13 17:32:47 -08:00
2011-01-13 08:03:07 -08:00
2011-01-07 17:02:58 -08:00
2011-01-07 08:43:37 +01:00
2011-01-12 11:30:50 +02:00
2011-01-12 11:23:08 +02:00
2011-01-12 11:23:12 +02:00
2011-01-13 08:03:06 -08:00
2011-01-13 08:03:05 -08:00
2011-01-14 13:12:45 +00:00
2011-01-10 19:04:08 +01:00
2011-01-13 17:32:51 -08:00
2011-01-15 13:28:17 +02:00
2011-01-13 17:32:34 -08:00
2011-01-13 17:32:46 -08:00
2011-01-13 17:32:41 -08:00
2011-01-13 17:32:47 -08:00
2011-01-13 17:32:46 -08:00
2011-01-13 17:32:43 -08:00
2011-01-16 13:47:07 -05:00
2011-01-15 20:07:33 -05:00
2011-01-12 20:03:43 -05:00
2011-01-12 20:03:43 -05:00
2011-01-07 17:50:26 +11:00
2011-01-13 21:44:34 -08:00
2011-01-14 13:17:26 -08:00
2011-01-15 20:07:34 -05:00
2011-01-10 15:40:52 -05:00
2011-01-08 21:42:42 -07:00
2011-01-14 07:52:02 -08:00
2011-01-13 17:32:43 -08:00
2011-01-13 17:32:36 -08:00
2011-01-16 13:47:07 -05:00
2011-01-14 09:29:05 -08:00
2011-01-16 11:56:26 -08:00
2011-01-14 15:23:25 -08:00
2011-01-10 07:38:54 -08:00
2011-01-07 17:50:29 +11:00
2011-01-13 08:03:21 -08:00
2011-01-13 08:03:21 -08:00
2011-01-13 08:03:10 -08:00
2011-01-10 19:04:05 +01:00
2011-01-13 17:32:48 -08:00
2011-01-14 02:36:43 +00:00
2011-01-07 17:50:29 +11:00
2011-01-13 08:03:17 -08:00
2011-01-13 08:03:18 -08:00
2011-01-13 08:03:18 -08:00
2011-01-13 17:32:42 -08:00
2011-01-13 08:03:23 -08:00
2011-01-13 17:32:43 -08:00
2011-01-10 09:46:24 +11:00
2011-01-07 17:50:27 +11:00
2011-01-13 08:03:19 -08:00
2011-01-13 15:06:28 +09:00
2011-01-12 20:25:08 +01:00
2011-01-13 10:25:58 -08:00
2011-01-10 12:00:22 -05:00
2011-01-13 20:15:35 -08:00
2011-01-13 17:32:42 -08:00
2011-01-12 05:14:15 -05:00
2011-01-13 08:03:21 -08:00
2011-01-13 08:03:20 -08:00
2011-01-13 08:03:08 -08:00
2011-01-07 20:57:22 -05:00
2011-01-13 08:03:20 -08:00
2011-01-13 08:03:18 -08:00
2011-01-13 17:32:34 -08:00
2011-01-13 17:32:31 -08:00
2011-01-07 16:58:04 -08:00
2011-01-13 08:03:24 -08:00