blob: 74eaf6c69c2f55f8f88d18f36cfcbd7848879618 [file] [log] [blame]
Miklos Szerediaf138742005-09-30 08:49:59 +000012005-09-30 Miklos Szeredi <miklos@szeredi.hu>
2
3 * kernel: NFS exporting leaked dentries. Bug found and fixed by
4 Akshat Aranya.
5
Miklos Szeredidb016e02005-09-29 10:06:27 +000062005-09-29 Miklos Szeredi <miklos@szeredi.hu>
7
8 * fusermount: fix error message, when unable to open /dev/fuse.
9 Report by Balázs Pozsár
10
Miklos Szeredi35200932005-09-28 14:50:49 +0000112005-09-28 Miklos Szeredi <miklos@szeredi.hu>
12
13 * UClibc fixes from Christian Magnusson
14
Miklos Szeredi8eddf642005-09-27 08:58:26 +0000152005-09-27 Miklos Szeredi <miklos@szeredi.hu>
16
17 * Added NAME="%k" to util/udev.rules. Fix by Mattias Wadman.
18
Miklos Szerediedec95c2005-09-26 10:22:22 +0000192005-09-26 Miklos Szeredi <miklos@szeredi.hu>
20
Miklos Szeredi39851ac2005-09-26 11:17:50 +000021 * Released 2.4.0-rc1
22
232005-09-26 Miklos Szeredi <miklos@szeredi.hu>
24
Miklos Szerediedec95c2005-09-26 10:22:22 +000025 * fusermount: allow user umount in the case when /etc/mtab is a
26 symlink to /proc/mounts. Reported by Balázs Pozsár.
27
Miklos Szeredi6becf0b2005-09-23 11:25:28 +0000282005-09-23 Miklos Szeredi <miklos@szeredi.hu>
29
Miklos Szeredi8722dd22005-09-23 13:34:44 +000030 * Check for special node ID values in lookup and creation
Miklos Szeredi6becf0b2005-09-23 11:25:28 +000031
Miklos Szeredif45f3c12005-09-22 15:14:27 +0000322005-09-22 Miklos Szeredi <miklos@szeredi.hu>
33
34 * Slight optimization in returning EINVAL error in case of an open
35 with O_DIRECT flag.
36
Miklos Szeredi670d07a2005-09-20 11:36:32 +0000372005-09-20 Miklos Szeredi <miklos@szeredi.hu>
38
39 * Remove '--enable-auto-modprobe' configure flag. Module
40 auto-loading is now handled by the kernel.
41
Miklos Szeredid51fca12005-09-15 12:51:00 +0000422005-09-15 Miklos Szeredi <miklos@szeredi.hu>
43
44 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
45 Help from Jens M. Noedler.
46
Miklos Szeredi7e7530d2005-09-14 15:20:26 +0000472005-09-14 Miklos Szeredi <miklos@szeredi.hu>
48
49 * Add memory cleanup on thread exit
50
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +0000512005-09-13 Miklos Szeredi <miklos@szeredi.hu>
52
53 * Set umask to zero in fusexmp and fusexmp_fh, so that
54 files/directories are created with the requested mode.
55
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +0000562005-09-12 Miklos Szeredi <miklos@szeredi.hu>
57
58 * Don't ignore read error in multithreaded loop
59
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000602005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +000061
Miklos Szeredi2277ecc2005-09-08 15:34:44 +000062 * Released 2.4.0-pre2
63
642005-09-08 Miklos Szeredi <miklos@szeredi.hu>
65
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +000066 * Revert lock and access operations. Postpone these until 2.5.
67
682005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +000069
70 * Fix compile warning on 2.6.13 and later
71
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +000072 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +000073
Miklos Szeredi77ccf652005-08-19 14:40:27 +0000742005-08-19 Miklos Szeredi <miklos@szeredi.hu>
75
76 * lib: always refresh directory contents after rewinddir() to
77 conform to SUS. Bug found by John Muir.
78
Miklos Szeredia1482422005-08-14 23:00:27 +0000792005-08-15 Miklos Szeredi <miklos@szeredi.hu>
80
Miklos Szeredic43f9412005-08-15 15:10:48 +000081 * Released 2.4.0-pre1
82
832005-08-14 Miklos Szeredi <miklos@szeredi.hu>
84
Miklos Szeredia1482422005-08-14 23:00:27 +000085 * lib: cleaned up (or messed up, depending on your POV) the low
86 level library API. Hopefully this is close to the final form.
87
Miklos Szeredicc1b97c2005-08-05 10:35:26 +0000882005-08-05 Miklos Szeredi <miklos@szeredi.hu>
89
90 * fusermount: don't allow empty mountpoint argument, which defeats
91 automatic umounting in fuse_main(). Bugreport by Václav Jůza
92
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000932005-08-03 Miklos Szeredi <miklos@szeredi.hu>
94
95 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
96 option is used (Paul Alfille).
97
Miklos Szeredi6c0209a2005-08-02 13:31:28 +0000982005-08-02 Miklos Szeredi <miklos@szeredi.hu>
99
100 * highlevel-lib: added mount options "attr_timeout" and
101 "entry_timeout". These options control the length of time file
102 attributes and entries (names) are cached. Both default to 1.0
103 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000104
105 * kernel: correctly handle zero timeout for attributes and entries
106
Miklos Szeredi56a61f02005-08-01 10:42:25 +00001072005-08-01 Miklos Szeredi <miklos@szeredi.hu>
108
109 * Added missing symbols to versionscript (Joshua J. Berry)
110
Miklos Szeredie77cc072005-08-01 11:58:51 +0000111 * kernel: implement two flags, open can set: 'direct_io' and
112 'keep_cache'. These correspond exactly to mount options
113 'direct_io' and 'kernel_cache', but allow a per-open setting.
114
115 * Move 'direct_io' and 'kernel_cache' mount option handling to
116 userspace. For both mount options, if the option is given, then
117 the respective open flag is set, otherwise the open flag is left
118 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +0000119
Miklos Szeredi31066bb2005-08-01 14:49:31 +0000120 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000121
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +00001222005-07-28 Miklos Szeredi <miklos@szeredi.hu>
123
124 * kernel: invalidate attributes for read/readdir/readlink
125 operations
126
127 * kernel: detect newer UML kernels
128
Miklos Szeredibfb99462005-07-26 11:07:55 +00001292005-07-26 Miklos Szeredi <miklos@szeredi.hu>
130
131 * Make the installation path of fuse.ko and mount.fuse
132 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
133 environment variables. Requirement and help from Csaba Henk.
134
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +00001352005-07-22 Miklos Szeredi <miklos@szeredi.hu>
136
137 * Fix bug, that causes filesystem requests to hang when unique
138 request counter becomes negative. This happens after
139 2,147,483,648 operations, so most people won't care. Thanks to
140 Franco Broi for the report and testing.
141
Miklos Szeredi9b813af2005-07-21 07:59:37 +00001422005-07-21 Miklos Szeredi <miklos@szeredi.hu>
143
144 * Don't change mtime/ctime/atime to local time on read/write.
145 Bug reported by Ben Grimm
146
147 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
148 Magnusson
149
150 * fusermount: use getopt_long() for option parsing. It allows the
151 use of '--' to stop argument scanning, so fusermount can now
152 operate on directories whose names begin with a '-'. Patch by
153 Adam Connell
154
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00001552005-07-15 Miklos Szeredi <miklos@szeredi.hu>
156
157 * fusermount: add '-v', '--version' and '--help' options
158
159 * add inode based API
160
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00001612005-07-12 Miklos Szeredi <miklos@szeredi.hu>
162
163 * lib: don't block signals in worker threads. Problem noticed by
164 Usarin Heininga
165
Miklos Szeredic902a852005-07-07 12:35:37 +00001662005-07-07 Miklos Szeredi <miklos@szeredi.hu>
167
168 * lib: don't allow both 'allow_other' and 'allow_root' options to
169 be given
170
Miklos Szeredi437d8112005-07-06 09:14:20 +00001712005-07-06 Miklos Szeredi <miklos@szeredi.hu>
172
173 * fusermount: check if mountpoint is empty (only '.' and '..' for
174 directories, and size = 0 for regular files). If "nonempty"
175 option is given, omit this check. This is useful, so users don't
176 accidentally hide data (e.g. from backup programs). Thanks to
177 Frank van Maarseveen for pointing this out.
178
179 * kernel: check if mandatory mount options ('fd', 'rootmode',
180 'user_id', 'group_id') are all given
181
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000182 * lib: simplify 'readdir_ino' handling
183
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000184 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
185
Miklos Szeredibb9f5172005-07-03 18:03:11 +00001862005-07-03 Miklos Szeredi <miklos@szeredi.hu>
187
188 * kernel: clean up 'direct_io' code
189
Miklos Szeredie1bcece2005-06-28 10:37:06 +00001902005-06-28 Miklos Szeredi <miklos@szeredi.hu>
191
192 * Add 'mount.fuse' written by Petr Klima
193
Miklos Szeredi866826d2005-06-28 12:22:57 +0000194 * '/dev/fuse' is created by 'make install' if does not yet exist
195
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00001962005-06-20 Miklos Szeredi <miklos@szeredi.hu>
197
198 * Fix UCLIBC compile error. Patch by Christian Magnusson
199
Miklos Szerediec12fad2005-06-08 10:26:34 +00002002005-06-08 Miklos Szeredi <miklos@szeredi.hu>
201
202 * Enable the auto-loading of the module via access to the
203 corresponding device file. Patch by Takashi Iwai.
204
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000205 * Allow mounting a regular file (over a regular file) for
206 unprivleged users.
207
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000208 * Do not create temporary device file. Require "/dev/fuse" to
209 exist, and be readable/writable by the mounting user.
210
Miklos Szeredi46960ce2005-06-02 09:05:00 +00002112005-06-02 Miklos Szeredi <miklos@szeredi.hu>
212
Miklos Szeredi56478552005-06-02 10:29:00 +0000213 * Released 2.3.0
214
2152005-06-02 Miklos Szeredi <miklos@szeredi.hu>
216
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000217 * Fix serious information leak: if the filesystem returns a short
218 byte count to a read request, and there are non-zero number of
219 pages which are not filled at all, these pages will not be zeroed.
220 Hence the user can read out previous memory contents. Found by
221 Sven Tantau.
222
Miklos Szeredi33be22d2005-05-27 09:12:43 +00002232005-05-27 Miklos Szeredi <miklos@szeredi.hu>
224
225 * Add "readdir_ino" mount option, which tries to fill in the d_ino
226 field in struct dirent. This mount option is ignored if "use_ino"
227 is used. It helps some programs (e.g. 'pwd' used over NFS from a
228 non-Linux OS). Patch by David Shaw.
229
Miklos Szeredif94e0102005-05-12 14:56:34 +00002302005-05-12 Miklos Szeredi <miklos@szeredi.hu>
231
Miklos Szeredieb009c42005-05-12 15:01:17 +0000232 * Released 2.3-rc1
233
2342005-05-12 Miklos Szeredi <miklos@szeredi.hu>
235
Miklos Szeredif94e0102005-05-12 14:56:34 +0000236 * File save in krusader and other editors doesn't work with sshfs,
237 because open() is interrupted by a periodic signal, and open()
238 restarts forever, without any progress. This could just be fixed
239 in open(), but the problem is more generic: if signals are
240 received more often than the filesystem can get the request to
241 userspace, it will never finish. This is probably only a
242 theoretical problem, nevertheless I'm removing the possibility to
243 interrupt requests with anything other than SIGKILL, even before
244 being sent to userspace. Bugreport by Eduard Czimbalmos.
245
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00002462005-05-09 Miklos Szeredi <miklos@szeredi.hu>
247
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000248 * libfuse: add "tree_lock" rwlock, that is locked for write in
249 rename, unlink and rmdir, and locked for read in all other
250 operations. This should fix the rename/release race reported by
251 Valient Gough and others. The solution is very coarse, a finer
252 grained locking scheme could be implemented, but it would be much
253 more complex. Let's see whether this is good enough.
254
2552005-05-09 Miklos Szeredi <miklos@szeredi.hu>
256
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000257 * Released 2.3-pre7
258
Miklos Szeredi38009022005-05-08 19:47:22 +00002592005-05-08 Miklos Szeredi <miklos@szeredi.hu>
260
261 * Better fix for out of order FORGET messages. Now the
262 LOOKUP/FORGET messages are balanced exactly (one FORGET can
263 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000264 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000265 compatible.
266
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00002672005-05-06 Miklos Szeredi <miklos@szeredi.hu>
268
269 * Fix abort for out of order FORGET messages. Again. Spotted by
270 Franco Broi again. Sorry :)
271
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00002722005-04-29 Miklos Szeredi <miklos@szeredi.hu>
273
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000274 * Released 2.3-pre6
275
2762005-04-29 Miklos Szeredi <miklos@szeredi.hu>
277
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000278 * Make fusermount work with fuse kernel modules not yet supporting
279 the "group_id" option (added for the purpose of stricter
280 permission checking).
281
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00002822005-04-28 Miklos Szeredi <miklos@szeredi.hu>
283
284 * Check for hard-linked directories in lookup. This could cause
285 problems in the VFS, which assumes that such objects never exist.
286
287 * Make checking of permission for other users more strict. Now
288 the same privilege is required for the mount owner as for ptrace
289 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000290
Miklos Szeredi3efcb562005-04-23 13:34:29 +00002912005-04-23 Miklos Szeredi <miklos@szeredi.hu>
292
293 * Released 2.3-pre5
294
Miklos Szeredid001bf92005-04-22 07:54:11 +00002952005-04-22 Miklos Szeredi <miklos@szeredi.hu>
296
297 * Add -msoft-float to kernel module compile flags for 2.4.X. This
298 is needed on certain architectures. Report from Chris Kirby
299
300 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
301 Reported by David Shaw
302
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000303 * Remove "allow_root" option from kernel module, and implement
304 it's functionality in the library
305
306 * Fix Oops caused by premature release of fuse_conn. Clean up
307 related code, to be more readable
308
Miklos Szeredif9137452005-04-23 10:59:44 +0000309 * Sendfile should not use page cache if "direct_io" mount option
310 is given
311
Miklos Szeredib7640d22005-04-08 15:15:28 +00003122005-04-08 Miklos Szeredi <miklos@szeredi.hu>
313
314 * Fix Oops in case of nfs export. Spotted by David Shaw
315
Miklos Szeredi89814a12005-04-08 16:39:09 +0000316 * Fix another Oops in case of write over nfs with direct_io turned
317 on. Again spotted by David Shaw
318
Miklos Szerediab974562005-04-07 15:40:21 +00003192005-04-07 Miklos Szeredi <miklos@szeredi.hu>
320
Miklos Szeredi432d6182005-04-07 15:56:13 +0000321 * Released 2.3-pre4
322
3232005-04-07 Miklos Szeredi <miklos@szeredi.hu>
324
Miklos Szerediab974562005-04-07 15:40:21 +0000325 * lib: finalized new readdir() interface, which now supersedes the
326 getdir() method.
327
Miklos Szeredi30e093a2005-04-03 17:44:54 +00003282005-04-03 Miklos Szeredi <miklos@szeredi.hu>
329
330 * Released 2.3-pre3
331
3322005-04-03 Miklos Szeredi <miklos@szeredi.hu>
333
334 * Implement backward compatibility with version 5 kernel ABI
335
Miklos Szeredi18fce982005-04-01 21:07:35 +00003362005-04-01 Miklos Szeredi <miklos@szeredi.hu>
337
338 * Released 2.3-pre2
339
3402005-04-01 Miklos Szeredi <miklos@szeredi.hu>
341
342 * kernel: fix dirent offset handling
343
344 * lib: add readdir and releasedir methods
345
346 * lib: use fh field of fuse_file_info in opendir, readdir,
347 releasedir and fsyncdir methods
348
349 * lib: check kernel API version and bail out of it's old. This
350 will be properly fixed in the next release
351
3522005-03-31 Miklos Szeredi <miklos@szeredi.hu>
353
354 * Released 2.3-pre1
355
Miklos Szeredieab72ef2005-03-31 19:59:12 +00003562005-03-31 Miklos Szeredi <miklos@szeredi.hu>
357
358 * kernel API: add padding to structures, so 64bit and 32bit
359 compiler will return the same size
360
361 * kernel API: add offset field to fuse_dirent. This will allow
362 more sophisticated readdir interface for userspace
363
364 * kernel API: change major number to 6
365
366 * kernel: fix warnings on 64bit archs
367
368 * kernel: in case of API version mismatch, return ECONNREFUSED
369
Miklos Szeredi407e6a72005-03-25 12:19:43 +00003702005-03-24 Miklos Szeredi <miklos@szeredi.hu>
371
372 * kernel: trivial cleanups
373
Miklos Szeredi4283ee72005-03-21 12:09:04 +00003742005-03-21 Miklos Szeredi <miklos@szeredi.hu>
375
376 * Add fsyncdir() operation
377
Miklos Szeredid17da462005-03-21 11:47:04 +00003782005-03-19 Miklos Szeredi <miklos@szeredi.hu>
379
380 * kernel: add locking to background list (fixes previous fix)
381
3822005-03-18 Miklos Szeredi <miklos@szeredi.hu>
383
384 * kernel: fix bug which could cause leave busy inodes after
385 unmount, and Oops.
386
3872005-03-08 Miklos Szeredi <miklos@szeredi.hu>
388
389 * examples: add -lpthread to link flags to work around valgrind
390 quirk
391
392 * lib: don't exit threads, so cancelation doesn't cause segfault
393
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00003942005-03-04 Miklos Szeredi <miklos@szeredi.hu>
395
396 * kernel: fix nasty bug which could cause an Oops under certain
397 situations. Found by Magnus Johansson
398
Miklos Szeredif43f0632005-02-28 11:46:56 +00003992005-02-28 Miklos Szeredi <miklos@szeredi.hu>
400
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000401 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000402 permission checking in getdir() is too late. Thanks to Usarin
403 Heininga for pointing out this deficiency
404
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000405 * libfuse: added init() and destroy() methods to fuse_operations
406
Miklos Szeredif43f0632005-02-28 11:46:56 +0000407 * kernel: llseek() method for files and directories made explicit
408
409 * kernel: fixed inode leak in NFS export in case of nodeid
410 wrapping
411
Miklos Szeredied3c97c2005-02-15 17:04:50 +00004122005-02-15 Miklos Szeredi <miklos@szeredi.hu>
413
414 * libfuse: clean up some unitialized memory found with valgrind
415
Miklos Szeredi47c52982005-02-23 09:27:38 +0000416 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
417 explicitly linked libpthread for applications
418
Miklos Szeredia7169412005-02-10 07:35:05 +00004192005-02-10 Miklos Szeredi <miklos@szeredi.hu>
420
421 * fusermount: set umask, otherwise /etc/mtab will have
422 unpredictable permission. Spotted by Jindrich Kolorenc
423
424 * fusermount: set owner and group of /etc/mtab to original values
425 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000426
427 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000428
Miklos Szeredib92d9782005-02-07 16:10:49 +00004292005-02-07 Miklos Szeredi <miklos@szeredi.hu>
430
431 * Cleaned up directory reading (temporary file is not used)
432
Miklos Szerediff30a6c2005-02-02 10:53:59 +00004332005-02-02 Miklos Szeredi <miklos@szeredi.hu>
434
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000435 * Released 2.2
436
4372005-02-02 Miklos Szeredi <miklos@szeredi.hu>
438
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000439 * Fix possible race when operation is interrupted
440
Miklos Szeredi7a983952005-01-28 09:58:19 +00004412005-01-28 Miklos Szeredi <miklos@szeredi.hu>
442
Miklos Szeredie5183742005-02-02 11:14:04 +0000443 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000444
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00004452005-01-26 Miklos Szeredi <miklos@szeredi.hu>
446
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000447 * Released 2.2-pre6
448
4492005-01-26 Miklos Szeredi <miklos@szeredi.hu>
450
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000451 * Fix bug in link() operation which caused the wrong path to be
452 passed as the first argument. Found by Anton Altaparmakov
453
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00004542005-01-21 Miklos Szeredi <miklos@szeredi.hu>
455
456 * LIB: fix double reply in readdir operation
457
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000458 * fusermount: fix uid checking bug. Patch by Adam Connell
459
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000460 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000461 Patch by Keshava Gowda
462
Miklos Szeredi64074142005-01-20 08:48:11 +00004632005-01-20 Miklos Szeredi <miklos@szeredi.hu>
464
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000465 * KERNEL: provide correct llseek semantics for fuse device (fixes
466 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
467
4682005-01-20 Miklos Szeredi <miklos@szeredi.hu>
469
Miklos Szeredi64074142005-01-20 08:48:11 +0000470 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
471
Miklos Szeredi1adb2272005-01-18 21:19:58 +00004722005-01-18 Miklos Szeredi <miklos@szeredi.hu>
473
474 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
475 and RELEASEDIR. This ends the ugly hack of passing a file
476 descriptor to the kernel, and actually makes the code simpler.
477
Miklos Szeredi7db35c02005-01-17 09:46:28 +00004782005-01-17 Miklos Szeredi <miklos@szeredi.hu>
479
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000480 * Released 2.2-pre4
481
4822005-01-17 Miklos Szeredi <miklos@szeredi.hu>
483
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000484 * fusermount: remove capability setting, which was the cause of
485 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000486 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000487
Miklos Szeredidbe0f652005-01-15 14:32:56 +00004882005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000489
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000490 * fix compilation on 2.4 kernels (reported by Valient Gough)
491
492 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000493
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000494 * fusermount: improve parsing of /etc/fuse.conf
495
4962005-01-13 Miklos Szeredi <miklos@szeredi.hu>
497
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000498 * Remove 'mount_max' and 'user_allow_other' module options. These
499 are now checked by fusermount, and can be set in /etc/fuse.conf
500
501 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
502
Miklos Szeredi81394522005-01-11 14:24:18 +00005032005-01-11 Miklos Szeredi <miklos@szeredi.hu>
504
505 * KERNEL: fix possible inode allocation problem, where
506 sizeof(struct inode) is not aligned (found by Mike Waychison)
507
508 * KERNEL: use new follow_link/put_link methods
509
510 * KERNEL: cosmetic fixes
511
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00005122005-01-10 Miklos Szeredi <miklos@szeredi.hu>
513
514 * Released 2.2-pre3
515
5162005-01-10 Miklos Szeredi <miklos@szeredi.hu>
517
518 * Add missing code that was accidently left out
519
Miklos Szeredi8c7da232005-01-09 12:27:41 +00005202005-01-09 Miklos Szeredi <miklos@szeredi.hu>
521
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000522 * Released 2.2-pre2
523
5242005-01-09 Miklos Szeredi <miklos@szeredi.hu>
525
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000526 * Change "uid" mount option to "user_id" to avoid confusion with a
527 mount option "uid" commonly used by many filesystems
528
5292005-01-09 Miklos Szeredi <miklos@szeredi.hu>
530
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000531 * Released 2.2-pre1
532
5332005-01-09 Miklos Szeredi <miklos@szeredi.hu>
534
535 * If FUSE is configured in the kernel, don't build it by default
536
Miklos Szeredi2a927272005-01-07 11:14:15 +00005372005-01-07 Miklos Szeredi <miklos@szeredi.hu>
538
539 * Compile fix by Christian Magnusson
540
Miklos Szeredib6220192005-01-05 16:19:10 +00005412005-01-05 Miklos Szeredi <miklos@szeredi.hu>
542
543 * Fix compilation for 2.6.{0-5} kernels
544
Miklos Szeredi0f62d722005-01-04 12:45:54 +00005452005-01-04 Miklos Szeredi <miklos@szeredi.hu>
546
547 * KERNEL: if request is interrupted, still keep reference to used
548 inode(s) and file, so that FORGET and RELEASE are not sent until
549 userspace finishes the request.
550
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000551 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
552 request with the same information, which is more flexible,
553 simpler, works on embedded systems.
554
Miklos Szeredi0f62d722005-01-04 12:45:54 +00005552004-12-16 Miklos Szeredi <miklos@szeredi.hu>
556
557 * KERNEL ABI: update interface to make it independent of type
558 sizes. This will help on 64 bit architectures which can run
559 legacy 32 bit applications.
560
561 * KERNEL ABI: add "len" field to request headers. This will allow
562 sending/receiving requests in multiple chunks.
563
564 * KERNEL: handle file type change more intelligently
565
566 * LIB: "-o debug" option should disable backgrounding (fix by
567 Fabien Reygrobellet)
568
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00005692004-12-13 Miklos Szeredi <miklos@szeredi.hu>
570
571 * KERNEL: invalidate dentry/attributes if interrupted request
572 could leave filesystem in an unknown state.
573
Miklos Szeredie56818b2004-12-12 11:45:24 +00005742004-12-12 Miklos Szeredi <miklos@szeredi.hu>
575
576 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
577 These will cause some regressions, but stability is considered
578 more important. If any of these features turns out to be
579 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000580
Miklos Szeredie56818b2004-12-12 11:45:24 +0000581 * Make all requests interruptible (only with SIGKILL currently).
582 This can be used to break any deadlock produced by the userspace
583 filesystem accessing it's own exported files. The RELEASE request
584 is special, because if it's interrupted before sending it to
585 userspace it is still sent, but the reply is not awaited.
586
587 * If request is interrupted before being sent to userspace, and if
588 it hasn't yet got any side effects, it is always restarted,
589 regardless of the SA_RESTART flag. This makes these interruptions
590 transparent to the process.
591
592 * Remove shared-writable mmap support, which was prone to an
593 out-of-memory deadlock situation
594
595 * Remove INVALIDATE userspace initiated request
596
597 * Make readpages() synchronous. Asynchronous requests are
598 deadlock prone, since they cannot be interrupted.
599
600 * Add readv/writev support to fuse device operations
601
602 * Remove some printks, which userspace FS can use for a DoS
603 against syslog
604
605 * Remove 'large_read' mount option from 2.6 in kernel, check it in
606 fusermount instead
607
608 * LIB: improve compatibility with a fuse.h header installed in
609 ${prefix}/include which in turn includes the real header.
610
611 * LIB: improve compatibility by defining fuse_main() (which is now
612 not used), so old configure scripts find it.
613
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00006142004-12-10 Miklos Szeredi <miklos@szeredi.hu>
615
616 * When mounting on a subdirectory of / don't duplicate slashes at
617 the beggining of path (spotted by David Shaw)
618
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00006192004-12-09 Miklos Szeredi <miklos@szeredi.hu>
620
621 * Fix bug causing garbage in mount options (spotted by David Shaw)
622
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00006232004-12-07 Miklos Szeredi <miklos@szeredi.hu>
624
625 * Add 'writepage' flag to 'fuse_file_info'.
626
627 * More comments in fuse.h
628
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000629 * Get rid of double underscores
630
Miklos Szeredi799993c2004-12-04 21:20:05 +00006312004-12-04 Miklos Szeredi <miklos@szeredi.hu>
632
633 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
634
635 * helper.c: add -ho option, which only displays the options not
636 the usage header. This can be used by filesystems which have
637 their own options.
638
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00006392004-12-03 Miklos Szeredi <miklos@szeredi.hu>
640
641 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
642 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
643 including the fuse header
644
645 * Add binary compatibility to 2.1 version of library with symbol
646 versioning
647
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00006482004-12-03 Miklos Szeredi <miklos@szeredi.hu>
649
650 * Released 2.1
651
Miklos Szeredi039322d2004-12-01 18:39:12 +00006522004-12-01 Miklos Szeredi <miklos@szeredi.hu>
653
654 * kernel: clean up writing functions
655
656 * kernel: no allocation on write in direct_io mode
657
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000658 * move linux/fuse.h to fuse_kernel.h
659
Miklos Szeredi83a07442004-11-30 18:25:20 +00006602004-11-30 Miklos Szeredi <miklos@szeredi.hu>
661
662 * kernel: clean up reading functions
663
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00006642004-11-29 Miklos Szeredi <miklos@szeredi.hu>
665
666 * kernel: make readpage() uninterruptible
667
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000668 * kernel: check readonly filesystem flag in fuse_permission
669
670 * lib: don't die if version file not found and new style device
671 exists
672
673 * lib: add '-r' option, which is short for '-o ro'
674
675 * fusermount: simplify device opening
676
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000677 * kernel: when direct_io is turend on, copy data directly to
678 destination without itermediate buffer. More efficient and safer,
679 since no allocation is done.
680
681 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000682
683 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000684
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00006852004-11-26 Miklos Szeredi <miklos@szeredi.hu>
686
687 * libfuse API change: open, read, write, flush, fsync and release
688 are passed a 'struct fuse_file_info' pointer containing the open
689 flags (open and release), and the file handle. Verion changed to
690 3.0.
691
Miklos Szeredia25d4c22004-11-23 22:32:16 +00006922004-11-23 Miklos Szeredi <miklos@szeredi.hu>
693
694 * More cleanups in the kernel
695
696 * The 10,229 charater device number has been assigned for FUSE
697
698 * Version file checking fix (reported by Christian Magnusson)
699
700 * fusermount: opening the fuse device now doesn't need /sys.
701
702 * Optimize reading by controlling the maximum readahead based on
703 the 'max_read' mount option
704
705 * fixes for UCLIBC (Christian Magnusson)
706
Miklos Szeredi13ed4822004-11-20 11:12:21 +00007072004-11-19 Miklos Szeredi <miklos@szeredi.hu>
708
709 * Cleaned up kernel in preparation for merge into mainline:
710
711 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
712
713 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
714
715 * __user annotations for sparse
716
717 * allocate individual pages instead of kmalloc in fuse_readdir,
718 fuse_read and fuse_write.
719
720 * Fix NFS export in case "use_ino" mount option is given
721
Miklos Szeredif3845c42004-11-20 11:18:34 +0000722 * Make libfuse and fusermount compatible with future versions
723
724 * fusermount: properly add mount options to /etc/mtab
725
7262004-11-15 Miklos Szeredi <miklos@szeredi.hu>
727
728 * fusermount: do not resolve last component of mountpoint on if it
729 is '.' or '..'. This new path resolvation is now done on mount as
730 well as unmount. This enables relative paths to work on unmount.
731
732 * fusermount: parse common mount options like "ro", "rw", etc...
733
734 * Allow module params to be changed through sysfs
735
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00007362004-11-14 Miklos Szeredi <miklos@szeredi.hu>
737
738 * Released 2.1-pre1
739
7402004-11-14 Miklos Szeredi <miklos@szeredi.hu>
741
742 * Fix bug in fuse_readpages() causing Oops in certain situations.
743 Bug found by Vincenzo Ciancia.
744
745 * Fix compilation with kernels versions > 2.6.9.
746
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00007472004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000748
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000749 * Check kernel interface version in fusermount to prevent
750 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000751
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000752 * No need to allocate fuse_conn until actual mount happens
753
754 * Fix potential race between umount and fuse_invalidate
755
756 * Check superblock of proc file in addition to inode number
757
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000758 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000759
Miklos Szeredi51ec1032004-11-10 11:52:26 +00007602004-11-10 Miklos Szeredi <miklos@szeredi.hu>
761
762 * Separate configure for the kernel directory
763
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000764 * Don't allow write to return more than 'count'
765
766 * Extend kernel interface for future use
767
Miklos Szeredi51ec1032004-11-10 11:52:26 +00007682004-11-09 Miklos Szeredi <miklos@szeredi.hu>
769
770 * Fix 'makeconf.sh' to use autoreconf if available
771
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00007722004-11-08 Miklos Szeredi <miklos@szeredi.hu>
773
Miklos Szeredid507c732004-11-08 17:32:25 +0000774 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
775 compatibility with earlier versions. To compile earier versions
776 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
777 Do not use the "use_ino" mount flag with filesystems compiled with
778 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000779
780 * Add pkg-config support. To compile a FUSE based filesystem you
781 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
782 or similar. Note, that the PKG_CONFIG_PATH environment variable
783 usually needs to be set to "/usr/local/lib/pkgconfig".
784
785 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000786
Miklos Szeredia13d9002004-11-02 17:32:03 +00007872004-11-02 Miklos Szeredi <miklos@szeredi.hu>
788
789 * Added "use_ino" mount option. This enables the filesystems to
790 set the st_ino field on files
791
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00007922004-11-01 Miklos Szeredi <miklos@szeredi.hu>
793
794 * Fix compile problems with ancient (<=2.4.18) kernels (reported
795 by Jeremy Smith)
796
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000797 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
798
799 * Clear the 'exited' flag when mail loop is finished
800
Miklos Szeredie989f0d2004-10-28 20:24:58 +00008012004-10-28 Miklos Szeredi <miklos@szeredi.hu>
802
803 * Make xattr functions work under 2.6 (bug found by Vincenzo
804 Ciancia)
805
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00008062004-10-26 Miklos Szeredi <miklos@szeredi.hu>
807
808 * Reset request in fuse_flush() (bugreport by David Shaw)
809
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00008102004-10-21 Miklos Szeredi <miklos@szeredi.hu>
811
Miklos Szeredi0e70aa72004-10-21 16:24:29 +0000812 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000813 error code
814
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000815 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000816 make it easier to implement a custom event loop.
817
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000818 * Use daemon() call to background the filesystem after mounting.
819 This function closes the standard input, output and error and
820 changes the current working directory to "/".
821
Miklos Szeredi127d49b2004-10-14 13:33:39 +00008222004-10-14 Miklos Szeredi <miklos@szeredi.hu>
823
824 * Released 1.9
825
Miklos Szeredid45baf42004-10-10 07:56:12 +00008262004-10-09 Miklos Szeredi <miklos@szeredi.hu>
827
828 * Don't allow fuse_flush() to be interrupted (bug found by David
829 Shaw)
830
Miklos Szeredi1f18db52004-09-27 06:54:49 +00008312004-09-27 Miklos Szeredi <miklos@szeredi.hu>
832
833 * Add PID to fuse_context. Patch by Steven James
834
Miklos Szeredi1eea0322004-09-27 18:50:11 +0000835 * Change file handle type to 'unsigned long' in kernel interface
836
Miklos Szeredid169f312004-09-22 08:48:26 +00008372004-09-22 Miklos Szeredi <miklos@szeredi.hu>
838
839 * A slight API change: fuse_get_context() doesn't need the "fuse"
840 pointer, but the returned context contains it instead. The
841 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +0000842
843 * Fix mounting and umounting FUSE filesystem under another FUSE
844 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +0000845
Miklos Szeredic2309912004-09-21 13:40:38 +00008462004-09-21 Miklos Szeredi <miklos@szeredi.hu>
847
848 * Fix deadlock in case of memory allocation failure. Patch by
849 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +0000850
Miklos Szeredib2cf9562004-09-16 08:42:40 +00008512004-09-16 Miklos Szeredi <miklos@szeredi.hu>
852
853 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +0000854
Miklos Szeredi65afea12004-09-14 07:13:45 +00008552004-09-14 Miklos Szeredi <miklos@szeredi.hu>
856
857 * Check temporary file creation failure in do_getdir(). Bug
858 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000859
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00008602004-09-13 Miklos Szeredi <miklos@szeredi.hu>
861
862 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000863
864 * Make requests non-interruptible so race with FORGET is avoided.
865 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000866
867 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000868
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00008692004-09-09 Miklos Szeredi <miklos@szeredi.hu>
870
871 * Fix bug in case two FORGETs for the same node are executed in
872 the wrong order. Bug spotted and endured for months by Franco
873 Broi, and logfile for solution provided by Terje Oseberg
874
Miklos Szeredi12085102004-09-02 18:13:57 +00008752004-09-01 Miklos Szeredi <miklos@szeredi.hu>
876
877 * Add -D_REENTRANT to the compile flags
878
879 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000880
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00008812004-08-16 Miklos Szeredi <miklos@szeredi.hu>
882
883 * Change release method to be non-interruptible. Fixes bug
884 causing missing release() call when program which has opened files
885 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000886
Miklos Szeredi891b8742004-07-29 09:27:49 +00008872004-07-29 Miklos Szeredi <miklos@szeredi.hu>
888
889 * Add fuse_invalidate() to library API
890
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00008912004-07-26 Miklos Szeredi <miklos@szeredi.hu>
892
893 * Check permissions in setattr if 'default_permissions' flag is
894 set. Bug spotted by Damjan Lango
895
Miklos Szeredid66d3942004-07-24 13:47:44 +00008962004-07-24 Miklos Szeredi <miklos@szeredi.hu>
897
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000898 * 'large_read' mount option removed for 2.6 kernels, since the
899 default (dynamic read size) is better
900
901 * Extend kernel API with file handles. A file handle is returned
902 by open, and passed to read, write, flush, fsync and release.
903 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +0000904
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000905 * Security changes:
906
907 * Change the current directory to the mountpoint before checking
908 the permissions and mount filesystem on "."
909
910 * By default don't modprobe the fuse module for non-root. The old
911 behavior can be restored with the '--enable-auto-modprobe' flag of
912 ./configure
913
914 * By default don't allow shared writable mappings for non-root.
915 The old behavior can be restored with the 'user_mmap=1' module
916 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000917
Miklos Szeredibd7661b2004-07-23 17:16:29 +00009182004-07-23 Miklos Szeredi <miklos@szeredi.hu>
919
920 * Clean up mount option passing to fusermount and to fuse_new()
921 BEWARE: this changes the userspace API slightly, and the command
922 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +0000923
Miklos Szeredi58865372004-07-20 14:22:26 +00009242004-07-20 Miklos Szeredi <miklos@szeredi.hu>
925
926 * Optimize reading under 2.6 kernels by issuing multiple page
927 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +0000928
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00009292004-07-18 Miklos Szeredi <miklos@szeredi.hu>
930
931 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000932
Miklos Szeredi069c9502004-07-16 16:17:02 +00009332004-07-16 Miklos Szeredi <miklos@szeredi.hu>
934
935 * Separate directory entry and inode attribute validity timer
936
937 * New write semaphore to stop page writeback during truncate
938
939 * Fsync now waits for all writes to complete before sending the
940 request
941
942 * Optimization: if a page is completely written by
943 fuse_commit_write(), clear the dirty flag and set the uptodate
944 flag for that page
945
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000946 * Some memory cleanup at exit
947
Miklos Szeredi2529ca22004-07-13 15:36:52 +00009482004-07-13 Miklos Szeredi <miklos@szeredi.hu>
949
950 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000951 disable the "hide if open" behavior of unlink/rename.
952
953 * If temporary buffer allocation fails in raw read, fall back to a
954 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +0000955
Miklos Szeredi73798f92004-07-12 15:55:11 +00009562004-07-12 Miklos Szeredi <miklos@szeredi.hu>
957
958 * Fix bug in do_open() in libfuse: open count was incremented
959 after the reply is sent so it could race with unlink/forget and
960 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +0000961
Miklos Szeredi015fe702004-07-12 11:52:24 +00009622004-07-08 Miklos Szeredi <miklos@szeredi.hu>
963
964 * When performing create or remove operation, refresh the parent's
965 attributes on next revalidate, as i_nlink (and maybe size/time)
966 could be inacurate.
967
968 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
969 pages (2.6 only)
970
971 * Set set_page_dirty address space operation (2.6 only)
972
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009732004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +0000974
975 * Minor fix in read: print debug info even if read size is zero
976
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009772004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +0000978
979 * Fix race between truncate and writepage (fsx-linux now runs
980 without error)
981
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009822004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000983
984 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
985 by Mattias Wadman)
986
987 * Added option for direct read/write (-r)
988
989 * Fix revalidate time setting for newly created inodes
990
Miklos Szerediacb4d362004-07-02 16:20:45 +0000991 * Remove uid==0 check for '-x' option in fusermount (kernel checks
992 this)
993
994 * fuse_main() only installs handlers for signals (out of INT, HUP,
995 TERM, PIPE), for which no handler has yet been installed
996
997 * Add module option 'user_allow_other' which if set to non-zero
998 will allow non root user to specify the 'allow_other' mount option
999 ('-x' option of fusermount)
1000
Miklos Szeredi014d7d22004-07-02 21:22:37 +00001001 * Fix deadlock between page writeback completion and truncate
1002 (bug found by Valient Gough with the fsx-linux utility)
1003
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010042004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001005
1006 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +00001007 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
1008 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +00001009
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010102004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +00001011
1012 * Acquire inode->i_sem before open and release methods to prevent
1013 concurrent rename or unlink operations.
1014
Miklos Szeredi65cf7c72004-06-30 11:34:56 +00001015 * Make __fuse_read_cmd() read only one command. This allows
1016 multiplexing the fuse file descriptor with other event sources
1017 using select() or poll() (patch by Jeff Harris)
1018
1019 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
1020
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010212004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +00001022
1023 * Fix file offset wrap around at 4G when doing large reads
1024
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010252004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001026
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001027 * Fix memory leak in open (Valient Gough)
1028
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010292004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001030
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001031 * Add "close after delete" support to libfuse (patch by Valient
1032 Gough)
1033
1034 * Cancel all worker threads before exit in multithreaded mode
1035
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010362004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001037
1038 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001039
1040 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001041
1042 * Work with newer libtool (1.5a)
1043
1044 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001045
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010462004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001047
1048 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001049
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010502004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001051
1052 * Fix possible inode leak in userspace in case of unfinished
1053 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001054
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010552004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001056
1057 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001058
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010592004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001060
1061 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001062
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010632004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001064
1065 * Build shared library as well as static (using libtool)
1066
1067 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1068 there has not been a release with the previous minor number, and I
1069 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001070
1071 * Change fuse_main(), so that default behavior is to go into
1072 background if mount is successful. '-f' and '-d' options disable
1073 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1074 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001075
1076 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1077 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001078
1079 * Don't call getdir method from open() only from first readdir().
1080 Open is sometimes just used to store the current directory
1081 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001082
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010832004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001084
1085 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001086
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010872004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001088
1089 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001090
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010912004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001092
1093 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001094
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010952004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001096
1097 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001098
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010992004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001100
1101 * Replaced binary mount data with text options
1102
1103 * Show FUSE specific mount options in /proc/mounts
1104
1105 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1106
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011072004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001108
1109 * Check some limits so userspace won't get too big requests
1110
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011112004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001112
1113 * Kill compile warning
1114
1115 * Upgraded user-mount patch for 2.6.5
1116
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011172004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001118
1119 * Add detection of user-mode-linux to configure
1120
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011212004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001122
1123 * fixed zero size case for getxattr and listxattr
1124
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011252004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001126
1127 * new fusermount flag '-z': lazy unmount, default is not lazy
1128
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001129 * Extended attributes operations added (getxattr, setxattr,
1130 listxattr, removexattr)
1131
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011322004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001133
1134 * If filesystem doesn't define a statfs operation, then an
1135 all-zero default statfs is returned instead of ENOSYS
1136
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011372004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001138
1139 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1140
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011412004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001142
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001143 * Fix for uClinux (Christian Magnusson)
1144
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011452004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001146
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001147 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001148
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001149 * More kernel interface changes:
1150
1151 * Lookup/getattr return cache timeout values
1152
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011532004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001154
1155 * Clean up option parsing in fuse_main()
1156
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001157 * Added fuse_get() function which returns the fuse object created
1158 by fuse_main()
1159
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011602004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001161
Miklos Szeredic40748a2004-02-20 16:38:45 +00001162 * removed old way of mounting (fusermount mountpoint program)
1163
Miklos Szeredib5958612004-02-20 14:10:49 +00001164 * more kernel interface changes:
1165
1166 * added nanosecond precision to file times
1167
Miklos Szeredic40748a2004-02-20 16:38:45 +00001168 * removed interface version from mount data
1169
1170 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1171
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011722004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001173
1174 * statfs library API changed to match other methods. Since this
1175 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1176
Miklos Szeredi76f65782004-02-19 16:55:40 +00001177 * kernel interface changes follow:
1178
1179 * statfs changed to 64 bits, added 'bavail' field
1180
1181 * add generation number to lookup result
1182
1183 * optimized mknod/mkdir/symlink/link (no separate lookup is
1184 needed)
1185
1186 * rdev size increased to 32 bits for mknod
1187
1188 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001189
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011902004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001191
1192 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001193
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011942004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001195
1196 * Added user-mount.2.6.2-rc3.patch
1197
1198 * Add FS_SAFE flag to fuse filesystem
1199
1200 * fusermount should allow (un)mounting for non-root even if not
1201 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001202
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012032004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001204
1205 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001206
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012072004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001208
1209 * Added check for i_size_read/write functions to configure.in
1210 (patch by Valient Gough)
1211
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012122004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001213
1214 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001215
1216 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001217
1218 * Readpage calls flush_dcache_page() after storing data
1219
1220 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001221
1222 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001223
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012242004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001225
1226 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001227
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012282004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001229
1230 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001231
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012322004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001233
1234 * Added -q option for fusermount
1235
1236 * fuse_unmount() now uses -q option of fusermount, so no error is
1237 printed if the cause of the program exit is that the filesystem
1238 has already been unmounted
1239
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001240 * Fix i_nlink correctness after rmdir/unlink
1241
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012422004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001243
Miklos Szeredib1158392004-01-26 14:43:12 +00001244 * Released 1.1-pre2
1245
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012462004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001247
Miklos Szeredi307242f2004-01-26 11:28:44 +00001248 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001249
1250 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001251
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012522004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001253
1254 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001255
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012562004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001257
1258 * Write all pending data before a RELEASE operation
1259
1260 * Suppress 'Bad file descriptor' warning on exit
1261
1262 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001263 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001264
Miklos Szeredib1158392004-01-26 14:43:12 +00001265 * New fusermount option '-l' which enables big reads. Big reads
1266 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001267
1268 * fuse_main() can accept fusermount arguments after a '--'
1269
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012702004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001271
1272 * Support for exporting filesystem over NFS (see README.NFS)
1273
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012742004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001275
1276 * Support non-blocking writepage on 2.6. This makes FUSE behave
1277 much more nicely in low-memory situations
1278
1279 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1280 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001281
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012822004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001283
1284 * Code cleanups
1285
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012862004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001287
1288 * Released 1.1-pre1
1289
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012902004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001291
1292 * Integrated 2.6 kernel support patch by Michael Grigoriev
1293
1294 * Improvements and cleanups for 2.6 kernels
1295
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012962004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001297
Miklos Szeredie5183742005-02-02 11:14:04 +00001298 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001299
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013002003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001301
1302 * Added major+minor version to library API, and minor version to
1303 kernel API
1304
David McNab7a19caf2003-12-13 02:05:46 +000013052003-12-13 David McNab <david@rebirthing.co.nz>
1306
1307 * Implemented fsync support in examples/example.py
1308
1309 * Implemented 'fsync' and 'statfs' methods in python
1310 interface
1311
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013122003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001313
Miklos Szeredie5183742005-02-02 11:14:04 +00001314 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001315
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001316 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001317
David McNab8bf62632003-12-11 22:49:22 +000013182003-12-12 David McNab <david@rebirthing.co.nz>
1319
1320 * Added distutils support to the python module, as per standard
1321 python development practice
1322
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013232003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001324
1325 * Add file locking for mount/unmount (based on patch by Valient
1326 Gough)
1327
13282003-12-11 David McNab <david@rebirthing.co.nz>
1329
1330 * Python filesystem - was broken with python2.3, now fixed:
1331 - changed PyTuple_* calls to PySequence_*, because os.lstat
1332 is no longer returning a pure tuple
1333 - changed PyInt_Check() calls to also call PyLong_Check,
1334 to cover for cases (eg os.lstat) where longs are returned
1335 - Added support for file 'release' handling, which IMO is
1336 essential since this signals to a FS that writes to a file
1337 are complete (and therefore the file can now be disposed of
1338 meaningfully at the python filesystem's discretion)
1339 - Added '__init__' handler to base Fuse class, which allows
1340 your Python class to know the mountpoint and mount args,
1341 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001342
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001343 * General:
1344 - added 'mount.fuse' script (in util/ dir), which is meant to be
1345 symlinked from /sbin, and which allows FUSE filesystems to
1346 be mounted with the 'mount' command, and listed in fstab;
1347 also, mount arguments get passed to your filesystem
1348
1349
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013502003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001351
1352 * Fix kernel version detection (again). Bugreport by Peter Levart
1353
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013542003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001355
1356 * Applied read combining patch by Michael Grigoriev (tested by
1357 Valient Gough and Vincent Wagelaar)
1358
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013592003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001360
1361 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1362 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001363
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013642003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001365
1366 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001367
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013682003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001369
1370 * kernel version detection fix
1371
1372 * fusermount now uses "lazy" umount option
1373
1374 * fusermount can use modprobe with module-init-tools
1375
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013762003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001377
1378 * Integrated caching patch by Michael Grigoriev
1379
Miklos Szeredida4e4862003-09-08 11:14:11 +00001380 * Added "Filesystems" file with descriptions of projects using
1381 FUSE
1382
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001383 * Added patch by Michael Grigoriev to allow compliation of FUSE
1384 kernel module for 2.6 kernels
1385
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013862003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001387
1388 * And another spec-file fix by Achim Settelmeier
1389
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013902003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001391
1392 * Spec-file fix by Achim Settelmeier
1393
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013942003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001395
Miklos Szerediac361172004-11-02 19:14:14 +00001396 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001397
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013982003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001399
1400 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1401
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014022003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001403
1404 * Updated fuse.spec file (Achim Settelmeier)
1405
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014062003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001407
1408 * Version 1.0 released
1409
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014102003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001411
1412 * SuSE compilation fix by Juan-Mariano de Goyeneche
1413
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014142002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001415
1416 * The release() VFS call is now exported to the FUSE interface
1417
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014182002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001419
1420 * 64 bit file offset fixes in the fuse kernel module
1421
1422 * Added function 'fuse_exit()' which can be used to exit the main
1423 loop
1424
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014252002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001426
1427 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1428 an incompatible interface change.
1429
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014302002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001431
1432 * Portablility fix (bug reported by C. Chris Erway)
1433
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014342002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001435
1436 * Use Mark Glines' fd passing method for default operation instead
1437 of old reexec
1438
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014392002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001440
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001441 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1442
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014432002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001444
Miklos Szeredi60c23522002-10-24 09:19:43 +00001445 * fix incompatiblity with Red Hat kernels, with help from Nathan
1446 Thompson-Amato.
1447
Mark Glines65ba2192002-04-18 14:41:48 +000014482002-04-18 Mark Glines <mark@glines.org>
1449
1450 * added an alternative to fuse_mount(), called
1451 fuse_mount_ioslave(), which does not need to reexec the
1452 FUSE program.
1453 * added a small helper util needed by fuse_mount_ioslave().
1454
Mark Glines220635a2002-03-17 07:01:14 +000014552002-03-16 Mark Glines <mark@glines.org>
1456
1457 * use struct fuse_statfs everywhere possible to avoid problems
1458 with the headerfiles changing struct statfs member sizes
1459
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014602002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001461
1462 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1463
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014642002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001465
1466 * RPM support by Achim Settelmeier
1467
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014682002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001469
Miklos Szerediddc862a2002-01-09 13:46:10 +00001470 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001471
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014722002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001473
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001474 * Revaidate all path components not just the last, this means a
1475 very small performance penalty for being more up-to-date.
1476
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014772002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001478
1479 * Update and fix python interface
1480
Mark Glinesd84b39a2002-01-07 16:32:02 +000014812002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001482
Mark Glinesd84b39a2002-01-07 16:32:02 +00001483 * Added statfs() support to kernel, lib, examples, and perl!
1484
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014852001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001486
1487 * Better cross compilation support
1488
1489 * Ported to Compaq IPAQ
1490
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014912001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001492
Miklos Szeredife25def2001-12-20 15:38:05 +00001493 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001494 patch from Matt Ryan)
1495
Miklos Szeredife25def2001-12-20 15:38:05 +00001496 * Added flags to fusermount and to kernel interface to control
1497 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001498
Miklos Szeredife25def2001-12-20 15:38:05 +00001499 * Integrated fuse_set_operations() into fuse_new()
1500
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015012001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001502
1503 * Applied header protection + extern "C" patch by Roland
1504 Bauerschmidt
1505
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015062001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001507
Miklos Szeredie5183742005-02-02 11:14:04 +00001508 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001509
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015102001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001511
1512 * Cleaned up way of mounting simple filesystems.
1513
1514 * fuse_main() helper function added
1515
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015162001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001517
Miklos Szeredife25def2001-12-20 15:38:05 +00001518 * Optimized read/write operations, so that minimal copying of data
1519 is done
1520
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015212001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001522
1523 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001524
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015252001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001526
1527 * Fixed vfsmount reference leak in fuse_follow_link
1528
1529 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1530 userspace is ignored
1531
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015322001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001533
Miklos Szeredife25def2001-12-20 15:38:05 +00001534 * Started ChangeLog