blob: aade908719885d973200f8ed5b5f975499781aad [file] [log] [blame]
Miklos Szeredif412d072005-10-14 21:24:32 +000012005-10-14 Miklos Szeredi <miklos@szeredi.hu>
2
Miklos Szeredi062f0e52005-10-14 21:28:21 +00003 * libfuse: add debug for write result (by Shaun Jackman) and
4 warnings for too large read/write result
Miklos Szeredif412d072005-10-14 21:24:32 +00005
Miklos Szeredib75d4b92005-10-11 10:12:08 +000062005-10-11 Miklos Szeredi <miklos@szeredi.hu>
7
8 * Spelling fixes, thanks to Ioannis Barkas
9
Miklos Szeredibaab5872005-10-10 08:41:14 +0000102005-10-10 Miklos Szeredi <miklos@szeredi.hu>
11
12 * fuse_common.h: use extern "C". Thanks to Valient Gough for the
13 patch
14
Miklos Szeredi4f5df5e2005-10-07 12:39:58 +0000152005-10-07 Miklos Szeredi <miklos@szeredi.hu>
16
17 * highlevel-lib: init() and destroy() methods didn't have an
18 initialized fuse_context. Bug reported by Tim Stoakes
19
Miklos Szeredif2491122005-10-04 10:10:41 +0000202005-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi83f253e2005-10-04 05:56:01 +000021
22 * Released 2.4.0
23
Miklos Szeredi836ab712005-10-03 14:11:59 +0000242005-10-03 Miklos Szeredi <miklos@szeredi.hu>
25
26 * Add documentation to fuse_lowlevel.h
27
28 * API cleanups:
29
30 * Remove definitions of unused FATTR_CTIME / FUSE_SET_ATTR_CTIME
31
32 * Move fuse_mount() and fuse_unmount() to fuse_common.h
33
34 * Change the return type of fuse_reply_none() from int to void.
35
Miklos Szerediaf138742005-09-30 08:49:59 +0000362005-09-30 Miklos Szeredi <miklos@szeredi.hu>
37
38 * kernel: NFS exporting leaked dentries. Bug found and fixed by
39 Akshat Aranya.
40
Miklos Szeredidb016e02005-09-29 10:06:27 +0000412005-09-29 Miklos Szeredi <miklos@szeredi.hu>
42
43 * fusermount: fix error message, when unable to open /dev/fuse.
44 Report by Balázs Pozsár
45
Miklos Szeredi35200932005-09-28 14:50:49 +0000462005-09-28 Miklos Szeredi <miklos@szeredi.hu>
47
48 * UClibc fixes from Christian Magnusson
49
Miklos Szeredi8eddf642005-09-27 08:58:26 +0000502005-09-27 Miklos Szeredi <miklos@szeredi.hu>
51
52 * Added NAME="%k" to util/udev.rules. Fix by Mattias Wadman.
53
Miklos Szerediedec95c2005-09-26 10:22:22 +0000542005-09-26 Miklos Szeredi <miklos@szeredi.hu>
55
Miklos Szeredi39851ac2005-09-26 11:17:50 +000056 * Released 2.4.0-rc1
57
582005-09-26 Miklos Szeredi <miklos@szeredi.hu>
59
Miklos Szerediedec95c2005-09-26 10:22:22 +000060 * fusermount: allow user umount in the case when /etc/mtab is a
61 symlink to /proc/mounts. Reported by Balázs Pozsár.
62
Miklos Szeredi6becf0b2005-09-23 11:25:28 +0000632005-09-23 Miklos Szeredi <miklos@szeredi.hu>
64
Miklos Szeredi8722dd22005-09-23 13:34:44 +000065 * Check for special node ID values in lookup and creation
Miklos Szeredi6becf0b2005-09-23 11:25:28 +000066
Miklos Szeredif45f3c12005-09-22 15:14:27 +0000672005-09-22 Miklos Szeredi <miklos@szeredi.hu>
68
69 * Slight optimization in returning EINVAL error in case of an open
70 with O_DIRECT flag.
71
Miklos Szeredi670d07a2005-09-20 11:36:32 +0000722005-09-20 Miklos Szeredi <miklos@szeredi.hu>
73
74 * Remove '--enable-auto-modprobe' configure flag. Module
75 auto-loading is now handled by the kernel.
76
Miklos Szeredid51fca12005-09-15 12:51:00 +0000772005-09-15 Miklos Szeredi <miklos@szeredi.hu>
78
79 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
80 Help from Jens M. Noedler.
81
Miklos Szeredi7e7530d2005-09-14 15:20:26 +0000822005-09-14 Miklos Szeredi <miklos@szeredi.hu>
83
84 * Add memory cleanup on thread exit
85
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +0000862005-09-13 Miklos Szeredi <miklos@szeredi.hu>
87
88 * Set umask to zero in fusexmp and fusexmp_fh, so that
89 files/directories are created with the requested mode.
90
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +0000912005-09-12 Miklos Szeredi <miklos@szeredi.hu>
92
93 * Don't ignore read error in multithreaded loop
94
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000952005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +000096
Miklos Szeredi2277ecc2005-09-08 15:34:44 +000097 * Released 2.4.0-pre2
98
992005-09-08 Miklos Szeredi <miklos@szeredi.hu>
100
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000101 * Revert lock and access operations. Postpone these until 2.5.
102
1032005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000104
105 * Fix compile warning on 2.6.13 and later
106
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +0000107 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +0000108
Miklos Szeredi77ccf652005-08-19 14:40:27 +00001092005-08-19 Miklos Szeredi <miklos@szeredi.hu>
110
111 * lib: always refresh directory contents after rewinddir() to
112 conform to SUS. Bug found by John Muir.
113
Miklos Szeredia1482422005-08-14 23:00:27 +00001142005-08-15 Miklos Szeredi <miklos@szeredi.hu>
115
Miklos Szeredic43f9412005-08-15 15:10:48 +0000116 * Released 2.4.0-pre1
117
1182005-08-14 Miklos Szeredi <miklos@szeredi.hu>
119
Miklos Szeredia1482422005-08-14 23:00:27 +0000120 * lib: cleaned up (or messed up, depending on your POV) the low
121 level library API. Hopefully this is close to the final form.
122
Miklos Szeredicc1b97c2005-08-05 10:35:26 +00001232005-08-05 Miklos Szeredi <miklos@szeredi.hu>
124
125 * fusermount: don't allow empty mountpoint argument, which defeats
126 automatic umounting in fuse_main(). Bugreport by Václav Jůza
127
Miklos Szeredif6e0ec62005-08-03 09:11:06 +00001282005-08-03 Miklos Szeredi <miklos@szeredi.hu>
129
130 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
131 option is used (Paul Alfille).
132
Miklos Szeredi6c0209a2005-08-02 13:31:28 +00001332005-08-02 Miklos Szeredi <miklos@szeredi.hu>
134
135 * highlevel-lib: added mount options "attr_timeout" and
136 "entry_timeout". These options control the length of time file
137 attributes and entries (names) are cached. Both default to 1.0
138 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000139
140 * kernel: correctly handle zero timeout for attributes and entries
141
Miklos Szeredi56a61f02005-08-01 10:42:25 +00001422005-08-01 Miklos Szeredi <miklos@szeredi.hu>
143
144 * Added missing symbols to versionscript (Joshua J. Berry)
145
Miklos Szeredie77cc072005-08-01 11:58:51 +0000146 * kernel: implement two flags, open can set: 'direct_io' and
147 'keep_cache'. These correspond exactly to mount options
148 'direct_io' and 'kernel_cache', but allow a per-open setting.
149
150 * Move 'direct_io' and 'kernel_cache' mount option handling to
151 userspace. For both mount options, if the option is given, then
152 the respective open flag is set, otherwise the open flag is left
153 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +0000154
Miklos Szeredi31066bb2005-08-01 14:49:31 +0000155 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000156
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +00001572005-07-28 Miklos Szeredi <miklos@szeredi.hu>
158
159 * kernel: invalidate attributes for read/readdir/readlink
160 operations
161
162 * kernel: detect newer UML kernels
163
Miklos Szeredibfb99462005-07-26 11:07:55 +00001642005-07-26 Miklos Szeredi <miklos@szeredi.hu>
165
166 * Make the installation path of fuse.ko and mount.fuse
167 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
168 environment variables. Requirement and help from Csaba Henk.
169
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +00001702005-07-22 Miklos Szeredi <miklos@szeredi.hu>
171
172 * Fix bug, that causes filesystem requests to hang when unique
173 request counter becomes negative. This happens after
174 2,147,483,648 operations, so most people won't care. Thanks to
175 Franco Broi for the report and testing.
176
Miklos Szeredi9b813af2005-07-21 07:59:37 +00001772005-07-21 Miklos Szeredi <miklos@szeredi.hu>
178
179 * Don't change mtime/ctime/atime to local time on read/write.
180 Bug reported by Ben Grimm
181
182 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
183 Magnusson
184
185 * fusermount: use getopt_long() for option parsing. It allows the
186 use of '--' to stop argument scanning, so fusermount can now
187 operate on directories whose names begin with a '-'. Patch by
188 Adam Connell
189
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00001902005-07-15 Miklos Szeredi <miklos@szeredi.hu>
191
192 * fusermount: add '-v', '--version' and '--help' options
193
194 * add inode based API
195
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00001962005-07-12 Miklos Szeredi <miklos@szeredi.hu>
197
198 * lib: don't block signals in worker threads. Problem noticed by
199 Usarin Heininga
200
Miklos Szeredic902a852005-07-07 12:35:37 +00002012005-07-07 Miklos Szeredi <miklos@szeredi.hu>
202
203 * lib: don't allow both 'allow_other' and 'allow_root' options to
204 be given
205
Miklos Szeredi437d8112005-07-06 09:14:20 +00002062005-07-06 Miklos Szeredi <miklos@szeredi.hu>
207
208 * fusermount: check if mountpoint is empty (only '.' and '..' for
209 directories, and size = 0 for regular files). If "nonempty"
210 option is given, omit this check. This is useful, so users don't
211 accidentally hide data (e.g. from backup programs). Thanks to
212 Frank van Maarseveen for pointing this out.
213
214 * kernel: check if mandatory mount options ('fd', 'rootmode',
215 'user_id', 'group_id') are all given
216
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000217 * lib: simplify 'readdir_ino' handling
218
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000219 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
220
Miklos Szeredibb9f5172005-07-03 18:03:11 +00002212005-07-03 Miklos Szeredi <miklos@szeredi.hu>
222
223 * kernel: clean up 'direct_io' code
224
Miklos Szeredie1bcece2005-06-28 10:37:06 +00002252005-06-28 Miklos Szeredi <miklos@szeredi.hu>
226
227 * Add 'mount.fuse' written by Petr Klima
228
Miklos Szeredi866826d2005-06-28 12:22:57 +0000229 * '/dev/fuse' is created by 'make install' if does not yet exist
230
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00002312005-06-20 Miklos Szeredi <miklos@szeredi.hu>
232
233 * Fix UCLIBC compile error. Patch by Christian Magnusson
234
Miklos Szerediec12fad2005-06-08 10:26:34 +00002352005-06-08 Miklos Szeredi <miklos@szeredi.hu>
236
237 * Enable the auto-loading of the module via access to the
238 corresponding device file. Patch by Takashi Iwai.
239
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000240 * Allow mounting a regular file (over a regular file) for
241 unprivleged users.
242
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000243 * Do not create temporary device file. Require "/dev/fuse" to
244 exist, and be readable/writable by the mounting user.
245
Miklos Szeredi46960ce2005-06-02 09:05:00 +00002462005-06-02 Miklos Szeredi <miklos@szeredi.hu>
247
Miklos Szeredi56478552005-06-02 10:29:00 +0000248 * Released 2.3.0
249
2502005-06-02 Miklos Szeredi <miklos@szeredi.hu>
251
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000252 * Fix serious information leak: if the filesystem returns a short
253 byte count to a read request, and there are non-zero number of
254 pages which are not filled at all, these pages will not be zeroed.
255 Hence the user can read out previous memory contents. Found by
256 Sven Tantau.
257
Miklos Szeredi33be22d2005-05-27 09:12:43 +00002582005-05-27 Miklos Szeredi <miklos@szeredi.hu>
259
260 * Add "readdir_ino" mount option, which tries to fill in the d_ino
261 field in struct dirent. This mount option is ignored if "use_ino"
262 is used. It helps some programs (e.g. 'pwd' used over NFS from a
263 non-Linux OS). Patch by David Shaw.
264
Miklos Szeredif94e0102005-05-12 14:56:34 +00002652005-05-12 Miklos Szeredi <miklos@szeredi.hu>
266
Miklos Szeredieb009c42005-05-12 15:01:17 +0000267 * Released 2.3-rc1
268
2692005-05-12 Miklos Szeredi <miklos@szeredi.hu>
270
Miklos Szeredif94e0102005-05-12 14:56:34 +0000271 * File save in krusader and other editors doesn't work with sshfs,
272 because open() is interrupted by a periodic signal, and open()
273 restarts forever, without any progress. This could just be fixed
274 in open(), but the problem is more generic: if signals are
275 received more often than the filesystem can get the request to
276 userspace, it will never finish. This is probably only a
277 theoretical problem, nevertheless I'm removing the possibility to
278 interrupt requests with anything other than SIGKILL, even before
279 being sent to userspace. Bugreport by Eduard Czimbalmos.
280
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00002812005-05-09 Miklos Szeredi <miklos@szeredi.hu>
282
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000283 * libfuse: add "tree_lock" rwlock, that is locked for write in
284 rename, unlink and rmdir, and locked for read in all other
285 operations. This should fix the rename/release race reported by
286 Valient Gough and others. The solution is very coarse, a finer
287 grained locking scheme could be implemented, but it would be much
288 more complex. Let's see whether this is good enough.
289
2902005-05-09 Miklos Szeredi <miklos@szeredi.hu>
291
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000292 * Released 2.3-pre7
293
Miklos Szeredi38009022005-05-08 19:47:22 +00002942005-05-08 Miklos Szeredi <miklos@szeredi.hu>
295
296 * Better fix for out of order FORGET messages. Now the
297 LOOKUP/FORGET messages are balanced exactly (one FORGET can
298 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000299 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000300 compatible.
301
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00003022005-05-06 Miklos Szeredi <miklos@szeredi.hu>
303
304 * Fix abort for out of order FORGET messages. Again. Spotted by
305 Franco Broi again. Sorry :)
306
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00003072005-04-29 Miklos Szeredi <miklos@szeredi.hu>
308
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000309 * Released 2.3-pre6
310
3112005-04-29 Miklos Szeredi <miklos@szeredi.hu>
312
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000313 * Make fusermount work with fuse kernel modules not yet supporting
314 the "group_id" option (added for the purpose of stricter
315 permission checking).
316
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00003172005-04-28 Miklos Szeredi <miklos@szeredi.hu>
318
319 * Check for hard-linked directories in lookup. This could cause
320 problems in the VFS, which assumes that such objects never exist.
321
322 * Make checking of permission for other users more strict. Now
323 the same privilege is required for the mount owner as for ptrace
324 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000325
Miklos Szeredi3efcb562005-04-23 13:34:29 +00003262005-04-23 Miklos Szeredi <miklos@szeredi.hu>
327
328 * Released 2.3-pre5
329
Miklos Szeredid001bf92005-04-22 07:54:11 +00003302005-04-22 Miklos Szeredi <miklos@szeredi.hu>
331
332 * Add -msoft-float to kernel module compile flags for 2.4.X. This
333 is needed on certain architectures. Report from Chris Kirby
334
335 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
336 Reported by David Shaw
337
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000338 * Remove "allow_root" option from kernel module, and implement
339 it's functionality in the library
340
341 * Fix Oops caused by premature release of fuse_conn. Clean up
342 related code, to be more readable
343
Miklos Szeredif9137452005-04-23 10:59:44 +0000344 * Sendfile should not use page cache if "direct_io" mount option
345 is given
346
Miklos Szeredib7640d22005-04-08 15:15:28 +00003472005-04-08 Miklos Szeredi <miklos@szeredi.hu>
348
349 * Fix Oops in case of nfs export. Spotted by David Shaw
350
Miklos Szeredi89814a12005-04-08 16:39:09 +0000351 * Fix another Oops in case of write over nfs with direct_io turned
352 on. Again spotted by David Shaw
353
Miklos Szerediab974562005-04-07 15:40:21 +00003542005-04-07 Miklos Szeredi <miklos@szeredi.hu>
355
Miklos Szeredi432d6182005-04-07 15:56:13 +0000356 * Released 2.3-pre4
357
3582005-04-07 Miklos Szeredi <miklos@szeredi.hu>
359
Miklos Szerediab974562005-04-07 15:40:21 +0000360 * lib: finalized new readdir() interface, which now supersedes the
361 getdir() method.
362
Miklos Szeredi30e093a2005-04-03 17:44:54 +00003632005-04-03 Miklos Szeredi <miklos@szeredi.hu>
364
365 * Released 2.3-pre3
366
3672005-04-03 Miklos Szeredi <miklos@szeredi.hu>
368
369 * Implement backward compatibility with version 5 kernel ABI
370
Miklos Szeredi18fce982005-04-01 21:07:35 +00003712005-04-01 Miklos Szeredi <miklos@szeredi.hu>
372
373 * Released 2.3-pre2
374
3752005-04-01 Miklos Szeredi <miklos@szeredi.hu>
376
377 * kernel: fix dirent offset handling
378
379 * lib: add readdir and releasedir methods
380
381 * lib: use fh field of fuse_file_info in opendir, readdir,
382 releasedir and fsyncdir methods
383
384 * lib: check kernel API version and bail out of it's old. This
385 will be properly fixed in the next release
386
3872005-03-31 Miklos Szeredi <miklos@szeredi.hu>
388
389 * Released 2.3-pre1
390
Miklos Szeredieab72ef2005-03-31 19:59:12 +00003912005-03-31 Miklos Szeredi <miklos@szeredi.hu>
392
393 * kernel API: add padding to structures, so 64bit and 32bit
394 compiler will return the same size
395
396 * kernel API: add offset field to fuse_dirent. This will allow
397 more sophisticated readdir interface for userspace
398
399 * kernel API: change major number to 6
400
401 * kernel: fix warnings on 64bit archs
402
403 * kernel: in case of API version mismatch, return ECONNREFUSED
404
Miklos Szeredi407e6a72005-03-25 12:19:43 +00004052005-03-24 Miklos Szeredi <miklos@szeredi.hu>
406
407 * kernel: trivial cleanups
408
Miklos Szeredi4283ee72005-03-21 12:09:04 +00004092005-03-21 Miklos Szeredi <miklos@szeredi.hu>
410
411 * Add fsyncdir() operation
412
Miklos Szeredid17da462005-03-21 11:47:04 +00004132005-03-19 Miklos Szeredi <miklos@szeredi.hu>
414
415 * kernel: add locking to background list (fixes previous fix)
416
4172005-03-18 Miklos Szeredi <miklos@szeredi.hu>
418
419 * kernel: fix bug which could cause leave busy inodes after
420 unmount, and Oops.
421
4222005-03-08 Miklos Szeredi <miklos@szeredi.hu>
423
424 * examples: add -lpthread to link flags to work around valgrind
425 quirk
426
427 * lib: don't exit threads, so cancelation doesn't cause segfault
428
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00004292005-03-04 Miklos Szeredi <miklos@szeredi.hu>
430
431 * kernel: fix nasty bug which could cause an Oops under certain
432 situations. Found by Magnus Johansson
433
Miklos Szeredif43f0632005-02-28 11:46:56 +00004342005-02-28 Miklos Szeredi <miklos@szeredi.hu>
435
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000436 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000437 permission checking in getdir() is too late. Thanks to Usarin
438 Heininga for pointing out this deficiency
439
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000440 * libfuse: added init() and destroy() methods to fuse_operations
441
Miklos Szeredif43f0632005-02-28 11:46:56 +0000442 * kernel: llseek() method for files and directories made explicit
443
444 * kernel: fixed inode leak in NFS export in case of nodeid
445 wrapping
446
Miklos Szeredied3c97c2005-02-15 17:04:50 +00004472005-02-15 Miklos Szeredi <miklos@szeredi.hu>
448
449 * libfuse: clean up some unitialized memory found with valgrind
450
Miklos Szeredi47c52982005-02-23 09:27:38 +0000451 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
452 explicitly linked libpthread for applications
453
Miklos Szeredia7169412005-02-10 07:35:05 +00004542005-02-10 Miklos Szeredi <miklos@szeredi.hu>
455
456 * fusermount: set umask, otherwise /etc/mtab will have
457 unpredictable permission. Spotted by Jindrich Kolorenc
458
459 * fusermount: set owner and group of /etc/mtab to original values
460 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000461
462 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000463
Miklos Szeredib92d9782005-02-07 16:10:49 +00004642005-02-07 Miklos Szeredi <miklos@szeredi.hu>
465
466 * Cleaned up directory reading (temporary file is not used)
467
Miklos Szerediff30a6c2005-02-02 10:53:59 +00004682005-02-02 Miklos Szeredi <miklos@szeredi.hu>
469
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000470 * Released 2.2
471
4722005-02-02 Miklos Szeredi <miklos@szeredi.hu>
473
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000474 * Fix possible race when operation is interrupted
475
Miklos Szeredi7a983952005-01-28 09:58:19 +00004762005-01-28 Miklos Szeredi <miklos@szeredi.hu>
477
Miklos Szeredie5183742005-02-02 11:14:04 +0000478 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000479
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00004802005-01-26 Miklos Szeredi <miklos@szeredi.hu>
481
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000482 * Released 2.2-pre6
483
4842005-01-26 Miklos Szeredi <miklos@szeredi.hu>
485
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000486 * Fix bug in link() operation which caused the wrong path to be
487 passed as the first argument. Found by Anton Altaparmakov
488
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00004892005-01-21 Miklos Szeredi <miklos@szeredi.hu>
490
491 * LIB: fix double reply in readdir operation
492
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000493 * fusermount: fix uid checking bug. Patch by Adam Connell
494
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000495 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000496 Patch by Keshava Gowda
497
Miklos Szeredi64074142005-01-20 08:48:11 +00004982005-01-20 Miklos Szeredi <miklos@szeredi.hu>
499
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000500 * KERNEL: provide correct llseek semantics for fuse device (fixes
501 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
502
5032005-01-20 Miklos Szeredi <miklos@szeredi.hu>
504
Miklos Szeredi64074142005-01-20 08:48:11 +0000505 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
506
Miklos Szeredi1adb2272005-01-18 21:19:58 +00005072005-01-18 Miklos Szeredi <miklos@szeredi.hu>
508
509 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
510 and RELEASEDIR. This ends the ugly hack of passing a file
511 descriptor to the kernel, and actually makes the code simpler.
512
Miklos Szeredi7db35c02005-01-17 09:46:28 +00005132005-01-17 Miklos Szeredi <miklos@szeredi.hu>
514
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000515 * Released 2.2-pre4
516
5172005-01-17 Miklos Szeredi <miklos@szeredi.hu>
518
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000519 * fusermount: remove capability setting, which was the cause of
520 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000521 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000522
Miklos Szeredidbe0f652005-01-15 14:32:56 +00005232005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000524
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000525 * fix compilation on 2.4 kernels (reported by Valient Gough)
526
527 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000528
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000529 * fusermount: improve parsing of /etc/fuse.conf
530
5312005-01-13 Miklos Szeredi <miklos@szeredi.hu>
532
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000533 * Remove 'mount_max' and 'user_allow_other' module options. These
534 are now checked by fusermount, and can be set in /etc/fuse.conf
535
536 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
537
Miklos Szeredi81394522005-01-11 14:24:18 +00005382005-01-11 Miklos Szeredi <miklos@szeredi.hu>
539
540 * KERNEL: fix possible inode allocation problem, where
541 sizeof(struct inode) is not aligned (found by Mike Waychison)
542
543 * KERNEL: use new follow_link/put_link methods
544
545 * KERNEL: cosmetic fixes
546
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00005472005-01-10 Miklos Szeredi <miklos@szeredi.hu>
548
549 * Released 2.2-pre3
550
5512005-01-10 Miklos Szeredi <miklos@szeredi.hu>
552
553 * Add missing code that was accidently left out
554
Miklos Szeredi8c7da232005-01-09 12:27:41 +00005552005-01-09 Miklos Szeredi <miklos@szeredi.hu>
556
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000557 * Released 2.2-pre2
558
5592005-01-09 Miklos Szeredi <miklos@szeredi.hu>
560
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000561 * Change "uid" mount option to "user_id" to avoid confusion with a
562 mount option "uid" commonly used by many filesystems
563
5642005-01-09 Miklos Szeredi <miklos@szeredi.hu>
565
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000566 * Released 2.2-pre1
567
5682005-01-09 Miklos Szeredi <miklos@szeredi.hu>
569
570 * If FUSE is configured in the kernel, don't build it by default
571
Miklos Szeredi2a927272005-01-07 11:14:15 +00005722005-01-07 Miklos Szeredi <miklos@szeredi.hu>
573
574 * Compile fix by Christian Magnusson
575
Miklos Szeredib6220192005-01-05 16:19:10 +00005762005-01-05 Miklos Szeredi <miklos@szeredi.hu>
577
578 * Fix compilation for 2.6.{0-5} kernels
579
Miklos Szeredi0f62d722005-01-04 12:45:54 +00005802005-01-04 Miklos Szeredi <miklos@szeredi.hu>
581
582 * KERNEL: if request is interrupted, still keep reference to used
583 inode(s) and file, so that FORGET and RELEASE are not sent until
584 userspace finishes the request.
585
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000586 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
587 request with the same information, which is more flexible,
588 simpler, works on embedded systems.
589
Miklos Szeredi0f62d722005-01-04 12:45:54 +00005902004-12-16 Miklos Szeredi <miklos@szeredi.hu>
591
592 * KERNEL ABI: update interface to make it independent of type
593 sizes. This will help on 64 bit architectures which can run
594 legacy 32 bit applications.
595
596 * KERNEL ABI: add "len" field to request headers. This will allow
597 sending/receiving requests in multiple chunks.
598
599 * KERNEL: handle file type change more intelligently
600
601 * LIB: "-o debug" option should disable backgrounding (fix by
602 Fabien Reygrobellet)
603
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00006042004-12-13 Miklos Szeredi <miklos@szeredi.hu>
605
606 * KERNEL: invalidate dentry/attributes if interrupted request
607 could leave filesystem in an unknown state.
608
Miklos Szeredie56818b2004-12-12 11:45:24 +00006092004-12-12 Miklos Szeredi <miklos@szeredi.hu>
610
611 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
612 These will cause some regressions, but stability is considered
613 more important. If any of these features turns out to be
614 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000615
Miklos Szeredie56818b2004-12-12 11:45:24 +0000616 * Make all requests interruptible (only with SIGKILL currently).
617 This can be used to break any deadlock produced by the userspace
618 filesystem accessing it's own exported files. The RELEASE request
619 is special, because if it's interrupted before sending it to
620 userspace it is still sent, but the reply is not awaited.
621
622 * If request is interrupted before being sent to userspace, and if
623 it hasn't yet got any side effects, it is always restarted,
624 regardless of the SA_RESTART flag. This makes these interruptions
625 transparent to the process.
626
627 * Remove shared-writable mmap support, which was prone to an
628 out-of-memory deadlock situation
629
630 * Remove INVALIDATE userspace initiated request
631
632 * Make readpages() synchronous. Asynchronous requests are
633 deadlock prone, since they cannot be interrupted.
634
635 * Add readv/writev support to fuse device operations
636
637 * Remove some printks, which userspace FS can use for a DoS
638 against syslog
639
640 * Remove 'large_read' mount option from 2.6 in kernel, check it in
641 fusermount instead
642
643 * LIB: improve compatibility with a fuse.h header installed in
644 ${prefix}/include which in turn includes the real header.
645
646 * LIB: improve compatibility by defining fuse_main() (which is now
647 not used), so old configure scripts find it.
648
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00006492004-12-10 Miklos Szeredi <miklos@szeredi.hu>
650
651 * When mounting on a subdirectory of / don't duplicate slashes at
652 the beggining of path (spotted by David Shaw)
653
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00006542004-12-09 Miklos Szeredi <miklos@szeredi.hu>
655
656 * Fix bug causing garbage in mount options (spotted by David Shaw)
657
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00006582004-12-07 Miklos Szeredi <miklos@szeredi.hu>
659
660 * Add 'writepage' flag to 'fuse_file_info'.
661
662 * More comments in fuse.h
663
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000664 * Get rid of double underscores
665
Miklos Szeredi799993c2004-12-04 21:20:05 +00006662004-12-04 Miklos Szeredi <miklos@szeredi.hu>
667
668 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
669
670 * helper.c: add -ho option, which only displays the options not
671 the usage header. This can be used by filesystems which have
672 their own options.
673
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00006742004-12-03 Miklos Szeredi <miklos@szeredi.hu>
675
676 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
677 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
678 including the fuse header
679
680 * Add binary compatibility to 2.1 version of library with symbol
681 versioning
682
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00006832004-12-03 Miklos Szeredi <miklos@szeredi.hu>
684
685 * Released 2.1
686
Miklos Szeredi039322d2004-12-01 18:39:12 +00006872004-12-01 Miklos Szeredi <miklos@szeredi.hu>
688
689 * kernel: clean up writing functions
690
691 * kernel: no allocation on write in direct_io mode
692
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000693 * move linux/fuse.h to fuse_kernel.h
694
Miklos Szeredi83a07442004-11-30 18:25:20 +00006952004-11-30 Miklos Szeredi <miklos@szeredi.hu>
696
697 * kernel: clean up reading functions
698
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00006992004-11-29 Miklos Szeredi <miklos@szeredi.hu>
700
701 * kernel: make readpage() uninterruptible
702
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000703 * kernel: check readonly filesystem flag in fuse_permission
704
705 * lib: don't die if version file not found and new style device
706 exists
707
708 * lib: add '-r' option, which is short for '-o ro'
709
710 * fusermount: simplify device opening
711
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000712 * kernel: when direct_io is turend on, copy data directly to
713 destination without itermediate buffer. More efficient and safer,
714 since no allocation is done.
715
716 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000717
718 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000719
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00007202004-11-26 Miklos Szeredi <miklos@szeredi.hu>
721
722 * libfuse API change: open, read, write, flush, fsync and release
723 are passed a 'struct fuse_file_info' pointer containing the open
724 flags (open and release), and the file handle. Verion changed to
725 3.0.
726
Miklos Szeredia25d4c22004-11-23 22:32:16 +00007272004-11-23 Miklos Szeredi <miklos@szeredi.hu>
728
729 * More cleanups in the kernel
730
731 * The 10,229 charater device number has been assigned for FUSE
732
733 * Version file checking fix (reported by Christian Magnusson)
734
735 * fusermount: opening the fuse device now doesn't need /sys.
736
737 * Optimize reading by controlling the maximum readahead based on
738 the 'max_read' mount option
739
740 * fixes for UCLIBC (Christian Magnusson)
741
Miklos Szeredi13ed4822004-11-20 11:12:21 +00007422004-11-19 Miklos Szeredi <miklos@szeredi.hu>
743
744 * Cleaned up kernel in preparation for merge into mainline:
745
746 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
747
748 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
749
750 * __user annotations for sparse
751
752 * allocate individual pages instead of kmalloc in fuse_readdir,
753 fuse_read and fuse_write.
754
755 * Fix NFS export in case "use_ino" mount option is given
756
Miklos Szeredif3845c42004-11-20 11:18:34 +0000757 * Make libfuse and fusermount compatible with future versions
758
759 * fusermount: properly add mount options to /etc/mtab
760
7612004-11-15 Miklos Szeredi <miklos@szeredi.hu>
762
763 * fusermount: do not resolve last component of mountpoint on if it
764 is '.' or '..'. This new path resolvation is now done on mount as
765 well as unmount. This enables relative paths to work on unmount.
766
767 * fusermount: parse common mount options like "ro", "rw", etc...
768
769 * Allow module params to be changed through sysfs
770
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00007712004-11-14 Miklos Szeredi <miklos@szeredi.hu>
772
773 * Released 2.1-pre1
774
7752004-11-14 Miklos Szeredi <miklos@szeredi.hu>
776
777 * Fix bug in fuse_readpages() causing Oops in certain situations.
778 Bug found by Vincenzo Ciancia.
779
780 * Fix compilation with kernels versions > 2.6.9.
781
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00007822004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000783
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000784 * Check kernel interface version in fusermount to prevent
785 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000786
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000787 * No need to allocate fuse_conn until actual mount happens
788
789 * Fix potential race between umount and fuse_invalidate
790
791 * Check superblock of proc file in addition to inode number
792
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000793 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000794
Miklos Szeredi51ec1032004-11-10 11:52:26 +00007952004-11-10 Miklos Szeredi <miklos@szeredi.hu>
796
797 * Separate configure for the kernel directory
798
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000799 * Don't allow write to return more than 'count'
800
801 * Extend kernel interface for future use
802
Miklos Szeredi51ec1032004-11-10 11:52:26 +00008032004-11-09 Miklos Szeredi <miklos@szeredi.hu>
804
805 * Fix 'makeconf.sh' to use autoreconf if available
806
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00008072004-11-08 Miklos Szeredi <miklos@szeredi.hu>
808
Miklos Szeredid507c732004-11-08 17:32:25 +0000809 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
810 compatibility with earlier versions. To compile earier versions
811 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
812 Do not use the "use_ino" mount flag with filesystems compiled with
813 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000814
815 * Add pkg-config support. To compile a FUSE based filesystem you
816 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
817 or similar. Note, that the PKG_CONFIG_PATH environment variable
818 usually needs to be set to "/usr/local/lib/pkgconfig".
819
820 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000821
Miklos Szeredia13d9002004-11-02 17:32:03 +00008222004-11-02 Miklos Szeredi <miklos@szeredi.hu>
823
824 * Added "use_ino" mount option. This enables the filesystems to
825 set the st_ino field on files
826
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00008272004-11-01 Miklos Szeredi <miklos@szeredi.hu>
828
829 * Fix compile problems with ancient (<=2.4.18) kernels (reported
830 by Jeremy Smith)
831
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000832 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
833
834 * Clear the 'exited' flag when mail loop is finished
835
Miklos Szeredie989f0d2004-10-28 20:24:58 +00008362004-10-28 Miklos Szeredi <miklos@szeredi.hu>
837
838 * Make xattr functions work under 2.6 (bug found by Vincenzo
839 Ciancia)
840
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00008412004-10-26 Miklos Szeredi <miklos@szeredi.hu>
842
843 * Reset request in fuse_flush() (bugreport by David Shaw)
844
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00008452004-10-21 Miklos Szeredi <miklos@szeredi.hu>
846
Miklos Szeredi0e70aa72004-10-21 16:24:29 +0000847 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000848 error code
849
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000850 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000851 make it easier to implement a custom event loop.
852
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000853 * Use daemon() call to background the filesystem after mounting.
854 This function closes the standard input, output and error and
855 changes the current working directory to "/".
856
Miklos Szeredi127d49b2004-10-14 13:33:39 +00008572004-10-14 Miklos Szeredi <miklos@szeredi.hu>
858
859 * Released 1.9
860
Miklos Szeredid45baf42004-10-10 07:56:12 +00008612004-10-09 Miklos Szeredi <miklos@szeredi.hu>
862
863 * Don't allow fuse_flush() to be interrupted (bug found by David
864 Shaw)
865
Miklos Szeredi1f18db52004-09-27 06:54:49 +00008662004-09-27 Miklos Szeredi <miklos@szeredi.hu>
867
868 * Add PID to fuse_context. Patch by Steven James
869
Miklos Szeredi1eea0322004-09-27 18:50:11 +0000870 * Change file handle type to 'unsigned long' in kernel interface
871
Miklos Szeredid169f312004-09-22 08:48:26 +00008722004-09-22 Miklos Szeredi <miklos@szeredi.hu>
873
874 * A slight API change: fuse_get_context() doesn't need the "fuse"
875 pointer, but the returned context contains it instead. The
876 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +0000877
878 * Fix mounting and umounting FUSE filesystem under another FUSE
879 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +0000880
Miklos Szeredic2309912004-09-21 13:40:38 +00008812004-09-21 Miklos Szeredi <miklos@szeredi.hu>
882
883 * Fix deadlock in case of memory allocation failure. Patch by
884 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +0000885
Miklos Szeredib2cf9562004-09-16 08:42:40 +00008862004-09-16 Miklos Szeredi <miklos@szeredi.hu>
887
888 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +0000889
Miklos Szeredi65afea12004-09-14 07:13:45 +00008902004-09-14 Miklos Szeredi <miklos@szeredi.hu>
891
892 * Check temporary file creation failure in do_getdir(). Bug
893 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000894
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00008952004-09-13 Miklos Szeredi <miklos@szeredi.hu>
896
897 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000898
899 * Make requests non-interruptible so race with FORGET is avoided.
900 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000901
902 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000903
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00009042004-09-09 Miklos Szeredi <miklos@szeredi.hu>
905
906 * Fix bug in case two FORGETs for the same node are executed in
907 the wrong order. Bug spotted and endured for months by Franco
908 Broi, and logfile for solution provided by Terje Oseberg
909
Miklos Szeredi12085102004-09-02 18:13:57 +00009102004-09-01 Miklos Szeredi <miklos@szeredi.hu>
911
912 * Add -D_REENTRANT to the compile flags
913
914 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000915
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00009162004-08-16 Miklos Szeredi <miklos@szeredi.hu>
917
918 * Change release method to be non-interruptible. Fixes bug
919 causing missing release() call when program which has opened files
920 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000921
Miklos Szeredi891b8742004-07-29 09:27:49 +00009222004-07-29 Miklos Szeredi <miklos@szeredi.hu>
923
924 * Add fuse_invalidate() to library API
925
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00009262004-07-26 Miklos Szeredi <miklos@szeredi.hu>
927
928 * Check permissions in setattr if 'default_permissions' flag is
929 set. Bug spotted by Damjan Lango
930
Miklos Szeredid66d3942004-07-24 13:47:44 +00009312004-07-24 Miklos Szeredi <miklos@szeredi.hu>
932
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000933 * 'large_read' mount option removed for 2.6 kernels, since the
934 default (dynamic read size) is better
935
936 * Extend kernel API with file handles. A file handle is returned
937 by open, and passed to read, write, flush, fsync and release.
938 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +0000939
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000940 * Security changes:
941
942 * Change the current directory to the mountpoint before checking
943 the permissions and mount filesystem on "."
944
945 * By default don't modprobe the fuse module for non-root. The old
946 behavior can be restored with the '--enable-auto-modprobe' flag of
947 ./configure
948
949 * By default don't allow shared writable mappings for non-root.
950 The old behavior can be restored with the 'user_mmap=1' module
951 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000952
Miklos Szeredibd7661b2004-07-23 17:16:29 +00009532004-07-23 Miklos Szeredi <miklos@szeredi.hu>
954
955 * Clean up mount option passing to fusermount and to fuse_new()
956 BEWARE: this changes the userspace API slightly, and the command
957 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +0000958
Miklos Szeredi58865372004-07-20 14:22:26 +00009592004-07-20 Miklos Szeredi <miklos@szeredi.hu>
960
961 * Optimize reading under 2.6 kernels by issuing multiple page
962 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +0000963
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00009642004-07-18 Miklos Szeredi <miklos@szeredi.hu>
965
966 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000967
Miklos Szeredi069c9502004-07-16 16:17:02 +00009682004-07-16 Miklos Szeredi <miklos@szeredi.hu>
969
970 * Separate directory entry and inode attribute validity timer
971
972 * New write semaphore to stop page writeback during truncate
973
974 * Fsync now waits for all writes to complete before sending the
975 request
976
977 * Optimization: if a page is completely written by
978 fuse_commit_write(), clear the dirty flag and set the uptodate
979 flag for that page
980
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000981 * Some memory cleanup at exit
982
Miklos Szeredi2529ca22004-07-13 15:36:52 +00009832004-07-13 Miklos Szeredi <miklos@szeredi.hu>
984
985 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000986 disable the "hide if open" behavior of unlink/rename.
987
988 * If temporary buffer allocation fails in raw read, fall back to a
989 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +0000990
Miklos Szeredi73798f92004-07-12 15:55:11 +00009912004-07-12 Miklos Szeredi <miklos@szeredi.hu>
992
993 * Fix bug in do_open() in libfuse: open count was incremented
994 after the reply is sent so it could race with unlink/forget and
995 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +0000996
Miklos Szeredi015fe702004-07-12 11:52:24 +00009972004-07-08 Miklos Szeredi <miklos@szeredi.hu>
998
999 * When performing create or remove operation, refresh the parent's
1000 attributes on next revalidate, as i_nlink (and maybe size/time)
1001 could be inacurate.
1002
1003 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
1004 pages (2.6 only)
1005
1006 * Set set_page_dirty address space operation (2.6 only)
1007
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010082004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +00001009
1010 * Minor fix in read: print debug info even if read size is zero
1011
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010122004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +00001013
1014 * Fix race between truncate and writepage (fsx-linux now runs
1015 without error)
1016
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010172004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001018
1019 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
1020 by Mattias Wadman)
1021
1022 * Added option for direct read/write (-r)
1023
1024 * Fix revalidate time setting for newly created inodes
1025
Miklos Szerediacb4d362004-07-02 16:20:45 +00001026 * Remove uid==0 check for '-x' option in fusermount (kernel checks
1027 this)
1028
1029 * fuse_main() only installs handlers for signals (out of INT, HUP,
1030 TERM, PIPE), for which no handler has yet been installed
1031
1032 * Add module option 'user_allow_other' which if set to non-zero
1033 will allow non root user to specify the 'allow_other' mount option
1034 ('-x' option of fusermount)
1035
Miklos Szeredi014d7d22004-07-02 21:22:37 +00001036 * Fix deadlock between page writeback completion and truncate
1037 (bug found by Valient Gough with the fsx-linux utility)
1038
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010392004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001040
1041 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +00001042 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
1043 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +00001044
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010452004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +00001046
1047 * Acquire inode->i_sem before open and release methods to prevent
1048 concurrent rename or unlink operations.
1049
Miklos Szeredi65cf7c72004-06-30 11:34:56 +00001050 * Make __fuse_read_cmd() read only one command. This allows
1051 multiplexing the fuse file descriptor with other event sources
1052 using select() or poll() (patch by Jeff Harris)
1053
1054 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
1055
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010562004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +00001057
1058 * Fix file offset wrap around at 4G when doing large reads
1059
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010602004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001061
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001062 * Fix memory leak in open (Valient Gough)
1063
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010642004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001065
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001066 * Add "close after delete" support to libfuse (patch by Valient
1067 Gough)
1068
1069 * Cancel all worker threads before exit in multithreaded mode
1070
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010712004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001072
1073 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001074
1075 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001076
1077 * Work with newer libtool (1.5a)
1078
1079 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001080
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010812004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001082
1083 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001084
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010852004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001086
1087 * Fix possible inode leak in userspace in case of unfinished
1088 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001089
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010902004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001091
1092 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001093
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010942004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001095
1096 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001097
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010982004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001099
1100 * Build shared library as well as static (using libtool)
1101
1102 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1103 there has not been a release with the previous minor number, and I
1104 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001105
1106 * Change fuse_main(), so that default behavior is to go into
1107 background if mount is successful. '-f' and '-d' options disable
1108 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1109 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001110
1111 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1112 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001113
1114 * Don't call getdir method from open() only from first readdir().
1115 Open is sometimes just used to store the current directory
1116 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001117
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011182004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001119
1120 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001121
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011222004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001123
1124 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001125
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011262004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001127
1128 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001129
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011302004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001131
1132 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001133
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011342004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001135
1136 * Replaced binary mount data with text options
1137
1138 * Show FUSE specific mount options in /proc/mounts
1139
1140 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1141
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011422004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001143
1144 * Check some limits so userspace won't get too big requests
1145
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011462004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001147
1148 * Kill compile warning
1149
1150 * Upgraded user-mount patch for 2.6.5
1151
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011522004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001153
1154 * Add detection of user-mode-linux to configure
1155
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011562004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001157
1158 * fixed zero size case for getxattr and listxattr
1159
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011602004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001161
1162 * new fusermount flag '-z': lazy unmount, default is not lazy
1163
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001164 * Extended attributes operations added (getxattr, setxattr,
1165 listxattr, removexattr)
1166
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011672004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001168
1169 * If filesystem doesn't define a statfs operation, then an
1170 all-zero default statfs is returned instead of ENOSYS
1171
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011722004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001173
1174 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1175
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011762004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001177
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001178 * Fix for uClinux (Christian Magnusson)
1179
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011802004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001181
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001182 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001183
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001184 * More kernel interface changes:
1185
1186 * Lookup/getattr return cache timeout values
1187
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011882004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001189
1190 * Clean up option parsing in fuse_main()
1191
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001192 * Added fuse_get() function which returns the fuse object created
1193 by fuse_main()
1194
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011952004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001196
Miklos Szeredic40748a2004-02-20 16:38:45 +00001197 * removed old way of mounting (fusermount mountpoint program)
1198
Miklos Szeredib5958612004-02-20 14:10:49 +00001199 * more kernel interface changes:
1200
1201 * added nanosecond precision to file times
1202
Miklos Szeredic40748a2004-02-20 16:38:45 +00001203 * removed interface version from mount data
1204
1205 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1206
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012072004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001208
1209 * statfs library API changed to match other methods. Since this
1210 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1211
Miklos Szeredi76f65782004-02-19 16:55:40 +00001212 * kernel interface changes follow:
1213
1214 * statfs changed to 64 bits, added 'bavail' field
1215
1216 * add generation number to lookup result
1217
1218 * optimized mknod/mkdir/symlink/link (no separate lookup is
1219 needed)
1220
1221 * rdev size increased to 32 bits for mknod
1222
1223 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001224
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012252004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001226
1227 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001228
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012292004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001230
1231 * Added user-mount.2.6.2-rc3.patch
1232
1233 * Add FS_SAFE flag to fuse filesystem
1234
1235 * fusermount should allow (un)mounting for non-root even if not
1236 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001237
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012382004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001239
1240 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001241
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012422004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001243
1244 * Added check for i_size_read/write functions to configure.in
1245 (patch by Valient Gough)
1246
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012472004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001248
1249 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001250
1251 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001252
1253 * Readpage calls flush_dcache_page() after storing data
1254
1255 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001256
1257 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001258
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012592004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001260
1261 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001262
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012632004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001264
1265 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001266
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012672004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001268
1269 * Added -q option for fusermount
1270
1271 * fuse_unmount() now uses -q option of fusermount, so no error is
1272 printed if the cause of the program exit is that the filesystem
1273 has already been unmounted
1274
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001275 * Fix i_nlink correctness after rmdir/unlink
1276
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012772004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001278
Miklos Szeredib1158392004-01-26 14:43:12 +00001279 * Released 1.1-pre2
1280
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012812004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001282
Miklos Szeredi307242f2004-01-26 11:28:44 +00001283 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001284
1285 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001286
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012872004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001288
1289 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001290
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012912004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001292
1293 * Write all pending data before a RELEASE operation
1294
1295 * Suppress 'Bad file descriptor' warning on exit
1296
1297 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001298 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001299
Miklos Szeredib1158392004-01-26 14:43:12 +00001300 * New fusermount option '-l' which enables big reads. Big reads
1301 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001302
1303 * fuse_main() can accept fusermount arguments after a '--'
1304
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013052004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001306
1307 * Support for exporting filesystem over NFS (see README.NFS)
1308
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013092004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001310
1311 * Support non-blocking writepage on 2.6. This makes FUSE behave
1312 much more nicely in low-memory situations
1313
1314 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1315 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001316
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013172004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001318
1319 * Code cleanups
1320
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013212004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001322
1323 * Released 1.1-pre1
1324
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013252004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001326
1327 * Integrated 2.6 kernel support patch by Michael Grigoriev
1328
1329 * Improvements and cleanups for 2.6 kernels
1330
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013312004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001332
Miklos Szeredie5183742005-02-02 11:14:04 +00001333 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001334
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013352003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001336
1337 * Added major+minor version to library API, and minor version to
1338 kernel API
1339
David McNab7a19caf2003-12-13 02:05:46 +000013402003-12-13 David McNab <david@rebirthing.co.nz>
1341
1342 * Implemented fsync support in examples/example.py
1343
1344 * Implemented 'fsync' and 'statfs' methods in python
1345 interface
1346
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013472003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001348
Miklos Szeredie5183742005-02-02 11:14:04 +00001349 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001350
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001351 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001352
David McNab8bf62632003-12-11 22:49:22 +000013532003-12-12 David McNab <david@rebirthing.co.nz>
1354
1355 * Added distutils support to the python module, as per standard
1356 python development practice
1357
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013582003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001359
1360 * Add file locking for mount/unmount (based on patch by Valient
1361 Gough)
1362
13632003-12-11 David McNab <david@rebirthing.co.nz>
1364
1365 * Python filesystem - was broken with python2.3, now fixed:
1366 - changed PyTuple_* calls to PySequence_*, because os.lstat
1367 is no longer returning a pure tuple
1368 - changed PyInt_Check() calls to also call PyLong_Check,
1369 to cover for cases (eg os.lstat) where longs are returned
1370 - Added support for file 'release' handling, which IMO is
1371 essential since this signals to a FS that writes to a file
1372 are complete (and therefore the file can now be disposed of
1373 meaningfully at the python filesystem's discretion)
1374 - Added '__init__' handler to base Fuse class, which allows
1375 your Python class to know the mountpoint and mount args,
1376 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001377
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001378 * General:
1379 - added 'mount.fuse' script (in util/ dir), which is meant to be
1380 symlinked from /sbin, and which allows FUSE filesystems to
1381 be mounted with the 'mount' command, and listed in fstab;
1382 also, mount arguments get passed to your filesystem
1383
1384
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013852003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001386
1387 * Fix kernel version detection (again). Bugreport by Peter Levart
1388
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013892003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001390
1391 * Applied read combining patch by Michael Grigoriev (tested by
1392 Valient Gough and Vincent Wagelaar)
1393
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013942003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001395
1396 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1397 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001398
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013992003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001400
1401 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001402
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014032003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001404
1405 * kernel version detection fix
1406
1407 * fusermount now uses "lazy" umount option
1408
1409 * fusermount can use modprobe with module-init-tools
1410
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014112003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001412
1413 * Integrated caching patch by Michael Grigoriev
1414
Miklos Szeredida4e4862003-09-08 11:14:11 +00001415 * Added "Filesystems" file with descriptions of projects using
1416 FUSE
1417
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001418 * Added patch by Michael Grigoriev to allow compliation of FUSE
1419 kernel module for 2.6 kernels
1420
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014212003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001422
1423 * And another spec-file fix by Achim Settelmeier
1424
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014252003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001426
1427 * Spec-file fix by Achim Settelmeier
1428
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014292003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001430
Miklos Szerediac361172004-11-02 19:14:14 +00001431 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001432
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014332003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001434
1435 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1436
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014372003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001438
1439 * Updated fuse.spec file (Achim Settelmeier)
1440
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014412003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001442
1443 * Version 1.0 released
1444
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014452003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001446
1447 * SuSE compilation fix by Juan-Mariano de Goyeneche
1448
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014492002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001450
1451 * The release() VFS call is now exported to the FUSE interface
1452
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014532002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001454
1455 * 64 bit file offset fixes in the fuse kernel module
1456
1457 * Added function 'fuse_exit()' which can be used to exit the main
1458 loop
1459
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014602002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001461
1462 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1463 an incompatible interface change.
1464
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014652002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001466
1467 * Portablility fix (bug reported by C. Chris Erway)
1468
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014692002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001470
1471 * Use Mark Glines' fd passing method for default operation instead
1472 of old reexec
1473
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014742002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001475
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001476 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1477
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014782002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001479
Miklos Szeredi60c23522002-10-24 09:19:43 +00001480 * fix incompatiblity with Red Hat kernels, with help from Nathan
1481 Thompson-Amato.
1482
Mark Glines65ba2192002-04-18 14:41:48 +000014832002-04-18 Mark Glines <mark@glines.org>
1484
1485 * added an alternative to fuse_mount(), called
1486 fuse_mount_ioslave(), which does not need to reexec the
1487 FUSE program.
1488 * added a small helper util needed by fuse_mount_ioslave().
1489
Mark Glines220635a2002-03-17 07:01:14 +000014902002-03-16 Mark Glines <mark@glines.org>
1491
1492 * use struct fuse_statfs everywhere possible to avoid problems
1493 with the headerfiles changing struct statfs member sizes
1494
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014952002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001496
1497 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1498
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014992002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001500
1501 * RPM support by Achim Settelmeier
1502
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015032002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001504
Miklos Szerediddc862a2002-01-09 13:46:10 +00001505 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001506
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015072002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001508
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001509 * Revaidate all path components not just the last, this means a
1510 very small performance penalty for being more up-to-date.
1511
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015122002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001513
1514 * Update and fix python interface
1515
Mark Glinesd84b39a2002-01-07 16:32:02 +000015162002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001517
Mark Glinesd84b39a2002-01-07 16:32:02 +00001518 * Added statfs() support to kernel, lib, examples, and perl!
1519
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015202001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001521
1522 * Better cross compilation support
1523
1524 * Ported to Compaq IPAQ
1525
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015262001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001527
Miklos Szeredife25def2001-12-20 15:38:05 +00001528 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001529 patch from Matt Ryan)
1530
Miklos Szeredife25def2001-12-20 15:38:05 +00001531 * Added flags to fusermount and to kernel interface to control
1532 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001533
Miklos Szeredife25def2001-12-20 15:38:05 +00001534 * Integrated fuse_set_operations() into fuse_new()
1535
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015362001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001537
1538 * Applied header protection + extern "C" patch by Roland
1539 Bauerschmidt
1540
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015412001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001542
Miklos Szeredie5183742005-02-02 11:14:04 +00001543 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001544
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015452001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001546
1547 * Cleaned up way of mounting simple filesystems.
1548
1549 * fuse_main() helper function added
1550
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015512001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001552
Miklos Szeredife25def2001-12-20 15:38:05 +00001553 * Optimized read/write operations, so that minimal copying of data
1554 is done
1555
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015562001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001557
1558 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001559
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015602001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001561
1562 * Fixed vfsmount reference leak in fuse_follow_link
1563
1564 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1565 userspace is ignored
1566
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015672001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001568
Miklos Szeredife25def2001-12-20 15:38:05 +00001569 * Started ChangeLog