blob: 8134ae7d5f999a202144fda3680c8936f50201f2 [file] [log] [blame]
Miklos Szeredi3a6ea062004-11-11 10:33:58 +000012004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +00002
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00003 * Check kernel interface version in fusermount to prevent
4 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +00005
62004-11-10 Miklos Szeredi <miklos@szeredi.hu>
7
8 * Separate configure for the kernel directory
9
Miklos Szeredi3a6ea062004-11-11 10:33:58 +000010 * Don't allow write to return more than 'count'
11
12 * Extend kernel interface for future use
13
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000142004-11-09 Miklos Szeredi <miklos@szeredi.hu>
15
16 * Fix 'makeconf.sh' to use autoreconf if available
17
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +0000182004-11-08 Miklos Szeredi <miklos@szeredi.hu>
19
Miklos Szeredid507c732004-11-08 17:32:25 +000020 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
21 compatibility with earlier versions. To compile earier versions
22 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
23 Do not use the "use_ino" mount flag with filesystems compiled with
24 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +000025
26 * Add pkg-config support. To compile a FUSE based filesystem you
27 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
28 or similar. Note, that the PKG_CONFIG_PATH environment variable
29 usually needs to be set to "/usr/local/lib/pkgconfig".
30
31 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredid507c732004-11-08 17:32:25 +000032
Miklos Szeredia13d9002004-11-02 17:32:03 +0000332004-11-02 Miklos Szeredi <miklos@szeredi.hu>
34
35 * Added "use_ino" mount option. This enables the filesystems to
36 set the st_ino field on files
37
Miklos Szeredib1ab8b52004-11-01 10:57:41 +0000382004-11-01 Miklos Szeredi <miklos@szeredi.hu>
39
40 * Fix compile problems with ancient (<=2.4.18) kernels (reported
41 by Jeremy Smith)
42
Miklos Szeredi874e3c12004-11-01 23:15:20 +000043 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
44
45 * Clear the 'exited' flag when mail loop is finished
46
Miklos Szeredie989f0d2004-10-28 20:24:58 +0000472004-10-28 Miklos Szeredi <miklos@szeredi.hu>
48
49 * Make xattr functions work under 2.6 (bug found by Vincenzo
50 Ciancia)
51
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +0000522004-10-26 Miklos Szeredi <miklos@szeredi.hu>
53
54 * Reset request in fuse_flush() (bugreport by David Shaw)
55
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000562004-10-21 Miklos Szeredi <miklos@szeredi.hu>
57
Miklos Szeredi0e70aa72004-10-21 16:24:29 +000058 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +000059 error code
60
Miklos Szeredifb97a1b2004-10-21 09:59:13 +000061 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +000062 make it easier to implement a custom event loop.
63
Miklos Szeredifb97a1b2004-10-21 09:59:13 +000064 * Use daemon() call to background the filesystem after mounting.
65 This function closes the standard input, output and error and
66 changes the current working directory to "/".
67
Miklos Szeredi127d49b2004-10-14 13:33:39 +0000682004-10-14 Miklos Szeredi <miklos@szeredi.hu>
69
70 * Released 1.9
71
Miklos Szeredid45baf42004-10-10 07:56:12 +0000722004-10-09 Miklos Szeredi <miklos@szeredi.hu>
73
74 * Don't allow fuse_flush() to be interrupted (bug found by David
75 Shaw)
76
Miklos Szeredi1f18db52004-09-27 06:54:49 +0000772004-09-27 Miklos Szeredi <miklos@szeredi.hu>
78
79 * Add PID to fuse_context. Patch by Steven James
80
Miklos Szeredi1eea0322004-09-27 18:50:11 +000081 * Change file handle type to 'unsigned long' in kernel interface
82
Miklos Szeredid169f312004-09-22 08:48:26 +0000832004-09-22 Miklos Szeredi <miklos@szeredi.hu>
84
85 * A slight API change: fuse_get_context() doesn't need the "fuse"
86 pointer, but the returned context contains it instead. The
87 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +000088
89 * Fix mounting and umounting FUSE filesystem under another FUSE
90 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredid169f312004-09-22 08:48:26 +000091
Miklos Szeredic2309912004-09-21 13:40:38 +0000922004-09-21 Miklos Szeredi <miklos@szeredi.hu>
93
94 * Fix deadlock in case of memory allocation failure. Patch by
95 Christian Magnusson
96
Miklos Szeredib2cf9562004-09-16 08:42:40 +0000972004-09-16 Miklos Szeredi <miklos@szeredi.hu>
98
99 * Check memory allocation failures in libfuse
100
Miklos Szeredi65afea12004-09-14 07:13:45 +00001012004-09-14 Miklos Szeredi <miklos@szeredi.hu>
102
103 * Check temporary file creation failure in do_getdir(). Bug
104 spotted by Terje Oseberg
105
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00001062004-09-13 Miklos Szeredi <miklos@szeredi.hu>
107
108 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000109
110 * Make requests non-interruptible so race with FORGET is avoided.
111 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000112
113 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +0000114
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00001152004-09-09 Miklos Szeredi <miklos@szeredi.hu>
116
117 * Fix bug in case two FORGETs for the same node are executed in
118 the wrong order. Bug spotted and endured for months by Franco
119 Broi, and logfile for solution provided by Terje Oseberg
120
Miklos Szeredi12085102004-09-02 18:13:57 +00001212004-09-01 Miklos Szeredi <miklos@szeredi.hu>
122
123 * Add -D_REENTRANT to the compile flags
124
125 * Add documentation of fuse internals by Terje Oseberg
126
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00001272004-08-16 Miklos Szeredi <miklos@szeredi.hu>
128
129 * Change release method to be non-interruptible. Fixes bug
130 causing missing release() call when program which has opened files
131 is killed (reported by Franco Broi and David Shaw)
132
Miklos Szeredi891b8742004-07-29 09:27:49 +00001332004-07-29 Miklos Szeredi <miklos@szeredi.hu>
134
135 * Add fuse_invalidate() to library API
136
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00001372004-07-26 Miklos Szeredi <miklos@szeredi.hu>
138
139 * Check permissions in setattr if 'default_permissions' flag is
140 set. Bug spotted by Damjan Lango
141
Miklos Szeredid66d3942004-07-24 13:47:44 +00001422004-07-24 Miklos Szeredi <miklos@szeredi.hu>
143
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000144 * 'large_read' mount option removed for 2.6 kernels, since the
145 default (dynamic read size) is better
146
147 * Extend kernel API with file handles. A file handle is returned
148 by open, and passed to read, write, flush, fsync and release.
149 This is currently only used for debug output in the library.
150
151 * Security changes:
152
153 * Change the current directory to the mountpoint before checking
154 the permissions and mount filesystem on "."
155
156 * By default don't modprobe the fuse module for non-root. The old
157 behavior can be restored with the '--enable-auto-modprobe' flag of
158 ./configure
159
160 * By default don't allow shared writable mappings for non-root.
161 The old behavior can be restored with the 'user_mmap=1' module
162 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000163
Miklos Szeredibd7661b2004-07-23 17:16:29 +00001642004-07-23 Miklos Szeredi <miklos@szeredi.hu>
165
166 * Clean up mount option passing to fusermount and to fuse_new()
167 BEWARE: this changes the userspace API slightly, and the command
168 line usage of programs using fuse_main()
169
Miklos Szeredi58865372004-07-20 14:22:26 +00001702004-07-20 Miklos Szeredi <miklos@szeredi.hu>
171
172 * Optimize reading under 2.6 kernels by issuing multiple page
173 asynchronous read requests
174
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00001752004-07-18 Miklos Szeredi <miklos@szeredi.hu>
176
177 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
178
Miklos Szeredi069c9502004-07-16 16:17:02 +00001792004-07-16 Miklos Szeredi <miklos@szeredi.hu>
180
181 * Separate directory entry and inode attribute validity timer
182
183 * New write semaphore to stop page writeback during truncate
184
185 * Fsync now waits for all writes to complete before sending the
186 request
187
188 * Optimization: if a page is completely written by
189 fuse_commit_write(), clear the dirty flag and set the uptodate
190 flag for that page
191
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000192 * Some memory cleanup at exit
193
Miklos Szeredi2529ca22004-07-13 15:36:52 +00001942004-07-13 Miklos Szeredi <miklos@szeredi.hu>
195
196 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000197 disable the "hide if open" behavior of unlink/rename.
198
199 * If temporary buffer allocation fails in raw read, fall back to a
200 smaller buffer
Miklos Szeredi2529ca22004-07-13 15:36:52 +0000201
Miklos Szeredi73798f92004-07-12 15:55:11 +00002022004-07-12 Miklos Szeredi <miklos@szeredi.hu>
203
204 * Fix bug in do_open() in libfuse: open count was incremented
205 after the reply is sent so it could race with unlink/forget and
206 cause an abort.
207
Miklos Szeredi015fe702004-07-12 11:52:24 +00002082004-07-08 Miklos Szeredi <miklos@szeredi.hu>
209
210 * When performing create or remove operation, refresh the parent's
211 attributes on next revalidate, as i_nlink (and maybe size/time)
212 could be inacurate.
213
214 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
215 pages (2.6 only)
216
217 * Set set_page_dirty address space operation (2.6 only)
218
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002192004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +0000220
221 * Minor fix in read: print debug info even if read size is zero
222
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002232004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +0000224
225 * Fix race between truncate and writepage (fsx-linux now runs
226 without error)
227
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002282004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000229
230 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
231 by Mattias Wadman)
232
233 * Added option for direct read/write (-r)
234
235 * Fix revalidate time setting for newly created inodes
236
Miklos Szerediacb4d362004-07-02 16:20:45 +0000237 * Remove uid==0 check for '-x' option in fusermount (kernel checks
238 this)
239
240 * fuse_main() only installs handlers for signals (out of INT, HUP,
241 TERM, PIPE), for which no handler has yet been installed
242
243 * Add module option 'user_allow_other' which if set to non-zero
244 will allow non root user to specify the 'allow_other' mount option
245 ('-x' option of fusermount)
246
Miklos Szeredi014d7d22004-07-02 21:22:37 +0000247 * Fix deadlock between page writeback completion and truncate
248 (bug found by Valient Gough with the fsx-linux utility)
249
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002502004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000251
252 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +0000253 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
254 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +0000255
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002562004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +0000257
258 * Acquire inode->i_sem before open and release methods to prevent
259 concurrent rename or unlink operations.
260
Miklos Szeredi65cf7c72004-06-30 11:34:56 +0000261 * Make __fuse_read_cmd() read only one command. This allows
262 multiplexing the fuse file descriptor with other event sources
263 using select() or poll() (patch by Jeff Harris)
264
265 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
266
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002672004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +0000268
269 * Fix file offset wrap around at 4G when doing large reads
270
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002712004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000272
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000273 * Fix memory leak in open (Valient Gough)
274
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002752004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000276
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000277 * Add "close after delete" support to libfuse (patch by Valient
278 Gough)
279
280 * Cancel all worker threads before exit in multithreaded mode
281
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002822004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +0000283
284 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +0000285
286 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +0000287
288 * Work with newer libtool (1.5a)
289
290 * Check for st_atim member of struct stat
Miklos Szeredie79dc7e2004-06-23 05:57:30 +0000291
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002922004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +0000293
294 * No request allocation needed on inode and file release
295
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00002962004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +0000297
298 * Fix possible inode leak in userspace in case of unfinished
299 lookup/mknod/mkdir/symlink/link operation.
300
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003012004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +0000302
303 * Fix some races and cleanups in fuse_read_super()
304
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003052004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +0000306
307 * Requests are allocated at open time
308
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003092004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +0000310
311 * Build shared library as well as static (using libtool)
312
313 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
314 there has not been a release with the previous minor number, and I
315 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +0000316
317 * Change fuse_main(), so that default behavior is to go into
318 background if mount is successful. '-f' and '-d' options disable
319 backgrounding. This fixes the "Why does my FUSE daemon hang?"
320 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +0000321
322 * Cache ENOSYS (function not implemented) errors on *xattr, flush
323 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +0000324
325 * Don't call getdir method from open() only from first readdir().
326 Open is sometimes just used to store the current directory
327 (e.g. find)
Miklos Szeredi203afbf2004-06-03 13:21:08 +0000328
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003292004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +0000330
331 * Added flush() call
332
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003332004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +0000334
335 * Extended attributes support for 2.4 (patch by Cody Pisto)
336
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003372004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +0000338
339 * Fixed parser with modversions (Mattias Wadman)
340
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003412004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +0000342
343 * Added mount option parser to 2.4 build
344
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003452004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +0000346
347 * Replaced binary mount data with text options
348
349 * Show FUSE specific mount options in /proc/mounts
350
351 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
352
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003532004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +0000354
355 * Check some limits so userspace won't get too big requests
356
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003572004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +0000358
359 * Kill compile warning
360
361 * Upgraded user-mount patch for 2.6.5
362
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003632004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +0000364
365 * Add detection of user-mode-linux to configure
366
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003672004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +0000368
369 * fixed zero size case for getxattr and listxattr
370
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003712004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +0000372
373 * new fusermount flag '-z': lazy unmount, default is not lazy
374
Miklos Szeredi3ed84232004-03-30 15:17:26 +0000375 * Extended attributes operations added (getxattr, setxattr,
376 listxattr, removexattr)
377
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003782004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +0000379
380 * If filesystem doesn't define a statfs operation, then an
381 all-zero default statfs is returned instead of ENOSYS
382
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003832004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +0000384
385 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
386
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003872004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +0000388
Miklos Szeredi8af63ae2004-03-09 10:54:17 +0000389 * Fix for uClinux (Christian Magnusson)
390
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003912004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +0000392
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +0000393 * fuse_main() adds "-n progname" to the fusermount command line
394
Miklos Szeredi254d5ed2004-03-02 11:11:24 +0000395 * More kernel interface changes:
396
397 * Lookup/getattr return cache timeout values
398
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00003992004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +0000400
401 * Clean up option parsing in fuse_main()
402
Miklos Szeredi33c319c2004-02-25 09:19:29 +0000403 * Added fuse_get() function which returns the fuse object created
404 by fuse_main()
405
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004062004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +0000407
Miklos Szeredic40748a2004-02-20 16:38:45 +0000408 * removed old way of mounting (fusermount mountpoint program)
409
Miklos Szeredib5958612004-02-20 14:10:49 +0000410 * more kernel interface changes:
411
412 * added nanosecond precision to file times
413
Miklos Szeredic40748a2004-02-20 16:38:45 +0000414 * removed interface version from mount data
415
416 * added /proc/fs/fuse/version which contains MAJOR.MINOR
417
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004182004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +0000419
420 * statfs library API changed to match other methods. Since this
421 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
422
Miklos Szeredi76f65782004-02-19 16:55:40 +0000423 * kernel interface changes follow:
424
425 * statfs changed to 64 bits, added 'bavail' field
426
427 * add generation number to lookup result
428
429 * optimized mknod/mkdir/symlink/link (no separate lookup is
430 needed)
431
432 * rdev size increased to 32 bits for mknod
433
434 * kernel interface version changed to 3.1
Miklos Szeredi18e75e42004-02-19 14:23:27 +0000435
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004362004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +0000437
438 * user-mount upgraded for 2.6.3 kernel
439
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004402004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +0000441
442 * Added user-mount.2.6.2-rc3.patch
443
444 * Add FS_SAFE flag to fuse filesystem
445
446 * fusermount should allow (un)mounting for non-root even if not
447 suid-root
448
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004492004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +0000450
451 * Remove MS_PERMISSION mount flag (that means something else now)
452
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004532004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +0000454
455 * Added check for i_size_read/write functions to configure.in
456 (patch by Valient Gough)
457
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004582004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +0000459
460 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +0000461
462 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +0000463
464 * Readpage calls flush_dcache_page() after storing data
465
466 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +0000467
468 * Make loopback mount of a fuse file work
Miklos Szeredi377b2ea2004-02-06 09:48:51 +0000469
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004702004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +0000471
472 * Released 1.1
473
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004742004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +0000475
476 * Properly check if the inode exists in fuse_invalidate
477
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004782004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +0000479
480 * Added -q option for fusermount
481
482 * fuse_unmount() now uses -q option of fusermount, so no error is
483 printed if the cause of the program exit is that the filesystem
484 has already been unmounted
485
Miklos Szeredif4f8b892004-01-27 17:04:59 +0000486 * Fix i_nlink correctness after rmdir/unlink
487
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004882004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000489
Miklos Szeredib1158392004-01-26 14:43:12 +0000490 * Released 1.1-pre2
491
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004922004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +0000493
Miklos Szeredi307242f2004-01-26 11:28:44 +0000494 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +0000495
496 * Compile fixes for 2.4 kernels
Miklos Szeredi307242f2004-01-26 11:28:44 +0000497
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00004982004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000499
500 * Fix CONFIG_MODVERSIONS compile on 2.6
501
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005022004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +0000503
504 * Write all pending data before a RELEASE operation
505
506 * Suppress 'Bad file descriptor' warning on exit
507
508 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +0000509 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +0000510
Miklos Szeredib1158392004-01-26 14:43:12 +0000511 * New fusermount option '-l' which enables big reads. Big reads
512 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +0000513
514 * fuse_main() can accept fusermount arguments after a '--'
515
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005162004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +0000517
518 * Support for exporting filesystem over NFS (see README.NFS)
519
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005202004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +0000521
522 * Support non-blocking writepage on 2.6. This makes FUSE behave
523 much more nicely in low-memory situations
524
525 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
526 (Note: the mknod method does not yet use 32bit device number)
527
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005282004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +0000529
530 * Code cleanups
531
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005322004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +0000533
534 * Released 1.1-pre1
535
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005362004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +0000537
538 * Integrated 2.6 kernel support patch by Michael Grigoriev
539
540 * Improvements and cleanups for 2.6 kernels
541
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005422004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +0000543
544 * Added -d option to fusermount
545
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005462003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +0000547
548 * Added major+minor version to library API, and minor version to
549 kernel API
550
David McNab7a19caf2003-12-13 02:05:46 +00005512003-12-13 David McNab <david@rebirthing.co.nz>
552
553 * Implemented fsync support in examples/example.py
554
555 * Implemented 'fsync' and 'statfs' methods in python
556 interface
557
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005582003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +0000559
560 * Make it compile on 2.4.19.
561
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +0000562 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +0000563
David McNab8bf62632003-12-11 22:49:22 +00005642003-12-12 David McNab <david@rebirthing.co.nz>
565
566 * Added distutils support to the python module, as per standard
567 python development practice
568
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005692003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +0000570
571 * Add file locking for mount/unmount (based on patch by Valient
572 Gough)
573
5742003-12-11 David McNab <david@rebirthing.co.nz>
575
576 * Python filesystem - was broken with python2.3, now fixed:
577 - changed PyTuple_* calls to PySequence_*, because os.lstat
578 is no longer returning a pure tuple
579 - changed PyInt_Check() calls to also call PyLong_Check,
580 to cover for cases (eg os.lstat) where longs are returned
581 - Added support for file 'release' handling, which IMO is
582 essential since this signals to a FS that writes to a file
583 are complete (and therefore the file can now be disposed of
584 meaningfully at the python filesystem's discretion)
585 - Added '__init__' handler to base Fuse class, which allows
586 your Python class to know the mountpoint and mount args,
587 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
588
589 * General:
590 - added 'mount.fuse' script (in util/ dir), which is meant to be
591 symlinked from /sbin, and which allows FUSE filesystems to
592 be mounted with the 'mount' command, and listed in fstab;
593 also, mount arguments get passed to your filesystem
594
595
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00005962003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +0000597
598 * Fix kernel version detection (again). Bugreport by Peter Levart
599
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006002003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +0000601
602 * Applied read combining patch by Michael Grigoriev (tested by
603 Valient Gough and Vincent Wagelaar)
604
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006052003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +0000606
607 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
608 #766443)
609
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006102003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +0000611
612 * Error code fixes in kernel module
613
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006142003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +0000615
616 * kernel version detection fix
617
618 * fusermount now uses "lazy" umount option
619
620 * fusermount can use modprobe with module-init-tools
621
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006222003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +0000623
624 * Integrated caching patch by Michael Grigoriev
625
Miklos Szeredida4e4862003-09-08 11:14:11 +0000626 * Added "Filesystems" file with descriptions of projects using
627 FUSE
628
Miklos Szeredi02ceb112003-09-08 13:52:25 +0000629 * Added patch by Michael Grigoriev to allow compliation of FUSE
630 kernel module for 2.6 kernels
631
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006322003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +0000633
634 * And another spec-file fix by Achim Settelmeier
635
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006362003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +0000637
638 * Spec-file fix by Achim Settelmeier
639
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006402003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +0000641
Miklos Szerediac361172004-11-02 19:14:14 +0000642 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +0000643
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006442003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +0000645
646 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
647
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006482003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +0000649
650 * Updated fuse.spec file (Achim Settelmeier)
651
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006522003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +0000653
654 * Version 1.0 released
655
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006562003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +0000657
658 * SuSE compilation fix by Juan-Mariano de Goyeneche
659
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006602002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +0000661
662 * The release() VFS call is now exported to the FUSE interface
663
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006642002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +0000665
666 * 64 bit file offset fixes in the fuse kernel module
667
668 * Added function 'fuse_exit()' which can be used to exit the main
669 loop
670
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006712002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +0000672
673 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
674 an incompatible interface change.
675
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006762002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +0000677
678 * Portablility fix (bug reported by C. Chris Erway)
679
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006802002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +0000681
682 * Use Mark Glines' fd passing method for default operation instead
683 of old reexec
684
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006852002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +0000686
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +0000687 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
688
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00006892002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +0000690
Miklos Szeredi60c23522002-10-24 09:19:43 +0000691 * fix incompatiblity with Red Hat kernels, with help from Nathan
692 Thompson-Amato.
693
Mark Glines65ba2192002-04-18 14:41:48 +00006942002-04-18 Mark Glines <mark@glines.org>
695
696 * added an alternative to fuse_mount(), called
697 fuse_mount_ioslave(), which does not need to reexec the
698 FUSE program.
699 * added a small helper util needed by fuse_mount_ioslave().
700
Mark Glines220635a2002-03-17 07:01:14 +00007012002-03-16 Mark Glines <mark@glines.org>
702
703 * use struct fuse_statfs everywhere possible to avoid problems
704 with the headerfiles changing struct statfs member sizes
705
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007062002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +0000707
708 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
709
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007102002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +0000711
712 * RPM support by Achim Settelmeier
713
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007142002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +0000715
Miklos Szerediddc862a2002-01-09 13:46:10 +0000716 * Version 0.95 released
717
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007182002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +0000719
Miklos Szeredi4b2bef42002-01-09 12:23:27 +0000720 * Revaidate all path components not just the last, this means a
721 very small performance penalty for being more up-to-date.
722
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007232002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +0000724
725 * Update and fix python interface
726
Mark Glinesd84b39a2002-01-07 16:32:02 +00007272002-01-07 Mark Glines <mark@glines.org>
728
729 * Added statfs() support to kernel, lib, examples, and perl!
730
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007312001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +0000732
733 * Better cross compilation support
734
735 * Ported to Compaq IPAQ
736
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007372001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +0000738
739 * Added function fuse_get_context() to library API (inspired by
740 patch from Matt Ryan)
741
742 * Added flags to fusermount and to kernel interface to control
743 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +0000744
Miklos Szeredife25def2001-12-20 15:38:05 +0000745 * Integrated fuse_set_operations() into fuse_new()
746
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007472001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +0000748
749 * Applied header protection + extern "C" patch by Roland
750 Bauerschmidt
751
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007522001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +0000753
754 * Added perl bindings by Mark Glines
755
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007562001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +0000757
758 * Cleaned up way of mounting simple filesystems.
759
760 * fuse_main() helper function added
761
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007622001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +0000763
764 * Optimized read/write operations, so that minimal copying of data
765 is done
766
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007672001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +0000768
769 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +0000770
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007712001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +0000772
773 * Fixed vfsmount reference leak in fuse_follow_link
774
775 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
776 userspace is ignored
777
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00007782001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +0000779
Miklos Szeredife25def2001-12-20 15:38:05 +0000780 * Started ChangeLog