1. 01 Apr, 2009 4 commits
    • Al Viro's avatar
      New locking/refcounting for fs_struct · 498052bb
      Al Viro authored
      * all changes of current->fs are done under task_lock and write_lock of
        old fs->lock
      * refcount is not atomic anymore (same protection)
      * its decrements are done when removing reference from current; at the
        same time we decide whether to free it.
      * put_fs_struct() is gone
      * new field - ->in_exec.  Set by check_unsafe_exec() if we are trying to do
        execve() and only subthreads share fs_struct.  Cleared when finishing exec
        (success and failure alike).  Makes CLONE_FS fail with -EAGAIN if set.
      * check_unsafe_exec() may fail with -EAGAIN if another execve() from subthread
        is in progress.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      498052bb
    • Al Viro's avatar
      Take fs_struct handling to new file (fs/fs_struct.c) · 3e93cd67
      Al Viro authored
      Pure code move; two new helper functions for nfsd and daemonize
      (unshare_fs_struct() and daemonize_fs_struct() resp.; for now -
      the same code as used to be in callers).  unshare_fs_struct()
      exported (for nfsd, as copy_fs_struct()/exit_fs() used to be),
      copy_fs_struct() and exit_fs() don't need exports anymore.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      3e93cd67
    • Al Viro's avatar
      Get rid of bumping fs_struct refcount in pivot_root(2) · f8ef3ed2
      Al Viro authored
      Not because execve races with _that_ are serious - we really
      need a situation when final drop of fs_struct refcount is
      done by something that used to have it as current->fs.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      f8ef3ed2
    • Al Viro's avatar
      Kill unsharing fs_struct in __set_personality() · 11d06b2a
      Al Viro authored
      That's a rudiment of altroot support.  I.e. it should've been buried
      a long time ago.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      11d06b2a
  2. 31 Mar, 2009 6 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 · 15f7176e
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
        wireless: remove duplicated .ndo_set_mac_address
        netfilter: xtables: fix IPv6 dependency in the cluster match
        tg3: Add GRO support.
        niu: Add GRO support.
        ucc_geth: Fix use-after-of_node_put() in ucc_geth_probe().
        gianfar: Fix use-after-of_node_put() in gfar_of_init().
        kernel: remove HIPQUAD()
        netpoll: store local and remote ip in net-endian
        netfilter: fix endian bug in conntrack printks
        dmascc: fix incomplete conversion to network_device_ops
        gso: Fix support for linear packets
        skbuff.h: fix missing kernel-doc
        ni5010: convert to net_device_ops
      15f7176e
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 · d3d52d68
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
        sparc64: Fix reset hangs on Niagara systems.
        cpumask: use mm_cpumask() wrapper: sparc
        cpumask: remove dangerous CPU_MASK_ALL_PTR, &CPU_MASK_ALL.: sparc
        cpumask: remove the now-obsoleted pcibus_to_cpumask(): sparc
        cpumask: remove cpu_coregroup_map: sparc
        cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.: sparc
        cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.: sparc64
        cpumask: Use accessors code.: sparc64
        cpumask: Use accessors code: sparc
        cpumask: arch_send_call_function_ipi_mask: sparc
        cpumask: Use smp_call_function_many(): sparc64
      d3d52d68
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask · d17abcd5
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask:
        oprofile: Thou shalt not call __exit functions from __init functions
        cpumask: remove the now-obsoleted pcibus_to_cpumask(): generic
        cpumask: remove cpumask_t from core
        cpumask: convert rcutorture.c
        cpumask: use new cpumask_ functions in core code.
        cpumask: remove references to struct irqaction's mask field.
        cpumask: use mm_cpumask() wrapper: kernel/fork.c
        cpumask: use set_cpu_active in init/main.c
        cpumask: remove node_to_first_cpu
        cpumask: fix seq_bitmap_*() functions.
        cpumask: remove dangerous CPU_MASK_ALL_PTR, &CPU_MASK_ALL
      d17abcd5
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-lguest-and-virtio · db6f2040
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-lguest-and-virtio:
        lguest: barrier me harder
        lguest: use bool instead of int
        lguest: use KVM hypercalls
        lguest: wire up pte_update/pte_update_defer
        lguest: fix spurious BUG_ON() on invalid guest stack.
        virtio: more neatening of virtio_ring macros.
        virtio: fix BAD_RING, START_US and END_USE macros
      db6f2040
    • Linus Torvalds's avatar
      Merge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6 · 3c6fae67
      Linus Torvalds authored
      * 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
        hwmon: (fschmd) Add support for the FSC Hades IC
        hwmon: (fschmd) Add support for the FSC Syleus IC
        i2c-i801: Instantiate FSC hardware montioring chips
        dmi: Let dmi_walk() users pass private data
        hwmon: Define a standard interface for chassis intrusion detection
        Move the pcf8591 driver to hwmon
        hwmon: (w83627ehf) Only expose in6 or temp3 on the W83667HG
        hwmon: (w83627ehf) Add support for W83667HG
        hwmon: (w83627ehf) Invert fan pin variables logic
        hwmon: (hdaps) Fix Thinkpad X41 axis inversion
        hwmon: (hdaps) Allow inversion of separate axis
        hwmon: (ds1621) Clean up documentation
        hwmon: (ds1621) Avoid unneeded register access
        hwmon: (ds1621) Clean up register access
        hwmon: (ds1621) Reorder code statements
      3c6fae67
    • Linus Torvalds's avatar
      Merge branch 'locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip · c4e1aa67
      Linus Torvalds authored
      * 'locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (33 commits)
        lockdep: fix deadlock in lockdep_trace_alloc
        lockdep: annotate reclaim context (__GFP_NOFS), fix SLOB
        lockdep: annotate reclaim context (__GFP_NOFS), fix
        lockdep: build fix for !PROVE_LOCKING
        lockstat: warn about disabled lock debugging
        lockdep: use stringify.h
        lockdep: simplify check_prev_add_irq()
        lockdep: get_user_chars() redo
        lockdep: simplify get_user_chars()
        lockdep: add comments to mark_lock_irq()
        lockdep: remove macro usage from mark_held_locks()
        lockdep: fully reduce mark_lock_irq()
        lockdep: merge the !_READ mark_lock_irq() helpers
        lockdep: merge the _READ mark_lock_irq() helpers
        lockdep: simplify mark_lock_irq() helpers #3
        lockdep: further simplify mark_lock_irq() helpers
        lockdep: simplify the mark_lock_irq() helpers
        lockdep: split up mark_lock_irq()
        lockdep: generate usage strings
        lockdep: generate the state bit definitions
        ...
      c4e1aa67
  3. 30 Mar, 2009 30 commits