| Age | Commit message (Collapse) | Author |
|
This is a conversion to make the various file_operations structs in fs/
const. Basically a regexp job, with a few manual fixups
The goal is both to increase correctness (harder to accidentally write to
shared datastructures) and reducing the false sharing of cachelines with
things that get dirty in .data (while .rodata is nicely read only and thus
cache clean)
Signed-off-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
The ViceFid structure is really a Coda server datatype and the kernel
really shouldn't have to know its internal structure. Replace all
instances with struct CodaFid with opaque members.
|
|
Both userspace and the kernel are testing only the fsuid part of the
coda_creds credentials structure. Nothing else is really used, so we now
match the code with the actual usage by only passing fsuid around. The
kernel-userspace API is kept compatible (for now).
|
|
- Remove unused functions and variables.
- Be a bit more strict with the definition of various types that are
shared between kernel and userspace.
- Included a couple of cleanups from Maximilian Attems and Stephen
Hemminger.
|
|
- Make the VFS pass the struct nameidata as an optional parameter
to the permission() inode operation.
- Patch may_create()/may_open() so it passes the struct nameidata from
vfs_create()/open_namei() as an argument to permission().
- Add an intent flag for the sys_access() function.
|
|
coda_linux simply doesn't need sched.h
|
|
Most of these changes have been tested and used in the 2.4 tree, so this
is mostly a forward port of 2.4 bugfixes.
* C99 initializers
* Added specific initializations instead of assuming that the private
part of the inode is already initialized.
* Remove unused code.
* Moved container file to the struct file private data, this is to
* correct the session semantics model when file updates are fetched from
* the server (old 'sessions' shouldn't see the new container yet).
* Fixed consistency (and occasional oopes) when mmap-ing Coda files.
* Fixing up inode numbers in readdir, old libc5 getcwd was broken.
* Nuked upcall_stats, all of this can easily be maintained in userspace,
and the existing code suffers from overflows in the fixed point
calculations.
|
|
kill ->i_op->revalidate()
|
|
Here is a batch of accumulated bugfixes and cleanups for the Coda kernel
module. Patch is against 2.5.6-pre2, I could also send these as separate
patches.
bugfix: Fix coda_dentry_revalidate bug
Due to a bad test, coda_dentry_revalidate was forcing revalidation
of cacheable inodes, and allowed caching of non-cacheable inodes.
bugfix: Corrected i_mtime/i_ctime setting
i_mtime and i_ctime were not always updated when writing to a file,
or when modifying inode attributes.
cleanup/optimization: Avoid getattr upcalls
We can use coda_iget directly instead of coda_cnode_make when an
upcall returns attributes and avoid the getattr upcall altogether.
cleanup: Removed debugging messages
CDEBUG macros haven't been useful ever since the initial development
when they were introduced. They are too verbose for debugging
purposes. Removing these saves about a third of the compiled size of
the module.
Removed print_entry variable that was used by ENTRY/EXIT macros
which are already gone.
cleanup/optimization: Readdir simplification
Relying on the fact that the pagecache is already buffering far more
efficiently, simplified coda_readdir implementation. We can now fill
the complete userbuffer instead of returning after reading only 2KB.
Passing dir entry types that are present in the venus_dirent
structure to the user as well.
cleanup: Removed redundant permissions statistics counters.
The permission check count is about identical to the 'permission'
field in the VFS stats, and the permission hit counter can trivially
be derived from upcall_stats.access - vfs_stats.permission. Removed
these redundant counters.
cleanup: Removed useless test for c_flags in coda_revalidate_inode.
We already know c_flags is set due to earlier tests.
|
|
- Al Viro: VFS inode allocation moved down to filesystem, trim inodes
- Greg KH: USB update, hotplug documentation
- Kai Germaschewski: ISDN update
- Ingo Molnar: scheduler tweaking ("J2")
- Arnaldo: emu10k kdev_t updates
- Ben Collins: firewire updates
- Björn Wesen: cris arch update
- Hal Duston: ps2esdi driver bio/kdev_t fixes
- Jean Tourrilhes: move wireless drivers into drivers/net/wireless,
update wireless API #1
- Richard Gooch: devfs race fix
- OGAWA Hirofumi: FATFS update
|
|
- Jens Axboe: more bio stuff
- Coda compile fixes
- Nathan Laredo: stradis driver update
|
|
- Johannes Erdfelt: USB updates
- David Howells: more rw-sem stuff
- David Miller: network callback cleanups and fixes
- Jan Harkes: make Coda use the proper VFS layer interfaces, so that it can use
"non-traditional-unix" filesystems without inode numbers for backing store.
|
|
- Jens: better ordering of requests when unable to merge
- Neil Brown: make md work as a module again (we cannot autodetect
in modules, not enough background information)
- Neil Brown: raid5 SMP locking cleanups
- Neil Brown: nfsd: handle Irix NFS clients named pipe behavior and
dentry leak fix
- maestro3 shutdown fix
- fix dcache hash calculation that could cause bad hashes under certain
circumstances (Dean Gaudet)
- David Miller: networking and sparc updates
- Jeff Garzik: include file cleanups
- Andy Grover: ACPI update
- Coda-fs error return fixes
- rth: alpha Jensen update
|
|
|