blob: 4509318d97cd8501fd7cbba944dbba5e285b3a8e [file] [log] [blame]
Miklos Szerediff30a6c2005-02-02 10:53:59 +000012005-02-02 Miklos Szeredi <miklos@szeredi.hu>
2
3 * Fix possible race when operation is interrupted
4
Miklos Szeredi7a983952005-01-28 09:58:19 +000052005-01-28 Miklos Szeredi <miklos@szeredi.hu>
6
Miklos Szeredie5183742005-02-02 11:14:04 +00007 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +00008
Miklos Szeredied6b5dd2005-01-26 17:07:59 +000092005-01-26 Miklos Szeredi <miklos@szeredi.hu>
10
Miklos Szeredid48d5f72005-01-26 20:43:41 +000011 * Released 2.2-pre6
12
132005-01-26 Miklos Szeredi <miklos@szeredi.hu>
14
Miklos Szeredied6b5dd2005-01-26 17:07:59 +000015 * Fix bug in link() operation which caused the wrong path to be
16 passed as the first argument. Found by Anton Altaparmakov
17
Miklos Szeredi01fd89c2005-01-21 11:18:35 +0000182005-01-21 Miklos Szeredi <miklos@szeredi.hu>
19
20 * LIB: fix double reply in readdir operation
21
Miklos Szeredi773d4ae2005-01-21 16:09:08 +000022 * fusermount: fix uid checking bug. Patch by Adam Connell
23
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +000024 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +000025 Patch by Keshava Gowda
26
Miklos Szeredi64074142005-01-20 08:48:11 +0000272005-01-20 Miklos Szeredi <miklos@szeredi.hu>
28
Miklos Szeredi092b50b2005-01-20 18:05:07 +000029 * KERNEL: provide correct llseek semantics for fuse device (fixes
30 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
31
322005-01-20 Miklos Szeredi <miklos@szeredi.hu>
33
Miklos Szeredi64074142005-01-20 08:48:11 +000034 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
35
Miklos Szeredi1adb2272005-01-18 21:19:58 +0000362005-01-18 Miklos Szeredi <miklos@szeredi.hu>
37
38 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
39 and RELEASEDIR. This ends the ugly hack of passing a file
40 descriptor to the kernel, and actually makes the code simpler.
41
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000422005-01-17 Miklos Szeredi <miklos@szeredi.hu>
43
Miklos Szeredic2e960e2005-01-17 13:05:21 +000044 * Released 2.2-pre4
45
462005-01-17 Miklos Szeredi <miklos@szeredi.hu>
47
Miklos Szeredi7db35c02005-01-17 09:46:28 +000048 * fusermount: remove capability setting, which was the cause of
49 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +000050 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +000051
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000522005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +000053
Miklos Szeredidbe0f652005-01-15 14:32:56 +000054 * fix compilation on 2.4 kernels (reported by Valient Gough)
55
56 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +000057
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +000058 * fusermount: improve parsing of /etc/fuse.conf
59
602005-01-13 Miklos Szeredi <miklos@szeredi.hu>
61
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +000062 * Remove 'mount_max' and 'user_allow_other' module options. These
63 are now checked by fusermount, and can be set in /etc/fuse.conf
64
65 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
66
Miklos Szeredi81394522005-01-11 14:24:18 +0000672005-01-11 Miklos Szeredi <miklos@szeredi.hu>
68
69 * KERNEL: fix possible inode allocation problem, where
70 sizeof(struct inode) is not aligned (found by Mike Waychison)
71
72 * KERNEL: use new follow_link/put_link methods
73
74 * KERNEL: cosmetic fixes
75
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +0000762005-01-10 Miklos Szeredi <miklos@szeredi.hu>
77
78 * Released 2.2-pre3
79
802005-01-10 Miklos Szeredi <miklos@szeredi.hu>
81
82 * Add missing code that was accidently left out
83
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000842005-01-09 Miklos Szeredi <miklos@szeredi.hu>
85
Miklos Szeredi8d775f72005-01-09 20:22:53 +000086 * Released 2.2-pre2
87
882005-01-09 Miklos Szeredi <miklos@szeredi.hu>
89
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +000090 * Change "uid" mount option to "user_id" to avoid confusion with a
91 mount option "uid" commonly used by many filesystems
92
932005-01-09 Miklos Szeredi <miklos@szeredi.hu>
94
Miklos Szeredi8c7da232005-01-09 12:27:41 +000095 * Released 2.2-pre1
96
972005-01-09 Miklos Szeredi <miklos@szeredi.hu>
98
99 * If FUSE is configured in the kernel, don't build it by default
100
Miklos Szeredi2a927272005-01-07 11:14:15 +00001012005-01-07 Miklos Szeredi <miklos@szeredi.hu>
102
103 * Compile fix by Christian Magnusson
104
Miklos Szeredib6220192005-01-05 16:19:10 +00001052005-01-05 Miklos Szeredi <miklos@szeredi.hu>
106
107 * Fix compilation for 2.6.{0-5} kernels
108
Miklos Szeredi0f62d722005-01-04 12:45:54 +00001092005-01-04 Miklos Szeredi <miklos@szeredi.hu>
110
111 * KERNEL: if request is interrupted, still keep reference to used
112 inode(s) and file, so that FORGET and RELEASE are not sent until
113 userspace finishes the request.
114
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000115 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
116 request with the same information, which is more flexible,
117 simpler, works on embedded systems.
118
Miklos Szeredi0f62d722005-01-04 12:45:54 +00001192004-12-16 Miklos Szeredi <miklos@szeredi.hu>
120
121 * KERNEL ABI: update interface to make it independent of type
122 sizes. This will help on 64 bit architectures which can run
123 legacy 32 bit applications.
124
125 * KERNEL ABI: add "len" field to request headers. This will allow
126 sending/receiving requests in multiple chunks.
127
128 * KERNEL: handle file type change more intelligently
129
130 * LIB: "-o debug" option should disable backgrounding (fix by
131 Fabien Reygrobellet)
132
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00001332004-12-13 Miklos Szeredi <miklos@szeredi.hu>
134
135 * KERNEL: invalidate dentry/attributes if interrupted request
136 could leave filesystem in an unknown state.
137
Miklos Szeredie56818b2004-12-12 11:45:24 +00001382004-12-12 Miklos Szeredi <miklos@szeredi.hu>
139
140 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
141 These will cause some regressions, but stability is considered
142 more important. If any of these features turns out to be
143 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000144
Miklos Szeredie56818b2004-12-12 11:45:24 +0000145 * Make all requests interruptible (only with SIGKILL currently).
146 This can be used to break any deadlock produced by the userspace
147 filesystem accessing it's own exported files. The RELEASE request
148 is special, because if it's interrupted before sending it to
149 userspace it is still sent, but the reply is not awaited.
150
151 * If request is interrupted before being sent to userspace, and if
152 it hasn't yet got any side effects, it is always restarted,
153 regardless of the SA_RESTART flag. This makes these interruptions
154 transparent to the process.
155
156 * Remove shared-writable mmap support, which was prone to an
157 out-of-memory deadlock situation
158
159 * Remove INVALIDATE userspace initiated request
160
161 * Make readpages() synchronous. Asynchronous requests are
162 deadlock prone, since they cannot be interrupted.
163
164 * Add readv/writev support to fuse device operations
165
166 * Remove some printks, which userspace FS can use for a DoS
167 against syslog
168
169 * Remove 'large_read' mount option from 2.6 in kernel, check it in
170 fusermount instead
171
172 * LIB: improve compatibility with a fuse.h header installed in
173 ${prefix}/include which in turn includes the real header.
174
175 * LIB: improve compatibility by defining fuse_main() (which is now
176 not used), so old configure scripts find it.
177
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00001782004-12-10 Miklos Szeredi <miklos@szeredi.hu>
179
180 * When mounting on a subdirectory of / don't duplicate slashes at
181 the beggining of path (spotted by David Shaw)
182
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00001832004-12-09 Miklos Szeredi <miklos@szeredi.hu>
184
185 * Fix bug causing garbage in mount options (spotted by David Shaw)
186
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00001872004-12-07 Miklos Szeredi <miklos@szeredi.hu>
188
189 * Add 'writepage' flag to 'fuse_file_info'.
190
191 * More comments in fuse.h
192
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000193 * Get rid of double underscores
194
Miklos Szeredi799993c2004-12-04 21:20:05 +00001952004-12-04 Miklos Szeredi <miklos@szeredi.hu>
196
197 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
198
199 * helper.c: add -ho option, which only displays the options not
200 the usage header. This can be used by filesystems which have
201 their own options.
202
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00002032004-12-03 Miklos Szeredi <miklos@szeredi.hu>
204
205 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
206 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
207 including the fuse header
208
209 * Add binary compatibility to 2.1 version of library with symbol
210 versioning
211
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00002122004-12-03 Miklos Szeredi <miklos@szeredi.hu>
213
214 * Released 2.1
215
Miklos Szeredi039322d2004-12-01 18:39:12 +00002162004-12-01 Miklos Szeredi <miklos@szeredi.hu>
217
218 * kernel: clean up writing functions
219
220 * kernel: no allocation on write in direct_io mode
221
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000222 * move linux/fuse.h to fuse_kernel.h
223
Miklos Szeredi83a07442004-11-30 18:25:20 +00002242004-11-30 Miklos Szeredi <miklos@szeredi.hu>
225
226 * kernel: clean up reading functions
227
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00002282004-11-29 Miklos Szeredi <miklos@szeredi.hu>
229
230 * kernel: make readpage() uninterruptible
231
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000232 * kernel: check readonly filesystem flag in fuse_permission
233
234 * lib: don't die if version file not found and new style device
235 exists
236
237 * lib: add '-r' option, which is short for '-o ro'
238
239 * fusermount: simplify device opening
240
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000241 * kernel: when direct_io is turend on, copy data directly to
242 destination without itermediate buffer. More efficient and safer,
243 since no allocation is done.
244
245 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000246
247 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000248
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00002492004-11-26 Miklos Szeredi <miklos@szeredi.hu>
250
251 * libfuse API change: open, read, write, flush, fsync and release
252 are passed a 'struct fuse_file_info' pointer containing the open
253 flags (open and release), and the file handle. Verion changed to
254 3.0.
255
Miklos Szeredia25d4c22004-11-23 22:32:16 +00002562004-11-23 Miklos Szeredi <miklos@szeredi.hu>
257
258 * More cleanups in the kernel
259
260 * The 10,229 charater device number has been assigned for FUSE
261
262 * Version file checking fix (reported by Christian Magnusson)
263
264 * fusermount: opening the fuse device now doesn't need /sys.
265
266 * Optimize reading by controlling the maximum readahead based on
267 the 'max_read' mount option
268
269 * fixes for UCLIBC (Christian Magnusson)
270
Miklos Szeredi13ed4822004-11-20 11:12:21 +00002712004-11-19 Miklos Szeredi <miklos@szeredi.hu>
272
273 * Cleaned up kernel in preparation for merge into mainline:
274
275 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
276
277 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
278
279 * __user annotations for sparse
280
281 * allocate individual pages instead of kmalloc in fuse_readdir,
282 fuse_read and fuse_write.
283
284 * Fix NFS export in case "use_ino" mount option is given
285
Miklos Szeredif3845c42004-11-20 11:18:34 +0000286 * Make libfuse and fusermount compatible with future versions
287
288 * fusermount: properly add mount options to /etc/mtab
289
2902004-11-15 Miklos Szeredi <miklos@szeredi.hu>
291
292 * fusermount: do not resolve last component of mountpoint on if it
293 is '.' or '..'. This new path resolvation is now done on mount as
294 well as unmount. This enables relative paths to work on unmount.
295
296 * fusermount: parse common mount options like "ro", "rw", etc...
297
298 * Allow module params to be changed through sysfs
299
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00003002004-11-14 Miklos Szeredi <miklos@szeredi.hu>
301
302 * Released 2.1-pre1
303
3042004-11-14 Miklos Szeredi <miklos@szeredi.hu>
305
306 * Fix bug in fuse_readpages() causing Oops in certain situations.
307 Bug found by Vincenzo Ciancia.
308
309 * Fix compilation with kernels versions > 2.6.9.
310
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00003112004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000312
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000313 * Check kernel interface version in fusermount to prevent
314 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000315
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000316 * No need to allocate fuse_conn until actual mount happens
317
318 * Fix potential race between umount and fuse_invalidate
319
320 * Check superblock of proc file in addition to inode number
321
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000322 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000323
Miklos Szeredi51ec1032004-11-10 11:52:26 +00003242004-11-10 Miklos Szeredi <miklos@szeredi.hu>
325
326 * Separate configure for the kernel directory
327
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000328 * Don't allow write to return more than 'count'
329
330 * Extend kernel interface for future use
331
Miklos Szeredi51ec1032004-11-10 11:52:26 +00003322004-11-09 Miklos Szeredi <miklos@szeredi.hu>
333
334 * Fix 'makeconf.sh' to use autoreconf if available
335
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00003362004-11-08 Miklos Szeredi <miklos@szeredi.hu>
337
Miklos Szeredid507c732004-11-08 17:32:25 +0000338 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
339 compatibility with earlier versions. To compile earier versions
340 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
341 Do not use the "use_ino" mount flag with filesystems compiled with
342 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000343
344 * Add pkg-config support. To compile a FUSE based filesystem you
345 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
346 or similar. Note, that the PKG_CONFIG_PATH environment variable
347 usually needs to be set to "/usr/local/lib/pkgconfig".
348
349 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000350
Miklos Szeredia13d9002004-11-02 17:32:03 +00003512004-11-02 Miklos Szeredi <miklos@szeredi.hu>
352
353 * Added "use_ino" mount option. This enables the filesystems to
354 set the st_ino field on files
355
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00003562004-11-01 Miklos Szeredi <miklos@szeredi.hu>
357
358 * Fix compile problems with ancient (<=2.4.18) kernels (reported
359 by Jeremy Smith)
360
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000361 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
362
363 * Clear the 'exited' flag when mail loop is finished
364
Miklos Szeredie989f0d2004-10-28 20:24:58 +00003652004-10-28 Miklos Szeredi <miklos@szeredi.hu>
366
367 * Make xattr functions work under 2.6 (bug found by Vincenzo
368 Ciancia)
369
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00003702004-10-26 Miklos Szeredi <miklos@szeredi.hu>
371
372 * Reset request in fuse_flush() (bugreport by David Shaw)
373
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00003742004-10-21 Miklos Szeredi <miklos@szeredi.hu>
375
Miklos Szeredi0e70aa72004-10-21 16:24:29 +0000376 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000377 error code
378
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000379 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000380 make it easier to implement a custom event loop.
381
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000382 * Use daemon() call to background the filesystem after mounting.
383 This function closes the standard input, output and error and
384 changes the current working directory to "/".
385
Miklos Szeredi127d49b2004-10-14 13:33:39 +00003862004-10-14 Miklos Szeredi <miklos@szeredi.hu>
387
388 * Released 1.9
389
Miklos Szeredid45baf42004-10-10 07:56:12 +00003902004-10-09 Miklos Szeredi <miklos@szeredi.hu>
391
392 * Don't allow fuse_flush() to be interrupted (bug found by David
393 Shaw)
394
Miklos Szeredi1f18db52004-09-27 06:54:49 +00003952004-09-27 Miklos Szeredi <miklos@szeredi.hu>
396
397 * Add PID to fuse_context. Patch by Steven James
398
Miklos Szeredi1eea0322004-09-27 18:50:11 +0000399 * Change file handle type to 'unsigned long' in kernel interface
400
Miklos Szeredid169f312004-09-22 08:48:26 +00004012004-09-22 Miklos Szeredi <miklos@szeredi.hu>
402
403 * A slight API change: fuse_get_context() doesn't need the "fuse"
404 pointer, but the returned context contains it instead. The
405 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +0000406
407 * Fix mounting and umounting FUSE filesystem under another FUSE
408 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +0000409
Miklos Szeredic2309912004-09-21 13:40:38 +00004102004-09-21 Miklos Szeredi <miklos@szeredi.hu>
411
412 * Fix deadlock in case of memory allocation failure. Patch by
413 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +0000414
Miklos Szeredib2cf9562004-09-16 08:42:40 +00004152004-09-16 Miklos Szeredi <miklos@szeredi.hu>
416
417 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +0000418
Miklos Szeredi65afea12004-09-14 07:13:45 +00004192004-09-14 Miklos Szeredi <miklos@szeredi.hu>
420
421 * Check temporary file creation failure in do_getdir(). Bug
422 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000423
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00004242004-09-13 Miklos Szeredi <miklos@szeredi.hu>
425
426 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000427
428 * Make requests non-interruptible so race with FORGET is avoided.
429 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000430
431 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000432
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00004332004-09-09 Miklos Szeredi <miklos@szeredi.hu>
434
435 * Fix bug in case two FORGETs for the same node are executed in
436 the wrong order. Bug spotted and endured for months by Franco
437 Broi, and logfile for solution provided by Terje Oseberg
438
Miklos Szeredi12085102004-09-02 18:13:57 +00004392004-09-01 Miklos Szeredi <miklos@szeredi.hu>
440
441 * Add -D_REENTRANT to the compile flags
442
443 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000444
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00004452004-08-16 Miklos Szeredi <miklos@szeredi.hu>
446
447 * Change release method to be non-interruptible. Fixes bug
448 causing missing release() call when program which has opened files
449 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000450
Miklos Szeredi891b8742004-07-29 09:27:49 +00004512004-07-29 Miklos Szeredi <miklos@szeredi.hu>
452
453 * Add fuse_invalidate() to library API
454
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00004552004-07-26 Miklos Szeredi <miklos@szeredi.hu>
456
457 * Check permissions in setattr if 'default_permissions' flag is
458 set. Bug spotted by Damjan Lango
459
Miklos Szeredid66d3942004-07-24 13:47:44 +00004602004-07-24 Miklos Szeredi <miklos@szeredi.hu>
461
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000462 * 'large_read' mount option removed for 2.6 kernels, since the
463 default (dynamic read size) is better
464
465 * Extend kernel API with file handles. A file handle is returned
466 by open, and passed to read, write, flush, fsync and release.
467 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +0000468
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000469 * Security changes:
470
471 * Change the current directory to the mountpoint before checking
472 the permissions and mount filesystem on "."
473
474 * By default don't modprobe the fuse module for non-root. The old
475 behavior can be restored with the '--enable-auto-modprobe' flag of
476 ./configure
477
478 * By default don't allow shared writable mappings for non-root.
479 The old behavior can be restored with the 'user_mmap=1' module
480 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000481
Miklos Szeredibd7661b2004-07-23 17:16:29 +00004822004-07-23 Miklos Szeredi <miklos@szeredi.hu>
483
484 * Clean up mount option passing to fusermount and to fuse_new()
485 BEWARE: this changes the userspace API slightly, and the command
486 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +0000487
Miklos Szeredi58865372004-07-20 14:22:26 +00004882004-07-20 Miklos Szeredi <miklos@szeredi.hu>
489
490 * Optimize reading under 2.6 kernels by issuing multiple page
491 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +0000492
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00004932004-07-18 Miklos Szeredi <miklos@szeredi.hu>
494
495 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000496
Miklos Szeredi069c9502004-07-16 16:17:02 +00004972004-07-16 Miklos Szeredi <miklos@szeredi.hu>
498
499 * Separate directory entry and inode attribute validity timer
500
501 * New write semaphore to stop page writeback during truncate
502
503 * Fsync now waits for all writes to complete before sending the
504 request
505
506 * Optimization: if a page is completely written by
507 fuse_commit_write(), clear the dirty flag and set the uptodate
508 flag for that page
509
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000510 * Some memory cleanup at exit
511
Miklos Szeredi2529ca22004-07-13 15:36:52 +00005122004-07-13 Miklos Szeredi <miklos@szeredi.hu>
513
514 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000515 disable the "hide if open" behavior of unlink/rename.
516
517 * If temporary buffer allocation fails in raw read, fall back to a
518 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +0000519
Miklos Szeredi73798f92004-07-12 15:55:11 +00005202004-07-12 Miklos Szeredi <miklos@szeredi.hu>
521
522 * Fix bug in do_open() in libfuse: open count was incremented
523 after the reply is sent so it could race with unlink/forget and
524 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +0000525
Miklos Szeredi015fe702004-07-12 11:52:24 +00005262004-07-08 Miklos Szeredi <miklos@szeredi.hu>
527
528 * When performing create or remove operation, refresh the parent's
529 attributes on next revalidate, as i_nlink (and maybe size/time)
530 could be inacurate.
531
532 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
533 pages (2.6 only)
534
535 * Set set_page_dirty address space operation (2.6 only)
536
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005372004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +0000538
539 * Minor fix in read: print debug info even if read size is zero
540
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005412004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +0000542
543 * Fix race between truncate and writepage (fsx-linux now runs
544 without error)
545
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005462004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000547
548 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
549 by Mattias Wadman)
550
551 * Added option for direct read/write (-r)
552
553 * Fix revalidate time setting for newly created inodes
554
Miklos Szerediacb4d362004-07-02 16:20:45 +0000555 * Remove uid==0 check for '-x' option in fusermount (kernel checks
556 this)
557
558 * fuse_main() only installs handlers for signals (out of INT, HUP,
559 TERM, PIPE), for which no handler has yet been installed
560
561 * Add module option 'user_allow_other' which if set to non-zero
562 will allow non root user to specify the 'allow_other' mount option
563 ('-x' option of fusermount)
564
Miklos Szeredi014d7d22004-07-02 21:22:37 +0000565 * Fix deadlock between page writeback completion and truncate
566 (bug found by Valient Gough with the fsx-linux utility)
567
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005682004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000569
570 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +0000571 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
572 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +0000573
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005742004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +0000575
576 * Acquire inode->i_sem before open and release methods to prevent
577 concurrent rename or unlink operations.
578
Miklos Szeredi65cf7c72004-06-30 11:34:56 +0000579 * Make __fuse_read_cmd() read only one command. This allows
580 multiplexing the fuse file descriptor with other event sources
581 using select() or poll() (patch by Jeff Harris)
582
583 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
584
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005852004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +0000586
587 * Fix file offset wrap around at 4G when doing large reads
588
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005892004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000590
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000591 * Fix memory leak in open (Valient Gough)
592
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005932004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000594
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000595 * Add "close after delete" support to libfuse (patch by Valient
596 Gough)
597
598 * Cancel all worker threads before exit in multithreaded mode
599
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006002004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +0000601
602 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +0000603
604 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +0000605
606 * Work with newer libtool (1.5a)
607
608 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +0000609
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006102004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +0000611
612 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +0000613
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006142004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +0000615
616 * Fix possible inode leak in userspace in case of unfinished
617 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +0000618
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006192004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +0000620
621 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +0000622
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006232004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +0000624
625 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +0000626
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006272004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +0000628
629 * Build shared library as well as static (using libtool)
630
631 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
632 there has not been a release with the previous minor number, and I
633 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +0000634
635 * Change fuse_main(), so that default behavior is to go into
636 background if mount is successful. '-f' and '-d' options disable
637 backgrounding. This fixes the "Why does my FUSE daemon hang?"
638 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +0000639
640 * Cache ENOSYS (function not implemented) errors on *xattr, flush
641 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +0000642
643 * Don't call getdir method from open() only from first readdir().
644 Open is sometimes just used to store the current directory
645 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +0000646
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006472004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +0000648
649 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +0000650
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006512004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +0000652
653 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +0000654
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006552004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +0000656
657 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +0000658
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006592004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +0000660
661 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +0000662
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006632004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +0000664
665 * Replaced binary mount data with text options
666
667 * Show FUSE specific mount options in /proc/mounts
668
669 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
670
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006712004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +0000672
673 * Check some limits so userspace won't get too big requests
674
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006752004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +0000676
677 * Kill compile warning
678
679 * Upgraded user-mount patch for 2.6.5
680
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006812004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +0000682
683 * Add detection of user-mode-linux to configure
684
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006852004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +0000686
687 * fixed zero size case for getxattr and listxattr
688
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006892004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +0000690
691 * new fusermount flag '-z': lazy unmount, default is not lazy
692
Miklos Szeredi3ed84232004-03-30 15:17:26 +0000693 * Extended attributes operations added (getxattr, setxattr,
694 listxattr, removexattr)
695
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006962004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +0000697
698 * If filesystem doesn't define a statfs operation, then an
699 all-zero default statfs is returned instead of ENOSYS
700
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007012004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +0000702
703 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
704
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007052004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +0000706
Miklos Szeredi8af63ae2004-03-09 10:54:17 +0000707 * Fix for uClinux (Christian Magnusson)
708
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007092004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +0000710
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +0000711 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +0000712
Miklos Szeredi254d5ed2004-03-02 11:11:24 +0000713 * More kernel interface changes:
714
715 * Lookup/getattr return cache timeout values
716
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007172004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +0000718
719 * Clean up option parsing in fuse_main()
720
Miklos Szeredi33c319c2004-02-25 09:19:29 +0000721 * Added fuse_get() function which returns the fuse object created
722 by fuse_main()
723
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007242004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +0000725
Miklos Szeredic40748a2004-02-20 16:38:45 +0000726 * removed old way of mounting (fusermount mountpoint program)
727
Miklos Szeredib5958612004-02-20 14:10:49 +0000728 * more kernel interface changes:
729
730 * added nanosecond precision to file times
731
Miklos Szeredic40748a2004-02-20 16:38:45 +0000732 * removed interface version from mount data
733
734 * added /proc/fs/fuse/version which contains MAJOR.MINOR
735
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007362004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +0000737
738 * statfs library API changed to match other methods. Since this
739 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
740
Miklos Szeredi76f65782004-02-19 16:55:40 +0000741 * kernel interface changes follow:
742
743 * statfs changed to 64 bits, added 'bavail' field
744
745 * add generation number to lookup result
746
747 * optimized mknod/mkdir/symlink/link (no separate lookup is
748 needed)
749
750 * rdev size increased to 32 bits for mknod
751
752 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +0000753
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007542004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +0000755
756 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +0000757
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007582004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +0000759
760 * Added user-mount.2.6.2-rc3.patch
761
762 * Add FS_SAFE flag to fuse filesystem
763
764 * fusermount should allow (un)mounting for non-root even if not
765 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +0000766
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007672004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +0000768
769 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +0000770
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007712004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +0000772
773 * Added check for i_size_read/write functions to configure.in
774 (patch by Valient Gough)
775
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007762004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +0000777
778 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +0000779
780 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +0000781
782 * Readpage calls flush_dcache_page() after storing data
783
784 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +0000785
786 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +0000787
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007882004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +0000789
790 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +0000791
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007922004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +0000793
794 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +0000795
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007962004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +0000797
798 * Added -q option for fusermount
799
800 * fuse_unmount() now uses -q option of fusermount, so no error is
801 printed if the cause of the program exit is that the filesystem
802 has already been unmounted
803
Miklos Szeredif4f8b892004-01-27 17:04:59 +0000804 * Fix i_nlink correctness after rmdir/unlink
805
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008062004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000807
Miklos Szeredib1158392004-01-26 14:43:12 +0000808 * Released 1.1-pre2
809
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008102004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +0000811
Miklos Szeredi307242f2004-01-26 11:28:44 +0000812 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +0000813
814 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000815
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008162004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000817
818 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000819
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008202004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000821
822 * Write all pending data before a RELEASE operation
823
824 * Suppress 'Bad file descriptor' warning on exit
825
826 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +0000827 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +0000828
Miklos Szeredib1158392004-01-26 14:43:12 +0000829 * New fusermount option '-l' which enables big reads. Big reads
830 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +0000831
832 * fuse_main() can accept fusermount arguments after a '--'
833
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008342004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +0000835
836 * Support for exporting filesystem over NFS (see README.NFS)
837
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008382004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +0000839
840 * Support non-blocking writepage on 2.6. This makes FUSE behave
841 much more nicely in low-memory situations
842
843 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
844 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +0000845
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008462004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +0000847
848 * Code cleanups
849
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008502004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +0000851
852 * Released 1.1-pre1
853
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008542004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +0000855
856 * Integrated 2.6 kernel support patch by Michael Grigoriev
857
858 * Improvements and cleanups for 2.6 kernels
859
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008602004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +0000861
Miklos Szeredie5183742005-02-02 11:14:04 +0000862 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +0000863
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008642003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +0000865
866 * Added major+minor version to library API, and minor version to
867 kernel API
868
David McNab7a19caf2003-12-13 02:05:46 +00008692003-12-13 David McNab <david@rebirthing.co.nz>
870
871 * Implemented fsync support in examples/example.py
872
873 * Implemented 'fsync' and 'statfs' methods in python
874 interface
875
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008762003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +0000877
Miklos Szeredie5183742005-02-02 11:14:04 +0000878 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +0000879
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +0000880 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +0000881
David McNab8bf62632003-12-11 22:49:22 +00008822003-12-12 David McNab <david@rebirthing.co.nz>
883
884 * Added distutils support to the python module, as per standard
885 python development practice
886
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008872003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +0000888
889 * Add file locking for mount/unmount (based on patch by Valient
890 Gough)
891
8922003-12-11 David McNab <david@rebirthing.co.nz>
893
894 * Python filesystem - was broken with python2.3, now fixed:
895 - changed PyTuple_* calls to PySequence_*, because os.lstat
896 is no longer returning a pure tuple
897 - changed PyInt_Check() calls to also call PyLong_Check,
898 to cover for cases (eg os.lstat) where longs are returned
899 - Added support for file 'release' handling, which IMO is
900 essential since this signals to a FS that writes to a file
901 are complete (and therefore the file can now be disposed of
902 meaningfully at the python filesystem's discretion)
903 - Added '__init__' handler to base Fuse class, which allows
904 your Python class to know the mountpoint and mount args,
905 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +0000906
Miklos Szeredi874d95d2003-12-11 14:27:57 +0000907 * General:
908 - added 'mount.fuse' script (in util/ dir), which is meant to be
909 symlinked from /sbin, and which allows FUSE filesystems to
910 be mounted with the 'mount' command, and listed in fstab;
911 also, mount arguments get passed to your filesystem
912
913
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009142003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +0000915
916 * Fix kernel version detection (again). Bugreport by Peter Levart
917
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009182003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +0000919
920 * Applied read combining patch by Michael Grigoriev (tested by
921 Valient Gough and Vincent Wagelaar)
922
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009232003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +0000924
925 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
926 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +0000927
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009282003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +0000929
930 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +0000931
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009322003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +0000933
934 * kernel version detection fix
935
936 * fusermount now uses "lazy" umount option
937
938 * fusermount can use modprobe with module-init-tools
939
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009402003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +0000941
942 * Integrated caching patch by Michael Grigoriev
943
Miklos Szeredida4e4862003-09-08 11:14:11 +0000944 * Added "Filesystems" file with descriptions of projects using
945 FUSE
946
Miklos Szeredi02ceb112003-09-08 13:52:25 +0000947 * Added patch by Michael Grigoriev to allow compliation of FUSE
948 kernel module for 2.6 kernels
949
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009502003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +0000951
952 * And another spec-file fix by Achim Settelmeier
953
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009542003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +0000955
956 * Spec-file fix by Achim Settelmeier
957
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009582003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +0000959
Miklos Szerediac361172004-11-02 19:14:14 +0000960 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +0000961
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009622003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +0000963
964 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
965
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009662003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +0000967
968 * Updated fuse.spec file (Achim Settelmeier)
969
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009702003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +0000971
972 * Version 1.0 released
973
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009742003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +0000975
976 * SuSE compilation fix by Juan-Mariano de Goyeneche
977
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009782002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +0000979
980 * The release() VFS call is now exported to the FUSE interface
981
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009822002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +0000983
984 * 64 bit file offset fixes in the fuse kernel module
985
986 * Added function 'fuse_exit()' which can be used to exit the main
987 loop
988
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009892002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +0000990
991 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
992 an incompatible interface change.
993
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009942002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +0000995
996 * Portablility fix (bug reported by C. Chris Erway)
997
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009982002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +0000999
1000 * Use Mark Glines' fd passing method for default operation instead
1001 of old reexec
1002
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010032002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001004
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001005 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1006
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010072002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001008
Miklos Szeredi60c23522002-10-24 09:19:43 +00001009 * fix incompatiblity with Red Hat kernels, with help from Nathan
1010 Thompson-Amato.
1011
Mark Glines65ba2192002-04-18 14:41:48 +000010122002-04-18 Mark Glines <mark@glines.org>
1013
1014 * added an alternative to fuse_mount(), called
1015 fuse_mount_ioslave(), which does not need to reexec the
1016 FUSE program.
1017 * added a small helper util needed by fuse_mount_ioslave().
1018
Mark Glines220635a2002-03-17 07:01:14 +000010192002-03-16 Mark Glines <mark@glines.org>
1020
1021 * use struct fuse_statfs everywhere possible to avoid problems
1022 with the headerfiles changing struct statfs member sizes
1023
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010242002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001025
1026 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1027
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010282002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001029
1030 * RPM support by Achim Settelmeier
1031
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010322002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001033
Miklos Szerediddc862a2002-01-09 13:46:10 +00001034 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001035
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010362002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001037
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001038 * Revaidate all path components not just the last, this means a
1039 very small performance penalty for being more up-to-date.
1040
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010412002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001042
1043 * Update and fix python interface
1044
Mark Glinesd84b39a2002-01-07 16:32:02 +000010452002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001046
Mark Glinesd84b39a2002-01-07 16:32:02 +00001047 * Added statfs() support to kernel, lib, examples, and perl!
1048
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010492001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001050
1051 * Better cross compilation support
1052
1053 * Ported to Compaq IPAQ
1054
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010552001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001056
Miklos Szeredife25def2001-12-20 15:38:05 +00001057 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001058 patch from Matt Ryan)
1059
Miklos Szeredife25def2001-12-20 15:38:05 +00001060 * Added flags to fusermount and to kernel interface to control
1061 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001062
Miklos Szeredife25def2001-12-20 15:38:05 +00001063 * Integrated fuse_set_operations() into fuse_new()
1064
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010652001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001066
1067 * Applied header protection + extern "C" patch by Roland
1068 Bauerschmidt
1069
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010702001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001071
Miklos Szeredie5183742005-02-02 11:14:04 +00001072 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001073
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010742001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001075
1076 * Cleaned up way of mounting simple filesystems.
1077
1078 * fuse_main() helper function added
1079
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010802001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001081
Miklos Szeredife25def2001-12-20 15:38:05 +00001082 * Optimized read/write operations, so that minimal copying of data
1083 is done
1084
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010852001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001086
1087 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001088
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010892001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001090
1091 * Fixed vfsmount reference leak in fuse_follow_link
1092
1093 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1094 userspace is ignored
1095
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010962001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001097
Miklos Szeredife25def2001-12-20 15:38:05 +00001098 * Started ChangeLog