26 Mar, 2006
40 commits
-
There were a number of conflicting naming schemes used in the v9fs project.
The directory was fs/9p, but MAINTAINERS and Documentation referred to
v9fs. The module name itself was 9p2000, and the file system type was 9P.
This patch attempts to clean that up, changing all references to 9p in
order to match the directory name. We'll also start using 9p instead of
v9fs as our patch prefix.There is also a minor consistency cleanup in the options changing the name
option to uname in order to more closely match the Plan 9 options.Signed-off-by: Eric Van Hensbergevan
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Update license boilerplate to specify GPLv2 and remove the (at your option
clause). This change was agreed to by all the copyright holders (approvals
can be found on v9fs-developer mailing list).Signed-off-by: Eric Van Hensbergen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
__getname, which in turn will call kmem_cache_alloc, may return NULL.
Coverity bug #977
Signed-off-by: Eugene Teo
Signed-off-by: Eric Van Hensbergen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Implement a new way of creating special files. Instead of Tcreate+Twstat,
add one more field to Tcreate that contains special file description.Signed-off-by: Latchesar Ionkov
Signed-off-by: Eric Van Hensbergen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Print 9p messages.
Signed-off-by: Latchesar Ionkov
Cc: Eric Van Hensbergen
Signed-off-by: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The code talks about these things called tids, which I eventually figured
out are tags.Signed-off-by: Eric Van Hensbergen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Here is a new trans_fd.c that replaces the current trans_fd.c and
trans_sock.c.Signed-off-by: Eric Van Hensbergen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The Kconfig text for CONFIG_DEBUG_SLAB and CONFIG_DEBUG_PAGEALLOC have always
seemed a bit confusing. Change them to:CONFIG_DEBUG_SLAB: "Debug slab memory allocations"
CONFIG_DEBUG_PAGEALLOC: "Debug page memory allocations"Cc: "David S. Miller"
Cc: Hirokazu Takata
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Remove the assumption that driver_register() returns the number of devices
bound to the driver. In fact, it returns zero for success or a negative
error value.zorro_module_init() used the device count to automatically unregister and
unload drivers that found no devices. That might have worked at one time,
but has been broken for some time because zorro_register_driver() returned
either a negative error or a positive count (never zero). So it could only
unregister on failure, when it's not needed anyway.This functionality could be resurrected in individual drivers by counting
devices in their .probe() methods.Signed-off-by: Bjorn Helgaas
Cc: Geert Uytterhoeven
Cc: Roman Zippel
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Remove the assumption that driver_register() returns the number of devices
bound to the driver. In fact, it returns zero for success or a negative
error value.Signed-off-by: Bjorn Helgaas
Acked-by: Jeff Garzik
Acked-by: Marc Zyngier
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Remove the assumption that driver_register() returns the number of devices
bound to the driver. In fact, it returns zero for success or a negative
error value.dio_module_init() used the device count to automatically unregister and
unload drivers that found no devices. That might have worked at one time,
but has been broken for some time because dio_register_driver() returned
either a negative error or a positive count (never zero). So it could only
unregister on failure, when it's not needed anyway.This functionality could be resurrected in individual drivers by counting
devices in their .probe() methods.Signed-off-by: Bjorn Helgaas
Cc: Philip Blundell
Cc: Jochen Friedrich
Cc: "Antonino A. Daplas"
Cc: Jeff Garzik
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Use the new balance_dirty_pages_ratelimited_nr in reiserfs "largeio" file
write.Signed-off-by: Hans Reiser
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
We presently ignore the return values from initcalls. But that can carry
useful debugging information. So print it out if it's non-zero.It turns out the -ENODEV happens quite a lot, due to built-in drivers which
have no hardware to drive. So suppress that unless initcall_debug was
specified.Also make the warning message more friendly by printing the name of the
initcall function.Also drop the KERN_DEBUG from the initcall_debug message. If we specified
inticall_debug then we obviously want to see the messages.Acked-by: Paul Jackson
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Clean up several places where gcc issues warnings when -W is specified.
Thanks to Neil for finding that.Signed-off-by: Vladimir V. Saveliev
Cc: Neil Brown
Signed-off-by: Hans Reiser
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Today I wondered about /dev/parport after not seeing anything in
drivers/parport register char-major-99. Having PP_MAJOR in
include/linux/major.h would've allowed me to more quickly determine that it
was the ppdev driver driving these.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
In latest -mm a number of section mismatch warnings are generated for
floppy.o like the following:WARNING: drivers/block/floppy.o - Section mismatch: reference to \
.init.data: from .text between 'init_module' (at offset 0x6976) and \
'cleanup_module'The warning are caused by a reference to floppy_init() which is __init from
init_module() which is not declared __init. Declaring init_module() _init
fixes this.Signed-off-by: Sam Ravnborg
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
In latest -mm ide-code.o gave a number of warnings like the following:
WARNING: drivers/ide/ide-core.o - Section mismatch: reference to \
.init.text: from .text between 'init_module' (at offset 0x1f97) and \
'cleanup_module'The warning was caused by init_module() calling parse_option() and
ide_init() both declared __init.Declaring init_module() __init fixes the warnings.
Signed-off-by: Sam Ravnborg
Cc: Bartlomiej Zolnierkiewicz
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Previous inotify work avoidance is good when inotify is completely unused,
but it breaks down if even a single watch is in place anywhere in the
system. Robin Holt notices that udev is one such culprit - it slows down a
512-thread application on a 512 CPU system from 6 seconds to 22 minutes.Solve this by adding a flag in the dentry that tells inotify whether or not
its parent inode has a watch on it. Event queueing to parent will skip
taking locks if this flag is cleared. Setting and clearing of this flag on
all child dentries versus event delivery: this is no in terms of race
cases, and that was shown to be equivalent to always performing the check.The essential behaviour is that activity occuring _after_ a watch has been
added and _before_ it has been removed, will generate events.Signed-off-by: Nick Piggin
Cc: Robert Love
Cc: John McCutchan
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
sysrq.c is fairly revolting. Fix.
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
net/rxrpc/main.c: In function `rxrpc_initialise':
net/rxrpc/main.c:83: warning: label `error_proc' defined but not usedSigned-off-by: Jesper Juhl
Acked-by: David Howells
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Some BIOSes do not always set CF on error before return from int13. The
patch adds additional check for status being zero (AH == 0).Signed-off-by: Andrey Borzenkov
Cc: Matt Domsch
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
param_array() in kernel/params.c can now become static.
Signed-off-by: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
MODULE_PARM was actually breaking: recent gcc version optimize them out as
unused. It's time to replace the last users, which are generally in the
most unloved drivers anyway.Signed-off-by: Rusty Russell
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
hysdn defines its own types: ulong, uint, uchar and word.
Problem is, the module_param macros rely upon some of those identifiers having
special meanings too. The net effect is that module_param() and friends
cannot be used in ISDN because of this namespace clash.So remove the hysdn-private defines and open-code them all.
Cc: Karsten Keil
Cc: Rusty Russell
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
If we can detect a problem at compile time, the compilation should fail.
Signed-off-by: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Add a couple of 'const' qualifiers to the TTY flip buffer APIs, where
appropriate.Signed-off-by: Thomas Koeller
Acked-by: Alan Cox
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
drivers/isdn/i4l/isdn_ppp.c:785: warning: ignoring return value of `copy_to_user', declared with attribute warn_unused_result
Signed-off-by: Jesper Juhl
Signed-off-by: Karsten Keil
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
I think it would be nice to put an usage warning in header of
lookup_instantiate_filp() to indicate it is unsafe to use it on anything
but regular files (even that is potentially unsafe, but there your ->open()
is usually in your hands anyway), so that others won't fall into the same
trap I did.Signed-off-by: Oleg Drokin
Cc: Trond Myklebust
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Introduce FMODE_EXEC file flag, to indicate that file is being opened for
execution. This is useful for distributed filesystems to maintain
consistent behavior for returning ETXTBUSY when opening for write and
execution happens on different nodes.akpm:
Needed by Lustre at present. I assume their objective to to work towards
being able to install Lustre on an unmodified distro kernel, which seems
sane. It should have zero runtime cost.Trond and Chuck indicate that NFS4 can probably use this too, for the same
thing.Steven says it's also on the GFS todo list.
Signed-off-by: Oleg Drokin
Cc: Trond Myklebust
Cc: Chuck Lever
Cc: Steven Whitehouse
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
When an error occurs in reiserfs_file_write before any data is written, and
O_SYNC is set, the return code of generic_osync_write will overwrite the
error code, losing it.This patch ensures that generic_osync_inode() doesn't run under an error
condition, losing the error. This duplicates the logic from
generic_file_buffered_write().Signed-off-by: Jeff Mahoney
Cc: Chris Mason
Cc: Jeff Mahoney
Cc: Alexander Zarochentsev
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Reiserfs does not handle transaction ID overflow correctly. Transaction ID
== 0 causes reiserfs to crash. The patch fixes all places where the
transaction ID is incremented.Signed-off-by: Alexander Zarochentsev
Signed-off-by: Hans Reiser
Cc: Chris Mason
Cc: Jeff Mahoney
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patch fixes a bug in reiserfs truncate. A transaction might overflow
when truncating long highly fragmented file. The fix is to split
truncation into several transactions to avoid overflowing.Signed-off-by: Vladimir V. Saveliev
Cc; Charles McColgan
Cc: Alexander Zarochentsev
Cc: Hans Reiser
Cc: Chris Mason
Cc: Jeff Mahoney
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
There's no reason for iprune_mutex being global.
Signed-off-by: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Remove unused quota flag.
Signed-off-by: Jan Kara
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
It seems there is error check missing in open_namei for errors returned
through intent.open.file (from lookup_instantiate_filp).If there is plain open performed, then such a check done inside
__path_lookup_intent_open called from path_lookup_open(), but when the open
is performed with O_CREAT flag set, then __path_lookup_intent_open is only
called with LOOKUP_PARENT set where no file opening can occur yet.Later on lookup_hash is called where exact opening might take place and
intent.open.file may be filled. If it is filled with error value of some
sort, then we get kernel attempting to dereference this error value as
address (and corresponding oops) in nameidata_to_filp() called from
filp_open().While this is relatively simple to workaround in ->lookup() method by just
checking lookup_instantiate_filp() return value and returning error as
needed, this is not so easy in ->d_revalidate(), where we can only return
"yes, dentry is valid" or "no, dentry is invalid, perform full lookup
again", and just returning 0 on error would cause extra lookup (with
potential extra costly RPCs).So in short, I believe that there should be no difference in error handling
for opening a file and creating a file in open_namei() and propose this
simple patch as a solution.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The kjournald timer is currently on the kernel thread's stack and the journal
structure points at it. Save a pointer hop by moving the timer into the
journal structure.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Cause an attempt to add a duplicate non-updateable key (such as a keyring) to
a keyring to discard the extant copy in favour of the new one rather than
failing with EEXIST:# do the test in an empty session
keyctl session
# create a new keyring called "a" and attach to session
keyctl newring a @s
# create another new keyring called "a" and attach to session,
# displacing the keyring added by the second command:
keyctl newring a @sWithout this patch, the third command will fail.
For updateable keys (such as those of "user" type), the update method will
still be called rather than a new key being created.Signed-off-by: David Howells
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Make key quota detection generate an error if either quota is exceeded rather
than only if both quotas are exceeded.Signed-off-by: David Howells
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
DEBUG_PAGEALLOC is not compatible with hugetlb page support. That debug
option turns off PSE. Once it is turned off in CR4, the cpu will ignore
pse bit in the pmd and causing infinite page-not- present faults.So disable DEBUG_PAGEALLOC if the user selected hugetlbfs.
Signed-off-by: Ken Chen
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds