blob: ba85a21db8f4ab61fb7bd7ce73cc304e500c3b90 [file] [log] [blame]
Miklos Szeredi407e6a72005-03-25 12:19:43 +000012005-03-24 Miklos Szeredi <miklos@szeredi.hu>
2
3 * kernel: trivial cleanups
4
Miklos Szeredi4283ee72005-03-21 12:09:04 +000052005-03-21 Miklos Szeredi <miklos@szeredi.hu>
6
7 * Add fsyncdir() operation
8
Miklos Szeredid17da462005-03-21 11:47:04 +000092005-03-19 Miklos Szeredi <miklos@szeredi.hu>
10
11 * kernel: add locking to background list (fixes previous fix)
12
132005-03-18 Miklos Szeredi <miklos@szeredi.hu>
14
15 * kernel: fix bug which could cause leave busy inodes after
16 unmount, and Oops.
17
182005-03-08 Miklos Szeredi <miklos@szeredi.hu>
19
20 * examples: add -lpthread to link flags to work around valgrind
21 quirk
22
23 * lib: don't exit threads, so cancelation doesn't cause segfault
24
Miklos Szeredi31fa41c2005-03-04 17:28:51 +0000252005-03-04 Miklos Szeredi <miklos@szeredi.hu>
26
27 * kernel: fix nasty bug which could cause an Oops under certain
28 situations. Found by Magnus Johansson
29
Miklos Szeredif43f0632005-02-28 11:46:56 +0000302005-02-28 Miklos Szeredi <miklos@szeredi.hu>
31
Miklos Szeredi159bd7e2005-02-28 17:32:16 +000032 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +000033 permission checking in getdir() is too late. Thanks to Usarin
34 Heininga for pointing out this deficiency
35
Miklos Szeredi159bd7e2005-02-28 17:32:16 +000036 * libfuse: added init() and destroy() methods to fuse_operations
37
Miklos Szeredif43f0632005-02-28 11:46:56 +000038 * kernel: llseek() method for files and directories made explicit
39
40 * kernel: fixed inode leak in NFS export in case of nodeid
41 wrapping
42
Miklos Szeredied3c97c2005-02-15 17:04:50 +0000432005-02-15 Miklos Szeredi <miklos@szeredi.hu>
44
45 * libfuse: clean up some unitialized memory found with valgrind
46
Miklos Szeredi47c52982005-02-23 09:27:38 +000047 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
48 explicitly linked libpthread for applications
49
Miklos Szeredia7169412005-02-10 07:35:05 +0000502005-02-10 Miklos Szeredi <miklos@szeredi.hu>
51
52 * fusermount: set umask, otherwise /etc/mtab will have
53 unpredictable permission. Spotted by Jindrich Kolorenc
54
55 * fusermount: set owner and group of /etc/mtab to original values
56 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +000057
58 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredia7169412005-02-10 07:35:05 +000059
Miklos Szeredib92d9782005-02-07 16:10:49 +0000602005-02-07 Miklos Szeredi <miklos@szeredi.hu>
61
62 * Cleaned up directory reading (temporary file is not used)
63
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000642005-02-02 Miklos Szeredi <miklos@szeredi.hu>
65
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +000066 * Released 2.2
67
682005-02-02 Miklos Szeredi <miklos@szeredi.hu>
69
Miklos Szerediff30a6c2005-02-02 10:53:59 +000070 * Fix possible race when operation is interrupted
71
Miklos Szeredi7a983952005-01-28 09:58:19 +0000722005-01-28 Miklos Szeredi <miklos@szeredi.hu>
73
Miklos Szeredie5183742005-02-02 11:14:04 +000074 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +000075
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000762005-01-26 Miklos Szeredi <miklos@szeredi.hu>
77
Miklos Szeredid48d5f72005-01-26 20:43:41 +000078 * Released 2.2-pre6
79
802005-01-26 Miklos Szeredi <miklos@szeredi.hu>
81
Miklos Szeredied6b5dd2005-01-26 17:07:59 +000082 * Fix bug in link() operation which caused the wrong path to be
83 passed as the first argument. Found by Anton Altaparmakov
84
Miklos Szeredi01fd89c2005-01-21 11:18:35 +0000852005-01-21 Miklos Szeredi <miklos@szeredi.hu>
86
87 * LIB: fix double reply in readdir operation
88
Miklos Szeredi773d4ae2005-01-21 16:09:08 +000089 * fusermount: fix uid checking bug. Patch by Adam Connell
90
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +000091 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +000092 Patch by Keshava Gowda
93
Miklos Szeredi64074142005-01-20 08:48:11 +0000942005-01-20 Miklos Szeredi <miklos@szeredi.hu>
95
Miklos Szeredi092b50b2005-01-20 18:05:07 +000096 * KERNEL: provide correct llseek semantics for fuse device (fixes
97 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
98
992005-01-20 Miklos Szeredi <miklos@szeredi.hu>
100
Miklos Szeredi64074142005-01-20 08:48:11 +0000101 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
102
Miklos Szeredi1adb2272005-01-18 21:19:58 +00001032005-01-18 Miklos Szeredi <miklos@szeredi.hu>
104
105 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
106 and RELEASEDIR. This ends the ugly hack of passing a file
107 descriptor to the kernel, and actually makes the code simpler.
108
Miklos Szeredi7db35c02005-01-17 09:46:28 +00001092005-01-17 Miklos Szeredi <miklos@szeredi.hu>
110
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000111 * Released 2.2-pre4
112
1132005-01-17 Miklos Szeredi <miklos@szeredi.hu>
114
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000115 * fusermount: remove capability setting, which was the cause of
116 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000117 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000118
Miklos Szeredidbe0f652005-01-15 14:32:56 +00001192005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000120
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000121 * fix compilation on 2.4 kernels (reported by Valient Gough)
122
123 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000124
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000125 * fusermount: improve parsing of /etc/fuse.conf
126
1272005-01-13 Miklos Szeredi <miklos@szeredi.hu>
128
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000129 * Remove 'mount_max' and 'user_allow_other' module options. These
130 are now checked by fusermount, and can be set in /etc/fuse.conf
131
132 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
133
Miklos Szeredi81394522005-01-11 14:24:18 +00001342005-01-11 Miklos Szeredi <miklos@szeredi.hu>
135
136 * KERNEL: fix possible inode allocation problem, where
137 sizeof(struct inode) is not aligned (found by Mike Waychison)
138
139 * KERNEL: use new follow_link/put_link methods
140
141 * KERNEL: cosmetic fixes
142
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00001432005-01-10 Miklos Szeredi <miklos@szeredi.hu>
144
145 * Released 2.2-pre3
146
1472005-01-10 Miklos Szeredi <miklos@szeredi.hu>
148
149 * Add missing code that was accidently left out
150
Miklos Szeredi8c7da232005-01-09 12:27:41 +00001512005-01-09 Miklos Szeredi <miklos@szeredi.hu>
152
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000153 * Released 2.2-pre2
154
1552005-01-09 Miklos Szeredi <miklos@szeredi.hu>
156
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000157 * Change "uid" mount option to "user_id" to avoid confusion with a
158 mount option "uid" commonly used by many filesystems
159
1602005-01-09 Miklos Szeredi <miklos@szeredi.hu>
161
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000162 * Released 2.2-pre1
163
1642005-01-09 Miklos Szeredi <miklos@szeredi.hu>
165
166 * If FUSE is configured in the kernel, don't build it by default
167
Miklos Szeredi2a927272005-01-07 11:14:15 +00001682005-01-07 Miklos Szeredi <miklos@szeredi.hu>
169
170 * Compile fix by Christian Magnusson
171
Miklos Szeredib6220192005-01-05 16:19:10 +00001722005-01-05 Miklos Szeredi <miklos@szeredi.hu>
173
174 * Fix compilation for 2.6.{0-5} kernels
175
Miklos Szeredi0f62d722005-01-04 12:45:54 +00001762005-01-04 Miklos Szeredi <miklos@szeredi.hu>
177
178 * KERNEL: if request is interrupted, still keep reference to used
179 inode(s) and file, so that FORGET and RELEASE are not sent until
180 userspace finishes the request.
181
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000182 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
183 request with the same information, which is more flexible,
184 simpler, works on embedded systems.
185
Miklos Szeredi0f62d722005-01-04 12:45:54 +00001862004-12-16 Miklos Szeredi <miklos@szeredi.hu>
187
188 * KERNEL ABI: update interface to make it independent of type
189 sizes. This will help on 64 bit architectures which can run
190 legacy 32 bit applications.
191
192 * KERNEL ABI: add "len" field to request headers. This will allow
193 sending/receiving requests in multiple chunks.
194
195 * KERNEL: handle file type change more intelligently
196
197 * LIB: "-o debug" option should disable backgrounding (fix by
198 Fabien Reygrobellet)
199
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00002002004-12-13 Miklos Szeredi <miklos@szeredi.hu>
201
202 * KERNEL: invalidate dentry/attributes if interrupted request
203 could leave filesystem in an unknown state.
204
Miklos Szeredie56818b2004-12-12 11:45:24 +00002052004-12-12 Miklos Szeredi <miklos@szeredi.hu>
206
207 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
208 These will cause some regressions, but stability is considered
209 more important. If any of these features turns out to be
210 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000211
Miklos Szeredie56818b2004-12-12 11:45:24 +0000212 * Make all requests interruptible (only with SIGKILL currently).
213 This can be used to break any deadlock produced by the userspace
214 filesystem accessing it's own exported files. The RELEASE request
215 is special, because if it's interrupted before sending it to
216 userspace it is still sent, but the reply is not awaited.
217
218 * If request is interrupted before being sent to userspace, and if
219 it hasn't yet got any side effects, it is always restarted,
220 regardless of the SA_RESTART flag. This makes these interruptions
221 transparent to the process.
222
223 * Remove shared-writable mmap support, which was prone to an
224 out-of-memory deadlock situation
225
226 * Remove INVALIDATE userspace initiated request
227
228 * Make readpages() synchronous. Asynchronous requests are
229 deadlock prone, since they cannot be interrupted.
230
231 * Add readv/writev support to fuse device operations
232
233 * Remove some printks, which userspace FS can use for a DoS
234 against syslog
235
236 * Remove 'large_read' mount option from 2.6 in kernel, check it in
237 fusermount instead
238
239 * LIB: improve compatibility with a fuse.h header installed in
240 ${prefix}/include which in turn includes the real header.
241
242 * LIB: improve compatibility by defining fuse_main() (which is now
243 not used), so old configure scripts find it.
244
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00002452004-12-10 Miklos Szeredi <miklos@szeredi.hu>
246
247 * When mounting on a subdirectory of / don't duplicate slashes at
248 the beggining of path (spotted by David Shaw)
249
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00002502004-12-09 Miklos Szeredi <miklos@szeredi.hu>
251
252 * Fix bug causing garbage in mount options (spotted by David Shaw)
253
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00002542004-12-07 Miklos Szeredi <miklos@szeredi.hu>
255
256 * Add 'writepage' flag to 'fuse_file_info'.
257
258 * More comments in fuse.h
259
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000260 * Get rid of double underscores
261
Miklos Szeredi799993c2004-12-04 21:20:05 +00002622004-12-04 Miklos Szeredi <miklos@szeredi.hu>
263
264 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
265
266 * helper.c: add -ho option, which only displays the options not
267 the usage header. This can be used by filesystems which have
268 their own options.
269
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00002702004-12-03 Miklos Szeredi <miklos@szeredi.hu>
271
272 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
273 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
274 including the fuse header
275
276 * Add binary compatibility to 2.1 version of library with symbol
277 versioning
278
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00002792004-12-03 Miklos Szeredi <miklos@szeredi.hu>
280
281 * Released 2.1
282
Miklos Szeredi039322d2004-12-01 18:39:12 +00002832004-12-01 Miklos Szeredi <miklos@szeredi.hu>
284
285 * kernel: clean up writing functions
286
287 * kernel: no allocation on write in direct_io mode
288
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000289 * move linux/fuse.h to fuse_kernel.h
290
Miklos Szeredi83a07442004-11-30 18:25:20 +00002912004-11-30 Miklos Szeredi <miklos@szeredi.hu>
292
293 * kernel: clean up reading functions
294
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00002952004-11-29 Miklos Szeredi <miklos@szeredi.hu>
296
297 * kernel: make readpage() uninterruptible
298
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000299 * kernel: check readonly filesystem flag in fuse_permission
300
301 * lib: don't die if version file not found and new style device
302 exists
303
304 * lib: add '-r' option, which is short for '-o ro'
305
306 * fusermount: simplify device opening
307
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000308 * kernel: when direct_io is turend on, copy data directly to
309 destination without itermediate buffer. More efficient and safer,
310 since no allocation is done.
311
312 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000313
314 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000315
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00003162004-11-26 Miklos Szeredi <miklos@szeredi.hu>
317
318 * libfuse API change: open, read, write, flush, fsync and release
319 are passed a 'struct fuse_file_info' pointer containing the open
320 flags (open and release), and the file handle. Verion changed to
321 3.0.
322
Miklos Szeredia25d4c22004-11-23 22:32:16 +00003232004-11-23 Miklos Szeredi <miklos@szeredi.hu>
324
325 * More cleanups in the kernel
326
327 * The 10,229 charater device number has been assigned for FUSE
328
329 * Version file checking fix (reported by Christian Magnusson)
330
331 * fusermount: opening the fuse device now doesn't need /sys.
332
333 * Optimize reading by controlling the maximum readahead based on
334 the 'max_read' mount option
335
336 * fixes for UCLIBC (Christian Magnusson)
337
Miklos Szeredi13ed4822004-11-20 11:12:21 +00003382004-11-19 Miklos Szeredi <miklos@szeredi.hu>
339
340 * Cleaned up kernel in preparation for merge into mainline:
341
342 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
343
344 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
345
346 * __user annotations for sparse
347
348 * allocate individual pages instead of kmalloc in fuse_readdir,
349 fuse_read and fuse_write.
350
351 * Fix NFS export in case "use_ino" mount option is given
352
Miklos Szeredif3845c42004-11-20 11:18:34 +0000353 * Make libfuse and fusermount compatible with future versions
354
355 * fusermount: properly add mount options to /etc/mtab
356
3572004-11-15 Miklos Szeredi <miklos@szeredi.hu>
358
359 * fusermount: do not resolve last component of mountpoint on if it
360 is '.' or '..'. This new path resolvation is now done on mount as
361 well as unmount. This enables relative paths to work on unmount.
362
363 * fusermount: parse common mount options like "ro", "rw", etc...
364
365 * Allow module params to be changed through sysfs
366
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00003672004-11-14 Miklos Szeredi <miklos@szeredi.hu>
368
369 * Released 2.1-pre1
370
3712004-11-14 Miklos Szeredi <miklos@szeredi.hu>
372
373 * Fix bug in fuse_readpages() causing Oops in certain situations.
374 Bug found by Vincenzo Ciancia.
375
376 * Fix compilation with kernels versions > 2.6.9.
377
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00003782004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000379
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000380 * Check kernel interface version in fusermount to prevent
381 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000382
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000383 * No need to allocate fuse_conn until actual mount happens
384
385 * Fix potential race between umount and fuse_invalidate
386
387 * Check superblock of proc file in addition to inode number
388
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000389 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000390
Miklos Szeredi51ec1032004-11-10 11:52:26 +00003912004-11-10 Miklos Szeredi <miklos@szeredi.hu>
392
393 * Separate configure for the kernel directory
394
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000395 * Don't allow write to return more than 'count'
396
397 * Extend kernel interface for future use
398
Miklos Szeredi51ec1032004-11-10 11:52:26 +00003992004-11-09 Miklos Szeredi <miklos@szeredi.hu>
400
401 * Fix 'makeconf.sh' to use autoreconf if available
402
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00004032004-11-08 Miklos Szeredi <miklos@szeredi.hu>
404
Miklos Szeredid507c732004-11-08 17:32:25 +0000405 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
406 compatibility with earlier versions. To compile earier versions
407 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
408 Do not use the "use_ino" mount flag with filesystems compiled with
409 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000410
411 * Add pkg-config support. To compile a FUSE based filesystem you
412 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
413 or similar. Note, that the PKG_CONFIG_PATH environment variable
414 usually needs to be set to "/usr/local/lib/pkgconfig".
415
416 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000417
Miklos Szeredia13d9002004-11-02 17:32:03 +00004182004-11-02 Miklos Szeredi <miklos@szeredi.hu>
419
420 * Added "use_ino" mount option. This enables the filesystems to
421 set the st_ino field on files
422
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00004232004-11-01 Miklos Szeredi <miklos@szeredi.hu>
424
425 * Fix compile problems with ancient (<=2.4.18) kernels (reported
426 by Jeremy Smith)
427
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000428 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
429
430 * Clear the 'exited' flag when mail loop is finished
431
Miklos Szeredie989f0d2004-10-28 20:24:58 +00004322004-10-28 Miklos Szeredi <miklos@szeredi.hu>
433
434 * Make xattr functions work under 2.6 (bug found by Vincenzo
435 Ciancia)
436
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00004372004-10-26 Miklos Szeredi <miklos@szeredi.hu>
438
439 * Reset request in fuse_flush() (bugreport by David Shaw)
440
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00004412004-10-21 Miklos Szeredi <miklos@szeredi.hu>
442
Miklos Szeredi0e70aa72004-10-21 16:24:29 +0000443 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000444 error code
445
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000446 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000447 make it easier to implement a custom event loop.
448
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000449 * Use daemon() call to background the filesystem after mounting.
450 This function closes the standard input, output and error and
451 changes the current working directory to "/".
452
Miklos Szeredi127d49b2004-10-14 13:33:39 +00004532004-10-14 Miklos Szeredi <miklos@szeredi.hu>
454
455 * Released 1.9
456
Miklos Szeredid45baf42004-10-10 07:56:12 +00004572004-10-09 Miklos Szeredi <miklos@szeredi.hu>
458
459 * Don't allow fuse_flush() to be interrupted (bug found by David
460 Shaw)
461
Miklos Szeredi1f18db52004-09-27 06:54:49 +00004622004-09-27 Miklos Szeredi <miklos@szeredi.hu>
463
464 * Add PID to fuse_context. Patch by Steven James
465
Miklos Szeredi1eea0322004-09-27 18:50:11 +0000466 * Change file handle type to 'unsigned long' in kernel interface
467
Miklos Szeredid169f312004-09-22 08:48:26 +00004682004-09-22 Miklos Szeredi <miklos@szeredi.hu>
469
470 * A slight API change: fuse_get_context() doesn't need the "fuse"
471 pointer, but the returned context contains it instead. The
472 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +0000473
474 * Fix mounting and umounting FUSE filesystem under another FUSE
475 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +0000476
Miklos Szeredic2309912004-09-21 13:40:38 +00004772004-09-21 Miklos Szeredi <miklos@szeredi.hu>
478
479 * Fix deadlock in case of memory allocation failure. Patch by
480 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +0000481
Miklos Szeredib2cf9562004-09-16 08:42:40 +00004822004-09-16 Miklos Szeredi <miklos@szeredi.hu>
483
484 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +0000485
Miklos Szeredi65afea12004-09-14 07:13:45 +00004862004-09-14 Miklos Szeredi <miklos@szeredi.hu>
487
488 * Check temporary file creation failure in do_getdir(). Bug
489 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000490
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00004912004-09-13 Miklos Szeredi <miklos@szeredi.hu>
492
493 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000494
495 * Make requests non-interruptible so race with FORGET is avoided.
496 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000497
498 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000499
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00005002004-09-09 Miklos Szeredi <miklos@szeredi.hu>
501
502 * Fix bug in case two FORGETs for the same node are executed in
503 the wrong order. Bug spotted and endured for months by Franco
504 Broi, and logfile for solution provided by Terje Oseberg
505
Miklos Szeredi12085102004-09-02 18:13:57 +00005062004-09-01 Miklos Szeredi <miklos@szeredi.hu>
507
508 * Add -D_REENTRANT to the compile flags
509
510 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000511
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00005122004-08-16 Miklos Szeredi <miklos@szeredi.hu>
513
514 * Change release method to be non-interruptible. Fixes bug
515 causing missing release() call when program which has opened files
516 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000517
Miklos Szeredi891b8742004-07-29 09:27:49 +00005182004-07-29 Miklos Szeredi <miklos@szeredi.hu>
519
520 * Add fuse_invalidate() to library API
521
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00005222004-07-26 Miklos Szeredi <miklos@szeredi.hu>
523
524 * Check permissions in setattr if 'default_permissions' flag is
525 set. Bug spotted by Damjan Lango
526
Miklos Szeredid66d3942004-07-24 13:47:44 +00005272004-07-24 Miklos Szeredi <miklos@szeredi.hu>
528
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000529 * 'large_read' mount option removed for 2.6 kernels, since the
530 default (dynamic read size) is better
531
532 * Extend kernel API with file handles. A file handle is returned
533 by open, and passed to read, write, flush, fsync and release.
534 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +0000535
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000536 * Security changes:
537
538 * Change the current directory to the mountpoint before checking
539 the permissions and mount filesystem on "."
540
541 * By default don't modprobe the fuse module for non-root. The old
542 behavior can be restored with the '--enable-auto-modprobe' flag of
543 ./configure
544
545 * By default don't allow shared writable mappings for non-root.
546 The old behavior can be restored with the 'user_mmap=1' module
547 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000548
Miklos Szeredibd7661b2004-07-23 17:16:29 +00005492004-07-23 Miklos Szeredi <miklos@szeredi.hu>
550
551 * Clean up mount option passing to fusermount and to fuse_new()
552 BEWARE: this changes the userspace API slightly, and the command
553 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +0000554
Miklos Szeredi58865372004-07-20 14:22:26 +00005552004-07-20 Miklos Szeredi <miklos@szeredi.hu>
556
557 * Optimize reading under 2.6 kernels by issuing multiple page
558 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +0000559
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00005602004-07-18 Miklos Szeredi <miklos@szeredi.hu>
561
562 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000563
Miklos Szeredi069c9502004-07-16 16:17:02 +00005642004-07-16 Miklos Szeredi <miklos@szeredi.hu>
565
566 * Separate directory entry and inode attribute validity timer
567
568 * New write semaphore to stop page writeback during truncate
569
570 * Fsync now waits for all writes to complete before sending the
571 request
572
573 * Optimization: if a page is completely written by
574 fuse_commit_write(), clear the dirty flag and set the uptodate
575 flag for that page
576
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000577 * Some memory cleanup at exit
578
Miklos Szeredi2529ca22004-07-13 15:36:52 +00005792004-07-13 Miklos Szeredi <miklos@szeredi.hu>
580
581 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000582 disable the "hide if open" behavior of unlink/rename.
583
584 * If temporary buffer allocation fails in raw read, fall back to a
585 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +0000586
Miklos Szeredi73798f92004-07-12 15:55:11 +00005872004-07-12 Miklos Szeredi <miklos@szeredi.hu>
588
589 * Fix bug in do_open() in libfuse: open count was incremented
590 after the reply is sent so it could race with unlink/forget and
591 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +0000592
Miklos Szeredi015fe702004-07-12 11:52:24 +00005932004-07-08 Miklos Szeredi <miklos@szeredi.hu>
594
595 * When performing create or remove operation, refresh the parent's
596 attributes on next revalidate, as i_nlink (and maybe size/time)
597 could be inacurate.
598
599 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
600 pages (2.6 only)
601
602 * Set set_page_dirty address space operation (2.6 only)
603
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006042004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +0000605
606 * Minor fix in read: print debug info even if read size is zero
607
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006082004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +0000609
610 * Fix race between truncate and writepage (fsx-linux now runs
611 without error)
612
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006132004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000614
615 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
616 by Mattias Wadman)
617
618 * Added option for direct read/write (-r)
619
620 * Fix revalidate time setting for newly created inodes
621
Miklos Szerediacb4d362004-07-02 16:20:45 +0000622 * Remove uid==0 check for '-x' option in fusermount (kernel checks
623 this)
624
625 * fuse_main() only installs handlers for signals (out of INT, HUP,
626 TERM, PIPE), for which no handler has yet been installed
627
628 * Add module option 'user_allow_other' which if set to non-zero
629 will allow non root user to specify the 'allow_other' mount option
630 ('-x' option of fusermount)
631
Miklos Szeredi014d7d22004-07-02 21:22:37 +0000632 * Fix deadlock between page writeback completion and truncate
633 (bug found by Valient Gough with the fsx-linux utility)
634
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006352004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000636
637 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +0000638 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
639 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +0000640
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006412004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +0000642
643 * Acquire inode->i_sem before open and release methods to prevent
644 concurrent rename or unlink operations.
645
Miklos Szeredi65cf7c72004-06-30 11:34:56 +0000646 * Make __fuse_read_cmd() read only one command. This allows
647 multiplexing the fuse file descriptor with other event sources
648 using select() or poll() (patch by Jeff Harris)
649
650 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
651
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006522004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +0000653
654 * Fix file offset wrap around at 4G when doing large reads
655
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006562004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000657
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000658 * Fix memory leak in open (Valient Gough)
659
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006602004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000661
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000662 * Add "close after delete" support to libfuse (patch by Valient
663 Gough)
664
665 * Cancel all worker threads before exit in multithreaded mode
666
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006672004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +0000668
669 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +0000670
671 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +0000672
673 * Work with newer libtool (1.5a)
674
675 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +0000676
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006772004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +0000678
679 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +0000680
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006812004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +0000682
683 * Fix possible inode leak in userspace in case of unfinished
684 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +0000685
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006862004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +0000687
688 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +0000689
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006902004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +0000691
692 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +0000693
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006942004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +0000695
696 * Build shared library as well as static (using libtool)
697
698 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
699 there has not been a release with the previous minor number, and I
700 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +0000701
702 * Change fuse_main(), so that default behavior is to go into
703 background if mount is successful. '-f' and '-d' options disable
704 backgrounding. This fixes the "Why does my FUSE daemon hang?"
705 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +0000706
707 * Cache ENOSYS (function not implemented) errors on *xattr, flush
708 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +0000709
710 * Don't call getdir method from open() only from first readdir().
711 Open is sometimes just used to store the current directory
712 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +0000713
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007142004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +0000715
716 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +0000717
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007182004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +0000719
720 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +0000721
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007222004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +0000723
724 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +0000725
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007262004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +0000727
728 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +0000729
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007302004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +0000731
732 * Replaced binary mount data with text options
733
734 * Show FUSE specific mount options in /proc/mounts
735
736 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
737
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007382004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +0000739
740 * Check some limits so userspace won't get too big requests
741
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007422004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +0000743
744 * Kill compile warning
745
746 * Upgraded user-mount patch for 2.6.5
747
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007482004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +0000749
750 * Add detection of user-mode-linux to configure
751
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007522004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +0000753
754 * fixed zero size case for getxattr and listxattr
755
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007562004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +0000757
758 * new fusermount flag '-z': lazy unmount, default is not lazy
759
Miklos Szeredi3ed84232004-03-30 15:17:26 +0000760 * Extended attributes operations added (getxattr, setxattr,
761 listxattr, removexattr)
762
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007632004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +0000764
765 * If filesystem doesn't define a statfs operation, then an
766 all-zero default statfs is returned instead of ENOSYS
767
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007682004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +0000769
770 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
771
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007722004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +0000773
Miklos Szeredi8af63ae2004-03-09 10:54:17 +0000774 * Fix for uClinux (Christian Magnusson)
775
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007762004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +0000777
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +0000778 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +0000779
Miklos Szeredi254d5ed2004-03-02 11:11:24 +0000780 * More kernel interface changes:
781
782 * Lookup/getattr return cache timeout values
783
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007842004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +0000785
786 * Clean up option parsing in fuse_main()
787
Miklos Szeredi33c319c2004-02-25 09:19:29 +0000788 * Added fuse_get() function which returns the fuse object created
789 by fuse_main()
790
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007912004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +0000792
Miklos Szeredic40748a2004-02-20 16:38:45 +0000793 * removed old way of mounting (fusermount mountpoint program)
794
Miklos Szeredib5958612004-02-20 14:10:49 +0000795 * more kernel interface changes:
796
797 * added nanosecond precision to file times
798
Miklos Szeredic40748a2004-02-20 16:38:45 +0000799 * removed interface version from mount data
800
801 * added /proc/fs/fuse/version which contains MAJOR.MINOR
802
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008032004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +0000804
805 * statfs library API changed to match other methods. Since this
806 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
807
Miklos Szeredi76f65782004-02-19 16:55:40 +0000808 * kernel interface changes follow:
809
810 * statfs changed to 64 bits, added 'bavail' field
811
812 * add generation number to lookup result
813
814 * optimized mknod/mkdir/symlink/link (no separate lookup is
815 needed)
816
817 * rdev size increased to 32 bits for mknod
818
819 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +0000820
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008212004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +0000822
823 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +0000824
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008252004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +0000826
827 * Added user-mount.2.6.2-rc3.patch
828
829 * Add FS_SAFE flag to fuse filesystem
830
831 * fusermount should allow (un)mounting for non-root even if not
832 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +0000833
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008342004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +0000835
836 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +0000837
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008382004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +0000839
840 * Added check for i_size_read/write functions to configure.in
841 (patch by Valient Gough)
842
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008432004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +0000844
845 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +0000846
847 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +0000848
849 * Readpage calls flush_dcache_page() after storing data
850
851 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +0000852
853 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +0000854
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008552004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +0000856
857 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +0000858
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008592004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +0000860
861 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +0000862
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008632004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +0000864
865 * Added -q option for fusermount
866
867 * fuse_unmount() now uses -q option of fusermount, so no error is
868 printed if the cause of the program exit is that the filesystem
869 has already been unmounted
870
Miklos Szeredif4f8b892004-01-27 17:04:59 +0000871 * Fix i_nlink correctness after rmdir/unlink
872
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008732004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000874
Miklos Szeredib1158392004-01-26 14:43:12 +0000875 * Released 1.1-pre2
876
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008772004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +0000878
Miklos Szeredi307242f2004-01-26 11:28:44 +0000879 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +0000880
881 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000882
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008832004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000884
885 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000886
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008872004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000888
889 * Write all pending data before a RELEASE operation
890
891 * Suppress 'Bad file descriptor' warning on exit
892
893 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +0000894 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +0000895
Miklos Szeredib1158392004-01-26 14:43:12 +0000896 * New fusermount option '-l' which enables big reads. Big reads
897 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +0000898
899 * fuse_main() can accept fusermount arguments after a '--'
900
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009012004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +0000902
903 * Support for exporting filesystem over NFS (see README.NFS)
904
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009052004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +0000906
907 * Support non-blocking writepage on 2.6. This makes FUSE behave
908 much more nicely in low-memory situations
909
910 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
911 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +0000912
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009132004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +0000914
915 * Code cleanups
916
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009172004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +0000918
919 * Released 1.1-pre1
920
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009212004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +0000922
923 * Integrated 2.6 kernel support patch by Michael Grigoriev
924
925 * Improvements and cleanups for 2.6 kernels
926
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009272004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +0000928
Miklos Szeredie5183742005-02-02 11:14:04 +0000929 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +0000930
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009312003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +0000932
933 * Added major+minor version to library API, and minor version to
934 kernel API
935
David McNab7a19caf2003-12-13 02:05:46 +00009362003-12-13 David McNab <david@rebirthing.co.nz>
937
938 * Implemented fsync support in examples/example.py
939
940 * Implemented 'fsync' and 'statfs' methods in python
941 interface
942
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009432003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +0000944
Miklos Szeredie5183742005-02-02 11:14:04 +0000945 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +0000946
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +0000947 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +0000948
David McNab8bf62632003-12-11 22:49:22 +00009492003-12-12 David McNab <david@rebirthing.co.nz>
950
951 * Added distutils support to the python module, as per standard
952 python development practice
953
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009542003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +0000955
956 * Add file locking for mount/unmount (based on patch by Valient
957 Gough)
958
9592003-12-11 David McNab <david@rebirthing.co.nz>
960
961 * Python filesystem - was broken with python2.3, now fixed:
962 - changed PyTuple_* calls to PySequence_*, because os.lstat
963 is no longer returning a pure tuple
964 - changed PyInt_Check() calls to also call PyLong_Check,
965 to cover for cases (eg os.lstat) where longs are returned
966 - Added support for file 'release' handling, which IMO is
967 essential since this signals to a FS that writes to a file
968 are complete (and therefore the file can now be disposed of
969 meaningfully at the python filesystem's discretion)
970 - Added '__init__' handler to base Fuse class, which allows
971 your Python class to know the mountpoint and mount args,
972 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +0000973
Miklos Szeredi874d95d2003-12-11 14:27:57 +0000974 * General:
975 - added 'mount.fuse' script (in util/ dir), which is meant to be
976 symlinked from /sbin, and which allows FUSE filesystems to
977 be mounted with the 'mount' command, and listed in fstab;
978 also, mount arguments get passed to your filesystem
979
980
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009812003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +0000982
983 * Fix kernel version detection (again). Bugreport by Peter Levart
984
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009852003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +0000986
987 * Applied read combining patch by Michael Grigoriev (tested by
988 Valient Gough and Vincent Wagelaar)
989
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009902003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +0000991
992 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
993 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +0000994
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009952003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +0000996
997 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +0000998
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009992003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001000
1001 * kernel version detection fix
1002
1003 * fusermount now uses "lazy" umount option
1004
1005 * fusermount can use modprobe with module-init-tools
1006
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010072003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001008
1009 * Integrated caching patch by Michael Grigoriev
1010
Miklos Szeredida4e4862003-09-08 11:14:11 +00001011 * Added "Filesystems" file with descriptions of projects using
1012 FUSE
1013
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001014 * Added patch by Michael Grigoriev to allow compliation of FUSE
1015 kernel module for 2.6 kernels
1016
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010172003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001018
1019 * And another spec-file fix by Achim Settelmeier
1020
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010212003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001022
1023 * Spec-file fix by Achim Settelmeier
1024
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010252003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001026
Miklos Szerediac361172004-11-02 19:14:14 +00001027 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001028
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010292003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001030
1031 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1032
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010332003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001034
1035 * Updated fuse.spec file (Achim Settelmeier)
1036
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010372003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001038
1039 * Version 1.0 released
1040
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010412003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001042
1043 * SuSE compilation fix by Juan-Mariano de Goyeneche
1044
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010452002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001046
1047 * The release() VFS call is now exported to the FUSE interface
1048
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010492002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001050
1051 * 64 bit file offset fixes in the fuse kernel module
1052
1053 * Added function 'fuse_exit()' which can be used to exit the main
1054 loop
1055
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010562002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001057
1058 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1059 an incompatible interface change.
1060
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010612002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001062
1063 * Portablility fix (bug reported by C. Chris Erway)
1064
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010652002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001066
1067 * Use Mark Glines' fd passing method for default operation instead
1068 of old reexec
1069
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010702002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001071
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001072 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1073
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010742002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001075
Miklos Szeredi60c23522002-10-24 09:19:43 +00001076 * fix incompatiblity with Red Hat kernels, with help from Nathan
1077 Thompson-Amato.
1078
Mark Glines65ba2192002-04-18 14:41:48 +000010792002-04-18 Mark Glines <mark@glines.org>
1080
1081 * added an alternative to fuse_mount(), called
1082 fuse_mount_ioslave(), which does not need to reexec the
1083 FUSE program.
1084 * added a small helper util needed by fuse_mount_ioslave().
1085
Mark Glines220635a2002-03-17 07:01:14 +000010862002-03-16 Mark Glines <mark@glines.org>
1087
1088 * use struct fuse_statfs everywhere possible to avoid problems
1089 with the headerfiles changing struct statfs member sizes
1090
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010912002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001092
1093 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1094
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010952002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001096
1097 * RPM support by Achim Settelmeier
1098
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010992002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001100
Miklos Szerediddc862a2002-01-09 13:46:10 +00001101 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001102
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011032002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001104
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001105 * Revaidate all path components not just the last, this means a
1106 very small performance penalty for being more up-to-date.
1107
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011082002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001109
1110 * Update and fix python interface
1111
Mark Glinesd84b39a2002-01-07 16:32:02 +000011122002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001113
Mark Glinesd84b39a2002-01-07 16:32:02 +00001114 * Added statfs() support to kernel, lib, examples, and perl!
1115
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011162001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001117
1118 * Better cross compilation support
1119
1120 * Ported to Compaq IPAQ
1121
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011222001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001123
Miklos Szeredife25def2001-12-20 15:38:05 +00001124 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001125 patch from Matt Ryan)
1126
Miklos Szeredife25def2001-12-20 15:38:05 +00001127 * Added flags to fusermount and to kernel interface to control
1128 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001129
Miklos Szeredife25def2001-12-20 15:38:05 +00001130 * Integrated fuse_set_operations() into fuse_new()
1131
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011322001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001133
1134 * Applied header protection + extern "C" patch by Roland
1135 Bauerschmidt
1136
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011372001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001138
Miklos Szeredie5183742005-02-02 11:14:04 +00001139 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001140
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011412001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001142
1143 * Cleaned up way of mounting simple filesystems.
1144
1145 * fuse_main() helper function added
1146
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011472001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001148
Miklos Szeredife25def2001-12-20 15:38:05 +00001149 * Optimized read/write operations, so that minimal copying of data
1150 is done
1151
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011522001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001153
1154 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001155
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011562001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001157
1158 * Fixed vfsmount reference leak in fuse_follow_link
1159
1160 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1161 userspace is ignored
1162
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011632001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001164
Miklos Szeredife25def2001-12-20 15:38:05 +00001165 * Started ChangeLog