07 Nov, 2005
40 commits
-
This patch adds an atomic create+open operation. This does not yet work if
the file type changes between lookup and create+open, but solves the
permission checking problems for the separte create and open methods.Signed-off-by: Miklos Szeredi
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Add a new access call, which will only be called if ->permission is invoked
from sys_access(). In all other cases permission checking is delayed until
the actual filesystem operation.Signed-off-by: Miklos Szeredi
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Though the following changes are all backward compatible (from the kernel's as
well as the library's POV) change the minor version, so interested
applications can detect new features.Signed-off-by: Miklos Szeredi
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patch extends the iattr structure with a file pointer memeber, and adds
an ATTR_FILE validity flag for this member.This is set if do_truncate() is invoked from ftruncate() or from
do_coredump().The change is source and binary compatible.
Signed-off-by: Miklos Szeredi
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The sys_ptrace boilerplate code (everything outside the big switch
statement for the arch-specific requests) is shared by most architectures.
This patch moves it to kernel/ptrace.c and leaves the arch-specific code as
arch_ptrace.Some architectures have a too different ptrace so we have to exclude them.
They continue to keep their implementations. For sh64 I had to add a
sh64_ptrace wrapper because it does some initialization on the first call.
For um I removed an ifdefed SUBARCH_PTRACE_SPECIAL block, but
SUBARCH_PTRACE_SPECIAL isn't defined anywhere in the tree.Signed-off-by: Christoph Hellwig
Acked-by: Paul Mackerras
Acked-by: Ralf Baechle
Acked-By: David Howells
Acked-by: Russell King
Acked-by: Paul Mundt
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Both AFFS and HPFS update the ctime and mtime in the write path, after
generic_file_write returned and marked the inode dirty.Signed-off-by: Christoph Hellwig
Acked-by: Roman Zippel
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
afs actually had a write method that returned different errors depending on
whether some flag was set - better return the standard EINVAL errno.Signed-off-by: Christoph Hellwig
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
No need to duplicate a generic readonly file ops table in befs.
Signed-off-by: Christoph Hellwig
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
No need to duplicate a generic readonly file ops table in befs.
Signed-off-by: Christoph Hellwig
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Fix more include file problems that surfaced since I submitted the previous
fix-missing-includes.patch. This should now allow not to include sched.h
from module.h, which is done by a followup patch.Signed-off-by: Tim Schmielau
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
There is a memory leak possible in dentry_open(). If get_empty_filp()
fails, then the references to dentry and mnt need to be released. The
attached patch adds the calls to dput() and mntput() to release these two
references.Signed-off-by: Peter Staubach
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Updates to Documentation/vm/hugetlbpage.txt:
- there's no need to select HUGETLB_PAGE manually and it's no longer
under the processor menu. Update the text accordingly.- fix typos and trim trailing whitespace.
Signed-Off-By: Muli Ben-Yehuda
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Get rid of the `int unused' parameter of __find_get_block_slow().
Signed-off-by: Coywolf Qi Hunt
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Data allocated with "__getname()" should always be free'd with "__putname()"
because of the AUDITSYSCALL code.Signed-off-by: Davi Arnaut
Cc: Urban Widmark
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Data allocated with "__getname()" should always be free'd with "__putname()"
because of the AUDITSYSCALL code.Signed-off-by: Davi Arnaut
Cc:
Cc: Eric Van Hensbergen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
- "extern inline" -> "static inline"
- every file should #include the headers containing the prototypes for
it's global functionsSigned-off-by: Adrian Bunk
Signed-off-by: Jan Kara
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Mikael Pettersson noted that the current 2.6-git (and 2.4)
patch to disallow KDSKBSENT for unpriviledged users should be less restrictive
allowing reading of current function key string entry, but not writing.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The code for FUTEX_WAKE_OP calls an arch callback,
futex_atomic_op_inuser(). That callback can return an error code, but
currently the caller assumes any error is EFAULT, and will try various
things to resolve the fault before eventually giving up with EFAULT
(regardless of the original error code). This is not a theoretical case -
arch callbacks currently return -ENOSYS if the opcode they are given is
bogus.This patch alters the code to detect non-EFAULT errors and return them
directly to the user.Of course, whether -ENOSYS is the correct return value for the bogus opcode
case, or whether EINVAL would be more appropriate is another question.Signed-off-by: David Gibson
Cc: Rusty Russell
Cc: Ingo Molnar
Cc: Jamie Lokier
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
AIO was adding a new context's max requests to the global total before
testing if that resulting total was over the global limit. This let
innocent tasks get their new limit tested along with a racing guilty task
that was crossing the limit. This serializes the _nr accounting with a
spinlock It also switches to using unsigned long for the global totals.
Individual contexts are still limited to an unsigned int's worth of
requests by the syscall interface.The problem and fix were verified with a simple program that spun creating
and destroying a context while holding on to another long lived context.
Before the patch a task creating a tiny context could get a spurious EAGAIN
if it raced with a task creating a very large context that overran the
limit.Signed-off-by: Zach Brown
Cc: Benjamin LaHaise
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The attached patch removes a couple of incorrect and obsolete '!' operators
left over from the conversion of the key permission functions from
true/false returns to zero/error returns.Signed-Off-By: David Howells
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
cleanup: use for_each_cpu() instead of an open-coded NR_CPUS loop.
Signed-off-by: Ingo Molnar
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Reiser4 uses radix trees to solve a trouble reiser4_readdir has serving nfs
requests.Unfortunately, radix tree api lacks an operation suitable for modifying
existing entry. This patch adds radix_tree_lookup_slot which returns pointer
to found item within the tree. That location can be then updated.Both Nick and Christoph Lameter have patches which need this as well.
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Add a few comments surrounding the generic readahead API.
Also convert some ulongs into pgoff_t: the identifier for PAGE_CACHE_SIZE
offsets into pagecache.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Add SHM_NORESERVE functionality similar to MAP_NORESERVE for shared memory
segments.This is mainly to avoid abuse of OVERCOMMIT_ALWAYS and this flag is ignored
for OVERCOMMIT_NEVER.Signed-off-by: Badari Pulavarty
Cc: Hugh Dickins
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The -EROFS check has moved up to permission() in the VFS a while ago.
Signed-off-by: Christoph Hellwig
Acked-by: Miklos Szeredi
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patch has the changes to support the memory floor fix done in Dell
BIOS. The BIOS incase of packet update mechanism would not accept packet
placed in memory below a cretain address. This address is by default 128K
but can change. The driver now can accept the memory floor if the user
chooses to make it will try to allocate contiguous physical memory above
the memory floor by allocating a set of packets till a valid memory
allocation is made. All the allocates then are freed. This repeats for
everty packet.This patch was created by Michael E Brown and has been tested on 2.6.14-rc5
Signed-of-by: Michael E Brown
Signed-off-by: Abhay Salunke
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
driver_unregister is not being properly called when the init function
returns an error case. Restructured the return logic such that this and
the other cleanups all happen in one place. Preformed many of the cleanups
that Andrew Morton's patch on Thursday made in tpm_atmel.c. Fixed
Matthieu's concern about writing before discovery.(akpm: rmk said:
This driver is buggy. You must not provide your own release function - it
doesn't solve the problem which the warning (which you get when you don't
provide one) is telling you about.You should convert your device driver over to the replacement dynamic platform
support, once it is merged. IOW, something like:pdev = platform_device_alloc("mydev", id);
if (pdev) {
err = platform_device_add_resources(pdev, &resources,
ARRAY_SIZE(resources));
if (err == 0)
err = platform_device_add_data(pdev, &platform_data,
sizeof(platform_data));
if (err == 0)
err = platform_device_add(pdev);
} else {
err = -ENOMEM;
}
if (err)
platform_device_put(pdev);
)Signed-off-by: Kylene Jo Hall
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
In a case documented as
We should never be called with any of these states
BUG() in a case that would later result in a NULL pointer dereference.
Signed-off-by: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
There is a wrong BUG in mxser_close.
The BUG is triggered when tty->driver_data == NULL, But in fact this is not
a bug, because tty->driver->close is called even when tty->driver->open
fails.LDD3 tells us to do nothing in such cases.
Signed-off-by: Kirill Smelkov
Cc: Alan Cox
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Fix leak of struct tty_driver in mxser_init & mxser_module_exit
Signed-off-by: Kirill Smelkov
Cc: Alan Cox
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Remove explicit tty_driver ops initialisation, because this is already done
by tty_set_operations.Signed-off-by: Kirill Smelkov
Cc: Alan Cox
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patch identifies the HPET Maintainers. Clemens in taking over as
primary maintainer for the HPET driver. Clemens has i386 hardware with
HPET and is a better choice than me because of this. I've shared this
patch with all cc: recipients and there is agreement on ownership.
Hopefully this eliminates future confusion in terms of where HPET
maintenance is owned.Signed-off-by: Bob Picco
Cc:
Cc:
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Reported by Eddy Petrisor
fs/built-in.o(.text+0x35fdc): In function `hfs_mdb_put':
: undefined reference to `unload_nls'
fs/built-in.o(.text+0x35ff1): In function `hfs_mdb_put':
: undefined reference to `unload_nls'
fs/built-in.o(.text+0x367a5): In function `parse_options':
super.c: undefined reference to `load_nls'
fs/built-in.o(.text+0x367db):super.c: undefined reference to `load_nls'
fs/built-in.o(.text+0x36938):super.c: undefined reference to `load_nls_default'Signed-off-by: Lennert Buytenhek
Acked-by: Roman Zippel
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Remove the hlist_for_each_rcu() API, which is used only in one place, and
is trivially converted to hlist_for_each_entry_rcu(), making the code
shorter and more readable. Any out-of-tree uses may be similarly
converted.Signed-off-by: "Paul E. McKenney"
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patch adds a connector that reports fork, exec, id change, and exit
events for all processes to userspace. It replaces the fork_advisor patch
that ELSA is currently using. Applications that may find these events
useful include accounting/auditing (e.g. ELSA), system activity monitoring
(e.g. top), security, and resource management (e.g. CKRM).Signed-off-by: Matt Helsley
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
If the backing_dev_info doesn't have BDI_CAP_NO_WRITEBACK we're not supposed
to write back an inode's pages. But in this situation write_inode_now()
refuses to write the inode itself as well. Fix.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Andrew Morton suggested to move kprobes from kernel hacking menu, since
kernel hacking menu is in-appropriate for the Kprobes. This patch moves
Kprobes and Oprofile under instrumentation menu.(akpm: it's not a natural fit, but things like djprobes and the s390 guys'
statistics library need a home)Signed-of-by: Prasanna S Panchamukhi
Cc: Philippe Elie
Cc: John Levon
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Large console spews from IRQ or local_irq_disable() sections can cause the NMI
watchdog to go off.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Merge common parts of head.S and head64.S into head.S and move architecture
specific parts to head31.S and head64.S respectively. Saves us ~500 lines
of duplicated assembly code.Acked-by: Martin Schwidefsky
Signed-off-by: Heiko Carstens
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
If vmcp is interrupted by a signal the vmcp command buffer is not freed.
Found by Pete Zaitcev.Signed-off-by: Christian Borntraeger
Signed-off-by: Martin Schwidefsky
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds