blob: 5f75e15f97cecd11fed4aef08469c8d2ca0bbed2 [file] [log] [blame]
Miklos Szeredi40ec1752006-09-30 06:17:31 +000012006-09-29 Miklos Szeredi <miklos@szeredi.hu>
2
3 * Fix compilation on 2.6.9. Report from Troy Ayers
4
Miklos Szeredi07cf0fe2006-09-27 18:48:06 +000052006-09-27 Miklos Szeredi <miklos@szeredi.hu>
6
7 * Fix Oops in fuse_readpages(). Reported by David Shaw
8
Csaba Henk3e3a1252006-09-24 14:53:29 +000092006-09-24 Csaba Henk <csaba.henk@creo.hu>
10
11 * Add support for nanosec times on FreeBSD
12
13 * Fix FreeBSD compatibility issues
14
Miklos Szeredi07cf0fe2006-09-27 18:48:06 +0000152006-09-23 Miklos Szeredi <miklos@szeredi.hu>
16
17 * Fix one more compatibility bug. Thanks to Ricardo Correia
18
19 * Fix utimens compilation with uClibc. Patch from Jamie Guinan
20
Miklos Szeredieafdf422006-09-22 19:30:17 +0000212006-09-22 Miklos Szeredi <miklos@szeredi.hu>
22
Miklos Szeredi07cf0fe2006-09-27 18:48:06 +000023 * Fixed several compatibility bugs in low level interface.
24 Reported by Ricardo Correia
Miklos Szeredieafdf422006-09-22 19:30:17 +000025
26 * Add workaround for ARM caching bug
27
Miklos Szeredic3b76812006-09-16 08:52:09 +0000282006-09-16 Miklos Szeredi <miklos@szeredi.hu>
29
30 * Rename new utimes() method to more logical utimens()
31
322006-09-14 Miklos Szeredi <miklos@szeredi.hu>
33
34 * Fuse tried to unlink already unlinked hidden files. Bug
35 reported by Milan Svoboda
36
Miklos Szeredi0c59ebf2006-09-10 20:53:36 +0000372006-09-10 Miklos Szeredi <miklos@szeredi.hu>
38
39 * Released 2.6.0-rc1
40
412006-09-10 Miklos Szeredi <miklos@szeredi.hu>
42
43 * kernel: Fix unlock on close for kernels < 2.6.18
44
45 * Add ulockmgr library & server. This can be used for handling
46 file locking requests either directly from libfuse or over a
47 network, etc. This first version is not optimized and the number
48 of file descriptors it uses may get out of hand
49
Miklos Szeredi288ed4e2006-09-07 06:02:44 +0000502006-09-07 Miklos Szeredi <miklos@szeredi.hu>
51
52 * lib: Add interrupt support to high level library, which may be
53 enabled with the 'intr' mount option.
54
55 * When an operation is interrupted the thread handling that
56 operation will receive SIGUSR1 (or other signal specified with the
57 'intr_signal=N' option). The library installs a no-op signal
58 handler for this signal, unless there's already a handler
59 installed.
60
61 * The filesystem may query interrupt status (regardless of 'intr')
62 with the fuse_interrupted() function.
63
Miklos Szeredid8588412006-09-07 06:08:56 +000064 * mount.fuse: initialize $HOME if not set. Report from Sven Goldt
65
Miklos Szeredi38f152c2006-09-03 18:28:52 +0000662006-09-03 Miklos Szeredi <miklos@szeredi.hu>
67
68 * lib: Multithreaded loop now allows unlimited number of threads.
69 This is needed for locking operations which may block
70 indefinitely. Also the kernel now doesn't limit the number of
71 outstanding requests so the library shouldn't do so either.
72
Miklos Szeredifa440772006-09-02 09:51:08 +0000732006-09-01 Miklos Szeredi <miklos@szeredi.hu>
74
75 * Fix recursive lock bug in interrupt handling
76
77 * Add utimes() method to highlevel interface, which supports
78 setting times with nanosecond resolution
79
Miklos Szeredi63d3c402006-08-18 16:38:08 +0000802006-08-18 Miklos Szeredi <miklos@szeredi.hu>
81
82 * kernel: fix page leak if fuse_readpages() failed in it's
83 initialization. Bug found and original patch from Alexander
84 Zarochentsev
85
Miklos Szeredi3ded1a32006-08-18 18:43:50 +000086 * For linux kernels >=2.6.18 (2.6.19 if using the fuse module from
87 the kernel tree) the statfs method will receive the path within
Miklos Szeredid2bda142006-08-19 09:26:16 +000088 the filesystem on which the stat(v)fs syscall was called
Miklos Szeredi3ded1a32006-08-18 18:43:50 +000089
Miklos Szeredi543087d2006-08-18 19:26:23 +000090 * fusermount: try to modprobe fuse module if invoked by root and
91 unable to open device. This is needed with udev, since the device
92 node will be created only when the module is inserted, hence
93 module autoloading won't work. Reported by Szakacsits Szabolcs
94
Miklos Szeredi9a5c11d2006-07-30 17:33:40 +0000952006-07-30 Miklos Szeredi <miklos@szeredi.hu>
96
97 * fusermount: if selinux is active, restore the original file's
98 security context in unmount_rename(). Redhat bugzilla id 188561.
99 Patch from Yves Perrenoud
100
101 * Add POSIX file locking operation to high level library
102
Miklos Szerediad519562006-07-31 11:07:40 +0000103 * Initialize context for unlink of hidden files on umount. Bug
104 reported by Tim Stoakes
105
Miklos Szeredi9a5c11d2006-07-30 17:33:40 +00001062006-07-14 Miklos Szeredi <miklos@szeredi.hu>
107
108 * Multiple release() calls can race with each other, resulting in
109 the hidden file being deleted before the last release finishes.
110 Bug found and patch tested by Mark Huijgen
111
Miklos Szeredi3b0e4fa2006-07-14 10:13:16 +00001122006-07-05 Miklos Szeredi <miklos@szeredi.hu>
113
Miklos Szeredi9a5c11d2006-07-30 17:33:40 +0000114 * fusermount: if /dev/fuse doesn't exist, suggest modprobing fuse;
115 this makes sense on systems using udev. Reported by Szakacsits
116 Szabolcs
Miklos Szeredi3b0e4fa2006-07-14 10:13:16 +0000117
Miklos Szeredi91762cd2006-06-29 14:38:35 +00001182006-06-29 Miklos Szeredi <miklos@szeredi.hu>
119
120 * Released 2.6.0-pre3
121
1222006-06-29 Miklos Szeredi <miklos@szeredi.hu>
123
124 * Support in kernel module for file locking and interruption. The
125 same functionality is available in official kernels >= 2.6.18
126
Miklos Szeredib052a1a2006-06-28 14:51:20 +00001272006-06-28 Miklos Szeredi <miklos@szeredi.hu>
128
129 * Add POSIX file locking support
130
131 * Add request interruption
132
Miklos Szeredi55a84102006-06-06 10:16:38 +00001332006-06-06 Miklos Szeredi <miklos@szeredi.hu>
134
135 * Add missing pthread_rwlock_destroy(). Patch from Remy Blank
136
Miklos Szeredi9dedb702006-06-06 09:48:30 +00001372006-06-05 Remy Blank <remy.blank@pobox.com>
138
139 * lib: canonicalize mount point in fuse_helper_opt_proc() so that
140 unmounting succeeds even if mount point was relative.
141
Csaba Henkd021ce42006-06-03 23:04:18 +00001422006-06-04 Csaba Henk <csaba.henk@creo.hu>
143
144 * lib: fix emergency umount in helper.c when malloc fails.
145 (The way it was done would end up in a segfault.)
146
Csaba Henk4f5c7b42006-06-01 14:19:17 +00001472006-06-01 Csaba Henk <csaba.henk@creo.hu>
148
149 * lib: adjust threading related compiler flags.
150 Switch to "-pthread" from "-lpthread" as that's the preferred
151 one on several platforms. Consulted with Terrence Cole and
152 Miklos Szeredi
Miklos Szeredi06908f42006-05-16 14:39:47 +0000153
Miklos Szeredi9d3b7da2006-05-08 12:35:04 +00001542006-05-08 Miklos Szeredi <miklos@szeredi.hu>
155
156 * lib: search fusermount in installation directory (bindir) as
157 well as in PATH.
158
Miklos Szeredi2512aaa2006-05-03 14:54:59 +00001592006-05-03 Miklos Szeredi <miklos@szeredi.hu>
160
161 * lib: fix compilation if CLOCK_MONOTONIC is not defined.
162 Reported by Christian Magnusson
163
Csaba Henk2efe48f2006-04-22 22:46:52 +00001642006-04-23 Csaba Henk <csaba.henk@creo.hu>
165
166 * lib: make FreeBSD mount routine recognize if kernel features
167 backgrounded init and if it does, run the mount util in foreground
168 (similarly to Linux)
169
Miklos Szeredi5fe07d62006-04-21 14:09:28 +00001702006-04-21 Miklos Szeredi <miklos@szeredi.hu>
171
172 * kernel: fix fput deadlock fix, the lockless solution could lead
173 to "VFS: busy inodes after umount..."
174
175 * kernel: fix race between checking and setting file->private_data
176 for the device. Found by Al Viro
177
1782006-04-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7a2814c2006-04-12 10:41:50 +0000179
180 * kernel: remove request pool, instead allocate requests on
181 demand. Account the number of background requests, and if they go
182 over a limit, block the allocation of new requests.
183
184 * kernel: fix deadlock if backgrounded request holds the last
185 reference to the super block
186
187 * kernel: don't use fuse_reset_request() during direct I/O
188
Csaba Henkbaa49d22006-04-06 00:12:44 +00001892006-04-06 Csaba Henk <csaba.henk@creo.hu>
190
191 * lib: Let FreeBSD mount option parsing routine recognize "no"
192 prefixes for FUSE specific options as well
193
Miklos Szeredid0a777a2006-04-05 07:18:00 +00001942006-04-01 Miklos Szeredi <miklos@szeredi.hu>
195
196 * lib: Add missing rwlock initialization. Patch by Ryan Bradetich
197
Miklos Szeredi6f385412006-03-17 15:05:40 +00001982006-03-17 Miklos Szeredi <miklos@szeredi.hu>
199
200 * API changes:
201
202 * fuse_main(), fuse_setup() and fuse_new() have an additionl
203 user_data parameter
204
205 * fuse_mount() returns a 'struct fuse_chan' pointer instead of a
206 file descriptor
207
208 * fuse_unmount() receives a 'struct fuse_chan' pointer. It
209 destroys the given channel
210
211 * fuse_teardown() no longer has a file descriptor parameter
212
213 * new exported functions: fuse_session_remove_chan(),
214 fuse_get_session(), fuse_daemonize()
215
Miklos Szeredi8d975f62006-03-17 15:56:05 +0000216 * fuse_chan_recv() may now return a new channel which will be used
217 to send the reply
218
Miklos Szeredif51e43f2006-03-16 14:19:25 +00002192006-03-16 Miklos Szeredi <miklos@szeredi.hu>
220
Miklos Szeredi9db31dc2006-03-16 14:43:28 +0000221 * Released 2.6.0-pre2
222
2232006-03-16 Miklos Szeredi <miklos@szeredi.hu>
224
Miklos Szeredif51e43f2006-03-16 14:19:25 +0000225 * Don't unmount if already unmounted. This fixes a problem seen
226 in the following situation: Lazy unmount a busy filesystem; Mount
227 a new one in top; When the first finally unmounts, the second also
228 unmounts. Reported by Franco Broi
229
Miklos Szeredi2c1381f2006-03-15 20:34:10 +00002302006-03-15 Miklos Szeredi <miklos@szeredi.hu>
231
232 * lowlevel lib: use indirect function calls instead of a
233 switch/case construct. Besides increased efficiency it helps
234 maintainability & readability too. Patch from Florin Malita
235
Miklos Szeredi67d26d42006-03-13 17:39:56 +00002362006-03-13 Miklos Szeredi <miklos@szeredi.hu>
237
238 * kernel: replace global spinlock with a per-connection spinlock
239
Miklos Szeredi87c77932006-03-10 10:18:20 +00002402006-03-10 Miklos Szeredi <miklos@szeredi.hu>
241
242 * Fix source compatibility breakage for fuse_unmount(). Report
243 from Yura Pakhuchiy
244
Miklos Szeredi9caf0fe2006-03-02 19:55:56 +00002452006-03-02 Miklos Szeredi <miklos@szeredi.hu>
246
247 * Fix O_ASYNC handling in fuse_dev_release(). From Jeff Dike
248
Miklos Szeredi5d9ce362006-03-01 12:10:13 +00002492006-03-01 Miklos Szeredi <miklos@szeredi.hu>
250
251 * Add O_ASYNC and O_NONBLOCK support to FUSE device. Patch by
252 Jeff Dike
253
254 * Renamed fuse_chan_receive() to fuse_chan_recv() and changed
255 interface to return -errno in case of error.
256
Csaba Henkee588c02006-03-01 09:40:35 +00002572006-03-01 Csaba Henk <csaba.henk@creo.hu>
258
259 * libfuse: pass device file descriptor to fuse_unmount(), rewrite
260 FreeBSD implementation so that it uses libc (sysctl backed) instead
261 of an embdedded script (kmem backed). Adjust the control flow of
262 hello_ll so that device doesn't get closed before unmount attempt.
263
Miklos Szerediaa8258e2006-02-25 14:42:03 +00002642006-02-25 Miklos Szeredi <miklos@szeredi.hu>
265
266 * Lowlevel lib: return all-zero statvfs data if filesystem doesn't
267 implement method. This is needed on FreeBSD, and nicer on Linux
268 too. Highlevel lib already did this. Reported by Csaba Henk
269
270 * Fix negative entry handling. There was a bug, that negative
271 lookups with timeouts (nodeid == 0) returned -EIO.
272
2732006-02-23 Miklos Szeredi <miklos@szeredi.hu>
274
275 * Fix race between RELEASE and UNLINK, which might leave
276 .fuse_hidden* files around
277
Miklos Szeredi6bab4802006-02-21 18:31:29 +00002782006-02-21 Miklos Szeredi <miklos@szeredi.hu>
279
280 * fusexmp_fh: implement flush() method and call close() on the
281 open file descriptor. This is needed if used on an NFS
282 filesystem, which buffers data until file is closed. Franco Broi
283 spotted the situation when 'cp -p' failed to set the modification
284 time because of this.
285
Miklos Szeredie109e282006-02-20 11:06:20 +00002862006-02-20 Miklos Szeredi <miklos@szeredi.hu>
287
288 * Released 2.6.0-pre1
289
Miklos Szeredib67f2162006-02-20 10:55:33 +00002902006-02-19 Miklos Szeredi <miklos@szeredi.hu>
291
292 * libfuse: fix use-after-free bug in interruptred reply_entry().
293 Patch from John Muir
294
295 * libfuse: fix wrong symbol versioning for fuse_mount. Debian bug
296 ID: 352631. Found by Stéphane Rosi
297
Miklos Szeredi1bf64f42006-02-17 15:49:25 +00002982006-02-17 Miklos Szeredi <miklos@szeredi.hu>
299
300 * Lowlevel lib: Unify fuse_dirent_size() and fuse_add_dirent()
301 into a single function fuse_add_direntry(). This cleans up the
302 interface and makes it possible to do stacking.
303
Miklos Szeredi99ac9c02006-02-16 10:08:32 +00003042006-02-16 Miklos Szeredi <miklos@szeredi.hu>
305
306 * Fix rare race betweeen abort and release caused by failed iget()
307 in fuse_create_open().
308
Miklos Szeredi6e806e92006-02-16 16:59:39 +0000309 * Add 'ac_attr_timeout' option e.g. for filesystems which do their
310 own attribute caching.
311
Miklos Szeredid65cdfe2006-02-15 14:25:17 +00003122006-02-15 Miklos Szeredi <miklos@szeredi.hu>
313
314 * Work around FreeBSD runtime linker "feature" which binds an old
315 version of a symbol to internal references if the symbol has more
316 than one version. This resulted in infinite recursion in
317 fuse_lowlevel_new_compat25().
318
Csaba Henkdcce3e52006-02-10 06:22:15 +00003192006-02-10 Csaba Henk <csaba.henk@creo.hu>
320
321 * Refine clock_gettime() querying so that linker options
322 shall be set as it's appropriate for the target platform.
323
Miklos Szeredi390ae312006-02-10 16:44:34 +00003242006-02-09 Miklos Szeredi <miklos@szeredi.hu>
325
326 * Fix udev rule syntax. Reported by Nix
327
Miklos Szeredieb643582006-02-08 10:54:02 +00003282006-02-08 Miklos Szeredi <miklos@szeredi.hu>
329
330 * In some cases udev rule seems to be ineffective when installed
331 as 40-fuse.rules but work as 60-fuse.rules. Reported by John Hunt
332
Miklos Szeredi357529c2006-02-03 09:20:31 +00003332006-02-03 Miklos Szeredi <miklos@szeredi.hu>
334
335 * Fix compilation when build directory is different from source
336 directory. Reported by Frédéric L. W. Meunier
337
Miklos Szeredice28c7e2006-02-02 14:59:05 +00003382006-02-02 Miklos Szeredi <miklos@szeredi.hu>
339
340 * Fix even bigger bug introduced in fix for request_end() on
341 2006-01-14. Reported by Gal Rosen
342
Miklos Szeredi320abe42006-01-30 18:14:51 +00003432006-01-30 Miklos Szeredi <miklos@szeredi.hu>
344
345 * highlevel-lib: add 'auto_cache' option. This caches file data
346 based on modification time and size
347
Miklos Szeredi065f2222006-01-20 15:15:21 +00003482006-01-20 Miklos Szeredi <miklos@szeredi.hu>
349
Miklos Szeredid66b7282006-02-02 15:15:21 +0000350 * Sanitize storage type and help message in mount_bsd.c. Patch
351 from Csaba Henk
352
Miklos Szeredi065f2222006-01-20 15:15:21 +0000353 * fuse_opt: add new helper constants FUSE_OPT_KEY_KEEP and
354 FUSE_OPT_KEY_DISCARD
355
356 * Add options 'max_readahead', 'sync_read' and 'async_read'
357
358 * Kernel ABI version 7.6:
359
360 * Negotiate the 'max_readahead' value and 'async_read' flags with
361 userspace in the INIT method
362
363 * Add connection info to ->init() methods to both lowlevel and
364 highlevel API
365
366 * Fall back to synchronous read() behavior if either library or
367 userspace filesystem is using the old interface version. This is
368 needed so non-updated filesystems won't be confused by the
369 different read() behavior
370
3712006-01-19 Miklos Szeredi <miklos@szeredi.hu>
372
373 * lib: if "fsname=" option was given, pass it to fusermount
374
375 * fuse_opt: add new fuse_opt_insert_arg() function, which is
376 needed by filesystems to implement some argument manipulations
377 correctly
378
379 * fuse_opt: fix memory leak in handling "--" option
380
3812006-01-18 Miklos Szeredi <miklos@szeredi.hu>
382
383 * kernel: fix detection of case when fuse is not configured into
384 the kernel either as module or built-in
385
386 * fuse_opt.h: fix incompatibility with C++ compilers by renaming
387 'template' structure member to 'templ'. Reported by Takashi Iwai
388
389 * fuse.h: fix compatibility bugs. Patch by Yura Pakhuchiy
390
391 * kernel: support version 2.6.16 (i_sem -> i_mutex)
392
Miklos Szeredi15af1b82006-01-16 17:52:24 +00003932006-01-16 Miklos Szeredi <miklos@szeredi.hu>
394
395 * Added (again) asynchronous readpages support
396
397 * Each connection now shows up under /sys/fs/fuse/connections
398
399 * Connection attributes exported to sysfs: 'waiting' number of
400 waiting requests; 'abort' abort the connection
401
402 * Connection may be aborted through either the sysfs interface or
403 with 'umount -f mountpoint'
404
Miklos Szeredi9db5faa2006-01-14 14:47:21 +00004052006-01-14 Miklos Szeredi <miklos@szeredi.hu>
406
Miklos Szeredi75bb0de2006-01-14 18:38:54 +0000407 * Released 2.5.0
408
4092006-01-14 Miklos Szeredi <miklos@szeredi.hu>
410
Miklos Szeredi9db5faa2006-01-14 14:47:21 +0000411 * kernel: fix a couple of bugs
412
Miklos Szeredi68183ca2006-01-27 11:16:11 +0000413 * Order of request_end() and fuse_copy_finish() was wrong.
Miklos Szeredie0451092006-01-27 11:19:51 +0000414 Posthumous note: Franco Broi managed to exploit this, though it
Miklos Szeredi68183ca2006-01-27 11:16:11 +0000415 seemed quite impossible
Miklos Szeredi9db5faa2006-01-14 14:47:21 +0000416
417 * request_end() used request pointer after decrementing refcount
418
419 * Clearing ->connected or ->mounted connection flags could race
420 with setting other bitfields not protected with a lock
Miklos Szeredi15af1b82006-01-16 17:52:24 +0000421
Miklos Szeredia9820342006-01-10 10:54:11 +00004222006-01-10 Miklos Szeredi <miklos@szeredi.hu>
423
424 * kernel: add necessary compile flags for 2.4.X/x86_64.
425 Report from Sean Ziegeler
426
Miklos Szeredi35676b02006-01-09 10:13:28 +00004272006-01-09 Miklos Szeredi <miklos@szeredi.hu>
428
Miklos Szeredie07b1a22006-01-09 14:46:10 +0000429 * Released 2.5.0-pre2
430
4312006-01-09 Miklos Szeredi <miklos@szeredi.hu>
432
Miklos Szeredi35676b02006-01-09 10:13:28 +0000433 * Applied patch from Csaba Henk, to update mount_bsd to new
434 fuse_mount() semantics
435
Miklos Szeredib32c79b2006-01-09 11:14:29 +0000436 * Ignore auto,noauto,... options in mount.fuse. Reported by Frank
437 Steiner and Don Taber
438
Miklos Szeredicb075c82006-01-09 11:33:04 +0000439 * fusermount: add 'dirsync' mount option
440
Miklos Szerediad005972006-01-07 10:14:34 +00004412006-01-07 Miklos Szeredi <miklos@szeredi.hu>
442
443 * Improved help reporting and added version reporting to library
444
Miklos Szeredi0af762a2006-01-06 09:47:54 +00004452006-01-06 Miklos Szeredi <miklos@szeredi.hu>
446
447 * Change working directory to "/" even if running in the
448 foreground. Patch from Jonathan Brandmeyer
449
Miklos Szeredi95da8602006-01-06 18:29:40 +0000450 * Changed lots of functions to use 'struct fuse_args' instead of
451 separate argc and argv
452
453 * Added fuse_parse_cmdline(), fuse_set_signal_handlers() and
454 fuse_remove_signal_handlers() functions, so that it's now pretty
455 easy to get all the functionality of fuse_main() with a filesystem
456 using the lowlevel API.
457
Miklos Szeredib8638182006-01-02 12:52:24 +00004582006-01-02 Miklos Szeredi <miklos@szeredi.hu>
459
Miklos Szeredif1941472006-01-02 16:27:48 +0000460 * mount.fuse: the 'user' option should be ignored. Report and
461 solution from Mattd.
462
463 * mount.fuse: export PATH in the right place. Report and patch
464 from Hannes Schweizer
Miklos Szeredib8638182006-01-02 12:52:24 +0000465
Miklos Szeredi73f41392005-12-16 11:12:16 +00004662005-12-16 Miklos Szeredi <miklos@szeredi.hu>
467
468 * Clean up the option parsing interface slightly, by creating an
469 "argument list" structure, that contains the argument vector and
470 count
471
Miklos Szeredi4e829092005-12-15 16:13:49 +00004722005-12-15 Miklos Szeredi <miklos@szeredi.hu>
473
474 * fusermount: check if /mnt/mtab is a symlink and don't modify it
475 in that case
476
Miklos Szeredi154ffe22005-12-15 16:41:20 +0000477 * kernel: simplify request size limiting. INIT only contains
478 maximum write size, maximum path component size remains fixed at
479 1024 bytes, and maximum xattr size depends on read buffer.
480
Miklos Szeredie248e4b2005-12-14 16:18:32 +00004812005-12-14 Miklos Szeredi <miklos@szeredi.hu>
482
483 * Fix readdir() failure on x86_64, of 32bit programs compiled
484 without largefile support. Bug report and help from Anthony
485 Kolasny
486
Miklos Szeredi64709572005-12-14 22:16:28 +0000487 * If lookup returns invalid mode, return -EIO instead of creating
Miklos Szeredicaa09312005-12-14 23:25:00 +0000488 a regular file
489
490 * Add current output argument vector to option processing
491 function
Miklos Szeredi64709572005-12-14 22:16:28 +0000492
Miklos Szeredi76fc3de2005-12-12 09:34:45 +00004932005-12-12 Miklos Szeredi <miklos@szeredi.hu>
494
495 * Fix stale code in ifdef FreeBSD. Patch from Csaba Henk
496
Miklos Szeredi659743b2005-12-09 17:41:42 +00004972005-12-09 Miklos Szeredi <miklos@szeredi.hu>
498
Miklos Szeredi3b534a42005-12-09 20:09:42 +0000499 * Released 2.5.0-pre1
500
5012005-12-09 Miklos Szeredi <miklos@szeredi.hu>
502
Miklos Szeredi659743b2005-12-09 17:41:42 +0000503 * libfuse: added option parsing interface, defined in
504 <fuse_opt.h>.
505
Miklos Szeredic53cddd2005-12-07 12:57:59 +00005062005-12-07 Miklos Szeredi <miklos@szeredi.hu>
507
508 * Return EIO for file operations (read, write, fsync, flush) on
509 open files whose inode has become "bad". Inodes will be marked
510 "bad" if their type changes. Bug report by Csaba Henk
511
Miklos Szeredi044da2e2005-12-06 17:59:55 +00005122005-12-06 Miklos Szeredi <miklos@szeredi.hu>
513
514 * Use bigger request buffer size. write() did not work on archs
515 with > 4k page size, Bug report by Mark Haney
516
517 * ABI version 7.5:
518
519 * Extend INIT reply with data size limits
520
Miklos Szeredifa829b52005-12-02 11:05:41 +00005212005-12-02 Miklos Szeredi <miklos@szeredi.hu>
522
523 * Fix memory leak in fuse_read_cmd()/fuse_process_cmd(). Bug
524 reported by Vincenzo Ciancia
525
526 * Handle exit-by-umount in fuse_read_cmd()
527
Miklos Szeredi3cc8a262005-11-29 11:04:27 +00005282005-11-29 Miklos Szeredi <miklos@szeredi.hu>
529
530 * Check if '-msoft-float' option is supported by compiler when
531 configuring for a 2.4.x kernel. Bug report by Mark Haney
532
Miklos Szeredi40d7b382005-11-29 20:07:23 +0000533 * In multithreaded loop send a TERM signal to the main thread if
534 one of the other threads exit. Needed on FreeBSD for a clean exit
535 on umount. Should not cause any harm on Linux either
536
Miklos Szerediead7f102005-11-28 16:02:27 +00005372005-11-28 Miklos Szeredi <miklos@szeredi.hu>
538
539 * Fix bug in 32-bit file handle compatibility
540
Miklos Szeredia90b7342005-11-27 19:22:42 +00005412005-11-27 Miklos Szeredi <miklos@szeredi.hu>
542
543 * Block TERM, INT, HUP and QUIT signals in all but the main
544 thread. According to POSIX it's not specified which thread will
545 receive these signals.
Miklos Szeredi2b478112005-11-28 13:27:10 +0000546
547 * Kernel changes:
548
549 * Check for directory aliasing on mkdir, not just on lookup
550
551 * Check for special node ID values in create+open operation
552
553 * Sync with -mm: readv, writev, aio_read and aio_write methods
554 added to file operations
555
556 * Cleanups: lookup code, page offset calculation
557
558 * ABI stepped to 7.4, changes:
559
560 * frsize member added to fuse_kstatfs structure
561
562 * added support for negative entry caching: on lowlevel API if
563 fuse_entry_param::ino is set to zero in reply to a lookup request,
564 the kernel will cache the dentry for the specified amount of time.
565
566 * libfuse: added 'negative_timeout' option: specifies how much
567 negative entries should be cached. Default is zero, to be
Miklos Szerediead7f102005-11-28 16:02:27 +0000568 compatible with prior versions
Miklos Szeredi2b478112005-11-28 13:27:10 +0000569
Miklos Szeredibac4c772005-11-23 13:35:54 +00005702005-11-22 Miklos Szeredi <miklos@szeredi.hu>
571
572 * Add detection of mainline FUSE code in running kernel
573
Miklos Szeredi8393e3d2005-11-21 11:37:01 +00005742005-11-21 Miklos Szeredi <miklos@szeredi.hu>
575
576 * Don't use async cancelation in multithreaded loop. This makes
577 it more portable to systems where read() is not async cancel safe.
578 Report from Andriy Gapon
579
Miklos Szeredi05c97842005-11-20 17:05:07 +00005802005-11-20 Miklos Szeredi <miklos@szeredi.hu>
581
582 * Warn if API version 11 compatibility is requested
583
Miklos Szeredi9c2ccb42005-11-17 17:11:48 +00005842005-11-17 Miklos Szeredi <miklos@szeredi.hu>
585
586 * More FreeBSD merge
587
Miklos Szeredi832ee442005-11-18 21:02:36 +0000588 * fusermount: don't allow mountpoints with '\n', '\t', or '\\' in
589 them, because it corrupts /etc/mtab. Found by Thomas Biege
Miklos Szeredibac4c772005-11-23 13:35:54 +0000590 CVE-2005-3531
Miklos Szeredi832ee442005-11-18 21:02:36 +0000591
592 * libfuse: don't use system() to invoke 'fusermount -u ...'
593 because it breaks mountpoints with spaces in them into multiple
594 arguments
595
Miklos Szeredib3f99722005-11-16 13:00:24 +00005962005-11-16 Miklos Szeredi <miklos@szeredi.hu>
597
598 * Merge library part of FreeBSD port. Patch by Csaba Henk
599
Miklos Szeredi3a770472005-11-11 21:32:42 +00006002005-11-11 Miklos Szeredi <miklos@szeredi.hu>
601
602 * Use 64bit type for file handle, so the full range supported by
603 the kernel interface is available to applications
604
Miklos Szeredibcc53852005-11-10 09:54:41 +00006052005-11-10 Miklos Szeredi <miklos@szeredi.hu>
606
607 * Moved mountpoint argument checking from fuse_parse_cmdline() to
608 fuse_mount() in preparation to FreeBSD merge.
609
Miklos Szeredi4ec06812005-11-08 13:04:27 +00006102005-11-08 Miklos Szeredi <miklos@szeredi.hu>
611
612 * Remove unneeded close() from fuse_teardown(). Spotted by Csaba
613 Henk.
614
Miklos Szeredic706ad92005-11-07 15:30:48 +00006152005-11-07 Miklos Szeredi <miklos@szeredi.hu>
616
617 * Make the statfs change backwards compatible.
618
Miklos Szeredi52cb09d2005-11-07 11:59:00 +00006192005-11-06 Miklos Szeredi <miklos@szeredi.hu>
620
621 * Change ->statfs() method to use 'struct statvfs' instead of
622 'struct statfs'. This makes the API more portable since statvfs()
623 is defined by POSIX.
624
Miklos Szeredif7eec032005-10-28 13:09:50 +00006252005-10-28 Miklos Szeredi <miklos@szeredi.hu>
626
627 * Add fgetattr() method, which currently will only be called after
628 a successful call to a create() method.
629
Miklos Szeredib0b13d12005-10-26 12:53:25 +00006302005-10-26 Miklos Szeredi <miklos@szeredi.hu>
631
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000632 * Change kernel ABI version to 7.3
633
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000634 * Add ACCESS operation. This is called from the access() system
Miklos Szeredid9079a72005-10-26 15:29:06 +0000635 call if 'default_permissions' mount option is not given, and is
636 not called on kernels 2.4.*
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000637
Miklos Szeredid9079a72005-10-26 15:29:06 +0000638 * Add atomic CREATE+OPEN operation. This will only work with
639 2.6.15 (presumably) or later Linux kernels.
640
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000641 * Add ftruncate() method. This will only work with 2.6.15
642 (presumably) or later Linux kernels.
643
644 * Fix kernel module compile if kernel source and build directories
645 differ. Report and initial patch by John Eastman
646
Miklos Szeredic4c12ae2005-10-20 14:48:50 +00006472005-10-18 Miklos Szeredi <miklos@szeredi.hu>
648
649 * lib: optimize buffer reallocation in fill_dir.
650
Miklos Szeredic9daeb12005-10-17 10:19:21 +00006512005-10-17 Miklos Szeredi <miklos@szeredi.hu>
652
653 * Released 2.4.1
654
Miklos Szeredif412d072005-10-14 21:24:32 +00006552005-10-14 Miklos Szeredi <miklos@szeredi.hu>
656
Miklos Szeredi062f0e52005-10-14 21:28:21 +0000657 * libfuse: add debug for write result (by Shaun Jackman) and
658 warnings for too large read/write result
Miklos Szeredif412d072005-10-14 21:24:32 +0000659
Miklos Szeredib75d4b92005-10-11 10:12:08 +00006602005-10-11 Miklos Szeredi <miklos@szeredi.hu>
661
662 * Spelling fixes, thanks to Ioannis Barkas
663
Miklos Szeredibaab5872005-10-10 08:41:14 +00006642005-10-10 Miklos Szeredi <miklos@szeredi.hu>
665
666 * fuse_common.h: use extern "C". Thanks to Valient Gough for the
667 patch
668
Miklos Szeredi4f5df5e2005-10-07 12:39:58 +00006692005-10-07 Miklos Szeredi <miklos@szeredi.hu>
670
671 * highlevel-lib: init() and destroy() methods didn't have an
672 initialized fuse_context. Bug reported by Tim Stoakes
673
Miklos Szeredif2491122005-10-04 10:10:41 +00006742005-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi83f253e2005-10-04 05:56:01 +0000675
676 * Released 2.4.0
677
Miklos Szeredi836ab712005-10-03 14:11:59 +00006782005-10-03 Miklos Szeredi <miklos@szeredi.hu>
679
680 * Add documentation to fuse_lowlevel.h
681
682 * API cleanups:
683
684 * Remove definitions of unused FATTR_CTIME / FUSE_SET_ATTR_CTIME
685
686 * Move fuse_mount() and fuse_unmount() to fuse_common.h
687
688 * Change the return type of fuse_reply_none() from int to void.
689
Miklos Szerediaf138742005-09-30 08:49:59 +00006902005-09-30 Miklos Szeredi <miklos@szeredi.hu>
691
692 * kernel: NFS exporting leaked dentries. Bug found and fixed by
693 Akshat Aranya.
694
Miklos Szeredidb016e02005-09-29 10:06:27 +00006952005-09-29 Miklos Szeredi <miklos@szeredi.hu>
696
697 * fusermount: fix error message, when unable to open /dev/fuse.
698 Report by Balázs Pozsár
699
Miklos Szeredi35200932005-09-28 14:50:49 +00007002005-09-28 Miklos Szeredi <miklos@szeredi.hu>
701
702 * UClibc fixes from Christian Magnusson
703
Miklos Szeredi8eddf642005-09-27 08:58:26 +00007042005-09-27 Miklos Szeredi <miklos@szeredi.hu>
705
706 * Added NAME="%k" to util/udev.rules. Fix by Mattias Wadman.
707
Miklos Szerediedec95c2005-09-26 10:22:22 +00007082005-09-26 Miklos Szeredi <miklos@szeredi.hu>
709
Miklos Szeredi39851ac2005-09-26 11:17:50 +0000710 * Released 2.4.0-rc1
711
7122005-09-26 Miklos Szeredi <miklos@szeredi.hu>
713
Miklos Szerediedec95c2005-09-26 10:22:22 +0000714 * fusermount: allow user umount in the case when /etc/mtab is a
715 symlink to /proc/mounts. Reported by Balázs Pozsár.
716
Miklos Szeredi6becf0b2005-09-23 11:25:28 +00007172005-09-23 Miklos Szeredi <miklos@szeredi.hu>
718
Miklos Szeredi8722dd22005-09-23 13:34:44 +0000719 * Check for special node ID values in lookup and creation
Miklos Szeredi6becf0b2005-09-23 11:25:28 +0000720
Miklos Szeredif45f3c12005-09-22 15:14:27 +00007212005-09-22 Miklos Szeredi <miklos@szeredi.hu>
722
723 * Slight optimization in returning EINVAL error in case of an open
724 with O_DIRECT flag.
725
Miklos Szeredi670d07a2005-09-20 11:36:32 +00007262005-09-20 Miklos Szeredi <miklos@szeredi.hu>
727
728 * Remove '--enable-auto-modprobe' configure flag. Module
729 auto-loading is now handled by the kernel.
730
Miklos Szeredid51fca12005-09-15 12:51:00 +00007312005-09-15 Miklos Szeredi <miklos@szeredi.hu>
732
733 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
734 Help from Jens M. Noedler.
735
Miklos Szeredi7e7530d2005-09-14 15:20:26 +00007362005-09-14 Miklos Szeredi <miklos@szeredi.hu>
737
738 * Add memory cleanup on thread exit
739
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +00007402005-09-13 Miklos Szeredi <miklos@szeredi.hu>
741
742 * Set umask to zero in fusexmp and fusexmp_fh, so that
743 files/directories are created with the requested mode.
744
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +00007452005-09-12 Miklos Szeredi <miklos@szeredi.hu>
746
747 * Don't ignore read error in multithreaded loop
748
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +00007492005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000750
Miklos Szeredi2277ecc2005-09-08 15:34:44 +0000751 * Released 2.4.0-pre2
752
7532005-09-08 Miklos Szeredi <miklos@szeredi.hu>
754
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000755 * Revert lock and access operations. Postpone these until 2.5.
756
7572005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000758
759 * Fix compile warning on 2.6.13 and later
760
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +0000761 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +0000762
Miklos Szeredi77ccf652005-08-19 14:40:27 +00007632005-08-19 Miklos Szeredi <miklos@szeredi.hu>
764
765 * lib: always refresh directory contents after rewinddir() to
766 conform to SUS. Bug found by John Muir.
767
Miklos Szeredia1482422005-08-14 23:00:27 +00007682005-08-15 Miklos Szeredi <miklos@szeredi.hu>
769
Miklos Szeredic43f9412005-08-15 15:10:48 +0000770 * Released 2.4.0-pre1
771
7722005-08-14 Miklos Szeredi <miklos@szeredi.hu>
773
Miklos Szeredia1482422005-08-14 23:00:27 +0000774 * lib: cleaned up (or messed up, depending on your POV) the low
775 level library API. Hopefully this is close to the final form.
776
Miklos Szeredicc1b97c2005-08-05 10:35:26 +00007772005-08-05 Miklos Szeredi <miklos@szeredi.hu>
778
779 * fusermount: don't allow empty mountpoint argument, which defeats
780 automatic umounting in fuse_main(). Bugreport by Václav Jůza
781
Miklos Szeredif6e0ec62005-08-03 09:11:06 +00007822005-08-03 Miklos Szeredi <miklos@szeredi.hu>
783
784 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
785 option is used (Paul Alfille).
786
Miklos Szeredi6c0209a2005-08-02 13:31:28 +00007872005-08-02 Miklos Szeredi <miklos@szeredi.hu>
788
789 * highlevel-lib: added mount options "attr_timeout" and
790 "entry_timeout". These options control the length of time file
791 attributes and entries (names) are cached. Both default to 1.0
792 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000793
794 * kernel: correctly handle zero timeout for attributes and entries
795
Miklos Szeredi56a61f02005-08-01 10:42:25 +00007962005-08-01 Miklos Szeredi <miklos@szeredi.hu>
797
798 * Added missing symbols to versionscript (Joshua J. Berry)
799
Miklos Szeredie77cc072005-08-01 11:58:51 +0000800 * kernel: implement two flags, open can set: 'direct_io' and
801 'keep_cache'. These correspond exactly to mount options
802 'direct_io' and 'kernel_cache', but allow a per-open setting.
803
804 * Move 'direct_io' and 'kernel_cache' mount option handling to
805 userspace. For both mount options, if the option is given, then
806 the respective open flag is set, otherwise the open flag is left
807 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +0000808
Miklos Szeredi31066bb2005-08-01 14:49:31 +0000809 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000810
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +00008112005-07-28 Miklos Szeredi <miklos@szeredi.hu>
812
813 * kernel: invalidate attributes for read/readdir/readlink
814 operations
815
816 * kernel: detect newer UML kernels
817
Miklos Szeredibfb99462005-07-26 11:07:55 +00008182005-07-26 Miklos Szeredi <miklos@szeredi.hu>
819
820 * Make the installation path of fuse.ko and mount.fuse
821 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
822 environment variables. Requirement and help from Csaba Henk.
823
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +00008242005-07-22 Miklos Szeredi <miklos@szeredi.hu>
825
826 * Fix bug, that causes filesystem requests to hang when unique
827 request counter becomes negative. This happens after
828 2,147,483,648 operations, so most people won't care. Thanks to
829 Franco Broi for the report and testing.
830
Miklos Szeredi9b813af2005-07-21 07:59:37 +00008312005-07-21 Miklos Szeredi <miklos@szeredi.hu>
832
833 * Don't change mtime/ctime/atime to local time on read/write.
834 Bug reported by Ben Grimm
835
836 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
837 Magnusson
838
839 * fusermount: use getopt_long() for option parsing. It allows the
840 use of '--' to stop argument scanning, so fusermount can now
841 operate on directories whose names begin with a '-'. Patch by
842 Adam Connell
843
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00008442005-07-15 Miklos Szeredi <miklos@szeredi.hu>
845
846 * fusermount: add '-v', '--version' and '--help' options
847
848 * add inode based API
849
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00008502005-07-12 Miklos Szeredi <miklos@szeredi.hu>
851
852 * lib: don't block signals in worker threads. Problem noticed by
853 Usarin Heininga
854
Miklos Szeredic902a852005-07-07 12:35:37 +00008552005-07-07 Miklos Szeredi <miklos@szeredi.hu>
856
857 * lib: don't allow both 'allow_other' and 'allow_root' options to
858 be given
859
Miklos Szeredi437d8112005-07-06 09:14:20 +00008602005-07-06 Miklos Szeredi <miklos@szeredi.hu>
861
862 * fusermount: check if mountpoint is empty (only '.' and '..' for
863 directories, and size = 0 for regular files). If "nonempty"
864 option is given, omit this check. This is useful, so users don't
865 accidentally hide data (e.g. from backup programs). Thanks to
866 Frank van Maarseveen for pointing this out.
867
868 * kernel: check if mandatory mount options ('fd', 'rootmode',
869 'user_id', 'group_id') are all given
870
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000871 * lib: simplify 'readdir_ino' handling
872
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000873 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
874
Miklos Szeredibb9f5172005-07-03 18:03:11 +00008752005-07-03 Miklos Szeredi <miklos@szeredi.hu>
876
877 * kernel: clean up 'direct_io' code
878
Miklos Szeredie1bcece2005-06-28 10:37:06 +00008792005-06-28 Miklos Szeredi <miklos@szeredi.hu>
880
881 * Add 'mount.fuse' written by Petr Klima
882
Miklos Szeredi866826d2005-06-28 12:22:57 +0000883 * '/dev/fuse' is created by 'make install' if does not yet exist
884
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00008852005-06-20 Miklos Szeredi <miklos@szeredi.hu>
886
887 * Fix UCLIBC compile error. Patch by Christian Magnusson
888
Miklos Szerediec12fad2005-06-08 10:26:34 +00008892005-06-08 Miklos Szeredi <miklos@szeredi.hu>
890
891 * Enable the auto-loading of the module via access to the
892 corresponding device file. Patch by Takashi Iwai.
893
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000894 * Allow mounting a regular file (over a regular file) for
895 unprivleged users.
896
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000897 * Do not create temporary device file. Require "/dev/fuse" to
898 exist, and be readable/writable by the mounting user.
899
Miklos Szeredi46960ce2005-06-02 09:05:00 +00009002005-06-02 Miklos Szeredi <miklos@szeredi.hu>
901
Miklos Szeredi56478552005-06-02 10:29:00 +0000902 * Released 2.3.0
903
9042005-06-02 Miklos Szeredi <miklos@szeredi.hu>
905
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000906 * Fix serious information leak: if the filesystem returns a short
907 byte count to a read request, and there are non-zero number of
908 pages which are not filled at all, these pages will not be zeroed.
909 Hence the user can read out previous memory contents. Found by
910 Sven Tantau.
911
Miklos Szeredi33be22d2005-05-27 09:12:43 +00009122005-05-27 Miklos Szeredi <miklos@szeredi.hu>
913
914 * Add "readdir_ino" mount option, which tries to fill in the d_ino
915 field in struct dirent. This mount option is ignored if "use_ino"
916 is used. It helps some programs (e.g. 'pwd' used over NFS from a
917 non-Linux OS). Patch by David Shaw.
918
Miklos Szeredif94e0102005-05-12 14:56:34 +00009192005-05-12 Miklos Szeredi <miklos@szeredi.hu>
920
Miklos Szeredieb009c42005-05-12 15:01:17 +0000921 * Released 2.3-rc1
922
9232005-05-12 Miklos Szeredi <miklos@szeredi.hu>
924
Miklos Szeredif94e0102005-05-12 14:56:34 +0000925 * File save in krusader and other editors doesn't work with sshfs,
926 because open() is interrupted by a periodic signal, and open()
927 restarts forever, without any progress. This could just be fixed
928 in open(), but the problem is more generic: if signals are
929 received more often than the filesystem can get the request to
930 userspace, it will never finish. This is probably only a
931 theoretical problem, nevertheless I'm removing the possibility to
932 interrupt requests with anything other than SIGKILL, even before
933 being sent to userspace. Bugreport by Eduard Czimbalmos.
934
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00009352005-05-09 Miklos Szeredi <miklos@szeredi.hu>
936
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000937 * libfuse: add "tree_lock" rwlock, that is locked for write in
938 rename, unlink and rmdir, and locked for read in all other
939 operations. This should fix the rename/release race reported by
940 Valient Gough and others. The solution is very coarse, a finer
941 grained locking scheme could be implemented, but it would be much
942 more complex. Let's see whether this is good enough.
943
9442005-05-09 Miklos Szeredi <miklos@szeredi.hu>
945
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000946 * Released 2.3-pre7
947
Miklos Szeredi38009022005-05-08 19:47:22 +00009482005-05-08 Miklos Szeredi <miklos@szeredi.hu>
949
950 * Better fix for out of order FORGET messages. Now the
951 LOOKUP/FORGET messages are balanced exactly (one FORGET can
952 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000953 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000954 compatible.
955
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00009562005-05-06 Miklos Szeredi <miklos@szeredi.hu>
957
958 * Fix abort for out of order FORGET messages. Again. Spotted by
959 Franco Broi again. Sorry :)
960
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00009612005-04-29 Miklos Szeredi <miklos@szeredi.hu>
962
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000963 * Released 2.3-pre6
964
9652005-04-29 Miklos Szeredi <miklos@szeredi.hu>
966
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000967 * Make fusermount work with fuse kernel modules not yet supporting
968 the "group_id" option (added for the purpose of stricter
969 permission checking).
970
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00009712005-04-28 Miklos Szeredi <miklos@szeredi.hu>
972
973 * Check for hard-linked directories in lookup. This could cause
974 problems in the VFS, which assumes that such objects never exist.
975
976 * Make checking of permission for other users more strict. Now
977 the same privilege is required for the mount owner as for ptrace
978 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000979
Miklos Szeredi3efcb562005-04-23 13:34:29 +00009802005-04-23 Miklos Szeredi <miklos@szeredi.hu>
981
982 * Released 2.3-pre5
983
Miklos Szeredid001bf92005-04-22 07:54:11 +00009842005-04-22 Miklos Szeredi <miklos@szeredi.hu>
985
986 * Add -msoft-float to kernel module compile flags for 2.4.X. This
987 is needed on certain architectures. Report from Chris Kirby
988
989 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
990 Reported by David Shaw
991
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000992 * Remove "allow_root" option from kernel module, and implement
993 it's functionality in the library
994
995 * Fix Oops caused by premature release of fuse_conn. Clean up
996 related code, to be more readable
997
Miklos Szeredif9137452005-04-23 10:59:44 +0000998 * Sendfile should not use page cache if "direct_io" mount option
999 is given
1000
Miklos Szeredib7640d22005-04-08 15:15:28 +000010012005-04-08 Miklos Szeredi <miklos@szeredi.hu>
1002
1003 * Fix Oops in case of nfs export. Spotted by David Shaw
1004
Miklos Szeredi89814a12005-04-08 16:39:09 +00001005 * Fix another Oops in case of write over nfs with direct_io turned
1006 on. Again spotted by David Shaw
1007
Miklos Szerediab974562005-04-07 15:40:21 +000010082005-04-07 Miklos Szeredi <miklos@szeredi.hu>
1009
Miklos Szeredi432d6182005-04-07 15:56:13 +00001010 * Released 2.3-pre4
1011
10122005-04-07 Miklos Szeredi <miklos@szeredi.hu>
1013
Miklos Szerediab974562005-04-07 15:40:21 +00001014 * lib: finalized new readdir() interface, which now supersedes the
1015 getdir() method.
1016
Miklos Szeredi30e093a2005-04-03 17:44:54 +000010172005-04-03 Miklos Szeredi <miklos@szeredi.hu>
1018
1019 * Released 2.3-pre3
1020
10212005-04-03 Miklos Szeredi <miklos@szeredi.hu>
1022
1023 * Implement backward compatibility with version 5 kernel ABI
1024
Miklos Szeredi18fce982005-04-01 21:07:35 +000010252005-04-01 Miklos Szeredi <miklos@szeredi.hu>
1026
1027 * Released 2.3-pre2
1028
10292005-04-01 Miklos Szeredi <miklos@szeredi.hu>
1030
1031 * kernel: fix dirent offset handling
1032
1033 * lib: add readdir and releasedir methods
1034
1035 * lib: use fh field of fuse_file_info in opendir, readdir,
1036 releasedir and fsyncdir methods
1037
1038 * lib: check kernel API version and bail out of it's old. This
1039 will be properly fixed in the next release
1040
10412005-03-31 Miklos Szeredi <miklos@szeredi.hu>
1042
1043 * Released 2.3-pre1
1044
Miklos Szeredieab72ef2005-03-31 19:59:12 +000010452005-03-31 Miklos Szeredi <miklos@szeredi.hu>
1046
1047 * kernel API: add padding to structures, so 64bit and 32bit
1048 compiler will return the same size
1049
1050 * kernel API: add offset field to fuse_dirent. This will allow
1051 more sophisticated readdir interface for userspace
1052
1053 * kernel API: change major number to 6
1054
1055 * kernel: fix warnings on 64bit archs
1056
1057 * kernel: in case of API version mismatch, return ECONNREFUSED
1058
Miklos Szeredi407e6a72005-03-25 12:19:43 +000010592005-03-24 Miklos Szeredi <miklos@szeredi.hu>
1060
1061 * kernel: trivial cleanups
1062
Miklos Szeredi4283ee72005-03-21 12:09:04 +000010632005-03-21 Miklos Szeredi <miklos@szeredi.hu>
1064
1065 * Add fsyncdir() operation
1066
Miklos Szeredid17da462005-03-21 11:47:04 +000010672005-03-19 Miklos Szeredi <miklos@szeredi.hu>
1068
1069 * kernel: add locking to background list (fixes previous fix)
1070
10712005-03-18 Miklos Szeredi <miklos@szeredi.hu>
1072
1073 * kernel: fix bug which could cause leave busy inodes after
1074 unmount, and Oops.
1075
10762005-03-08 Miklos Szeredi <miklos@szeredi.hu>
1077
1078 * examples: add -lpthread to link flags to work around valgrind
1079 quirk
1080
1081 * lib: don't exit threads, so cancelation doesn't cause segfault
1082
Miklos Szeredi31fa41c2005-03-04 17:28:51 +000010832005-03-04 Miklos Szeredi <miklos@szeredi.hu>
1084
1085 * kernel: fix nasty bug which could cause an Oops under certain
1086 situations. Found by Magnus Johansson
1087
Miklos Szeredif43f0632005-02-28 11:46:56 +000010882005-02-28 Miklos Szeredi <miklos@szeredi.hu>
1089
Miklos Szeredi159bd7e2005-02-28 17:32:16 +00001090 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +00001091 permission checking in getdir() is too late. Thanks to Usarin
1092 Heininga for pointing out this deficiency
1093
Miklos Szeredi159bd7e2005-02-28 17:32:16 +00001094 * libfuse: added init() and destroy() methods to fuse_operations
1095
Miklos Szeredif43f0632005-02-28 11:46:56 +00001096 * kernel: llseek() method for files and directories made explicit
1097
1098 * kernel: fixed inode leak in NFS export in case of nodeid
1099 wrapping
1100
Miklos Szeredied3c97c2005-02-15 17:04:50 +000011012005-02-15 Miklos Szeredi <miklos@szeredi.hu>
1102
1103 * libfuse: clean up some unitialized memory found with valgrind
1104
Miklos Szeredi47c52982005-02-23 09:27:38 +00001105 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
1106 explicitly linked libpthread for applications
1107
Miklos Szeredia7169412005-02-10 07:35:05 +000011082005-02-10 Miklos Szeredi <miklos@szeredi.hu>
1109
1110 * fusermount: set umask, otherwise /etc/mtab will have
1111 unpredictable permission. Spotted by Jindrich Kolorenc
1112
1113 * fusermount: set owner and group of /etc/mtab to original values
1114 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +00001115
1116 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +00001117
Miklos Szeredib92d9782005-02-07 16:10:49 +000011182005-02-07 Miklos Szeredi <miklos@szeredi.hu>
1119
1120 * Cleaned up directory reading (temporary file is not used)
1121
Miklos Szerediff30a6c2005-02-02 10:53:59 +000011222005-02-02 Miklos Szeredi <miklos@szeredi.hu>
1123
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +00001124 * Released 2.2
1125
11262005-02-02 Miklos Szeredi <miklos@szeredi.hu>
1127
Miklos Szerediff30a6c2005-02-02 10:53:59 +00001128 * Fix possible race when operation is interrupted
1129
Miklos Szeredi7a983952005-01-28 09:58:19 +000011302005-01-28 Miklos Szeredi <miklos@szeredi.hu>
1131
Miklos Szeredie5183742005-02-02 11:14:04 +00001132 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +00001133
Miklos Szeredied6b5dd2005-01-26 17:07:59 +000011342005-01-26 Miklos Szeredi <miklos@szeredi.hu>
1135
Miklos Szeredid48d5f72005-01-26 20:43:41 +00001136 * Released 2.2-pre6
1137
11382005-01-26 Miklos Szeredi <miklos@szeredi.hu>
1139
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00001140 * Fix bug in link() operation which caused the wrong path to be
1141 passed as the first argument. Found by Anton Altaparmakov
1142
Miklos Szeredi01fd89c2005-01-21 11:18:35 +000011432005-01-21 Miklos Szeredi <miklos@szeredi.hu>
1144
1145 * LIB: fix double reply in readdir operation
1146
Miklos Szeredi773d4ae2005-01-21 16:09:08 +00001147 * fusermount: fix uid checking bug. Patch by Adam Connell
1148
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +00001149 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +00001150 Patch by Keshava Gowda
1151
Miklos Szeredi64074142005-01-20 08:48:11 +000011522005-01-20 Miklos Szeredi <miklos@szeredi.hu>
1153
Miklos Szeredi092b50b2005-01-20 18:05:07 +00001154 * KERNEL: provide correct llseek semantics for fuse device (fixes
1155 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
1156
11572005-01-20 Miklos Szeredi <miklos@szeredi.hu>
1158
Miklos Szeredi64074142005-01-20 08:48:11 +00001159 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
1160
Miklos Szeredi1adb2272005-01-18 21:19:58 +000011612005-01-18 Miklos Szeredi <miklos@szeredi.hu>
1162
1163 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
1164 and RELEASEDIR. This ends the ugly hack of passing a file
1165 descriptor to the kernel, and actually makes the code simpler.
1166
Miklos Szeredi7db35c02005-01-17 09:46:28 +000011672005-01-17 Miklos Szeredi <miklos@szeredi.hu>
1168
Miklos Szeredic2e960e2005-01-17 13:05:21 +00001169 * Released 2.2-pre4
1170
11712005-01-17 Miklos Szeredi <miklos@szeredi.hu>
1172
Miklos Szeredi7db35c02005-01-17 09:46:28 +00001173 * fusermount: remove capability setting, which was the cause of
1174 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +00001175 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +00001176
Miklos Szeredidbe0f652005-01-15 14:32:56 +000011772005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +00001178
Miklos Szeredidbe0f652005-01-15 14:32:56 +00001179 * fix compilation on 2.4 kernels (reported by Valient Gough)
1180
1181 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +00001182
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +00001183 * fusermount: improve parsing of /etc/fuse.conf
1184
11852005-01-13 Miklos Szeredi <miklos@szeredi.hu>
1186
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +00001187 * Remove 'mount_max' and 'user_allow_other' module options. These
1188 are now checked by fusermount, and can be set in /etc/fuse.conf
1189
1190 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
1191
Miklos Szeredi81394522005-01-11 14:24:18 +000011922005-01-11 Miklos Szeredi <miklos@szeredi.hu>
1193
1194 * KERNEL: fix possible inode allocation problem, where
1195 sizeof(struct inode) is not aligned (found by Mike Waychison)
1196
1197 * KERNEL: use new follow_link/put_link methods
1198
1199 * KERNEL: cosmetic fixes
1200
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +000012012005-01-10 Miklos Szeredi <miklos@szeredi.hu>
1202
1203 * Released 2.2-pre3
1204
12052005-01-10 Miklos Szeredi <miklos@szeredi.hu>
1206
1207 * Add missing code that was accidently left out
1208
Miklos Szeredi8c7da232005-01-09 12:27:41 +000012092005-01-09 Miklos Szeredi <miklos@szeredi.hu>
1210
Miklos Szeredi8d775f72005-01-09 20:22:53 +00001211 * Released 2.2-pre2
1212
12132005-01-09 Miklos Szeredi <miklos@szeredi.hu>
1214
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00001215 * Change "uid" mount option to "user_id" to avoid confusion with a
1216 mount option "uid" commonly used by many filesystems
1217
12182005-01-09 Miklos Szeredi <miklos@szeredi.hu>
1219
Miklos Szeredi8c7da232005-01-09 12:27:41 +00001220 * Released 2.2-pre1
1221
12222005-01-09 Miklos Szeredi <miklos@szeredi.hu>
1223
1224 * If FUSE is configured in the kernel, don't build it by default
1225
Miklos Szeredi2a927272005-01-07 11:14:15 +000012262005-01-07 Miklos Szeredi <miklos@szeredi.hu>
1227
1228 * Compile fix by Christian Magnusson
1229
Miklos Szeredib6220192005-01-05 16:19:10 +000012302005-01-05 Miklos Szeredi <miklos@szeredi.hu>
1231
1232 * Fix compilation for 2.6.{0-5} kernels
1233
Miklos Szeredi0f62d722005-01-04 12:45:54 +000012342005-01-04 Miklos Szeredi <miklos@szeredi.hu>
1235
1236 * KERNEL: if request is interrupted, still keep reference to used
1237 inode(s) and file, so that FORGET and RELEASE are not sent until
1238 userspace finishes the request.
1239
Miklos Szeredi3f0005f2005-01-04 19:24:31 +00001240 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
1241 request with the same information, which is more flexible,
1242 simpler, works on embedded systems.
1243
Miklos Szeredi0f62d722005-01-04 12:45:54 +000012442004-12-16 Miklos Szeredi <miklos@szeredi.hu>
1245
1246 * KERNEL ABI: update interface to make it independent of type
1247 sizes. This will help on 64 bit architectures which can run
1248 legacy 32 bit applications.
1249
1250 * KERNEL ABI: add "len" field to request headers. This will allow
1251 sending/receiving requests in multiple chunks.
1252
1253 * KERNEL: handle file type change more intelligently
1254
1255 * LIB: "-o debug" option should disable backgrounding (fix by
1256 Fabien Reygrobellet)
1257
Miklos Szeredi0fcfa032004-12-13 15:22:28 +000012582004-12-13 Miklos Szeredi <miklos@szeredi.hu>
1259
1260 * KERNEL: invalidate dentry/attributes if interrupted request
1261 could leave filesystem in an unknown state.
1262
Miklos Szeredie56818b2004-12-12 11:45:24 +000012632004-12-12 Miklos Szeredi <miklos@szeredi.hu>
1264
1265 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
1266 These will cause some regressions, but stability is considered
1267 more important. If any of these features turns out to be
1268 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +00001269
Miklos Szeredie56818b2004-12-12 11:45:24 +00001270 * Make all requests interruptible (only with SIGKILL currently).
1271 This can be used to break any deadlock produced by the userspace
1272 filesystem accessing it's own exported files. The RELEASE request
1273 is special, because if it's interrupted before sending it to
1274 userspace it is still sent, but the reply is not awaited.
1275
1276 * If request is interrupted before being sent to userspace, and if
1277 it hasn't yet got any side effects, it is always restarted,
1278 regardless of the SA_RESTART flag. This makes these interruptions
1279 transparent to the process.
1280
1281 * Remove shared-writable mmap support, which was prone to an
1282 out-of-memory deadlock situation
1283
1284 * Remove INVALIDATE userspace initiated request
1285
1286 * Make readpages() synchronous. Asynchronous requests are
1287 deadlock prone, since they cannot be interrupted.
1288
1289 * Add readv/writev support to fuse device operations
1290
1291 * Remove some printks, which userspace FS can use for a DoS
1292 against syslog
1293
1294 * Remove 'large_read' mount option from 2.6 in kernel, check it in
1295 fusermount instead
1296
1297 * LIB: improve compatibility with a fuse.h header installed in
1298 ${prefix}/include which in turn includes the real header.
1299
1300 * LIB: improve compatibility by defining fuse_main() (which is now
1301 not used), so old configure scripts find it.
1302
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +000013032004-12-10 Miklos Szeredi <miklos@szeredi.hu>
1304
1305 * When mounting on a subdirectory of / don't duplicate slashes at
1306 the beggining of path (spotted by David Shaw)
1307
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +000013082004-12-09 Miklos Szeredi <miklos@szeredi.hu>
1309
1310 * Fix bug causing garbage in mount options (spotted by David Shaw)
1311
Miklos Szeredid59bb9d2004-12-07 10:04:24 +000013122004-12-07 Miklos Szeredi <miklos@szeredi.hu>
1313
1314 * Add 'writepage' flag to 'fuse_file_info'.
1315
1316 * More comments in fuse.h
1317
Miklos Szeredif458b8c2004-12-07 16:46:42 +00001318 * Get rid of double underscores
1319
Miklos Szeredi799993c2004-12-04 21:20:05 +000013202004-12-04 Miklos Szeredi <miklos@szeredi.hu>
1321
1322 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
1323
1324 * helper.c: add -ho option, which only displays the options not
1325 the usage header. This can be used by filesystems which have
1326 their own options.
1327
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +000013282004-12-03 Miklos Szeredi <miklos@szeredi.hu>
1329
1330 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
1331 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
1332 including the fuse header
1333
1334 * Add binary compatibility to 2.1 version of library with symbol
1335 versioning
1336
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +000013372004-12-03 Miklos Szeredi <miklos@szeredi.hu>
1338
1339 * Released 2.1
1340
Miklos Szeredi039322d2004-12-01 18:39:12 +000013412004-12-01 Miklos Szeredi <miklos@szeredi.hu>
1342
1343 * kernel: clean up writing functions
1344
1345 * kernel: no allocation on write in direct_io mode
1346
Miklos Szeredib9b94cd2004-12-01 18:56:39 +00001347 * move linux/fuse.h to fuse_kernel.h
1348
Miklos Szeredi83a07442004-11-30 18:25:20 +000013492004-11-30 Miklos Szeredi <miklos@szeredi.hu>
1350
1351 * kernel: clean up reading functions
1352
Miklos Szeredi2defe5e2004-11-29 16:53:44 +000013532004-11-29 Miklos Szeredi <miklos@szeredi.hu>
1354
1355 * kernel: make readpage() uninterruptible
1356
Miklos Szeredi96dfad72004-11-30 00:00:02 +00001357 * kernel: check readonly filesystem flag in fuse_permission
1358
1359 * lib: don't die if version file not found and new style device
1360 exists
1361
1362 * lib: add '-r' option, which is short for '-o ro'
1363
1364 * fusermount: simplify device opening
1365
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00001366 * kernel: when direct_io is turend on, copy data directly to
1367 destination without itermediate buffer. More efficient and safer,
1368 since no allocation is done.
1369
1370 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +00001371
1372 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +00001373
Miklos Szeredifb28c5e2004-11-26 12:15:06 +000013742004-11-26 Miklos Szeredi <miklos@szeredi.hu>
1375
1376 * libfuse API change: open, read, write, flush, fsync and release
1377 are passed a 'struct fuse_file_info' pointer containing the open
1378 flags (open and release), and the file handle. Verion changed to
1379 3.0.
1380
Miklos Szeredia25d4c22004-11-23 22:32:16 +000013812004-11-23 Miklos Szeredi <miklos@szeredi.hu>
1382
1383 * More cleanups in the kernel
1384
1385 * The 10,229 charater device number has been assigned for FUSE
1386
1387 * Version file checking fix (reported by Christian Magnusson)
1388
1389 * fusermount: opening the fuse device now doesn't need /sys.
1390
1391 * Optimize reading by controlling the maximum readahead based on
1392 the 'max_read' mount option
1393
1394 * fixes for UCLIBC (Christian Magnusson)
1395
Miklos Szeredi13ed4822004-11-20 11:12:21 +000013962004-11-19 Miklos Szeredi <miklos@szeredi.hu>
1397
1398 * Cleaned up kernel in preparation for merge into mainline:
1399
1400 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
1401
1402 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
1403
1404 * __user annotations for sparse
1405
1406 * allocate individual pages instead of kmalloc in fuse_readdir,
1407 fuse_read and fuse_write.
1408
1409 * Fix NFS export in case "use_ino" mount option is given
1410
Miklos Szeredif3845c42004-11-20 11:18:34 +00001411 * Make libfuse and fusermount compatible with future versions
1412
1413 * fusermount: properly add mount options to /etc/mtab
1414
14152004-11-15 Miklos Szeredi <miklos@szeredi.hu>
1416
1417 * fusermount: do not resolve last component of mountpoint on if it
1418 is '.' or '..'. This new path resolvation is now done on mount as
1419 well as unmount. This enables relative paths to work on unmount.
1420
1421 * fusermount: parse common mount options like "ro", "rw", etc...
1422
1423 * Allow module params to be changed through sysfs
1424
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +000014252004-11-14 Miklos Szeredi <miklos@szeredi.hu>
1426
1427 * Released 2.1-pre1
1428
14292004-11-14 Miklos Szeredi <miklos@szeredi.hu>
1430
1431 * Fix bug in fuse_readpages() causing Oops in certain situations.
1432 Bug found by Vincenzo Ciancia.
1433
1434 * Fix compilation with kernels versions > 2.6.9.
1435
Miklos Szeredi3a6ea062004-11-11 10:33:58 +000014362004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +00001437
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00001438 * Check kernel interface version in fusermount to prevent
1439 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +00001440
Miklos Szeredi3d60e762004-11-11 14:44:04 +00001441 * No need to allocate fuse_conn until actual mount happens
1442
1443 * Fix potential race between umount and fuse_invalidate
1444
1445 * Check superblock of proc file in addition to inode number
1446
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00001447 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +00001448
Miklos Szeredi51ec1032004-11-10 11:52:26 +000014492004-11-10 Miklos Szeredi <miklos@szeredi.hu>
1450
1451 * Separate configure for the kernel directory
1452
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00001453 * Don't allow write to return more than 'count'
1454
1455 * Extend kernel interface for future use
1456
Miklos Szeredi51ec1032004-11-10 11:52:26 +000014572004-11-09 Miklos Szeredi <miklos@szeredi.hu>
1458
1459 * Fix 'makeconf.sh' to use autoreconf if available
1460
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +000014612004-11-08 Miklos Szeredi <miklos@szeredi.hu>
1462
Miklos Szeredid507c732004-11-08 17:32:25 +00001463 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
1464 compatibility with earlier versions. To compile earier versions
1465 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
1466 Do not use the "use_ino" mount flag with filesystems compiled with
1467 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +00001468
1469 * Add pkg-config support. To compile a FUSE based filesystem you
1470 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
1471 or similar. Note, that the PKG_CONFIG_PATH environment variable
1472 usually needs to be set to "/usr/local/lib/pkgconfig".
1473
1474 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +00001475
Miklos Szeredia13d9002004-11-02 17:32:03 +000014762004-11-02 Miklos Szeredi <miklos@szeredi.hu>
1477
1478 * Added "use_ino" mount option. This enables the filesystems to
1479 set the st_ino field on files
1480
Miklos Szeredib1ab8b52004-11-01 10:57:41 +000014812004-11-01 Miklos Szeredi <miklos@szeredi.hu>
1482
1483 * Fix compile problems with ancient (<=2.4.18) kernels (reported
1484 by Jeremy Smith)
1485
Miklos Szeredi874e3c12004-11-01 23:15:20 +00001486 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
1487
1488 * Clear the 'exited' flag when mail loop is finished
1489
Miklos Szeredie989f0d2004-10-28 20:24:58 +000014902004-10-28 Miklos Szeredi <miklos@szeredi.hu>
1491
1492 * Make xattr functions work under 2.6 (bug found by Vincenzo
1493 Ciancia)
1494
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +000014952004-10-26 Miklos Szeredi <miklos@szeredi.hu>
1496
1497 * Reset request in fuse_flush() (bugreport by David Shaw)
1498
Miklos Szeredi5dc8a802004-10-21 09:35:10 +000014992004-10-21 Miklos Szeredi <miklos@szeredi.hu>
1500
Miklos Szeredi0e70aa72004-10-21 16:24:29 +00001501 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001502 error code
1503
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001504 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001505 make it easier to implement a custom event loop.
1506
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001507 * Use daemon() call to background the filesystem after mounting.
1508 This function closes the standard input, output and error and
1509 changes the current working directory to "/".
1510
Miklos Szeredi127d49b2004-10-14 13:33:39 +000015112004-10-14 Miklos Szeredi <miklos@szeredi.hu>
1512
1513 * Released 1.9
1514
Miklos Szeredid45baf42004-10-10 07:56:12 +000015152004-10-09 Miklos Szeredi <miklos@szeredi.hu>
1516
1517 * Don't allow fuse_flush() to be interrupted (bug found by David
1518 Shaw)
1519
Miklos Szeredi1f18db52004-09-27 06:54:49 +000015202004-09-27 Miklos Szeredi <miklos@szeredi.hu>
1521
1522 * Add PID to fuse_context. Patch by Steven James
1523
Miklos Szeredi1eea0322004-09-27 18:50:11 +00001524 * Change file handle type to 'unsigned long' in kernel interface
1525
Miklos Szeredid169f312004-09-22 08:48:26 +000015262004-09-22 Miklos Szeredi <miklos@szeredi.hu>
1527
1528 * A slight API change: fuse_get_context() doesn't need the "fuse"
1529 pointer, but the returned context contains it instead. The
1530 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +00001531
1532 * Fix mounting and umounting FUSE filesystem under another FUSE
1533 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +00001534
Miklos Szeredic2309912004-09-21 13:40:38 +000015352004-09-21 Miklos Szeredi <miklos@szeredi.hu>
1536
1537 * Fix deadlock in case of memory allocation failure. Patch by
1538 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +00001539
Miklos Szeredib2cf9562004-09-16 08:42:40 +000015402004-09-16 Miklos Szeredi <miklos@szeredi.hu>
1541
1542 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +00001543
Miklos Szeredi65afea12004-09-14 07:13:45 +000015442004-09-14 Miklos Szeredi <miklos@szeredi.hu>
1545
1546 * Check temporary file creation failure in do_getdir(). Bug
1547 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001548
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +000015492004-09-13 Miklos Szeredi <miklos@szeredi.hu>
1550
1551 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +00001552
1553 * Make requests non-interruptible so race with FORGET is avoided.
1554 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +00001555
1556 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001557
Miklos Szeredi8b2d3332004-09-09 08:44:01 +000015582004-09-09 Miklos Szeredi <miklos@szeredi.hu>
1559
1560 * Fix bug in case two FORGETs for the same node are executed in
1561 the wrong order. Bug spotted and endured for months by Franco
1562 Broi, and logfile for solution provided by Terje Oseberg
1563
Miklos Szeredi12085102004-09-02 18:13:57 +000015642004-09-01 Miklos Szeredi <miklos@szeredi.hu>
1565
1566 * Add -D_REENTRANT to the compile flags
1567
1568 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001569
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +000015702004-08-16 Miklos Szeredi <miklos@szeredi.hu>
1571
1572 * Change release method to be non-interruptible. Fixes bug
1573 causing missing release() call when program which has opened files
1574 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +00001575
Miklos Szeredi891b8742004-07-29 09:27:49 +000015762004-07-29 Miklos Szeredi <miklos@szeredi.hu>
1577
1578 * Add fuse_invalidate() to library API
1579
Miklos Szeredi94ed76a2004-07-26 19:38:45 +000015802004-07-26 Miklos Szeredi <miklos@szeredi.hu>
1581
1582 * Check permissions in setattr if 'default_permissions' flag is
1583 set. Bug spotted by Damjan Lango
1584
Miklos Szeredid66d3942004-07-24 13:47:44 +000015852004-07-24 Miklos Szeredi <miklos@szeredi.hu>
1586
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001587 * 'large_read' mount option removed for 2.6 kernels, since the
1588 default (dynamic read size) is better
1589
1590 * Extend kernel API with file handles. A file handle is returned
1591 by open, and passed to read, write, flush, fsync and release.
1592 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +00001593
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001594 * Security changes:
1595
1596 * Change the current directory to the mountpoint before checking
1597 the permissions and mount filesystem on "."
1598
1599 * By default don't modprobe the fuse module for non-root. The old
1600 behavior can be restored with the '--enable-auto-modprobe' flag of
1601 ./configure
1602
1603 * By default don't allow shared writable mappings for non-root.
1604 The old behavior can be restored with the 'user_mmap=1' module
1605 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +00001606
Miklos Szeredibd7661b2004-07-23 17:16:29 +000016072004-07-23 Miklos Szeredi <miklos@szeredi.hu>
1608
1609 * Clean up mount option passing to fusermount and to fuse_new()
1610 BEWARE: this changes the userspace API slightly, and the command
1611 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +00001612
Miklos Szeredi58865372004-07-20 14:22:26 +000016132004-07-20 Miklos Szeredi <miklos@szeredi.hu>
1614
1615 * Optimize reading under 2.6 kernels by issuing multiple page
1616 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +00001617
Miklos Szeredi84ba0f42004-07-18 11:32:59 +000016182004-07-18 Miklos Szeredi <miklos@szeredi.hu>
1619
1620 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001621
Miklos Szeredi069c9502004-07-16 16:17:02 +000016222004-07-16 Miklos Szeredi <miklos@szeredi.hu>
1623
1624 * Separate directory entry and inode attribute validity timer
1625
1626 * New write semaphore to stop page writeback during truncate
1627
1628 * Fsync now waits for all writes to complete before sending the
1629 request
1630
1631 * Optimization: if a page is completely written by
1632 fuse_commit_write(), clear the dirty flag and set the uptodate
1633 flag for that page
1634
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +00001635 * Some memory cleanup at exit
1636
Miklos Szeredi2529ca22004-07-13 15:36:52 +000016372004-07-13 Miklos Szeredi <miklos@szeredi.hu>
1638
1639 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +00001640 disable the "hide if open" behavior of unlink/rename.
1641
1642 * If temporary buffer allocation fails in raw read, fall back to a
1643 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +00001644
Miklos Szeredi73798f92004-07-12 15:55:11 +000016452004-07-12 Miklos Szeredi <miklos@szeredi.hu>
1646
1647 * Fix bug in do_open() in libfuse: open count was incremented
1648 after the reply is sent so it could race with unlink/forget and
1649 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +00001650
Miklos Szeredi015fe702004-07-12 11:52:24 +000016512004-07-08 Miklos Szeredi <miklos@szeredi.hu>
1652
1653 * When performing create or remove operation, refresh the parent's
1654 attributes on next revalidate, as i_nlink (and maybe size/time)
1655 could be inacurate.
1656
1657 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
1658 pages (2.6 only)
1659
1660 * Set set_page_dirty address space operation (2.6 only)
1661
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016622004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +00001663
1664 * Minor fix in read: print debug info even if read size is zero
1665
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016662004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +00001667
1668 * Fix race between truncate and writepage (fsx-linux now runs
1669 without error)
1670
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016712004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001672
1673 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
1674 by Mattias Wadman)
1675
1676 * Added option for direct read/write (-r)
1677
1678 * Fix revalidate time setting for newly created inodes
1679
Miklos Szerediacb4d362004-07-02 16:20:45 +00001680 * Remove uid==0 check for '-x' option in fusermount (kernel checks
1681 this)
1682
1683 * fuse_main() only installs handlers for signals (out of INT, HUP,
1684 TERM, PIPE), for which no handler has yet been installed
1685
1686 * Add module option 'user_allow_other' which if set to non-zero
1687 will allow non root user to specify the 'allow_other' mount option
1688 ('-x' option of fusermount)
1689
Miklos Szeredi014d7d22004-07-02 21:22:37 +00001690 * Fix deadlock between page writeback completion and truncate
1691 (bug found by Valient Gough with the fsx-linux utility)
1692
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016932004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001694
1695 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +00001696 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
1697 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +00001698
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016992004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +00001700
1701 * Acquire inode->i_sem before open and release methods to prevent
1702 concurrent rename or unlink operations.
1703
Miklos Szeredi65cf7c72004-06-30 11:34:56 +00001704 * Make __fuse_read_cmd() read only one command. This allows
1705 multiplexing the fuse file descriptor with other event sources
1706 using select() or poll() (patch by Jeff Harris)
1707
1708 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
1709
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017102004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +00001711
1712 * Fix file offset wrap around at 4G when doing large reads
1713
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017142004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001715
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001716 * Fix memory leak in open (Valient Gough)
1717
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017182004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001719
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001720 * Add "close after delete" support to libfuse (patch by Valient
1721 Gough)
1722
1723 * Cancel all worker threads before exit in multithreaded mode
1724
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017252004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001726
1727 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001728
1729 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001730
1731 * Work with newer libtool (1.5a)
1732
1733 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001734
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017352004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001736
1737 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001738
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017392004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001740
1741 * Fix possible inode leak in userspace in case of unfinished
1742 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001743
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017442004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001745
1746 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001747
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017482004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001749
1750 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001751
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017522004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001753
1754 * Build shared library as well as static (using libtool)
1755
1756 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1757 there has not been a release with the previous minor number, and I
1758 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001759
1760 * Change fuse_main(), so that default behavior is to go into
1761 background if mount is successful. '-f' and '-d' options disable
1762 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1763 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001764
1765 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1766 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001767
1768 * Don't call getdir method from open() only from first readdir().
1769 Open is sometimes just used to store the current directory
1770 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001771
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017722004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001773
1774 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001775
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017762004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001777
1778 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001779
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017802004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001781
1782 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001783
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017842004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001785
1786 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001787
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017882004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001789
1790 * Replaced binary mount data with text options
1791
1792 * Show FUSE specific mount options in /proc/mounts
1793
1794 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1795
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017962004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001797
1798 * Check some limits so userspace won't get too big requests
1799
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018002004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001801
1802 * Kill compile warning
1803
1804 * Upgraded user-mount patch for 2.6.5
1805
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018062004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001807
1808 * Add detection of user-mode-linux to configure
1809
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018102004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001811
1812 * fixed zero size case for getxattr and listxattr
1813
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018142004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001815
1816 * new fusermount flag '-z': lazy unmount, default is not lazy
1817
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001818 * Extended attributes operations added (getxattr, setxattr,
1819 listxattr, removexattr)
1820
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018212004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001822
1823 * If filesystem doesn't define a statfs operation, then an
1824 all-zero default statfs is returned instead of ENOSYS
1825
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018262004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001827
1828 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1829
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018302004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001831
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001832 * Fix for uClinux (Christian Magnusson)
1833
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018342004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001835
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001836 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001837
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001838 * More kernel interface changes:
1839
1840 * Lookup/getattr return cache timeout values
1841
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018422004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001843
1844 * Clean up option parsing in fuse_main()
1845
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001846 * Added fuse_get() function which returns the fuse object created
1847 by fuse_main()
1848
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018492004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001850
Miklos Szeredic40748a2004-02-20 16:38:45 +00001851 * removed old way of mounting (fusermount mountpoint program)
1852
Miklos Szeredib5958612004-02-20 14:10:49 +00001853 * more kernel interface changes:
1854
1855 * added nanosecond precision to file times
1856
Miklos Szeredic40748a2004-02-20 16:38:45 +00001857 * removed interface version from mount data
1858
1859 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1860
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018612004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001862
1863 * statfs library API changed to match other methods. Since this
1864 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1865
Miklos Szeredi76f65782004-02-19 16:55:40 +00001866 * kernel interface changes follow:
1867
1868 * statfs changed to 64 bits, added 'bavail' field
1869
1870 * add generation number to lookup result
1871
1872 * optimized mknod/mkdir/symlink/link (no separate lookup is
1873 needed)
1874
1875 * rdev size increased to 32 bits for mknod
1876
1877 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001878
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018792004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001880
1881 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001882
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018832004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001884
1885 * Added user-mount.2.6.2-rc3.patch
1886
1887 * Add FS_SAFE flag to fuse filesystem
1888
1889 * fusermount should allow (un)mounting for non-root even if not
1890 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001891
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018922004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001893
1894 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001895
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018962004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001897
1898 * Added check for i_size_read/write functions to configure.in
1899 (patch by Valient Gough)
1900
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019012004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001902
1903 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001904
1905 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001906
1907 * Readpage calls flush_dcache_page() after storing data
1908
1909 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001910
1911 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001912
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019132004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001914
1915 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001916
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019172004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001918
1919 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001920
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019212004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001922
1923 * Added -q option for fusermount
1924
1925 * fuse_unmount() now uses -q option of fusermount, so no error is
1926 printed if the cause of the program exit is that the filesystem
1927 has already been unmounted
1928
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001929 * Fix i_nlink correctness after rmdir/unlink
1930
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019312004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001932
Miklos Szeredib1158392004-01-26 14:43:12 +00001933 * Released 1.1-pre2
1934
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019352004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001936
Miklos Szeredi307242f2004-01-26 11:28:44 +00001937 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001938
1939 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001940
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019412004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001942
1943 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001944
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019452004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001946
1947 * Write all pending data before a RELEASE operation
1948
1949 * Suppress 'Bad file descriptor' warning on exit
1950
1951 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001952 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001953
Miklos Szeredib1158392004-01-26 14:43:12 +00001954 * New fusermount option '-l' which enables big reads. Big reads
1955 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001956
1957 * fuse_main() can accept fusermount arguments after a '--'
1958
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019592004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001960
1961 * Support for exporting filesystem over NFS (see README.NFS)
1962
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019632004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001964
1965 * Support non-blocking writepage on 2.6. This makes FUSE behave
1966 much more nicely in low-memory situations
1967
1968 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1969 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001970
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019712004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001972
1973 * Code cleanups
1974
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019752004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001976
1977 * Released 1.1-pre1
1978
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019792004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001980
1981 * Integrated 2.6 kernel support patch by Michael Grigoriev
1982
1983 * Improvements and cleanups for 2.6 kernels
1984
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019852004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001986
Miklos Szeredie5183742005-02-02 11:14:04 +00001987 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001988
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019892003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001990
1991 * Added major+minor version to library API, and minor version to
1992 kernel API
1993
David McNab7a19caf2003-12-13 02:05:46 +000019942003-12-13 David McNab <david@rebirthing.co.nz>
1995
1996 * Implemented fsync support in examples/example.py
1997
1998 * Implemented 'fsync' and 'statfs' methods in python
1999 interface
2000
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020012003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00002002
Miklos Szeredie5183742005-02-02 11:14:04 +00002003 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00002004
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00002005 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00002006
David McNab8bf62632003-12-11 22:49:22 +000020072003-12-12 David McNab <david@rebirthing.co.nz>
2008
2009 * Added distutils support to the python module, as per standard
2010 python development practice
2011
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020122003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00002013
2014 * Add file locking for mount/unmount (based on patch by Valient
2015 Gough)
2016
20172003-12-11 David McNab <david@rebirthing.co.nz>
2018
2019 * Python filesystem - was broken with python2.3, now fixed:
2020 - changed PyTuple_* calls to PySequence_*, because os.lstat
2021 is no longer returning a pure tuple
2022 - changed PyInt_Check() calls to also call PyLong_Check,
2023 to cover for cases (eg os.lstat) where longs are returned
2024 - Added support for file 'release' handling, which IMO is
2025 essential since this signals to a FS that writes to a file
2026 are complete (and therefore the file can now be disposed of
2027 meaningfully at the python filesystem's discretion)
2028 - Added '__init__' handler to base Fuse class, which allows
2029 your Python class to know the mountpoint and mount args,
2030 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00002031
Miklos Szeredi874d95d2003-12-11 14:27:57 +00002032 * General:
2033 - added 'mount.fuse' script (in util/ dir), which is meant to be
2034 symlinked from /sbin, and which allows FUSE filesystems to
2035 be mounted with the 'mount' command, and listed in fstab;
2036 also, mount arguments get passed to your filesystem
2037
2038
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020392003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00002040
2041 * Fix kernel version detection (again). Bugreport by Peter Levart
2042
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020432003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00002044
2045 * Applied read combining patch by Michael Grigoriev (tested by
2046 Valient Gough and Vincent Wagelaar)
2047
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020482003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00002049
2050 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
2051 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00002052
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020532003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00002054
2055 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00002056
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020572003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00002058
2059 * kernel version detection fix
2060
2061 * fusermount now uses "lazy" umount option
2062
2063 * fusermount can use modprobe with module-init-tools
2064
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020652003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00002066
2067 * Integrated caching patch by Michael Grigoriev
2068
Miklos Szeredida4e4862003-09-08 11:14:11 +00002069 * Added "Filesystems" file with descriptions of projects using
2070 FUSE
2071
Miklos Szeredi02ceb112003-09-08 13:52:25 +00002072 * Added patch by Michael Grigoriev to allow compliation of FUSE
2073 kernel module for 2.6 kernels
2074
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020752003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00002076
2077 * And another spec-file fix by Achim Settelmeier
2078
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020792003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00002080
2081 * Spec-file fix by Achim Settelmeier
2082
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020832003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00002084
Miklos Szerediac361172004-11-02 19:14:14 +00002085 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00002086
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020872003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00002088
2089 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
2090
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020912003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00002092
2093 * Updated fuse.spec file (Achim Settelmeier)
2094
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020952003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00002096
2097 * Version 1.0 released
2098
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000020992003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00002100
2101 * SuSE compilation fix by Juan-Mariano de Goyeneche
2102
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021032002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00002104
2105 * The release() VFS call is now exported to the FUSE interface
2106
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021072002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00002108
2109 * 64 bit file offset fixes in the fuse kernel module
2110
2111 * Added function 'fuse_exit()' which can be used to exit the main
2112 loop
2113
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021142002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00002115
2116 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
2117 an incompatible interface change.
2118
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021192002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00002120
2121 * Portablility fix (bug reported by C. Chris Erway)
2122
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021232002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00002124
2125 * Use Mark Glines' fd passing method for default operation instead
2126 of old reexec
2127
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021282002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00002129
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00002130 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
2131
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021322002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00002133
Miklos Szeredi60c23522002-10-24 09:19:43 +00002134 * fix incompatiblity with Red Hat kernels, with help from Nathan
2135 Thompson-Amato.
2136
Mark Glines65ba2192002-04-18 14:41:48 +000021372002-04-18 Mark Glines <mark@glines.org>
2138
2139 * added an alternative to fuse_mount(), called
2140 fuse_mount_ioslave(), which does not need to reexec the
2141 FUSE program.
2142 * added a small helper util needed by fuse_mount_ioslave().
2143
Mark Glines220635a2002-03-17 07:01:14 +000021442002-03-16 Mark Glines <mark@glines.org>
2145
2146 * use struct fuse_statfs everywhere possible to avoid problems
2147 with the headerfiles changing struct statfs member sizes
2148
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021492002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00002150
2151 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
2152
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021532002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00002154
2155 * RPM support by Achim Settelmeier
2156
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021572002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00002158
Miklos Szerediddc862a2002-01-09 13:46:10 +00002159 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00002160
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021612002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00002162
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00002163 * Revaidate all path components not just the last, this means a
2164 very small performance penalty for being more up-to-date.
2165
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021662002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00002167
2168 * Update and fix python interface
2169
Mark Glinesd84b39a2002-01-07 16:32:02 +000021702002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00002171
Mark Glinesd84b39a2002-01-07 16:32:02 +00002172 * Added statfs() support to kernel, lib, examples, and perl!
2173
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021742001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00002175
2176 * Better cross compilation support
2177
2178 * Ported to Compaq IPAQ
2179
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021802001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00002181
Miklos Szeredife25def2001-12-20 15:38:05 +00002182 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00002183 patch from Matt Ryan)
2184
Miklos Szeredife25def2001-12-20 15:38:05 +00002185 * Added flags to fusermount and to kernel interface to control
2186 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00002187
Miklos Szeredife25def2001-12-20 15:38:05 +00002188 * Integrated fuse_set_operations() into fuse_new()
2189
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021902001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00002191
2192 * Applied header protection + extern "C" patch by Roland
2193 Bauerschmidt
2194
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021952001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00002196
Miklos Szeredie5183742005-02-02 11:14:04 +00002197 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00002198
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000021992001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00002200
2201 * Cleaned up way of mounting simple filesystems.
2202
2203 * fuse_main() helper function added
2204
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000022052001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00002206
Miklos Szeredife25def2001-12-20 15:38:05 +00002207 * Optimized read/write operations, so that minimal copying of data
2208 is done
2209
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000022102001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00002211
2212 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00002213
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000022142001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00002215
2216 * Fixed vfsmount reference leak in fuse_follow_link
2217
2218 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
2219 userspace is ignored
2220
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000022212001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00002222
Miklos Szeredife25def2001-12-20 15:38:05 +00002223 * Started ChangeLog