📄 changelog
字号:
Bug found and patch tested by Mark Huijgen2006-07-05 Miklos Szeredi <miklos@szeredi.hu> * fusermount: if /dev/fuse doesn't exist, suggest modprobing fuse; this makes sense on systems using udev. Reported by Szakacsits Szabolcs2006-06-29 Miklos Szeredi <miklos@szeredi.hu> * Released 2.6.0-pre32006-06-29 Miklos Szeredi <miklos@szeredi.hu> * Support in kernel module for file locking and interruption. The same functionality is available in official kernels >= 2.6.182006-06-28 Miklos Szeredi <miklos@szeredi.hu> * Add POSIX file locking support * Add request interruption2006-06-06 Miklos Szeredi <miklos@szeredi.hu> * Add missing pthread_rwlock_destroy(). Patch from Remy Blank2006-06-05 Remy Blank <remy.blank@pobox.com> * lib: canonicalize mount point in fuse_helper_opt_proc() so that unmounting succeeds even if mount point was relative.2006-06-04 Csaba Henk <csaba.henk@creo.hu> * lib: fix emergency umount in helper.c when malloc fails. (The way it was done would end up in a segfault.)2006-06-01 Csaba Henk <csaba.henk@creo.hu> * lib: adjust threading related compiler flags. Switch to "-pthread" from "-lpthread" as that's the preferred one on several platforms. Consulted with Terrence Cole and Miklos Szeredi2006-05-08 Miklos Szeredi <miklos@szeredi.hu> * lib: search fusermount in installation directory (bindir) as well as in PATH.2006-05-03 Miklos Szeredi <miklos@szeredi.hu> * lib: fix compilation if CLOCK_MONOTONIC is not defined. Reported by Christian Magnusson2006-04-23 Csaba Henk <csaba.henk@creo.hu> * lib: make FreeBSD mount routine recognize if kernel features backgrounded init and if it does, run the mount util in foreground (similarly to Linux)2006-04-21 Miklos Szeredi <miklos@szeredi.hu> * kernel: fix fput deadlock fix, the lockless solution could lead to "VFS: busy inodes after umount..." * kernel: fix race between checking and setting file->private_data for the device. Found by Al Viro2006-04-11 Miklos Szeredi <miklos@szeredi.hu> * kernel: remove request pool, instead allocate requests on demand. Account the number of background requests, and if they go over a limit, block the allocation of new requests. * kernel: fix deadlock if backgrounded request holds the last reference to the super block * kernel: don't use fuse_reset_request() during direct I/O2006-04-06 Csaba Henk <csaba.henk@creo.hu> * lib: Let FreeBSD mount option parsing routine recognize "no" prefixes for FUSE specific options as well2006-04-01 Miklos Szeredi <miklos@szeredi.hu> * lib: Add missing rwlock initialization. Patch by Ryan Bradetich2006-03-17 Miklos Szeredi <miklos@szeredi.hu> * API changes: * fuse_main(), fuse_setup() and fuse_new() have an additionl user_data parameter * fuse_mount() returns a 'struct fuse_chan' pointer instead of a file descriptor * fuse_unmount() receives a 'struct fuse_chan' pointer. It destroys the given channel * fuse_teardown() no longer has a file descriptor parameter * new exported functions: fuse_session_remove_chan(), fuse_get_session(), fuse_daemonize() * fuse_chan_recv() may now return a new channel which will be used to send the reply2006-03-16 Miklos Szeredi <miklos@szeredi.hu> * Released 2.6.0-pre22006-03-16 Miklos Szeredi <miklos@szeredi.hu> * Don't unmount if already unmounted. This fixes a problem seen in the following situation: Lazy unmount a busy filesystem; Mount a new one in top; When the first finally unmounts, the second also unmounts. Reported by Franco Broi2006-03-15 Miklos Szeredi <miklos@szeredi.hu> * lowlevel lib: use indirect function calls instead of a switch/case construct. Besides increased efficiency it helps maintainability & readability too. Patch from Florin Malita2006-03-13 Miklos Szeredi <miklos@szeredi.hu> * kernel: replace global spinlock with a per-connection spinlock2006-03-10 Miklos Szeredi <miklos@szeredi.hu> * Fix source compatibility breakage for fuse_unmount(). Report from Yura Pakhuchiy2006-03-02 Miklos Szeredi <miklos@szeredi.hu> * Fix O_ASYNC handling in fuse_dev_release(). From Jeff Dike2006-03-01 Miklos Szeredi <miklos@szeredi.hu> * Add O_ASYNC and O_NONBLOCK support to FUSE device. Patch by Jeff Dike * Renamed fuse_chan_receive() to fuse_chan_recv() and changed interface to return -errno in case of error.2006-03-01 Csaba Henk <csaba.henk@creo.hu> * libfuse: pass device file descriptor to fuse_unmount(), rewrite FreeBSD implementation so that it uses libc (sysctl backed) instead of an embdedded script (kmem backed). Adjust the control flow of hello_ll so that device doesn't get closed before unmount attempt.2006-02-25 Miklos Szeredi <miklos@szeredi.hu> * Lowlevel lib: return all-zero statvfs data if filesystem doesn't implement method. This is needed on FreeBSD, and nicer on Linux too. Highlevel lib already did this. Reported by Csaba Henk * Fix negative entry handling. There was a bug, that negative lookups with timeouts (nodeid == 0) returned -EIO.2006-02-23 Miklos Szeredi <miklos@szeredi.hu> * Fix race between RELEASE and UNLINK, which might leave .fuse_hidden* files around2006-02-21 Miklos Szeredi <miklos@szeredi.hu> * fusexmp_fh: implement flush() method and call close() on the open file descriptor. This is needed if used on an NFS filesystem, which buffers data until file is closed. Franco Broi spotted the situation when 'cp -p' failed to set the modification time because of this.2006-02-20 Miklos Szeredi <miklos@szeredi.hu> * Released 2.6.0-pre12006-02-19 Miklos Szeredi <miklos@szeredi.hu> * libfuse: fix use-after-free bug in interruptred reply_entry(). Patch from John Muir * libfuse: fix wrong symbol versioning for fuse_mount. Debian bug ID: 352631. Found by Stéphane Rosi2006-02-17 Miklos Szeredi <miklos@szeredi.hu> * Lowlevel lib: Unify fuse_dirent_size() and fuse_add_dirent() into a single function fuse_add_direntry(). This cleans up the interface and makes it possible to do stacking.2006-02-16 Miklos Szeredi <miklos@szeredi.hu> * Fix rare race betweeen abort and release caused by failed iget() in fuse_create_open(). * Add 'ac_attr_timeout' option e.g. for filesystems which do their own attribute caching.2006-02-15 Miklos Szeredi <miklos@szeredi.hu> * Work around FreeBSD runtime linker "feature" which binds an old version of a symbol to internal references if the symbol has more than one version. This resulted in infinite recursion in fuse_lowlevel_new_compat25().2006-02-10 Csaba Henk <csaba.henk@creo.hu> * Refine clock_gettime() querying so that linker options shall be set as it's appropriate for the target platform.2006-02-09 Miklos Szeredi <miklos@szeredi.hu> * Fix udev rule syntax. Reported by Nix2006-02-08 Miklos Szeredi <miklos@szeredi.hu> * In some cases udev rule seems to be ineffective when installed as 40-fuse.rules but work as 60-fuse.rules. Reported by John Hunt2006-02-03 Miklos Szeredi <miklos@szeredi.hu> * Fix compilation when build directory is different from source directory. Reported by Frédéric L. W. Meunier2006-02-02 Miklos Szeredi <miklos@szeredi.hu> * Fix even bigger bug introduced in fix for request_end() on 2006-01-14. Reported by Gal Rosen2006-01-30 Miklos Szeredi <miklos@szeredi.hu> * highlevel-lib: add 'auto_cache' option. This caches file data based on modification time and size2006-01-20 Miklos Szeredi <miklos@szeredi.hu> * Sanitize storage type and help message in mount_bsd.c. Patch from Csaba Henk * fuse_opt: add new helper constants FUSE_OPT_KEY_KEEP and FUSE_OPT_KEY_DISCARD * Add options 'max_readahead', 'sync_read' and 'async_read' * Kernel ABI version 7.6: * Negotiate the 'max_readahead' value and 'async_read' flags with userspace in the INIT method * Add connection info to ->init() methods to both lowlevel and highlevel API * Fall back to synchronous read() behavior if either library or userspace filesystem is using the old interface version. This is needed so non-updated filesystems won't be confused by the different read() behavior2006-01-19 Miklos Szeredi <miklos@szeredi.hu> * lib: if "fsname=" option was given, pass it to fusermount * fuse_opt: add new fuse_opt_insert_arg() function, which is needed by filesystems to implement some argument manipulations correctly * fuse_opt: fix memory leak in handling "--" option2006-01-18 Miklos Szeredi <miklos@szeredi.hu> * kernel: fix detection of case when fuse is not configured into the kernel either as module or built-in * fuse_opt.h: fix incompatibility with C++ compilers by renaming 'template' structure member to 'templ'. Reported by Takashi Iwai * fuse.h: fix compatibility bugs. Patch by Yura Pakhuchiy * kernel: support version 2.6.16 (i_sem -> i_mutex)2006-01-16 Miklos Szeredi <miklos@szeredi.hu> * Added (again) asynchronous readpages support * Each connection now shows up under /sys/fs/fuse/connections * Connection attributes exported to sysfs: 'waiting' number of waiting requests; 'abort' abort the connection * Connection may be aborted through either the sysfs interface or with 'umount -f mountpoint'2006-01-14 Miklos Szeredi <miklos@szeredi.hu> * Released 2.5.02006-01-14 Miklos Szeredi <miklos@szeredi.hu> * kernel: fix a couple of bugs * Order of request_end() and fuse_copy_finish() was wrong. Posthumous note: Franco Broi managed to exploit this, though it seemed quite impossible * request_end() used request pointer after decrementing refcount * Clearing ->connected or ->mounted connection flags could race with setting other bitfields not protected with a lock2006-01-10 Miklos Szeredi <miklos@szeredi.hu> * kernel: add necessary compile flags for 2.4.X/x86_64. Report from Sean Ziegeler2006-01-09 Miklos Szeredi <miklos@szeredi.hu> * Released 2.5.0-pre22006-01-09 Miklos Szeredi <miklos@szeredi.hu> * Applied patch from Csaba Henk, to update mount_bsd to new fuse_mount() semantics * Ignore auto,noauto,... options in mount.fuse. Reported by Frank Steiner and Don Taber * fusermount: add 'dirsync' mount option2006-01-07 Miklos Szeredi <miklos@szeredi.hu> * Improved help reporting and added version reporting to library2006-01-06 Miklos Szeredi <miklos@szeredi.hu> * Change working directory to "/" even if running in the foreground. Patch from Jonathan Brandmeyer * Changed lots of functions to use 'struct fuse_args' instead of separate argc and argv * Added fuse_parse_cmdline(), fuse_set_signal_handlers() and fuse_remove_signal_handlers() functions, so that it's now pretty easy to get all the functionality of fuse_main() with a filesystem using the lowlevel API.2006-01-02 Miklos Szeredi <miklos@szeredi.hu> * mount.fuse: the 'user' option should be ignored. Report and solution from Mattd. * mount.fuse: export PATH in the right place. Report and patch from Hannes Schweizer2005-12-16 Miklos Szeredi <miklos@szeredi.hu> * Clean up the option parsing interface slightly, by creating an "argument list" structure, that contains the argument vector and count2005-12-15 Miklos Szeredi <miklos@szeredi.hu> * fusermount: check if /mnt/mtab is a symlink and don't modify it in that case * kernel: simplify request size limiting. INIT only contains maximum write size, maximum path component size remains fixed at 1024 bytes, and maximum xattr size depends on read buffer.2005-12-14 Miklos Szeredi <miklos@szeredi.hu> * Fix readdir() failure on x86_64, of 32bit programs compiled without largefile support. Bug report and help from Anthony Kolasny * If lookup returns invalid mode, return -EIO instead of creating a regular file * Add current output argument vector to option processing function2005-12-12 Miklos Szeredi <miklos@szeredi.hu> * Fix stale code in ifdef FreeBSD. Patch from Csaba Henk2005-12-09 Miklos Szeredi <miklos@szeredi.hu> * Released 2.5.0-pre12005-12-09 Miklos Szeredi <miklos@szeredi.hu> * libfuse: added option parsing interface, defined in <fuse_opt.h>.2005-12-07 Miklos Szeredi <miklos@szeredi.hu> * Return EIO for file operations (read, write, fsync, flush) on open files whose inode has become "bad". Inodes will be marked "bad" if their type changes. Bug report by Csaba Henk2005-12-06 Miklos Szeredi <miklos@szeredi.hu> * Use bigger request buffer size. write() did not work on archs with > 4k page size, Bug report by Mark Haney * ABI version 7.5: * Extend INIT reply with data size limits2005-12-02 Miklos Szeredi <miklos@szeredi.hu> * Fix memory leak in fuse_read_cmd()/fuse_process_cmd(). Bug reported by Vincenzo Ciancia * Handle exit-by-umount in fuse_read_cmd()2005-11-29 Miklos Szeredi <miklos@szeredi.hu> * Check if '-msoft-float' option is supported by compiler when configuring for a 2.4.x kernel. Bug report by Mark Haney * In multithreaded loop send a TERM signal to the main thread if one of the other threads exit. Needed on FreeBSD for a clean exit on umount. Should not cause any harm on Linux either2005-11-28 Miklos Szeredi <miklos@szeredi.hu> * Fix bug in 32-bit file handle compatibility
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -