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

    Miklos Szeredi
     
  • 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

    Miklos Szeredi
     
  • 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

    Miklos Szeredi
     
  • 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

    Miklos Szeredi
     
  • 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

    Christoph Hellwig
     
  • 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

    Christoph Hellwig
     
  • 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

    Christoph Hellwig
     
  • 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

    Christoph Hellwig
     
  • 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

    Christoph Hellwig
     
  • 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

    Tim Schmielau
     
  • 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

    Peter Staubach
     
  • 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

    Muli Ben-Yehuda
     
  • 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

    Coywolf Qi Hunt
     
  • 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

    Davi Arnaut
     
  • 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

    Davi Arnaut
     
  • - "extern inline" -> "static inline"

    - every file should #include the headers containing the prototypes for
    it's global functions

    Signed-off-by: Adrian Bunk
    Signed-off-by: Jan Kara
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • 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

    Marcelo Tosatti
     
  • 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

    David Gibson
     
  • 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

    Zach Brown
     
  • 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

    David Howells
     
  • 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

    Ingo Molnar
     
  • 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

    Hans Reiser
     
  • 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

    Andrew Morton
     
  • 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

    Badari Pulavarty
     
  • 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

    Christoph Hellwig
     
  • 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

    Abhay Salunke
     
  • 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

    Kylene Jo Hall
     
  • 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

    Adrian Bunk
     
  • 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

    Kirill Smelkov
     
  • 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

    Kirill Smelkov
     
  • 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

    Kirill Smelkov
     
  • 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

    Bob Picco
     
  • 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

    Lennert Buytenhek
     
  • 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

    Paul E. McKenney
     
  • 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

    Matt Helsley
     
  • 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
     
  • 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

    Prasanna S Panchamukhi
     
  • 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

    Andrew Morton
     
  • 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

    Heiko Carstens
     
  • 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

    Christian Borntraeger