blob: 0729da768a5766e56405ccc05cefdfaf2de606a0 [file] [log] [blame]
Miklos Szeredi670d07a2005-09-20 11:36:32 +000012005-09-20 Miklos Szeredi <miklos@szeredi.hu>
2
3 * Remove '--enable-auto-modprobe' configure flag. Module
4 auto-loading is now handled by the kernel.
5
Miklos Szeredid51fca12005-09-15 12:51:00 +000062005-09-15 Miklos Szeredi <miklos@szeredi.hu>
7
8 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
9 Help from Jens M. Noedler.
10
Miklos Szeredi7e7530d2005-09-14 15:20:26 +0000112005-09-14 Miklos Szeredi <miklos@szeredi.hu>
12
13 * Add memory cleanup on thread exit
14
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +0000152005-09-13 Miklos Szeredi <miklos@szeredi.hu>
16
17 * Set umask to zero in fusexmp and fusexmp_fh, so that
18 files/directories are created with the requested mode.
19
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +0000202005-09-12 Miklos Szeredi <miklos@szeredi.hu>
21
22 * Don't ignore read error in multithreaded loop
23
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000242005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +000025
Miklos Szeredi2277ecc2005-09-08 15:34:44 +000026 * Released 2.4.0-pre2
27
282005-09-08 Miklos Szeredi <miklos@szeredi.hu>
29
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +000030 * Revert lock and access operations. Postpone these until 2.5.
31
322005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +000033
34 * Fix compile warning on 2.6.13 and later
35
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +000036 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +000037
Miklos Szeredi77ccf652005-08-19 14:40:27 +0000382005-08-19 Miklos Szeredi <miklos@szeredi.hu>
39
40 * lib: always refresh directory contents after rewinddir() to
41 conform to SUS. Bug found by John Muir.
42
Miklos Szeredia1482422005-08-14 23:00:27 +0000432005-08-15 Miklos Szeredi <miklos@szeredi.hu>
44
Miklos Szeredic43f9412005-08-15 15:10:48 +000045 * Released 2.4.0-pre1
46
472005-08-14 Miklos Szeredi <miklos@szeredi.hu>
48
Miklos Szeredia1482422005-08-14 23:00:27 +000049 * lib: cleaned up (or messed up, depending on your POV) the low
50 level library API. Hopefully this is close to the final form.
51
Miklos Szeredicc1b97c2005-08-05 10:35:26 +0000522005-08-05 Miklos Szeredi <miklos@szeredi.hu>
53
54 * fusermount: don't allow empty mountpoint argument, which defeats
55 automatic umounting in fuse_main(). Bugreport by Václav Jůza
56
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000572005-08-03 Miklos Szeredi <miklos@szeredi.hu>
58
59 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
60 option is used (Paul Alfille).
61
Miklos Szeredi6c0209a2005-08-02 13:31:28 +0000622005-08-02 Miklos Szeredi <miklos@szeredi.hu>
63
64 * highlevel-lib: added mount options "attr_timeout" and
65 "entry_timeout". These options control the length of time file
66 attributes and entries (names) are cached. Both default to 1.0
67 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +000068
69 * kernel: correctly handle zero timeout for attributes and entries
70
Miklos Szeredi56a61f02005-08-01 10:42:25 +0000712005-08-01 Miklos Szeredi <miklos@szeredi.hu>
72
73 * Added missing symbols to versionscript (Joshua J. Berry)
74
Miklos Szeredie77cc072005-08-01 11:58:51 +000075 * kernel: implement two flags, open can set: 'direct_io' and
76 'keep_cache'. These correspond exactly to mount options
77 'direct_io' and 'kernel_cache', but allow a per-open setting.
78
79 * Move 'direct_io' and 'kernel_cache' mount option handling to
80 userspace. For both mount options, if the option is given, then
81 the respective open flag is set, otherwise the open flag is left
82 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +000083
Miklos Szeredi31066bb2005-08-01 14:49:31 +000084 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +000085
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +0000862005-07-28 Miklos Szeredi <miklos@szeredi.hu>
87
88 * kernel: invalidate attributes for read/readdir/readlink
89 operations
90
91 * kernel: detect newer UML kernels
92
Miklos Szeredibfb99462005-07-26 11:07:55 +0000932005-07-26 Miklos Szeredi <miklos@szeredi.hu>
94
95 * Make the installation path of fuse.ko and mount.fuse
96 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
97 environment variables. Requirement and help from Csaba Henk.
98
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +0000992005-07-22 Miklos Szeredi <miklos@szeredi.hu>
100
101 * Fix bug, that causes filesystem requests to hang when unique
102 request counter becomes negative. This happens after
103 2,147,483,648 operations, so most people won't care. Thanks to
104 Franco Broi for the report and testing.
105
Miklos Szeredi9b813af2005-07-21 07:59:37 +00001062005-07-21 Miklos Szeredi <miklos@szeredi.hu>
107
108 * Don't change mtime/ctime/atime to local time on read/write.
109 Bug reported by Ben Grimm
110
111 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
112 Magnusson
113
114 * fusermount: use getopt_long() for option parsing. It allows the
115 use of '--' to stop argument scanning, so fusermount can now
116 operate on directories whose names begin with a '-'. Patch by
117 Adam Connell
118
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00001192005-07-15 Miklos Szeredi <miklos@szeredi.hu>
120
121 * fusermount: add '-v', '--version' and '--help' options
122
123 * add inode based API
124
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00001252005-07-12 Miklos Szeredi <miklos@szeredi.hu>
126
127 * lib: don't block signals in worker threads. Problem noticed by
128 Usarin Heininga
129
Miklos Szeredic902a852005-07-07 12:35:37 +00001302005-07-07 Miklos Szeredi <miklos@szeredi.hu>
131
132 * lib: don't allow both 'allow_other' and 'allow_root' options to
133 be given
134
Miklos Szeredi437d8112005-07-06 09:14:20 +00001352005-07-06 Miklos Szeredi <miklos@szeredi.hu>
136
137 * fusermount: check if mountpoint is empty (only '.' and '..' for
138 directories, and size = 0 for regular files). If "nonempty"
139 option is given, omit this check. This is useful, so users don't
140 accidentally hide data (e.g. from backup programs). Thanks to
141 Frank van Maarseveen for pointing this out.
142
143 * kernel: check if mandatory mount options ('fd', 'rootmode',
144 'user_id', 'group_id') are all given
145
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000146 * lib: simplify 'readdir_ino' handling
147
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000148 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
149
Miklos Szeredibb9f5172005-07-03 18:03:11 +00001502005-07-03 Miklos Szeredi <miklos@szeredi.hu>
151
152 * kernel: clean up 'direct_io' code
153
Miklos Szeredie1bcece2005-06-28 10:37:06 +00001542005-06-28 Miklos Szeredi <miklos@szeredi.hu>
155
156 * Add 'mount.fuse' written by Petr Klima
157
Miklos Szeredi866826d2005-06-28 12:22:57 +0000158 * '/dev/fuse' is created by 'make install' if does not yet exist
159
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00001602005-06-20 Miklos Szeredi <miklos@szeredi.hu>
161
162 * Fix UCLIBC compile error. Patch by Christian Magnusson
163
Miklos Szerediec12fad2005-06-08 10:26:34 +00001642005-06-08 Miklos Szeredi <miklos@szeredi.hu>
165
166 * Enable the auto-loading of the module via access to the
167 corresponding device file. Patch by Takashi Iwai.
168
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000169 * Allow mounting a regular file (over a regular file) for
170 unprivleged users.
171
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000172 * Do not create temporary device file. Require "/dev/fuse" to
173 exist, and be readable/writable by the mounting user.
174
Miklos Szeredi46960ce2005-06-02 09:05:00 +00001752005-06-02 Miklos Szeredi <miklos@szeredi.hu>
176
Miklos Szeredi56478552005-06-02 10:29:00 +0000177 * Released 2.3.0
178
1792005-06-02 Miklos Szeredi <miklos@szeredi.hu>
180
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000181 * Fix serious information leak: if the filesystem returns a short
182 byte count to a read request, and there are non-zero number of
183 pages which are not filled at all, these pages will not be zeroed.
184 Hence the user can read out previous memory contents. Found by
185 Sven Tantau.
186
Miklos Szeredi33be22d2005-05-27 09:12:43 +00001872005-05-27 Miklos Szeredi <miklos@szeredi.hu>
188
189 * Add "readdir_ino" mount option, which tries to fill in the d_ino
190 field in struct dirent. This mount option is ignored if "use_ino"
191 is used. It helps some programs (e.g. 'pwd' used over NFS from a
192 non-Linux OS). Patch by David Shaw.
193
Miklos Szeredif94e0102005-05-12 14:56:34 +00001942005-05-12 Miklos Szeredi <miklos@szeredi.hu>
195
Miklos Szeredieb009c42005-05-12 15:01:17 +0000196 * Released 2.3-rc1
197
1982005-05-12 Miklos Szeredi <miklos@szeredi.hu>
199
Miklos Szeredif94e0102005-05-12 14:56:34 +0000200 * File save in krusader and other editors doesn't work with sshfs,
201 because open() is interrupted by a periodic signal, and open()
202 restarts forever, without any progress. This could just be fixed
203 in open(), but the problem is more generic: if signals are
204 received more often than the filesystem can get the request to
205 userspace, it will never finish. This is probably only a
206 theoretical problem, nevertheless I'm removing the possibility to
207 interrupt requests with anything other than SIGKILL, even before
208 being sent to userspace. Bugreport by Eduard Czimbalmos.
209
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00002102005-05-09 Miklos Szeredi <miklos@szeredi.hu>
211
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000212 * libfuse: add "tree_lock" rwlock, that is locked for write in
213 rename, unlink and rmdir, and locked for read in all other
214 operations. This should fix the rename/release race reported by
215 Valient Gough and others. The solution is very coarse, a finer
216 grained locking scheme could be implemented, but it would be much
217 more complex. Let's see whether this is good enough.
218
2192005-05-09 Miklos Szeredi <miklos@szeredi.hu>
220
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000221 * Released 2.3-pre7
222
Miklos Szeredi38009022005-05-08 19:47:22 +00002232005-05-08 Miklos Szeredi <miklos@szeredi.hu>
224
225 * Better fix for out of order FORGET messages. Now the
226 LOOKUP/FORGET messages are balanced exactly (one FORGET can
227 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000228 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000229 compatible.
230
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00002312005-05-06 Miklos Szeredi <miklos@szeredi.hu>
232
233 * Fix abort for out of order FORGET messages. Again. Spotted by
234 Franco Broi again. Sorry :)
235
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00002362005-04-29 Miklos Szeredi <miklos@szeredi.hu>
237
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000238 * Released 2.3-pre6
239
2402005-04-29 Miklos Szeredi <miklos@szeredi.hu>
241
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000242 * Make fusermount work with fuse kernel modules not yet supporting
243 the "group_id" option (added for the purpose of stricter
244 permission checking).
245
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00002462005-04-28 Miklos Szeredi <miklos@szeredi.hu>
247
248 * Check for hard-linked directories in lookup. This could cause
249 problems in the VFS, which assumes that such objects never exist.
250
251 * Make checking of permission for other users more strict. Now
252 the same privilege is required for the mount owner as for ptrace
253 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000254
Miklos Szeredi3efcb562005-04-23 13:34:29 +00002552005-04-23 Miklos Szeredi <miklos@szeredi.hu>
256
257 * Released 2.3-pre5
258
Miklos Szeredid001bf92005-04-22 07:54:11 +00002592005-04-22 Miklos Szeredi <miklos@szeredi.hu>
260
261 * Add -msoft-float to kernel module compile flags for 2.4.X. This
262 is needed on certain architectures. Report from Chris Kirby
263
264 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
265 Reported by David Shaw
266
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000267 * Remove "allow_root" option from kernel module, and implement
268 it's functionality in the library
269
270 * Fix Oops caused by premature release of fuse_conn. Clean up
271 related code, to be more readable
272
Miklos Szeredif9137452005-04-23 10:59:44 +0000273 * Sendfile should not use page cache if "direct_io" mount option
274 is given
275
Miklos Szeredib7640d22005-04-08 15:15:28 +00002762005-04-08 Miklos Szeredi <miklos@szeredi.hu>
277
278 * Fix Oops in case of nfs export. Spotted by David Shaw
279
Miklos Szeredi89814a12005-04-08 16:39:09 +0000280 * Fix another Oops in case of write over nfs with direct_io turned
281 on. Again spotted by David Shaw
282
Miklos Szerediab974562005-04-07 15:40:21 +00002832005-04-07 Miklos Szeredi <miklos@szeredi.hu>
284
Miklos Szeredi432d6182005-04-07 15:56:13 +0000285 * Released 2.3-pre4
286
2872005-04-07 Miklos Szeredi <miklos@szeredi.hu>
288
Miklos Szerediab974562005-04-07 15:40:21 +0000289 * lib: finalized new readdir() interface, which now supersedes the
290 getdir() method.
291
Miklos Szeredi30e093a2005-04-03 17:44:54 +00002922005-04-03 Miklos Szeredi <miklos@szeredi.hu>
293
294 * Released 2.3-pre3
295
2962005-04-03 Miklos Szeredi <miklos@szeredi.hu>
297
298 * Implement backward compatibility with version 5 kernel ABI
299
Miklos Szeredi18fce982005-04-01 21:07:35 +00003002005-04-01 Miklos Szeredi <miklos@szeredi.hu>
301
302 * Released 2.3-pre2
303
3042005-04-01 Miklos Szeredi <miklos@szeredi.hu>
305
306 * kernel: fix dirent offset handling
307
308 * lib: add readdir and releasedir methods
309
310 * lib: use fh field of fuse_file_info in opendir, readdir,
311 releasedir and fsyncdir methods
312
313 * lib: check kernel API version and bail out of it's old. This
314 will be properly fixed in the next release
315
3162005-03-31 Miklos Szeredi <miklos@szeredi.hu>
317
318 * Released 2.3-pre1
319
Miklos Szeredieab72ef2005-03-31 19:59:12 +00003202005-03-31 Miklos Szeredi <miklos@szeredi.hu>
321
322 * kernel API: add padding to structures, so 64bit and 32bit
323 compiler will return the same size
324
325 * kernel API: add offset field to fuse_dirent. This will allow
326 more sophisticated readdir interface for userspace
327
328 * kernel API: change major number to 6
329
330 * kernel: fix warnings on 64bit archs
331
332 * kernel: in case of API version mismatch, return ECONNREFUSED
333
Miklos Szeredi407e6a72005-03-25 12:19:43 +00003342005-03-24 Miklos Szeredi <miklos@szeredi.hu>
335
336 * kernel: trivial cleanups
337
Miklos Szeredi4283ee72005-03-21 12:09:04 +00003382005-03-21 Miklos Szeredi <miklos@szeredi.hu>
339
340 * Add fsyncdir() operation
341
Miklos Szeredid17da462005-03-21 11:47:04 +00003422005-03-19 Miklos Szeredi <miklos@szeredi.hu>
343
344 * kernel: add locking to background list (fixes previous fix)
345
3462005-03-18 Miklos Szeredi <miklos@szeredi.hu>
347
348 * kernel: fix bug which could cause leave busy inodes after
349 unmount, and Oops.
350
3512005-03-08 Miklos Szeredi <miklos@szeredi.hu>
352
353 * examples: add -lpthread to link flags to work around valgrind
354 quirk
355
356 * lib: don't exit threads, so cancelation doesn't cause segfault
357
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00003582005-03-04 Miklos Szeredi <miklos@szeredi.hu>
359
360 * kernel: fix nasty bug which could cause an Oops under certain
361 situations. Found by Magnus Johansson
362
Miklos Szeredif43f0632005-02-28 11:46:56 +00003632005-02-28 Miklos Szeredi <miklos@szeredi.hu>
364
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000365 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000366 permission checking in getdir() is too late. Thanks to Usarin
367 Heininga for pointing out this deficiency
368
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000369 * libfuse: added init() and destroy() methods to fuse_operations
370
Miklos Szeredif43f0632005-02-28 11:46:56 +0000371 * kernel: llseek() method for files and directories made explicit
372
373 * kernel: fixed inode leak in NFS export in case of nodeid
374 wrapping
375
Miklos Szeredied3c97c2005-02-15 17:04:50 +00003762005-02-15 Miklos Szeredi <miklos@szeredi.hu>
377
378 * libfuse: clean up some unitialized memory found with valgrind
379
Miklos Szeredi47c52982005-02-23 09:27:38 +0000380 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
381 explicitly linked libpthread for applications
382
Miklos Szeredia7169412005-02-10 07:35:05 +00003832005-02-10 Miklos Szeredi <miklos@szeredi.hu>
384
385 * fusermount: set umask, otherwise /etc/mtab will have
386 unpredictable permission. Spotted by Jindrich Kolorenc
387
388 * fusermount: set owner and group of /etc/mtab to original values
389 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000390
391 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000392
Miklos Szeredib92d9782005-02-07 16:10:49 +00003932005-02-07 Miklos Szeredi <miklos@szeredi.hu>
394
395 * Cleaned up directory reading (temporary file is not used)
396
Miklos Szerediff30a6c2005-02-02 10:53:59 +00003972005-02-02 Miklos Szeredi <miklos@szeredi.hu>
398
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000399 * Released 2.2
400
4012005-02-02 Miklos Szeredi <miklos@szeredi.hu>
402
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000403 * Fix possible race when operation is interrupted
404
Miklos Szeredi7a983952005-01-28 09:58:19 +00004052005-01-28 Miklos Szeredi <miklos@szeredi.hu>
406
Miklos Szeredie5183742005-02-02 11:14:04 +0000407 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000408
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00004092005-01-26 Miklos Szeredi <miklos@szeredi.hu>
410
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000411 * Released 2.2-pre6
412
4132005-01-26 Miklos Szeredi <miklos@szeredi.hu>
414
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000415 * Fix bug in link() operation which caused the wrong path to be
416 passed as the first argument. Found by Anton Altaparmakov
417
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00004182005-01-21 Miklos Szeredi <miklos@szeredi.hu>
419
420 * LIB: fix double reply in readdir operation
421
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000422 * fusermount: fix uid checking bug. Patch by Adam Connell
423
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000424 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000425 Patch by Keshava Gowda
426
Miklos Szeredi64074142005-01-20 08:48:11 +00004272005-01-20 Miklos Szeredi <miklos@szeredi.hu>
428
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000429 * KERNEL: provide correct llseek semantics for fuse device (fixes
430 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
431
4322005-01-20 Miklos Szeredi <miklos@szeredi.hu>
433
Miklos Szeredi64074142005-01-20 08:48:11 +0000434 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
435
Miklos Szeredi1adb2272005-01-18 21:19:58 +00004362005-01-18 Miklos Szeredi <miklos@szeredi.hu>
437
438 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
439 and RELEASEDIR. This ends the ugly hack of passing a file
440 descriptor to the kernel, and actually makes the code simpler.
441
Miklos Szeredi7db35c02005-01-17 09:46:28 +00004422005-01-17 Miklos Szeredi <miklos@szeredi.hu>
443
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000444 * Released 2.2-pre4
445
4462005-01-17 Miklos Szeredi <miklos@szeredi.hu>
447
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000448 * fusermount: remove capability setting, which was the cause of
449 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000450 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000451
Miklos Szeredidbe0f652005-01-15 14:32:56 +00004522005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000453
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000454 * fix compilation on 2.4 kernels (reported by Valient Gough)
455
456 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000457
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000458 * fusermount: improve parsing of /etc/fuse.conf
459
4602005-01-13 Miklos Szeredi <miklos@szeredi.hu>
461
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000462 * Remove 'mount_max' and 'user_allow_other' module options. These
463 are now checked by fusermount, and can be set in /etc/fuse.conf
464
465 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
466
Miklos Szeredi81394522005-01-11 14:24:18 +00004672005-01-11 Miklos Szeredi <miklos@szeredi.hu>
468
469 * KERNEL: fix possible inode allocation problem, where
470 sizeof(struct inode) is not aligned (found by Mike Waychison)
471
472 * KERNEL: use new follow_link/put_link methods
473
474 * KERNEL: cosmetic fixes
475
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00004762005-01-10 Miklos Szeredi <miklos@szeredi.hu>
477
478 * Released 2.2-pre3
479
4802005-01-10 Miklos Szeredi <miklos@szeredi.hu>
481
482 * Add missing code that was accidently left out
483
Miklos Szeredi8c7da232005-01-09 12:27:41 +00004842005-01-09 Miklos Szeredi <miklos@szeredi.hu>
485
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000486 * Released 2.2-pre2
487
4882005-01-09 Miklos Szeredi <miklos@szeredi.hu>
489
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000490 * Change "uid" mount option to "user_id" to avoid confusion with a
491 mount option "uid" commonly used by many filesystems
492
4932005-01-09 Miklos Szeredi <miklos@szeredi.hu>
494
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000495 * Released 2.2-pre1
496
4972005-01-09 Miklos Szeredi <miklos@szeredi.hu>
498
499 * If FUSE is configured in the kernel, don't build it by default
500
Miklos Szeredi2a927272005-01-07 11:14:15 +00005012005-01-07 Miklos Szeredi <miklos@szeredi.hu>
502
503 * Compile fix by Christian Magnusson
504
Miklos Szeredib6220192005-01-05 16:19:10 +00005052005-01-05 Miklos Szeredi <miklos@szeredi.hu>
506
507 * Fix compilation for 2.6.{0-5} kernels
508
Miklos Szeredi0f62d722005-01-04 12:45:54 +00005092005-01-04 Miklos Szeredi <miklos@szeredi.hu>
510
511 * KERNEL: if request is interrupted, still keep reference to used
512 inode(s) and file, so that FORGET and RELEASE are not sent until
513 userspace finishes the request.
514
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000515 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
516 request with the same information, which is more flexible,
517 simpler, works on embedded systems.
518
Miklos Szeredi0f62d722005-01-04 12:45:54 +00005192004-12-16 Miklos Szeredi <miklos@szeredi.hu>
520
521 * KERNEL ABI: update interface to make it independent of type
522 sizes. This will help on 64 bit architectures which can run
523 legacy 32 bit applications.
524
525 * KERNEL ABI: add "len" field to request headers. This will allow
526 sending/receiving requests in multiple chunks.
527
528 * KERNEL: handle file type change more intelligently
529
530 * LIB: "-o debug" option should disable backgrounding (fix by
531 Fabien Reygrobellet)
532
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00005332004-12-13 Miklos Szeredi <miklos@szeredi.hu>
534
535 * KERNEL: invalidate dentry/attributes if interrupted request
536 could leave filesystem in an unknown state.
537
Miklos Szeredie56818b2004-12-12 11:45:24 +00005382004-12-12 Miklos Szeredi <miklos@szeredi.hu>
539
540 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
541 These will cause some regressions, but stability is considered
542 more important. If any of these features turns out to be
543 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000544
Miklos Szeredie56818b2004-12-12 11:45:24 +0000545 * Make all requests interruptible (only with SIGKILL currently).
546 This can be used to break any deadlock produced by the userspace
547 filesystem accessing it's own exported files. The RELEASE request
548 is special, because if it's interrupted before sending it to
549 userspace it is still sent, but the reply is not awaited.
550
551 * If request is interrupted before being sent to userspace, and if
552 it hasn't yet got any side effects, it is always restarted,
553 regardless of the SA_RESTART flag. This makes these interruptions
554 transparent to the process.
555
556 * Remove shared-writable mmap support, which was prone to an
557 out-of-memory deadlock situation
558
559 * Remove INVALIDATE userspace initiated request
560
561 * Make readpages() synchronous. Asynchronous requests are
562 deadlock prone, since they cannot be interrupted.
563
564 * Add readv/writev support to fuse device operations
565
566 * Remove some printks, which userspace FS can use for a DoS
567 against syslog
568
569 * Remove 'large_read' mount option from 2.6 in kernel, check it in
570 fusermount instead
571
572 * LIB: improve compatibility with a fuse.h header installed in
573 ${prefix}/include which in turn includes the real header.
574
575 * LIB: improve compatibility by defining fuse_main() (which is now
576 not used), so old configure scripts find it.
577
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00005782004-12-10 Miklos Szeredi <miklos@szeredi.hu>
579
580 * When mounting on a subdirectory of / don't duplicate slashes at
581 the beggining of path (spotted by David Shaw)
582
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00005832004-12-09 Miklos Szeredi <miklos@szeredi.hu>
584
585 * Fix bug causing garbage in mount options (spotted by David Shaw)
586
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00005872004-12-07 Miklos Szeredi <miklos@szeredi.hu>
588
589 * Add 'writepage' flag to 'fuse_file_info'.
590
591 * More comments in fuse.h
592
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000593 * Get rid of double underscores
594
Miklos Szeredi799993c2004-12-04 21:20:05 +00005952004-12-04 Miklos Szeredi <miklos@szeredi.hu>
596
597 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
598
599 * helper.c: add -ho option, which only displays the options not
600 the usage header. This can be used by filesystems which have
601 their own options.
602
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00006032004-12-03 Miklos Szeredi <miklos@szeredi.hu>
604
605 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
606 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
607 including the fuse header
608
609 * Add binary compatibility to 2.1 version of library with symbol
610 versioning
611
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00006122004-12-03 Miklos Szeredi <miklos@szeredi.hu>
613
614 * Released 2.1
615
Miklos Szeredi039322d2004-12-01 18:39:12 +00006162004-12-01 Miklos Szeredi <miklos@szeredi.hu>
617
618 * kernel: clean up writing functions
619
620 * kernel: no allocation on write in direct_io mode
621
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000622 * move linux/fuse.h to fuse_kernel.h
623
Miklos Szeredi83a07442004-11-30 18:25:20 +00006242004-11-30 Miklos Szeredi <miklos@szeredi.hu>
625
626 * kernel: clean up reading functions
627
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00006282004-11-29 Miklos Szeredi <miklos@szeredi.hu>
629
630 * kernel: make readpage() uninterruptible
631
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000632 * kernel: check readonly filesystem flag in fuse_permission
633
634 * lib: don't die if version file not found and new style device
635 exists
636
637 * lib: add '-r' option, which is short for '-o ro'
638
639 * fusermount: simplify device opening
640
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000641 * kernel: when direct_io is turend on, copy data directly to
642 destination without itermediate buffer. More efficient and safer,
643 since no allocation is done.
644
645 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000646
647 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000648
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00006492004-11-26 Miklos Szeredi <miklos@szeredi.hu>
650
651 * libfuse API change: open, read, write, flush, fsync and release
652 are passed a 'struct fuse_file_info' pointer containing the open
653 flags (open and release), and the file handle. Verion changed to
654 3.0.
655
Miklos Szeredia25d4c22004-11-23 22:32:16 +00006562004-11-23 Miklos Szeredi <miklos@szeredi.hu>
657
658 * More cleanups in the kernel
659
660 * The 10,229 charater device number has been assigned for FUSE
661
662 * Version file checking fix (reported by Christian Magnusson)
663
664 * fusermount: opening the fuse device now doesn't need /sys.
665
666 * Optimize reading by controlling the maximum readahead based on
667 the 'max_read' mount option
668
669 * fixes for UCLIBC (Christian Magnusson)
670
Miklos Szeredi13ed4822004-11-20 11:12:21 +00006712004-11-19 Miklos Szeredi <miklos@szeredi.hu>
672
673 * Cleaned up kernel in preparation for merge into mainline:
674
675 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
676
677 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
678
679 * __user annotations for sparse
680
681 * allocate individual pages instead of kmalloc in fuse_readdir,
682 fuse_read and fuse_write.
683
684 * Fix NFS export in case "use_ino" mount option is given
685
Miklos Szeredif3845c42004-11-20 11:18:34 +0000686 * Make libfuse and fusermount compatible with future versions
687
688 * fusermount: properly add mount options to /etc/mtab
689
6902004-11-15 Miklos Szeredi <miklos@szeredi.hu>
691
692 * fusermount: do not resolve last component of mountpoint on if it
693 is '.' or '..'. This new path resolvation is now done on mount as
694 well as unmount. This enables relative paths to work on unmount.
695
696 * fusermount: parse common mount options like "ro", "rw", etc...
697
698 * Allow module params to be changed through sysfs
699
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00007002004-11-14 Miklos Szeredi <miklos@szeredi.hu>
701
702 * Released 2.1-pre1
703
7042004-11-14 Miklos Szeredi <miklos@szeredi.hu>
705
706 * Fix bug in fuse_readpages() causing Oops in certain situations.
707 Bug found by Vincenzo Ciancia.
708
709 * Fix compilation with kernels versions > 2.6.9.
710
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00007112004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000712
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000713 * Check kernel interface version in fusermount to prevent
714 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000715
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000716 * No need to allocate fuse_conn until actual mount happens
717
718 * Fix potential race between umount and fuse_invalidate
719
720 * Check superblock of proc file in addition to inode number
721
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000722 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000723
Miklos Szeredi51ec1032004-11-10 11:52:26 +00007242004-11-10 Miklos Szeredi <miklos@szeredi.hu>
725
726 * Separate configure for the kernel directory
727
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000728 * Don't allow write to return more than 'count'
729
730 * Extend kernel interface for future use
731
Miklos Szeredi51ec1032004-11-10 11:52:26 +00007322004-11-09 Miklos Szeredi <miklos@szeredi.hu>
733
734 * Fix 'makeconf.sh' to use autoreconf if available
735
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00007362004-11-08 Miklos Szeredi <miklos@szeredi.hu>
737
Miklos Szeredid507c732004-11-08 17:32:25 +0000738 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
739 compatibility with earlier versions. To compile earier versions
740 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
741 Do not use the "use_ino" mount flag with filesystems compiled with
742 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000743
744 * Add pkg-config support. To compile a FUSE based filesystem you
745 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
746 or similar. Note, that the PKG_CONFIG_PATH environment variable
747 usually needs to be set to "/usr/local/lib/pkgconfig".
748
749 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000750
Miklos Szeredia13d9002004-11-02 17:32:03 +00007512004-11-02 Miklos Szeredi <miklos@szeredi.hu>
752
753 * Added "use_ino" mount option. This enables the filesystems to
754 set the st_ino field on files
755
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00007562004-11-01 Miklos Szeredi <miklos@szeredi.hu>
757
758 * Fix compile problems with ancient (<=2.4.18) kernels (reported
759 by Jeremy Smith)
760
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000761 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
762
763 * Clear the 'exited' flag when mail loop is finished
764
Miklos Szeredie989f0d2004-10-28 20:24:58 +00007652004-10-28 Miklos Szeredi <miklos@szeredi.hu>
766
767 * Make xattr functions work under 2.6 (bug found by Vincenzo
768 Ciancia)
769
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00007702004-10-26 Miklos Szeredi <miklos@szeredi.hu>
771
772 * Reset request in fuse_flush() (bugreport by David Shaw)
773
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00007742004-10-21 Miklos Szeredi <miklos@szeredi.hu>
775
Miklos Szeredi0e70aa72004-10-21 16:24:29 +0000776 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000777 error code
778
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000779 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000780 make it easier to implement a custom event loop.
781
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000782 * Use daemon() call to background the filesystem after mounting.
783 This function closes the standard input, output and error and
784 changes the current working directory to "/".
785
Miklos Szeredi127d49b2004-10-14 13:33:39 +00007862004-10-14 Miklos Szeredi <miklos@szeredi.hu>
787
788 * Released 1.9
789
Miklos Szeredid45baf42004-10-10 07:56:12 +00007902004-10-09 Miklos Szeredi <miklos@szeredi.hu>
791
792 * Don't allow fuse_flush() to be interrupted (bug found by David
793 Shaw)
794
Miklos Szeredi1f18db52004-09-27 06:54:49 +00007952004-09-27 Miklos Szeredi <miklos@szeredi.hu>
796
797 * Add PID to fuse_context. Patch by Steven James
798
Miklos Szeredi1eea0322004-09-27 18:50:11 +0000799 * Change file handle type to 'unsigned long' in kernel interface
800
Miklos Szeredid169f312004-09-22 08:48:26 +00008012004-09-22 Miklos Szeredi <miklos@szeredi.hu>
802
803 * A slight API change: fuse_get_context() doesn't need the "fuse"
804 pointer, but the returned context contains it instead. The
805 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +0000806
807 * Fix mounting and umounting FUSE filesystem under another FUSE
808 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +0000809
Miklos Szeredic2309912004-09-21 13:40:38 +00008102004-09-21 Miklos Szeredi <miklos@szeredi.hu>
811
812 * Fix deadlock in case of memory allocation failure. Patch by
813 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +0000814
Miklos Szeredib2cf9562004-09-16 08:42:40 +00008152004-09-16 Miklos Szeredi <miklos@szeredi.hu>
816
817 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +0000818
Miklos Szeredi65afea12004-09-14 07:13:45 +00008192004-09-14 Miklos Szeredi <miklos@szeredi.hu>
820
821 * Check temporary file creation failure in do_getdir(). Bug
822 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000823
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00008242004-09-13 Miklos Szeredi <miklos@szeredi.hu>
825
826 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000827
828 * Make requests non-interruptible so race with FORGET is avoided.
829 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000830
831 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000832
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00008332004-09-09 Miklos Szeredi <miklos@szeredi.hu>
834
835 * Fix bug in case two FORGETs for the same node are executed in
836 the wrong order. Bug spotted and endured for months by Franco
837 Broi, and logfile for solution provided by Terje Oseberg
838
Miklos Szeredi12085102004-09-02 18:13:57 +00008392004-09-01 Miklos Szeredi <miklos@szeredi.hu>
840
841 * Add -D_REENTRANT to the compile flags
842
843 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000844
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00008452004-08-16 Miklos Szeredi <miklos@szeredi.hu>
846
847 * Change release method to be non-interruptible. Fixes bug
848 causing missing release() call when program which has opened files
849 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000850
Miklos Szeredi891b8742004-07-29 09:27:49 +00008512004-07-29 Miklos Szeredi <miklos@szeredi.hu>
852
853 * Add fuse_invalidate() to library API
854
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00008552004-07-26 Miklos Szeredi <miklos@szeredi.hu>
856
857 * Check permissions in setattr if 'default_permissions' flag is
858 set. Bug spotted by Damjan Lango
859
Miklos Szeredid66d3942004-07-24 13:47:44 +00008602004-07-24 Miklos Szeredi <miklos@szeredi.hu>
861
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000862 * 'large_read' mount option removed for 2.6 kernels, since the
863 default (dynamic read size) is better
864
865 * Extend kernel API with file handles. A file handle is returned
866 by open, and passed to read, write, flush, fsync and release.
867 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +0000868
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000869 * Security changes:
870
871 * Change the current directory to the mountpoint before checking
872 the permissions and mount filesystem on "."
873
874 * By default don't modprobe the fuse module for non-root. The old
875 behavior can be restored with the '--enable-auto-modprobe' flag of
876 ./configure
877
878 * By default don't allow shared writable mappings for non-root.
879 The old behavior can be restored with the 'user_mmap=1' module
880 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000881
Miklos Szeredibd7661b2004-07-23 17:16:29 +00008822004-07-23 Miklos Szeredi <miklos@szeredi.hu>
883
884 * Clean up mount option passing to fusermount and to fuse_new()
885 BEWARE: this changes the userspace API slightly, and the command
886 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +0000887
Miklos Szeredi58865372004-07-20 14:22:26 +00008882004-07-20 Miklos Szeredi <miklos@szeredi.hu>
889
890 * Optimize reading under 2.6 kernels by issuing multiple page
891 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +0000892
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00008932004-07-18 Miklos Szeredi <miklos@szeredi.hu>
894
895 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000896
Miklos Szeredi069c9502004-07-16 16:17:02 +00008972004-07-16 Miklos Szeredi <miklos@szeredi.hu>
898
899 * Separate directory entry and inode attribute validity timer
900
901 * New write semaphore to stop page writeback during truncate
902
903 * Fsync now waits for all writes to complete before sending the
904 request
905
906 * Optimization: if a page is completely written by
907 fuse_commit_write(), clear the dirty flag and set the uptodate
908 flag for that page
909
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000910 * Some memory cleanup at exit
911
Miklos Szeredi2529ca22004-07-13 15:36:52 +00009122004-07-13 Miklos Szeredi <miklos@szeredi.hu>
913
914 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000915 disable the "hide if open" behavior of unlink/rename.
916
917 * If temporary buffer allocation fails in raw read, fall back to a
918 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +0000919
Miklos Szeredi73798f92004-07-12 15:55:11 +00009202004-07-12 Miklos Szeredi <miklos@szeredi.hu>
921
922 * Fix bug in do_open() in libfuse: open count was incremented
923 after the reply is sent so it could race with unlink/forget and
924 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +0000925
Miklos Szeredi015fe702004-07-12 11:52:24 +00009262004-07-08 Miklos Szeredi <miklos@szeredi.hu>
927
928 * When performing create or remove operation, refresh the parent's
929 attributes on next revalidate, as i_nlink (and maybe size/time)
930 could be inacurate.
931
932 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
933 pages (2.6 only)
934
935 * Set set_page_dirty address space operation (2.6 only)
936
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009372004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +0000938
939 * Minor fix in read: print debug info even if read size is zero
940
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009412004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +0000942
943 * Fix race between truncate and writepage (fsx-linux now runs
944 without error)
945
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009462004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000947
948 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
949 by Mattias Wadman)
950
951 * Added option for direct read/write (-r)
952
953 * Fix revalidate time setting for newly created inodes
954
Miklos Szerediacb4d362004-07-02 16:20:45 +0000955 * Remove uid==0 check for '-x' option in fusermount (kernel checks
956 this)
957
958 * fuse_main() only installs handlers for signals (out of INT, HUP,
959 TERM, PIPE), for which no handler has yet been installed
960
961 * Add module option 'user_allow_other' which if set to non-zero
962 will allow non root user to specify the 'allow_other' mount option
963 ('-x' option of fusermount)
964
Miklos Szeredi014d7d22004-07-02 21:22:37 +0000965 * Fix deadlock between page writeback completion and truncate
966 (bug found by Valient Gough with the fsx-linux utility)
967
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009682004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000969
970 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +0000971 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
972 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +0000973
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009742004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +0000975
976 * Acquire inode->i_sem before open and release methods to prevent
977 concurrent rename or unlink operations.
978
Miklos Szeredi65cf7c72004-06-30 11:34:56 +0000979 * Make __fuse_read_cmd() read only one command. This allows
980 multiplexing the fuse file descriptor with other event sources
981 using select() or poll() (patch by Jeff Harris)
982
983 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
984
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009852004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +0000986
987 * Fix file offset wrap around at 4G when doing large reads
988
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009892004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000990
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000991 * Fix memory leak in open (Valient Gough)
992
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009932004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000994
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000995 * Add "close after delete" support to libfuse (patch by Valient
996 Gough)
997
998 * Cancel all worker threads before exit in multithreaded mode
999
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010002004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001001
1002 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001003
1004 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001005
1006 * Work with newer libtool (1.5a)
1007
1008 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001009
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010102004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001011
1012 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001013
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010142004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001015
1016 * Fix possible inode leak in userspace in case of unfinished
1017 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001018
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010192004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001020
1021 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001022
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010232004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001024
1025 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001026
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010272004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001028
1029 * Build shared library as well as static (using libtool)
1030
1031 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1032 there has not been a release with the previous minor number, and I
1033 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001034
1035 * Change fuse_main(), so that default behavior is to go into
1036 background if mount is successful. '-f' and '-d' options disable
1037 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1038 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001039
1040 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1041 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001042
1043 * Don't call getdir method from open() only from first readdir().
1044 Open is sometimes just used to store the current directory
1045 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001046
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010472004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001048
1049 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001050
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010512004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001052
1053 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001054
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010552004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001056
1057 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001058
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010592004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001060
1061 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001062
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010632004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001064
1065 * Replaced binary mount data with text options
1066
1067 * Show FUSE specific mount options in /proc/mounts
1068
1069 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1070
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010712004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001072
1073 * Check some limits so userspace won't get too big requests
1074
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010752004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001076
1077 * Kill compile warning
1078
1079 * Upgraded user-mount patch for 2.6.5
1080
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010812004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001082
1083 * Add detection of user-mode-linux to configure
1084
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010852004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001086
1087 * fixed zero size case for getxattr and listxattr
1088
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010892004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001090
1091 * new fusermount flag '-z': lazy unmount, default is not lazy
1092
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001093 * Extended attributes operations added (getxattr, setxattr,
1094 listxattr, removexattr)
1095
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010962004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001097
1098 * If filesystem doesn't define a statfs operation, then an
1099 all-zero default statfs is returned instead of ENOSYS
1100
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011012004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001102
1103 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1104
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011052004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001106
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001107 * Fix for uClinux (Christian Magnusson)
1108
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011092004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001110
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001111 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001112
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001113 * More kernel interface changes:
1114
1115 * Lookup/getattr return cache timeout values
1116
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011172004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001118
1119 * Clean up option parsing in fuse_main()
1120
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001121 * Added fuse_get() function which returns the fuse object created
1122 by fuse_main()
1123
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011242004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001125
Miklos Szeredic40748a2004-02-20 16:38:45 +00001126 * removed old way of mounting (fusermount mountpoint program)
1127
Miklos Szeredib5958612004-02-20 14:10:49 +00001128 * more kernel interface changes:
1129
1130 * added nanosecond precision to file times
1131
Miklos Szeredic40748a2004-02-20 16:38:45 +00001132 * removed interface version from mount data
1133
1134 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1135
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011362004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001137
1138 * statfs library API changed to match other methods. Since this
1139 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1140
Miklos Szeredi76f65782004-02-19 16:55:40 +00001141 * kernel interface changes follow:
1142
1143 * statfs changed to 64 bits, added 'bavail' field
1144
1145 * add generation number to lookup result
1146
1147 * optimized mknod/mkdir/symlink/link (no separate lookup is
1148 needed)
1149
1150 * rdev size increased to 32 bits for mknod
1151
1152 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001153
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011542004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001155
1156 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001157
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011582004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001159
1160 * Added user-mount.2.6.2-rc3.patch
1161
1162 * Add FS_SAFE flag to fuse filesystem
1163
1164 * fusermount should allow (un)mounting for non-root even if not
1165 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001166
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011672004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001168
1169 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001170
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011712004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001172
1173 * Added check for i_size_read/write functions to configure.in
1174 (patch by Valient Gough)
1175
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011762004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001177
1178 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001179
1180 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001181
1182 * Readpage calls flush_dcache_page() after storing data
1183
1184 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001185
1186 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001187
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011882004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001189
1190 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001191
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011922004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001193
1194 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001195
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011962004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001197
1198 * Added -q option for fusermount
1199
1200 * fuse_unmount() now uses -q option of fusermount, so no error is
1201 printed if the cause of the program exit is that the filesystem
1202 has already been unmounted
1203
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001204 * Fix i_nlink correctness after rmdir/unlink
1205
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012062004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001207
Miklos Szeredib1158392004-01-26 14:43:12 +00001208 * Released 1.1-pre2
1209
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012102004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001211
Miklos Szeredi307242f2004-01-26 11:28:44 +00001212 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001213
1214 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001215
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012162004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001217
1218 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001219
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012202004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001221
1222 * Write all pending data before a RELEASE operation
1223
1224 * Suppress 'Bad file descriptor' warning on exit
1225
1226 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001227 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001228
Miklos Szeredib1158392004-01-26 14:43:12 +00001229 * New fusermount option '-l' which enables big reads. Big reads
1230 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001231
1232 * fuse_main() can accept fusermount arguments after a '--'
1233
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012342004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001235
1236 * Support for exporting filesystem over NFS (see README.NFS)
1237
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012382004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001239
1240 * Support non-blocking writepage on 2.6. This makes FUSE behave
1241 much more nicely in low-memory situations
1242
1243 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1244 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001245
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012462004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001247
1248 * Code cleanups
1249
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012502004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001251
1252 * Released 1.1-pre1
1253
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012542004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001255
1256 * Integrated 2.6 kernel support patch by Michael Grigoriev
1257
1258 * Improvements and cleanups for 2.6 kernels
1259
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012602004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001261
Miklos Szeredie5183742005-02-02 11:14:04 +00001262 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001263
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012642003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001265
1266 * Added major+minor version to library API, and minor version to
1267 kernel API
1268
David McNab7a19caf2003-12-13 02:05:46 +000012692003-12-13 David McNab <david@rebirthing.co.nz>
1270
1271 * Implemented fsync support in examples/example.py
1272
1273 * Implemented 'fsync' and 'statfs' methods in python
1274 interface
1275
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012762003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001277
Miklos Szeredie5183742005-02-02 11:14:04 +00001278 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001279
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001280 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001281
David McNab8bf62632003-12-11 22:49:22 +000012822003-12-12 David McNab <david@rebirthing.co.nz>
1283
1284 * Added distutils support to the python module, as per standard
1285 python development practice
1286
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012872003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001288
1289 * Add file locking for mount/unmount (based on patch by Valient
1290 Gough)
1291
12922003-12-11 David McNab <david@rebirthing.co.nz>
1293
1294 * Python filesystem - was broken with python2.3, now fixed:
1295 - changed PyTuple_* calls to PySequence_*, because os.lstat
1296 is no longer returning a pure tuple
1297 - changed PyInt_Check() calls to also call PyLong_Check,
1298 to cover for cases (eg os.lstat) where longs are returned
1299 - Added support for file 'release' handling, which IMO is
1300 essential since this signals to a FS that writes to a file
1301 are complete (and therefore the file can now be disposed of
1302 meaningfully at the python filesystem's discretion)
1303 - Added '__init__' handler to base Fuse class, which allows
1304 your Python class to know the mountpoint and mount args,
1305 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001306
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001307 * General:
1308 - added 'mount.fuse' script (in util/ dir), which is meant to be
1309 symlinked from /sbin, and which allows FUSE filesystems to
1310 be mounted with the 'mount' command, and listed in fstab;
1311 also, mount arguments get passed to your filesystem
1312
1313
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013142003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001315
1316 * Fix kernel version detection (again). Bugreport by Peter Levart
1317
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013182003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001319
1320 * Applied read combining patch by Michael Grigoriev (tested by
1321 Valient Gough and Vincent Wagelaar)
1322
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013232003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001324
1325 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1326 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001327
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013282003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001329
1330 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001331
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013322003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001333
1334 * kernel version detection fix
1335
1336 * fusermount now uses "lazy" umount option
1337
1338 * fusermount can use modprobe with module-init-tools
1339
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013402003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001341
1342 * Integrated caching patch by Michael Grigoriev
1343
Miklos Szeredida4e4862003-09-08 11:14:11 +00001344 * Added "Filesystems" file with descriptions of projects using
1345 FUSE
1346
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001347 * Added patch by Michael Grigoriev to allow compliation of FUSE
1348 kernel module for 2.6 kernels
1349
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013502003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001351
1352 * And another spec-file fix by Achim Settelmeier
1353
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013542003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001355
1356 * Spec-file fix by Achim Settelmeier
1357
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013582003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001359
Miklos Szerediac361172004-11-02 19:14:14 +00001360 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001361
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013622003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001363
1364 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1365
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013662003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001367
1368 * Updated fuse.spec file (Achim Settelmeier)
1369
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013702003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001371
1372 * Version 1.0 released
1373
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013742003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001375
1376 * SuSE compilation fix by Juan-Mariano de Goyeneche
1377
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013782002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001379
1380 * The release() VFS call is now exported to the FUSE interface
1381
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013822002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001383
1384 * 64 bit file offset fixes in the fuse kernel module
1385
1386 * Added function 'fuse_exit()' which can be used to exit the main
1387 loop
1388
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013892002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001390
1391 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1392 an incompatible interface change.
1393
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013942002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001395
1396 * Portablility fix (bug reported by C. Chris Erway)
1397
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013982002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001399
1400 * Use Mark Glines' fd passing method for default operation instead
1401 of old reexec
1402
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014032002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001404
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001405 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1406
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014072002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001408
Miklos Szeredi60c23522002-10-24 09:19:43 +00001409 * fix incompatiblity with Red Hat kernels, with help from Nathan
1410 Thompson-Amato.
1411
Mark Glines65ba2192002-04-18 14:41:48 +000014122002-04-18 Mark Glines <mark@glines.org>
1413
1414 * added an alternative to fuse_mount(), called
1415 fuse_mount_ioslave(), which does not need to reexec the
1416 FUSE program.
1417 * added a small helper util needed by fuse_mount_ioslave().
1418
Mark Glines220635a2002-03-17 07:01:14 +000014192002-03-16 Mark Glines <mark@glines.org>
1420
1421 * use struct fuse_statfs everywhere possible to avoid problems
1422 with the headerfiles changing struct statfs member sizes
1423
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014242002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001425
1426 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1427
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014282002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001429
1430 * RPM support by Achim Settelmeier
1431
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014322002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001433
Miklos Szerediddc862a2002-01-09 13:46:10 +00001434 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001435
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014362002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001437
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001438 * Revaidate all path components not just the last, this means a
1439 very small performance penalty for being more up-to-date.
1440
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014412002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001442
1443 * Update and fix python interface
1444
Mark Glinesd84b39a2002-01-07 16:32:02 +000014452002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001446
Mark Glinesd84b39a2002-01-07 16:32:02 +00001447 * Added statfs() support to kernel, lib, examples, and perl!
1448
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014492001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001450
1451 * Better cross compilation support
1452
1453 * Ported to Compaq IPAQ
1454
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014552001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001456
Miklos Szeredife25def2001-12-20 15:38:05 +00001457 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001458 patch from Matt Ryan)
1459
Miklos Szeredife25def2001-12-20 15:38:05 +00001460 * Added flags to fusermount and to kernel interface to control
1461 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001462
Miklos Szeredife25def2001-12-20 15:38:05 +00001463 * Integrated fuse_set_operations() into fuse_new()
1464
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014652001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001466
1467 * Applied header protection + extern "C" patch by Roland
1468 Bauerschmidt
1469
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014702001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001471
Miklos Szeredie5183742005-02-02 11:14:04 +00001472 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001473
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014742001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001475
1476 * Cleaned up way of mounting simple filesystems.
1477
1478 * fuse_main() helper function added
1479
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014802001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001481
Miklos Szeredife25def2001-12-20 15:38:05 +00001482 * Optimized read/write operations, so that minimal copying of data
1483 is done
1484
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014852001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001486
1487 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001488
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014892001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001490
1491 * Fixed vfsmount reference leak in fuse_follow_link
1492
1493 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1494 userspace is ignored
1495
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014962001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001497
Miklos Szeredife25def2001-12-20 15:38:05 +00001498 * Started ChangeLog