blob: 48024ffacd6e6c0354f1ede2c1cfdae22daf75bb [file] [log] [blame]
Miklos Szeredidb016e02005-09-29 10:06:27 +000012005-09-29 Miklos Szeredi <miklos@szeredi.hu>
2
3 * fusermount: fix error message, when unable to open /dev/fuse.
4 Report by Balázs Pozsár
5
Miklos Szeredi35200932005-09-28 14:50:49 +000062005-09-28 Miklos Szeredi <miklos@szeredi.hu>
7
8 * UClibc fixes from Christian Magnusson
9
Miklos Szeredi8eddf642005-09-27 08:58:26 +0000102005-09-27 Miklos Szeredi <miklos@szeredi.hu>
11
12 * Added NAME="%k" to util/udev.rules. Fix by Mattias Wadman.
13
Miklos Szerediedec95c2005-09-26 10:22:22 +0000142005-09-26 Miklos Szeredi <miklos@szeredi.hu>
15
Miklos Szeredi39851ac2005-09-26 11:17:50 +000016 * Released 2.4.0-rc1
17
182005-09-26 Miklos Szeredi <miklos@szeredi.hu>
19
Miklos Szerediedec95c2005-09-26 10:22:22 +000020 * fusermount: allow user umount in the case when /etc/mtab is a
21 symlink to /proc/mounts. Reported by Balázs Pozsár.
22
Miklos Szeredi6becf0b2005-09-23 11:25:28 +0000232005-09-23 Miklos Szeredi <miklos@szeredi.hu>
24
Miklos Szeredi8722dd22005-09-23 13:34:44 +000025 * Check for special node ID values in lookup and creation
Miklos Szeredi6becf0b2005-09-23 11:25:28 +000026
Miklos Szeredif45f3c12005-09-22 15:14:27 +0000272005-09-22 Miklos Szeredi <miklos@szeredi.hu>
28
29 * Slight optimization in returning EINVAL error in case of an open
30 with O_DIRECT flag.
31
Miklos Szeredi670d07a2005-09-20 11:36:32 +0000322005-09-20 Miklos Szeredi <miklos@szeredi.hu>
33
34 * Remove '--enable-auto-modprobe' configure flag. Module
35 auto-loading is now handled by the kernel.
36
Miklos Szeredid51fca12005-09-15 12:51:00 +0000372005-09-15 Miklos Szeredi <miklos@szeredi.hu>
38
39 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
40 Help from Jens M. Noedler.
41
Miklos Szeredi7e7530d2005-09-14 15:20:26 +0000422005-09-14 Miklos Szeredi <miklos@szeredi.hu>
43
44 * Add memory cleanup on thread exit
45
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +0000462005-09-13 Miklos Szeredi <miklos@szeredi.hu>
47
48 * Set umask to zero in fusexmp and fusexmp_fh, so that
49 files/directories are created with the requested mode.
50
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +0000512005-09-12 Miklos Szeredi <miklos@szeredi.hu>
52
53 * Don't ignore read error in multithreaded loop
54
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000552005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +000056
Miklos Szeredi2277ecc2005-09-08 15:34:44 +000057 * Released 2.4.0-pre2
58
592005-09-08 Miklos Szeredi <miklos@szeredi.hu>
60
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +000061 * Revert lock and access operations. Postpone these until 2.5.
62
632005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +000064
65 * Fix compile warning on 2.6.13 and later
66
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +000067 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +000068
Miklos Szeredi77ccf652005-08-19 14:40:27 +0000692005-08-19 Miklos Szeredi <miklos@szeredi.hu>
70
71 * lib: always refresh directory contents after rewinddir() to
72 conform to SUS. Bug found by John Muir.
73
Miklos Szeredia1482422005-08-14 23:00:27 +0000742005-08-15 Miklos Szeredi <miklos@szeredi.hu>
75
Miklos Szeredic43f9412005-08-15 15:10:48 +000076 * Released 2.4.0-pre1
77
782005-08-14 Miklos Szeredi <miklos@szeredi.hu>
79
Miklos Szeredia1482422005-08-14 23:00:27 +000080 * lib: cleaned up (or messed up, depending on your POV) the low
81 level library API. Hopefully this is close to the final form.
82
Miklos Szeredicc1b97c2005-08-05 10:35:26 +0000832005-08-05 Miklos Szeredi <miklos@szeredi.hu>
84
85 * fusermount: don't allow empty mountpoint argument, which defeats
86 automatic umounting in fuse_main(). Bugreport by Václav Jůza
87
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000882005-08-03 Miklos Szeredi <miklos@szeredi.hu>
89
90 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
91 option is used (Paul Alfille).
92
Miklos Szeredi6c0209a2005-08-02 13:31:28 +0000932005-08-02 Miklos Szeredi <miklos@szeredi.hu>
94
95 * highlevel-lib: added mount options "attr_timeout" and
96 "entry_timeout". These options control the length of time file
97 attributes and entries (names) are cached. Both default to 1.0
98 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +000099
100 * kernel: correctly handle zero timeout for attributes and entries
101
Miklos Szeredi56a61f02005-08-01 10:42:25 +00001022005-08-01 Miklos Szeredi <miklos@szeredi.hu>
103
104 * Added missing symbols to versionscript (Joshua J. Berry)
105
Miklos Szeredie77cc072005-08-01 11:58:51 +0000106 * kernel: implement two flags, open can set: 'direct_io' and
107 'keep_cache'. These correspond exactly to mount options
108 'direct_io' and 'kernel_cache', but allow a per-open setting.
109
110 * Move 'direct_io' and 'kernel_cache' mount option handling to
111 userspace. For both mount options, if the option is given, then
112 the respective open flag is set, otherwise the open flag is left
113 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +0000114
Miklos Szeredi31066bb2005-08-01 14:49:31 +0000115 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000116
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +00001172005-07-28 Miklos Szeredi <miklos@szeredi.hu>
118
119 * kernel: invalidate attributes for read/readdir/readlink
120 operations
121
122 * kernel: detect newer UML kernels
123
Miklos Szeredibfb99462005-07-26 11:07:55 +00001242005-07-26 Miklos Szeredi <miklos@szeredi.hu>
125
126 * Make the installation path of fuse.ko and mount.fuse
127 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
128 environment variables. Requirement and help from Csaba Henk.
129
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +00001302005-07-22 Miklos Szeredi <miklos@szeredi.hu>
131
132 * Fix bug, that causes filesystem requests to hang when unique
133 request counter becomes negative. This happens after
134 2,147,483,648 operations, so most people won't care. Thanks to
135 Franco Broi for the report and testing.
136
Miklos Szeredi9b813af2005-07-21 07:59:37 +00001372005-07-21 Miklos Szeredi <miklos@szeredi.hu>
138
139 * Don't change mtime/ctime/atime to local time on read/write.
140 Bug reported by Ben Grimm
141
142 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
143 Magnusson
144
145 * fusermount: use getopt_long() for option parsing. It allows the
146 use of '--' to stop argument scanning, so fusermount can now
147 operate on directories whose names begin with a '-'. Patch by
148 Adam Connell
149
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00001502005-07-15 Miklos Szeredi <miklos@szeredi.hu>
151
152 * fusermount: add '-v', '--version' and '--help' options
153
154 * add inode based API
155
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00001562005-07-12 Miklos Szeredi <miklos@szeredi.hu>
157
158 * lib: don't block signals in worker threads. Problem noticed by
159 Usarin Heininga
160
Miklos Szeredic902a852005-07-07 12:35:37 +00001612005-07-07 Miklos Szeredi <miklos@szeredi.hu>
162
163 * lib: don't allow both 'allow_other' and 'allow_root' options to
164 be given
165
Miklos Szeredi437d8112005-07-06 09:14:20 +00001662005-07-06 Miklos Szeredi <miklos@szeredi.hu>
167
168 * fusermount: check if mountpoint is empty (only '.' and '..' for
169 directories, and size = 0 for regular files). If "nonempty"
170 option is given, omit this check. This is useful, so users don't
171 accidentally hide data (e.g. from backup programs). Thanks to
172 Frank van Maarseveen for pointing this out.
173
174 * kernel: check if mandatory mount options ('fd', 'rootmode',
175 'user_id', 'group_id') are all given
176
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000177 * lib: simplify 'readdir_ino' handling
178
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000179 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
180
Miklos Szeredibb9f5172005-07-03 18:03:11 +00001812005-07-03 Miklos Szeredi <miklos@szeredi.hu>
182
183 * kernel: clean up 'direct_io' code
184
Miklos Szeredie1bcece2005-06-28 10:37:06 +00001852005-06-28 Miklos Szeredi <miklos@szeredi.hu>
186
187 * Add 'mount.fuse' written by Petr Klima
188
Miklos Szeredi866826d2005-06-28 12:22:57 +0000189 * '/dev/fuse' is created by 'make install' if does not yet exist
190
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00001912005-06-20 Miklos Szeredi <miklos@szeredi.hu>
192
193 * Fix UCLIBC compile error. Patch by Christian Magnusson
194
Miklos Szerediec12fad2005-06-08 10:26:34 +00001952005-06-08 Miklos Szeredi <miklos@szeredi.hu>
196
197 * Enable the auto-loading of the module via access to the
198 corresponding device file. Patch by Takashi Iwai.
199
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000200 * Allow mounting a regular file (over a regular file) for
201 unprivleged users.
202
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000203 * Do not create temporary device file. Require "/dev/fuse" to
204 exist, and be readable/writable by the mounting user.
205
Miklos Szeredi46960ce2005-06-02 09:05:00 +00002062005-06-02 Miklos Szeredi <miklos@szeredi.hu>
207
Miklos Szeredi56478552005-06-02 10:29:00 +0000208 * Released 2.3.0
209
2102005-06-02 Miklos Szeredi <miklos@szeredi.hu>
211
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000212 * Fix serious information leak: if the filesystem returns a short
213 byte count to a read request, and there are non-zero number of
214 pages which are not filled at all, these pages will not be zeroed.
215 Hence the user can read out previous memory contents. Found by
216 Sven Tantau.
217
Miklos Szeredi33be22d2005-05-27 09:12:43 +00002182005-05-27 Miklos Szeredi <miklos@szeredi.hu>
219
220 * Add "readdir_ino" mount option, which tries to fill in the d_ino
221 field in struct dirent. This mount option is ignored if "use_ino"
222 is used. It helps some programs (e.g. 'pwd' used over NFS from a
223 non-Linux OS). Patch by David Shaw.
224
Miklos Szeredif94e0102005-05-12 14:56:34 +00002252005-05-12 Miklos Szeredi <miklos@szeredi.hu>
226
Miklos Szeredieb009c42005-05-12 15:01:17 +0000227 * Released 2.3-rc1
228
2292005-05-12 Miklos Szeredi <miklos@szeredi.hu>
230
Miklos Szeredif94e0102005-05-12 14:56:34 +0000231 * File save in krusader and other editors doesn't work with sshfs,
232 because open() is interrupted by a periodic signal, and open()
233 restarts forever, without any progress. This could just be fixed
234 in open(), but the problem is more generic: if signals are
235 received more often than the filesystem can get the request to
236 userspace, it will never finish. This is probably only a
237 theoretical problem, nevertheless I'm removing the possibility to
238 interrupt requests with anything other than SIGKILL, even before
239 being sent to userspace. Bugreport by Eduard Czimbalmos.
240
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00002412005-05-09 Miklos Szeredi <miklos@szeredi.hu>
242
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000243 * libfuse: add "tree_lock" rwlock, that is locked for write in
244 rename, unlink and rmdir, and locked for read in all other
245 operations. This should fix the rename/release race reported by
246 Valient Gough and others. The solution is very coarse, a finer
247 grained locking scheme could be implemented, but it would be much
248 more complex. Let's see whether this is good enough.
249
2502005-05-09 Miklos Szeredi <miklos@szeredi.hu>
251
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000252 * Released 2.3-pre7
253
Miklos Szeredi38009022005-05-08 19:47:22 +00002542005-05-08 Miklos Szeredi <miklos@szeredi.hu>
255
256 * Better fix for out of order FORGET messages. Now the
257 LOOKUP/FORGET messages are balanced exactly (one FORGET can
258 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000259 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000260 compatible.
261
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00002622005-05-06 Miklos Szeredi <miklos@szeredi.hu>
263
264 * Fix abort for out of order FORGET messages. Again. Spotted by
265 Franco Broi again. Sorry :)
266
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00002672005-04-29 Miklos Szeredi <miklos@szeredi.hu>
268
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000269 * Released 2.3-pre6
270
2712005-04-29 Miklos Szeredi <miklos@szeredi.hu>
272
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000273 * Make fusermount work with fuse kernel modules not yet supporting
274 the "group_id" option (added for the purpose of stricter
275 permission checking).
276
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00002772005-04-28 Miklos Szeredi <miklos@szeredi.hu>
278
279 * Check for hard-linked directories in lookup. This could cause
280 problems in the VFS, which assumes that such objects never exist.
281
282 * Make checking of permission for other users more strict. Now
283 the same privilege is required for the mount owner as for ptrace
284 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000285
Miklos Szeredi3efcb562005-04-23 13:34:29 +00002862005-04-23 Miklos Szeredi <miklos@szeredi.hu>
287
288 * Released 2.3-pre5
289
Miklos Szeredid001bf92005-04-22 07:54:11 +00002902005-04-22 Miklos Szeredi <miklos@szeredi.hu>
291
292 * Add -msoft-float to kernel module compile flags for 2.4.X. This
293 is needed on certain architectures. Report from Chris Kirby
294
295 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
296 Reported by David Shaw
297
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000298 * Remove "allow_root" option from kernel module, and implement
299 it's functionality in the library
300
301 * Fix Oops caused by premature release of fuse_conn. Clean up
302 related code, to be more readable
303
Miklos Szeredif9137452005-04-23 10:59:44 +0000304 * Sendfile should not use page cache if "direct_io" mount option
305 is given
306
Miklos Szeredib7640d22005-04-08 15:15:28 +00003072005-04-08 Miklos Szeredi <miklos@szeredi.hu>
308
309 * Fix Oops in case of nfs export. Spotted by David Shaw
310
Miklos Szeredi89814a12005-04-08 16:39:09 +0000311 * Fix another Oops in case of write over nfs with direct_io turned
312 on. Again spotted by David Shaw
313
Miklos Szerediab974562005-04-07 15:40:21 +00003142005-04-07 Miklos Szeredi <miklos@szeredi.hu>
315
Miklos Szeredi432d6182005-04-07 15:56:13 +0000316 * Released 2.3-pre4
317
3182005-04-07 Miklos Szeredi <miklos@szeredi.hu>
319
Miklos Szerediab974562005-04-07 15:40:21 +0000320 * lib: finalized new readdir() interface, which now supersedes the
321 getdir() method.
322
Miklos Szeredi30e093a2005-04-03 17:44:54 +00003232005-04-03 Miklos Szeredi <miklos@szeredi.hu>
324
325 * Released 2.3-pre3
326
3272005-04-03 Miklos Szeredi <miklos@szeredi.hu>
328
329 * Implement backward compatibility with version 5 kernel ABI
330
Miklos Szeredi18fce982005-04-01 21:07:35 +00003312005-04-01 Miklos Szeredi <miklos@szeredi.hu>
332
333 * Released 2.3-pre2
334
3352005-04-01 Miklos Szeredi <miklos@szeredi.hu>
336
337 * kernel: fix dirent offset handling
338
339 * lib: add readdir and releasedir methods
340
341 * lib: use fh field of fuse_file_info in opendir, readdir,
342 releasedir and fsyncdir methods
343
344 * lib: check kernel API version and bail out of it's old. This
345 will be properly fixed in the next release
346
3472005-03-31 Miklos Szeredi <miklos@szeredi.hu>
348
349 * Released 2.3-pre1
350
Miklos Szeredieab72ef2005-03-31 19:59:12 +00003512005-03-31 Miklos Szeredi <miklos@szeredi.hu>
352
353 * kernel API: add padding to structures, so 64bit and 32bit
354 compiler will return the same size
355
356 * kernel API: add offset field to fuse_dirent. This will allow
357 more sophisticated readdir interface for userspace
358
359 * kernel API: change major number to 6
360
361 * kernel: fix warnings on 64bit archs
362
363 * kernel: in case of API version mismatch, return ECONNREFUSED
364
Miklos Szeredi407e6a72005-03-25 12:19:43 +00003652005-03-24 Miklos Szeredi <miklos@szeredi.hu>
366
367 * kernel: trivial cleanups
368
Miklos Szeredi4283ee72005-03-21 12:09:04 +00003692005-03-21 Miklos Szeredi <miklos@szeredi.hu>
370
371 * Add fsyncdir() operation
372
Miklos Szeredid17da462005-03-21 11:47:04 +00003732005-03-19 Miklos Szeredi <miklos@szeredi.hu>
374
375 * kernel: add locking to background list (fixes previous fix)
376
3772005-03-18 Miklos Szeredi <miklos@szeredi.hu>
378
379 * kernel: fix bug which could cause leave busy inodes after
380 unmount, and Oops.
381
3822005-03-08 Miklos Szeredi <miklos@szeredi.hu>
383
384 * examples: add -lpthread to link flags to work around valgrind
385 quirk
386
387 * lib: don't exit threads, so cancelation doesn't cause segfault
388
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00003892005-03-04 Miklos Szeredi <miklos@szeredi.hu>
390
391 * kernel: fix nasty bug which could cause an Oops under certain
392 situations. Found by Magnus Johansson
393
Miklos Szeredif43f0632005-02-28 11:46:56 +00003942005-02-28 Miklos Szeredi <miklos@szeredi.hu>
395
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000396 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000397 permission checking in getdir() is too late. Thanks to Usarin
398 Heininga for pointing out this deficiency
399
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000400 * libfuse: added init() and destroy() methods to fuse_operations
401
Miklos Szeredif43f0632005-02-28 11:46:56 +0000402 * kernel: llseek() method for files and directories made explicit
403
404 * kernel: fixed inode leak in NFS export in case of nodeid
405 wrapping
406
Miklos Szeredied3c97c2005-02-15 17:04:50 +00004072005-02-15 Miklos Szeredi <miklos@szeredi.hu>
408
409 * libfuse: clean up some unitialized memory found with valgrind
410
Miklos Szeredi47c52982005-02-23 09:27:38 +0000411 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
412 explicitly linked libpthread for applications
413
Miklos Szeredia7169412005-02-10 07:35:05 +00004142005-02-10 Miklos Szeredi <miklos@szeredi.hu>
415
416 * fusermount: set umask, otherwise /etc/mtab will have
417 unpredictable permission. Spotted by Jindrich Kolorenc
418
419 * fusermount: set owner and group of /etc/mtab to original values
420 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000421
422 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000423
Miklos Szeredib92d9782005-02-07 16:10:49 +00004242005-02-07 Miklos Szeredi <miklos@szeredi.hu>
425
426 * Cleaned up directory reading (temporary file is not used)
427
Miklos Szerediff30a6c2005-02-02 10:53:59 +00004282005-02-02 Miklos Szeredi <miklos@szeredi.hu>
429
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000430 * Released 2.2
431
4322005-02-02 Miklos Szeredi <miklos@szeredi.hu>
433
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000434 * Fix possible race when operation is interrupted
435
Miklos Szeredi7a983952005-01-28 09:58:19 +00004362005-01-28 Miklos Szeredi <miklos@szeredi.hu>
437
Miklos Szeredie5183742005-02-02 11:14:04 +0000438 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000439
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00004402005-01-26 Miklos Szeredi <miklos@szeredi.hu>
441
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000442 * Released 2.2-pre6
443
4442005-01-26 Miklos Szeredi <miklos@szeredi.hu>
445
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000446 * Fix bug in link() operation which caused the wrong path to be
447 passed as the first argument. Found by Anton Altaparmakov
448
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00004492005-01-21 Miklos Szeredi <miklos@szeredi.hu>
450
451 * LIB: fix double reply in readdir operation
452
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000453 * fusermount: fix uid checking bug. Patch by Adam Connell
454
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000455 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000456 Patch by Keshava Gowda
457
Miklos Szeredi64074142005-01-20 08:48:11 +00004582005-01-20 Miklos Szeredi <miklos@szeredi.hu>
459
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000460 * KERNEL: provide correct llseek semantics for fuse device (fixes
461 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
462
4632005-01-20 Miklos Szeredi <miklos@szeredi.hu>
464
Miklos Szeredi64074142005-01-20 08:48:11 +0000465 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
466
Miklos Szeredi1adb2272005-01-18 21:19:58 +00004672005-01-18 Miklos Szeredi <miklos@szeredi.hu>
468
469 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
470 and RELEASEDIR. This ends the ugly hack of passing a file
471 descriptor to the kernel, and actually makes the code simpler.
472
Miklos Szeredi7db35c02005-01-17 09:46:28 +00004732005-01-17 Miklos Szeredi <miklos@szeredi.hu>
474
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000475 * Released 2.2-pre4
476
4772005-01-17 Miklos Szeredi <miklos@szeredi.hu>
478
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000479 * fusermount: remove capability setting, which was the cause of
480 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000481 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000482
Miklos Szeredidbe0f652005-01-15 14:32:56 +00004832005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000484
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000485 * fix compilation on 2.4 kernels (reported by Valient Gough)
486
487 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000488
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000489 * fusermount: improve parsing of /etc/fuse.conf
490
4912005-01-13 Miklos Szeredi <miklos@szeredi.hu>
492
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000493 * Remove 'mount_max' and 'user_allow_other' module options. These
494 are now checked by fusermount, and can be set in /etc/fuse.conf
495
496 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
497
Miklos Szeredi81394522005-01-11 14:24:18 +00004982005-01-11 Miklos Szeredi <miklos@szeredi.hu>
499
500 * KERNEL: fix possible inode allocation problem, where
501 sizeof(struct inode) is not aligned (found by Mike Waychison)
502
503 * KERNEL: use new follow_link/put_link methods
504
505 * KERNEL: cosmetic fixes
506
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00005072005-01-10 Miklos Szeredi <miklos@szeredi.hu>
508
509 * Released 2.2-pre3
510
5112005-01-10 Miklos Szeredi <miklos@szeredi.hu>
512
513 * Add missing code that was accidently left out
514
Miklos Szeredi8c7da232005-01-09 12:27:41 +00005152005-01-09 Miklos Szeredi <miklos@szeredi.hu>
516
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000517 * Released 2.2-pre2
518
5192005-01-09 Miklos Szeredi <miklos@szeredi.hu>
520
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000521 * Change "uid" mount option to "user_id" to avoid confusion with a
522 mount option "uid" commonly used by many filesystems
523
5242005-01-09 Miklos Szeredi <miklos@szeredi.hu>
525
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000526 * Released 2.2-pre1
527
5282005-01-09 Miklos Szeredi <miklos@szeredi.hu>
529
530 * If FUSE is configured in the kernel, don't build it by default
531
Miklos Szeredi2a927272005-01-07 11:14:15 +00005322005-01-07 Miklos Szeredi <miklos@szeredi.hu>
533
534 * Compile fix by Christian Magnusson
535
Miklos Szeredib6220192005-01-05 16:19:10 +00005362005-01-05 Miklos Szeredi <miklos@szeredi.hu>
537
538 * Fix compilation for 2.6.{0-5} kernels
539
Miklos Szeredi0f62d722005-01-04 12:45:54 +00005402005-01-04 Miklos Szeredi <miklos@szeredi.hu>
541
542 * KERNEL: if request is interrupted, still keep reference to used
543 inode(s) and file, so that FORGET and RELEASE are not sent until
544 userspace finishes the request.
545
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000546 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
547 request with the same information, which is more flexible,
548 simpler, works on embedded systems.
549
Miklos Szeredi0f62d722005-01-04 12:45:54 +00005502004-12-16 Miklos Szeredi <miklos@szeredi.hu>
551
552 * KERNEL ABI: update interface to make it independent of type
553 sizes. This will help on 64 bit architectures which can run
554 legacy 32 bit applications.
555
556 * KERNEL ABI: add "len" field to request headers. This will allow
557 sending/receiving requests in multiple chunks.
558
559 * KERNEL: handle file type change more intelligently
560
561 * LIB: "-o debug" option should disable backgrounding (fix by
562 Fabien Reygrobellet)
563
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00005642004-12-13 Miklos Szeredi <miklos@szeredi.hu>
565
566 * KERNEL: invalidate dentry/attributes if interrupted request
567 could leave filesystem in an unknown state.
568
Miklos Szeredie56818b2004-12-12 11:45:24 +00005692004-12-12 Miklos Szeredi <miklos@szeredi.hu>
570
571 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
572 These will cause some regressions, but stability is considered
573 more important. If any of these features turns out to be
574 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000575
Miklos Szeredie56818b2004-12-12 11:45:24 +0000576 * Make all requests interruptible (only with SIGKILL currently).
577 This can be used to break any deadlock produced by the userspace
578 filesystem accessing it's own exported files. The RELEASE request
579 is special, because if it's interrupted before sending it to
580 userspace it is still sent, but the reply is not awaited.
581
582 * If request is interrupted before being sent to userspace, and if
583 it hasn't yet got any side effects, it is always restarted,
584 regardless of the SA_RESTART flag. This makes these interruptions
585 transparent to the process.
586
587 * Remove shared-writable mmap support, which was prone to an
588 out-of-memory deadlock situation
589
590 * Remove INVALIDATE userspace initiated request
591
592 * Make readpages() synchronous. Asynchronous requests are
593 deadlock prone, since they cannot be interrupted.
594
595 * Add readv/writev support to fuse device operations
596
597 * Remove some printks, which userspace FS can use for a DoS
598 against syslog
599
600 * Remove 'large_read' mount option from 2.6 in kernel, check it in
601 fusermount instead
602
603 * LIB: improve compatibility with a fuse.h header installed in
604 ${prefix}/include which in turn includes the real header.
605
606 * LIB: improve compatibility by defining fuse_main() (which is now
607 not used), so old configure scripts find it.
608
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00006092004-12-10 Miklos Szeredi <miklos@szeredi.hu>
610
611 * When mounting on a subdirectory of / don't duplicate slashes at
612 the beggining of path (spotted by David Shaw)
613
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00006142004-12-09 Miklos Szeredi <miklos@szeredi.hu>
615
616 * Fix bug causing garbage in mount options (spotted by David Shaw)
617
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00006182004-12-07 Miklos Szeredi <miklos@szeredi.hu>
619
620 * Add 'writepage' flag to 'fuse_file_info'.
621
622 * More comments in fuse.h
623
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000624 * Get rid of double underscores
625
Miklos Szeredi799993c2004-12-04 21:20:05 +00006262004-12-04 Miklos Szeredi <miklos@szeredi.hu>
627
628 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
629
630 * helper.c: add -ho option, which only displays the options not
631 the usage header. This can be used by filesystems which have
632 their own options.
633
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00006342004-12-03 Miklos Szeredi <miklos@szeredi.hu>
635
636 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
637 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
638 including the fuse header
639
640 * Add binary compatibility to 2.1 version of library with symbol
641 versioning
642
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00006432004-12-03 Miklos Szeredi <miklos@szeredi.hu>
644
645 * Released 2.1
646
Miklos Szeredi039322d2004-12-01 18:39:12 +00006472004-12-01 Miklos Szeredi <miklos@szeredi.hu>
648
649 * kernel: clean up writing functions
650
651 * kernel: no allocation on write in direct_io mode
652
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000653 * move linux/fuse.h to fuse_kernel.h
654
Miklos Szeredi83a07442004-11-30 18:25:20 +00006552004-11-30 Miklos Szeredi <miklos@szeredi.hu>
656
657 * kernel: clean up reading functions
658
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00006592004-11-29 Miklos Szeredi <miklos@szeredi.hu>
660
661 * kernel: make readpage() uninterruptible
662
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000663 * kernel: check readonly filesystem flag in fuse_permission
664
665 * lib: don't die if version file not found and new style device
666 exists
667
668 * lib: add '-r' option, which is short for '-o ro'
669
670 * fusermount: simplify device opening
671
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000672 * kernel: when direct_io is turend on, copy data directly to
673 destination without itermediate buffer. More efficient and safer,
674 since no allocation is done.
675
676 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000677
678 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000679
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00006802004-11-26 Miklos Szeredi <miklos@szeredi.hu>
681
682 * libfuse API change: open, read, write, flush, fsync and release
683 are passed a 'struct fuse_file_info' pointer containing the open
684 flags (open and release), and the file handle. Verion changed to
685 3.0.
686
Miklos Szeredia25d4c22004-11-23 22:32:16 +00006872004-11-23 Miklos Szeredi <miklos@szeredi.hu>
688
689 * More cleanups in the kernel
690
691 * The 10,229 charater device number has been assigned for FUSE
692
693 * Version file checking fix (reported by Christian Magnusson)
694
695 * fusermount: opening the fuse device now doesn't need /sys.
696
697 * Optimize reading by controlling the maximum readahead based on
698 the 'max_read' mount option
699
700 * fixes for UCLIBC (Christian Magnusson)
701
Miklos Szeredi13ed4822004-11-20 11:12:21 +00007022004-11-19 Miklos Szeredi <miklos@szeredi.hu>
703
704 * Cleaned up kernel in preparation for merge into mainline:
705
706 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
707
708 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
709
710 * __user annotations for sparse
711
712 * allocate individual pages instead of kmalloc in fuse_readdir,
713 fuse_read and fuse_write.
714
715 * Fix NFS export in case "use_ino" mount option is given
716
Miklos Szeredif3845c42004-11-20 11:18:34 +0000717 * Make libfuse and fusermount compatible with future versions
718
719 * fusermount: properly add mount options to /etc/mtab
720
7212004-11-15 Miklos Szeredi <miklos@szeredi.hu>
722
723 * fusermount: do not resolve last component of mountpoint on if it
724 is '.' or '..'. This new path resolvation is now done on mount as
725 well as unmount. This enables relative paths to work on unmount.
726
727 * fusermount: parse common mount options like "ro", "rw", etc...
728
729 * Allow module params to be changed through sysfs
730
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00007312004-11-14 Miklos Szeredi <miklos@szeredi.hu>
732
733 * Released 2.1-pre1
734
7352004-11-14 Miklos Szeredi <miklos@szeredi.hu>
736
737 * Fix bug in fuse_readpages() causing Oops in certain situations.
738 Bug found by Vincenzo Ciancia.
739
740 * Fix compilation with kernels versions > 2.6.9.
741
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00007422004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000743
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000744 * Check kernel interface version in fusermount to prevent
745 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000746
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000747 * No need to allocate fuse_conn until actual mount happens
748
749 * Fix potential race between umount and fuse_invalidate
750
751 * Check superblock of proc file in addition to inode number
752
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000753 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000754
Miklos Szeredi51ec1032004-11-10 11:52:26 +00007552004-11-10 Miklos Szeredi <miklos@szeredi.hu>
756
757 * Separate configure for the kernel directory
758
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000759 * Don't allow write to return more than 'count'
760
761 * Extend kernel interface for future use
762
Miklos Szeredi51ec1032004-11-10 11:52:26 +00007632004-11-09 Miklos Szeredi <miklos@szeredi.hu>
764
765 * Fix 'makeconf.sh' to use autoreconf if available
766
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00007672004-11-08 Miklos Szeredi <miklos@szeredi.hu>
768
Miklos Szeredid507c732004-11-08 17:32:25 +0000769 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
770 compatibility with earlier versions. To compile earier versions
771 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
772 Do not use the "use_ino" mount flag with filesystems compiled with
773 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000774
775 * Add pkg-config support. To compile a FUSE based filesystem you
776 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
777 or similar. Note, that the PKG_CONFIG_PATH environment variable
778 usually needs to be set to "/usr/local/lib/pkgconfig".
779
780 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000781
Miklos Szeredia13d9002004-11-02 17:32:03 +00007822004-11-02 Miklos Szeredi <miklos@szeredi.hu>
783
784 * Added "use_ino" mount option. This enables the filesystems to
785 set the st_ino field on files
786
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00007872004-11-01 Miklos Szeredi <miklos@szeredi.hu>
788
789 * Fix compile problems with ancient (<=2.4.18) kernels (reported
790 by Jeremy Smith)
791
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000792 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
793
794 * Clear the 'exited' flag when mail loop is finished
795
Miklos Szeredie989f0d2004-10-28 20:24:58 +00007962004-10-28 Miklos Szeredi <miklos@szeredi.hu>
797
798 * Make xattr functions work under 2.6 (bug found by Vincenzo
799 Ciancia)
800
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00008012004-10-26 Miklos Szeredi <miklos@szeredi.hu>
802
803 * Reset request in fuse_flush() (bugreport by David Shaw)
804
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00008052004-10-21 Miklos Szeredi <miklos@szeredi.hu>
806
Miklos Szeredi0e70aa72004-10-21 16:24:29 +0000807 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000808 error code
809
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000810 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000811 make it easier to implement a custom event loop.
812
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000813 * Use daemon() call to background the filesystem after mounting.
814 This function closes the standard input, output and error and
815 changes the current working directory to "/".
816
Miklos Szeredi127d49b2004-10-14 13:33:39 +00008172004-10-14 Miklos Szeredi <miklos@szeredi.hu>
818
819 * Released 1.9
820
Miklos Szeredid45baf42004-10-10 07:56:12 +00008212004-10-09 Miklos Szeredi <miklos@szeredi.hu>
822
823 * Don't allow fuse_flush() to be interrupted (bug found by David
824 Shaw)
825
Miklos Szeredi1f18db52004-09-27 06:54:49 +00008262004-09-27 Miklos Szeredi <miklos@szeredi.hu>
827
828 * Add PID to fuse_context. Patch by Steven James
829
Miklos Szeredi1eea0322004-09-27 18:50:11 +0000830 * Change file handle type to 'unsigned long' in kernel interface
831
Miklos Szeredid169f312004-09-22 08:48:26 +00008322004-09-22 Miklos Szeredi <miklos@szeredi.hu>
833
834 * A slight API change: fuse_get_context() doesn't need the "fuse"
835 pointer, but the returned context contains it instead. The
836 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +0000837
838 * Fix mounting and umounting FUSE filesystem under another FUSE
839 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +0000840
Miklos Szeredic2309912004-09-21 13:40:38 +00008412004-09-21 Miklos Szeredi <miklos@szeredi.hu>
842
843 * Fix deadlock in case of memory allocation failure. Patch by
844 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +0000845
Miklos Szeredib2cf9562004-09-16 08:42:40 +00008462004-09-16 Miklos Szeredi <miklos@szeredi.hu>
847
848 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +0000849
Miklos Szeredi65afea12004-09-14 07:13:45 +00008502004-09-14 Miklos Szeredi <miklos@szeredi.hu>
851
852 * Check temporary file creation failure in do_getdir(). Bug
853 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000854
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00008552004-09-13 Miklos Szeredi <miklos@szeredi.hu>
856
857 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000858
859 * Make requests non-interruptible so race with FORGET is avoided.
860 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000861
862 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000863
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00008642004-09-09 Miklos Szeredi <miklos@szeredi.hu>
865
866 * Fix bug in case two FORGETs for the same node are executed in
867 the wrong order. Bug spotted and endured for months by Franco
868 Broi, and logfile for solution provided by Terje Oseberg
869
Miklos Szeredi12085102004-09-02 18:13:57 +00008702004-09-01 Miklos Szeredi <miklos@szeredi.hu>
871
872 * Add -D_REENTRANT to the compile flags
873
874 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000875
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00008762004-08-16 Miklos Szeredi <miklos@szeredi.hu>
877
878 * Change release method to be non-interruptible. Fixes bug
879 causing missing release() call when program which has opened files
880 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000881
Miklos Szeredi891b8742004-07-29 09:27:49 +00008822004-07-29 Miklos Szeredi <miklos@szeredi.hu>
883
884 * Add fuse_invalidate() to library API
885
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00008862004-07-26 Miklos Szeredi <miklos@szeredi.hu>
887
888 * Check permissions in setattr if 'default_permissions' flag is
889 set. Bug spotted by Damjan Lango
890
Miklos Szeredid66d3942004-07-24 13:47:44 +00008912004-07-24 Miklos Szeredi <miklos@szeredi.hu>
892
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000893 * 'large_read' mount option removed for 2.6 kernels, since the
894 default (dynamic read size) is better
895
896 * Extend kernel API with file handles. A file handle is returned
897 by open, and passed to read, write, flush, fsync and release.
898 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +0000899
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000900 * Security changes:
901
902 * Change the current directory to the mountpoint before checking
903 the permissions and mount filesystem on "."
904
905 * By default don't modprobe the fuse module for non-root. The old
906 behavior can be restored with the '--enable-auto-modprobe' flag of
907 ./configure
908
909 * By default don't allow shared writable mappings for non-root.
910 The old behavior can be restored with the 'user_mmap=1' module
911 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000912
Miklos Szeredibd7661b2004-07-23 17:16:29 +00009132004-07-23 Miklos Szeredi <miklos@szeredi.hu>
914
915 * Clean up mount option passing to fusermount and to fuse_new()
916 BEWARE: this changes the userspace API slightly, and the command
917 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +0000918
Miklos Szeredi58865372004-07-20 14:22:26 +00009192004-07-20 Miklos Szeredi <miklos@szeredi.hu>
920
921 * Optimize reading under 2.6 kernels by issuing multiple page
922 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +0000923
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00009242004-07-18 Miklos Szeredi <miklos@szeredi.hu>
925
926 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000927
Miklos Szeredi069c9502004-07-16 16:17:02 +00009282004-07-16 Miklos Szeredi <miklos@szeredi.hu>
929
930 * Separate directory entry and inode attribute validity timer
931
932 * New write semaphore to stop page writeback during truncate
933
934 * Fsync now waits for all writes to complete before sending the
935 request
936
937 * Optimization: if a page is completely written by
938 fuse_commit_write(), clear the dirty flag and set the uptodate
939 flag for that page
940
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000941 * Some memory cleanup at exit
942
Miklos Szeredi2529ca22004-07-13 15:36:52 +00009432004-07-13 Miklos Szeredi <miklos@szeredi.hu>
944
945 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000946 disable the "hide if open" behavior of unlink/rename.
947
948 * If temporary buffer allocation fails in raw read, fall back to a
949 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +0000950
Miklos Szeredi73798f92004-07-12 15:55:11 +00009512004-07-12 Miklos Szeredi <miklos@szeredi.hu>
952
953 * Fix bug in do_open() in libfuse: open count was incremented
954 after the reply is sent so it could race with unlink/forget and
955 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +0000956
Miklos Szeredi015fe702004-07-12 11:52:24 +00009572004-07-08 Miklos Szeredi <miklos@szeredi.hu>
958
959 * When performing create or remove operation, refresh the parent's
960 attributes on next revalidate, as i_nlink (and maybe size/time)
961 could be inacurate.
962
963 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
964 pages (2.6 only)
965
966 * Set set_page_dirty address space operation (2.6 only)
967
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009682004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +0000969
970 * Minor fix in read: print debug info even if read size is zero
971
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009722004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +0000973
974 * Fix race between truncate and writepage (fsx-linux now runs
975 without error)
976
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009772004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000978
979 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
980 by Mattias Wadman)
981
982 * Added option for direct read/write (-r)
983
984 * Fix revalidate time setting for newly created inodes
985
Miklos Szerediacb4d362004-07-02 16:20:45 +0000986 * Remove uid==0 check for '-x' option in fusermount (kernel checks
987 this)
988
989 * fuse_main() only installs handlers for signals (out of INT, HUP,
990 TERM, PIPE), for which no handler has yet been installed
991
992 * Add module option 'user_allow_other' which if set to non-zero
993 will allow non root user to specify the 'allow_other' mount option
994 ('-x' option of fusermount)
995
Miklos Szeredi014d7d22004-07-02 21:22:37 +0000996 * Fix deadlock between page writeback completion and truncate
997 (bug found by Valient Gough with the fsx-linux utility)
998
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009992004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001000
1001 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +00001002 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
1003 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +00001004
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010052004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +00001006
1007 * Acquire inode->i_sem before open and release methods to prevent
1008 concurrent rename or unlink operations.
1009
Miklos Szeredi65cf7c72004-06-30 11:34:56 +00001010 * Make __fuse_read_cmd() read only one command. This allows
1011 multiplexing the fuse file descriptor with other event sources
1012 using select() or poll() (patch by Jeff Harris)
1013
1014 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
1015
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010162004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +00001017
1018 * Fix file offset wrap around at 4G when doing large reads
1019
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010202004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001021
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001022 * Fix memory leak in open (Valient Gough)
1023
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010242004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001025
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001026 * Add "close after delete" support to libfuse (patch by Valient
1027 Gough)
1028
1029 * Cancel all worker threads before exit in multithreaded mode
1030
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010312004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001032
1033 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001034
1035 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001036
1037 * Work with newer libtool (1.5a)
1038
1039 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001040
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010412004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001042
1043 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001044
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010452004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001046
1047 * Fix possible inode leak in userspace in case of unfinished
1048 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001049
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010502004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001051
1052 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001053
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010542004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001055
1056 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001057
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010582004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001059
1060 * Build shared library as well as static (using libtool)
1061
1062 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1063 there has not been a release with the previous minor number, and I
1064 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001065
1066 * Change fuse_main(), so that default behavior is to go into
1067 background if mount is successful. '-f' and '-d' options disable
1068 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1069 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001070
1071 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1072 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001073
1074 * Don't call getdir method from open() only from first readdir().
1075 Open is sometimes just used to store the current directory
1076 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001077
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010782004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001079
1080 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001081
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010822004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001083
1084 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001085
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010862004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001087
1088 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001089
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010902004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001091
1092 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001093
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010942004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001095
1096 * Replaced binary mount data with text options
1097
1098 * Show FUSE specific mount options in /proc/mounts
1099
1100 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1101
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011022004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001103
1104 * Check some limits so userspace won't get too big requests
1105
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011062004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001107
1108 * Kill compile warning
1109
1110 * Upgraded user-mount patch for 2.6.5
1111
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011122004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001113
1114 * Add detection of user-mode-linux to configure
1115
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011162004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001117
1118 * fixed zero size case for getxattr and listxattr
1119
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011202004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001121
1122 * new fusermount flag '-z': lazy unmount, default is not lazy
1123
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001124 * Extended attributes operations added (getxattr, setxattr,
1125 listxattr, removexattr)
1126
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011272004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001128
1129 * If filesystem doesn't define a statfs operation, then an
1130 all-zero default statfs is returned instead of ENOSYS
1131
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011322004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001133
1134 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1135
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011362004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001137
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001138 * Fix for uClinux (Christian Magnusson)
1139
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011402004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001141
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001142 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001143
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001144 * More kernel interface changes:
1145
1146 * Lookup/getattr return cache timeout values
1147
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011482004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001149
1150 * Clean up option parsing in fuse_main()
1151
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001152 * Added fuse_get() function which returns the fuse object created
1153 by fuse_main()
1154
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011552004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001156
Miklos Szeredic40748a2004-02-20 16:38:45 +00001157 * removed old way of mounting (fusermount mountpoint program)
1158
Miklos Szeredib5958612004-02-20 14:10:49 +00001159 * more kernel interface changes:
1160
1161 * added nanosecond precision to file times
1162
Miklos Szeredic40748a2004-02-20 16:38:45 +00001163 * removed interface version from mount data
1164
1165 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1166
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011672004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001168
1169 * statfs library API changed to match other methods. Since this
1170 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1171
Miklos Szeredi76f65782004-02-19 16:55:40 +00001172 * kernel interface changes follow:
1173
1174 * statfs changed to 64 bits, added 'bavail' field
1175
1176 * add generation number to lookup result
1177
1178 * optimized mknod/mkdir/symlink/link (no separate lookup is
1179 needed)
1180
1181 * rdev size increased to 32 bits for mknod
1182
1183 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001184
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011852004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001186
1187 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001188
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011892004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001190
1191 * Added user-mount.2.6.2-rc3.patch
1192
1193 * Add FS_SAFE flag to fuse filesystem
1194
1195 * fusermount should allow (un)mounting for non-root even if not
1196 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001197
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011982004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001199
1200 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001201
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012022004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001203
1204 * Added check for i_size_read/write functions to configure.in
1205 (patch by Valient Gough)
1206
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012072004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001208
1209 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001210
1211 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001212
1213 * Readpage calls flush_dcache_page() after storing data
1214
1215 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001216
1217 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001218
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012192004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001220
1221 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001222
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012232004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001224
1225 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001226
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012272004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001228
1229 * Added -q option for fusermount
1230
1231 * fuse_unmount() now uses -q option of fusermount, so no error is
1232 printed if the cause of the program exit is that the filesystem
1233 has already been unmounted
1234
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001235 * Fix i_nlink correctness after rmdir/unlink
1236
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012372004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001238
Miklos Szeredib1158392004-01-26 14:43:12 +00001239 * Released 1.1-pre2
1240
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012412004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001242
Miklos Szeredi307242f2004-01-26 11:28:44 +00001243 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001244
1245 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001246
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012472004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001248
1249 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001250
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012512004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001252
1253 * Write all pending data before a RELEASE operation
1254
1255 * Suppress 'Bad file descriptor' warning on exit
1256
1257 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001258 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001259
Miklos Szeredib1158392004-01-26 14:43:12 +00001260 * New fusermount option '-l' which enables big reads. Big reads
1261 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001262
1263 * fuse_main() can accept fusermount arguments after a '--'
1264
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012652004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001266
1267 * Support for exporting filesystem over NFS (see README.NFS)
1268
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012692004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001270
1271 * Support non-blocking writepage on 2.6. This makes FUSE behave
1272 much more nicely in low-memory situations
1273
1274 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1275 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001276
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012772004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001278
1279 * Code cleanups
1280
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012812004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001282
1283 * Released 1.1-pre1
1284
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012852004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001286
1287 * Integrated 2.6 kernel support patch by Michael Grigoriev
1288
1289 * Improvements and cleanups for 2.6 kernels
1290
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012912004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001292
Miklos Szeredie5183742005-02-02 11:14:04 +00001293 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001294
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012952003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001296
1297 * Added major+minor version to library API, and minor version to
1298 kernel API
1299
David McNab7a19caf2003-12-13 02:05:46 +000013002003-12-13 David McNab <david@rebirthing.co.nz>
1301
1302 * Implemented fsync support in examples/example.py
1303
1304 * Implemented 'fsync' and 'statfs' methods in python
1305 interface
1306
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013072003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001308
Miklos Szeredie5183742005-02-02 11:14:04 +00001309 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001310
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001311 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001312
David McNab8bf62632003-12-11 22:49:22 +000013132003-12-12 David McNab <david@rebirthing.co.nz>
1314
1315 * Added distutils support to the python module, as per standard
1316 python development practice
1317
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013182003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001319
1320 * Add file locking for mount/unmount (based on patch by Valient
1321 Gough)
1322
13232003-12-11 David McNab <david@rebirthing.co.nz>
1324
1325 * Python filesystem - was broken with python2.3, now fixed:
1326 - changed PyTuple_* calls to PySequence_*, because os.lstat
1327 is no longer returning a pure tuple
1328 - changed PyInt_Check() calls to also call PyLong_Check,
1329 to cover for cases (eg os.lstat) where longs are returned
1330 - Added support for file 'release' handling, which IMO is
1331 essential since this signals to a FS that writes to a file
1332 are complete (and therefore the file can now be disposed of
1333 meaningfully at the python filesystem's discretion)
1334 - Added '__init__' handler to base Fuse class, which allows
1335 your Python class to know the mountpoint and mount args,
1336 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001337
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001338 * General:
1339 - added 'mount.fuse' script (in util/ dir), which is meant to be
1340 symlinked from /sbin, and which allows FUSE filesystems to
1341 be mounted with the 'mount' command, and listed in fstab;
1342 also, mount arguments get passed to your filesystem
1343
1344
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013452003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001346
1347 * Fix kernel version detection (again). Bugreport by Peter Levart
1348
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013492003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001350
1351 * Applied read combining patch by Michael Grigoriev (tested by
1352 Valient Gough and Vincent Wagelaar)
1353
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013542003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001355
1356 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1357 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001358
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013592003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001360
1361 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001362
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013632003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001364
1365 * kernel version detection fix
1366
1367 * fusermount now uses "lazy" umount option
1368
1369 * fusermount can use modprobe with module-init-tools
1370
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013712003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001372
1373 * Integrated caching patch by Michael Grigoriev
1374
Miklos Szeredida4e4862003-09-08 11:14:11 +00001375 * Added "Filesystems" file with descriptions of projects using
1376 FUSE
1377
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001378 * Added patch by Michael Grigoriev to allow compliation of FUSE
1379 kernel module for 2.6 kernels
1380
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013812003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001382
1383 * And another spec-file fix by Achim Settelmeier
1384
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013852003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001386
1387 * Spec-file fix by Achim Settelmeier
1388
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013892003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001390
Miklos Szerediac361172004-11-02 19:14:14 +00001391 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001392
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013932003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001394
1395 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1396
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013972003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001398
1399 * Updated fuse.spec file (Achim Settelmeier)
1400
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014012003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001402
1403 * Version 1.0 released
1404
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014052003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001406
1407 * SuSE compilation fix by Juan-Mariano de Goyeneche
1408
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014092002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001410
1411 * The release() VFS call is now exported to the FUSE interface
1412
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014132002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001414
1415 * 64 bit file offset fixes in the fuse kernel module
1416
1417 * Added function 'fuse_exit()' which can be used to exit the main
1418 loop
1419
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014202002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001421
1422 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1423 an incompatible interface change.
1424
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014252002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001426
1427 * Portablility fix (bug reported by C. Chris Erway)
1428
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014292002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001430
1431 * Use Mark Glines' fd passing method for default operation instead
1432 of old reexec
1433
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014342002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001435
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001436 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1437
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014382002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001439
Miklos Szeredi60c23522002-10-24 09:19:43 +00001440 * fix incompatiblity with Red Hat kernels, with help from Nathan
1441 Thompson-Amato.
1442
Mark Glines65ba2192002-04-18 14:41:48 +000014432002-04-18 Mark Glines <mark@glines.org>
1444
1445 * added an alternative to fuse_mount(), called
1446 fuse_mount_ioslave(), which does not need to reexec the
1447 FUSE program.
1448 * added a small helper util needed by fuse_mount_ioslave().
1449
Mark Glines220635a2002-03-17 07:01:14 +000014502002-03-16 Mark Glines <mark@glines.org>
1451
1452 * use struct fuse_statfs everywhere possible to avoid problems
1453 with the headerfiles changing struct statfs member sizes
1454
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014552002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001456
1457 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1458
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014592002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001460
1461 * RPM support by Achim Settelmeier
1462
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014632002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001464
Miklos Szerediddc862a2002-01-09 13:46:10 +00001465 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001466
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014672002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001468
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001469 * Revaidate all path components not just the last, this means a
1470 very small performance penalty for being more up-to-date.
1471
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014722002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001473
1474 * Update and fix python interface
1475
Mark Glinesd84b39a2002-01-07 16:32:02 +000014762002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001477
Mark Glinesd84b39a2002-01-07 16:32:02 +00001478 * Added statfs() support to kernel, lib, examples, and perl!
1479
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014802001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001481
1482 * Better cross compilation support
1483
1484 * Ported to Compaq IPAQ
1485
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014862001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001487
Miklos Szeredife25def2001-12-20 15:38:05 +00001488 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001489 patch from Matt Ryan)
1490
Miklos Szeredife25def2001-12-20 15:38:05 +00001491 * Added flags to fusermount and to kernel interface to control
1492 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001493
Miklos Szeredife25def2001-12-20 15:38:05 +00001494 * Integrated fuse_set_operations() into fuse_new()
1495
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014962001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001497
1498 * Applied header protection + extern "C" patch by Roland
1499 Bauerschmidt
1500
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015012001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001502
Miklos Szeredie5183742005-02-02 11:14:04 +00001503 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001504
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015052001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001506
1507 * Cleaned up way of mounting simple filesystems.
1508
1509 * fuse_main() helper function added
1510
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015112001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001512
Miklos Szeredife25def2001-12-20 15:38:05 +00001513 * Optimized read/write operations, so that minimal copying of data
1514 is done
1515
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015162001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001517
1518 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001519
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015202001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001521
1522 * Fixed vfsmount reference leak in fuse_follow_link
1523
1524 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1525 userspace is ignored
1526
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015272001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001528
Miklos Szeredife25def2001-12-20 15:38:05 +00001529 * Started ChangeLog