⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog

📁 Solaris操作系统下的过滤驱动程序, C源码程序.
💻
字号:
2000-05-24  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* inode.c (wrapfs_unlink): call d_delete() because dput() does	that too.	(wrapfs_rmdir): call d_delete() because dput() does	that too.	(wrapfs_truncate_and_enlarge): call mntget() before dentry_open() because	it will decrement the mnt's refcount if error, and fput() will do	an mntput() for us upon file close.	* file.c (wrapfs_open): call mntget() before dentry_open() because	it will decrement the mnt's refcount if error, and fput() will do	an mntput() for us upon file close.	* dentry.c (wrapfs_d_delete): fully implement d_delete, and have	it call the lower file system's ->d_delete method if the latter	has one.  This is needed since 2.3.99-pre9 changed dput() and now	have dput() call d_delete() and ->d_drop.	* aux.c (wrapfs_idx_open): call mntget() before dentry_open()	because it will decrement the mnt's refcount if error, and fput()	will do an mntput() for us upon file close.	(wrapfs_idx_set_entry): bug fix.  move holes support code outside	the previous "if" statement, which had nothing to do holes.2000-05-16  Erez Zadok  <ezk@earth.cs.columbia.edu>	* inode.c (wrapfs_truncate_and_enlarge): call mntget since we've	called dentry_open().	* aux.c (wrapfs_idx_open): call mntget since we've called	dentry_open().	* file.c (wrapfs_open): use ftohf() not file->private_data.	(wrapfs_open): call mntget(hidden_file->f_vfsmnt) else we BUG() in	wrapfs_release() when it calls fput(hidden_file).	* mmap.c: All calls to ->readpage, ->writepage, wrapfs_get1page,	and read_cache_page changed to pass file instead of dentry.	* inode.c (wrapfs_truncate_and_enlarge): use fake a struct file so	we can pass it to wrapfs_get1page (which absolutely needs it).  An	ugly hack because notify_change doesn't take a struct file and it	isn't that easy to make it do so.	* aux.c (wrapfs_get1page): now takes a file, not dentry.  All	calls to ->readpage and read_cache_page changed to pass file	instead of dentry.2000-05-16  Erez Zadok  <ezk@beetle.mcl.cs.columbia.edu>	* mmap.c (wrapfs_writepage): ->writepage doesn't take struct	dentry any more (2.3.99-pre7).	* main.c (wrapfs_parse_options): walk_init renamed to path_init in	2.3.99-pre7. 	(wrapfs_parse_options): walk_name renamed to path_walk.2000-05-10  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* Makefile: define TOPINC for special -I flags, to avoid bad	header inclusions with just a -I<null> option.2000-05-01  Erez Zadok  <ezk@beetle.mcl.cs.columbia.edu>	* sca_aux.c, sca_aux.h, sca_list_idx.c, sca_mk_idx.c, sca_read.c,	sca_write.c: SCA support user-level files to print an index file,	recover it, decode a file, and encode a file.  These files are	generated only if SCA code is on.	* aux.c (wrapfs_{read,write}_file): filp_open doesn't need 4th	arg.2000-04-30  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* mmap.c (wrapfs_sync_page): define new method sync_page.2000-04-30  Erez Zadok  <ezk@beetle.mcl.cs.columbia.edu>	* mmap.c (wrapfs_writepage): now takes an extra argument, struct	file (2.3.99-pre6).  Let's hope that it can never be NULL.2000-04-24  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* inode.c (wrapfs_rmdir): handle cases where the file/dir is	removed through the hidden fs2000-04-24  Ion Badulescu  <ib42@earth.cs.columbia.edu>	Updated to 2.3.99-pre6-pre5:	* wrapfs.h: added hidden_mnt to struct wrapfs_sb_info	* super.c (wrapfs_put_super): mntput() the hidden_mnt; #ifdef	FIST_DEBUG the delete_inode() method, as it's not needed anymore	* main.c (wrapfs_interpose): use wrapfs_iops_symlink if the inode	is a symlink	(wrapfs_parse_options): determine and store hidden_mnt	* inode.c (wrapfs_readlink): return -EINVAL instead of -EPERM if	the hidden inode doesn't support readlink	(wrapfs_follow_link): changed return type, use vfs_follow_link	(wrapfs_iops_symlink): new inode_operations structure, used only	for symlinks	* aux.c (wrapfs_idx_open), file.c (wrapfs_open): pass hidden_mnt	to dentry_open	* aux.c (fist_lookup, wrapfs_idx_lookup), inode.c (wrapfs_lookup):	use lookup_one instead of lookup_dentry2000-04-23  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* Changed index handling routines to allocate memory as	whole pages2000-04-23  Erez Zadok  <ezk@earth.cs.columbia.edu>	* doit.sh (PATH): don't force insmod with '-f' to insert the	module.  Too dangerous.	* make all kfree() use kfree_s() as much as possible (presumably	kfree_s is faster).	* rename functions that may conflict with similar other modules to	wrapfs_*.	* Makefile-4-kernel: new file, a file systems specific Linux	kernel makefile you can drop into a Linux kernel source tree.	* *.c: include local headers with "foo.h" quotes not <foo.h>	* wrapfs.h: simple optional code to count number of writes and	number of writes in the middle.2000-04-22  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* inode.c (wrapfs_unlink): fixes for cases when files get removed	from under us2000-04-18  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* file.c (wrapfs_ioctl): return 0 or 1 for fast-tail flag.2000-04-18  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* fast tails work, other bugs fixed2000-04-16  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* mmap.c: added initial untested support for fast tails, probably	broke everything else in the process :-); added kmap/kunmap calls	where necessary	* aux.c (wrapfs_idx_read/write): read flags from the disk, write	them back; remove modified flag, integrate with the other flags2000-04-15  Erez Zadok  <ezk@vir.cs.columbia.edu>	* fist_ioctl.c (main): -d option now must be used for set/get	debugging value.  new -f option can be used to set/get the global	fast-tail flag.2000-04-15  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* inode.c (wrapfs_rmdir, wrapfs_unlink): fixed it so that deleting	an open file works correctly	(wrapfs_permission): check for read-only filesystem2000-04-14  Johan M. Andersen  <johan@beetle.mcl.cs.columbia.edu>	* aux.c: remove wrapfs_encode_buffer and wrapfs_decode_buffer,	they are algorithm specific.2000-04-14  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* vm_area.c: ifdef'ed out the entire code	* inode.c (wrapfs_unlink): don't complain if symlinks don't have	index files	(wrapfs_readlink): removed bogus dprint() which could result in a	bad page fault since the strings wasn't null-terminated;	removed old versions of truncate and enlarge; moved get1page to aux.c	* file.c (wrapfs_mmap): ifdef'ed out, not needed	* aux.c (get1page): moved here from mmap.c; made idx_* calls	non-static as they are called from other files	* Makefile (O_OBJS): removed vm_area.o2000-04-13  Johan M. Andersen  <johan@vir.cs.columbia.edu>	* inode.c (wrapfs_rename): Move the index file as well as the	target file.		(wrapfs_link): Link the index file as well as the target file2000-04-13  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* mmap.c (wrapfs_commit_write): fixed calls to shift_*; fixed size	of hidden_inode after shifting	* inode.c (wrapfs_unlink): fixed the logic in unlink, it's still	wrong and ocassionally screws up but it's better than before	* file.c (wrapfs_filldir): commented out a fist_dprint call, it	can go wild on strings that are not zero-terminated	* aux.c (wrapfs_sca_set_entry): fixed hole support, moved sanity	check down so it won't complain needlessly2000-04-08  Erez Zadok  <ezk@earth.cs.columbia.edu>	* basic writing of file and index table works for one page only,	the first page.2000-04-08  Erez Zadok  <ezk@vir.cs.columbia.edu>	* mmap.c (wrapfs_readpage): call readpage() again if we returned	from wait_on_page with a page that's not up-to-date; that can	happen when a partial page has a few buffers which are ok, but not	the whole page.2000-04-07  Johan M. Andersen  <johan@vir.cs.columbia.edu>	* wrapfs.h (HIDDEN_PAGE_STARTING_OFFSET): Add macros for hidden	page info (length and start offset)2000-04-06  Erez Zadok  <ezk@vir.cs.columbia.edu>	* print.c (fist_print_scafs_header): new routine to print contents	of an SCA header.	* convert scafs_hdr part of the private inode data to be a real	structure, not a malloc'ed one, since we always need to allocate	it anyway.2000-04-06  Johan M. Andersen  <johan@vir.cs.columbia.edu>	* aux.c (wrapfs_sca_read_idx): Add sanity checks to ensure the	index file isn't corrupted.	* main.c (wrapfs_interpose): move igrab before index-file read so	we can reference underlying file in read_idx	(wrapfs_interpose): Fix to out_iput by Ion to iput the hidden	inode and un-interpose the upper-level inode for non-existing files.2000-04-06  Erez Zadok  <ezk@vir.cs.columbia.edu>	* aux.c (krealloc): an in-kernel realloc routine.	(wrapfs_sca_add_entry): routine to add one more "entry" into an	existing in-memory Index Table (IT) header structure.2000-04-06  Johan M. Andersen  <johan@vir.cs.columbia.edu>	* aux.c (wrapfs_decode_buffers): Fix CVS Breakage, comment	(wrapfs_decode_buffers): Make zlib usage match usage in	wrapfs_encode_buffers	* aux.c (wrapfs_encode_buffers): Fill out and comment2000-04-06  Erez Zadok  <ezk@vir.cs.columbia.edu>	* main.c (wrapfs_interpose): put back old code; assertion that	hidden dentry may be NULL isn't always true.	(wrapfs_interpose): when new files are created, the parent hidden	inode is locked, and we cannot and shouldn't call sca_read_idx,	because it will do a lookup in the same directory and will	deadlock.2000-04-05  Johan M. Andersen  <johan@vir.cs.columbia.edu>	* aux.c (wrapfs_decode_buffers): Move check for full buffers to	after the call to inflate. This allows zlib to finish its	checksums/etc even though it reports no space left in the output	buffer. 2000-04-05  Erez Zadok  <ezk@vir.cs.columbia.edu>	* inode.c (wrapfs_unlink): remove .idx file before removing main	file.	* wrapfs.h (INDEX_EXTENSION): define INDEX_EXTENSION here	* aux.c (wrapfs_sca_read_idx): if index file does not exist,	return ENOENT on looking up main file.2000-04-04  Erez Zadok  <ezk@whitestar.cs.columbia.edu>	* file.c (wrapfs_filldir): skip listing .idx files.2000-04-03  Ion Badulescu  <ib42@moisil.cs.columbia.edu>	* wrapfs.h (CURRENT_HIDDEN_PAGEINDEX): fixed silly error which was	corrupting data when crossing lower page boundary	* mmap.c (wrapfs_readpage): return errors from decode_buffers()	* main.c (wrapfs_interpose): reorganized, avoid leaking	inodes/dentries on error conditions	* aux.c (wrapfs_sca_read_idx): dput the idx_dentry if the index	files doesn't exist	(wrapfs_decode_buffers): debugging, return consistent error codes	* fist.h (print_exit_pointer): new debugging macro	* wrapfs.h: changed type of scafs_header.read_size from loff_t to	off_t (64 to 32 bits). Note that this will still break on a	big-endian platform.	(copy_inode_size): fixed calculation of i_blocks	* mmap.c (wrapfs_readpage): sanity check: exit if there are no	pages needed2000-04-02  Ion Badulescu  <ib42@moisil.cs.columbia.edu>	* mmap.c (wrapfs_readpage): reinit CURRENT_HIDDEN_PAGE to NULL if error	* aux.c (wrapfs_sca_read_idx): changed index table algorithm	(wrapfs_count_hidden_pages): implemented	(wrapfs_decode_buffers): implemented, currently buggy	[all the above is Johan's work]	* wrapfs.h (copy_inode_size): compute the different file size and	blocks in case of SCA filesystems	* main.c, super.c: don't call iget() in read_inode(), instead do the	interposition where it should be done: in interpose, by calling igrab()	(wrapfs_interpose): read index file if SCA filesystem	* mmap.c (wrapfs_readpage): added incipient support for SCA2000-04-02  Johan M. Andersen  <johan@vir.cs.columbia.edu>	* aux.c (wrapfs_sca_read_idx) reads an index-file into memory2000-04-01  Erez Zadok  <ezk@earth.cs.columbia.edu>	* aux.c (wrapfs_write_file,wrapfs_read_file): fixed "aclfs" typo.2000-04-01  Erez Zadok  <ezk@beetle.mcl.cs.columbia.edu>	* aux.c: placeholder for SCA/gzipfs code	* Makefile (${O_OBJS}): depend on optional included headers2000-04-01  Erez Zadok  <ezk@earth.cs.columbia.edu>	* inode.c (wrapfs_mkdir,wrapfs_mknod): eliminate unused label	(wrapfs_symlink): don't need hidden_symname2000-03-26  Ion Badulescu  <ib42@earth.cs.columbia.edu>	* inode.c (wrapfs_setattr): unconditionally copy attributes from	lower inode	moved debugging code around	* fist.h: removed declaration of fist_mod_dec_use_count()	* file.c: moved debugging code around	* Makefile: removed comment2000-03-25  Ion Badulescu  <ib42@beetle.mcl.cs.columbia.edu>	* debug code rearranged, some deleted2000-03-25  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* mmap.c (wrapfs_commit_write): unlock our page (and don't hang)	if the lower file system is full.	(wrapfs_commit_write): propagate errors correctly (so we handle a	full file system etc.)2000-03-24  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* mmap.c (wrapfs_prepare_write): added struct file pointer to this	function, to be in stnc with commit_write.  Change in 2.3.99-pre3.2000-03-20  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* major updates for 2.3.99-pre1, but there are still bugs.2000-03-18  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* main.c (wrapfs_read_super): no need to un/lock our superblock,	and no need to mainain module count increment/decrement.	New module un/loading style.	* super.c (wrapfs_statfs): call vfs_statfs. no need to pass	bufsize to us or vfs_statfs.2000-03-09  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* make sure the number of links, and inode/block count of the f/s	are kept in sync w/ the lower f/s, and they are updated upon	unlink, rmdir, rename, mkdir, etc.2000-03-06  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>	* updates for 2.3.49.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -