Skip to content
  1. Sep 24, 2009
    • Sebastian Andrzej Siewior's avatar
      Revert "kmod: fix race in usermodehelper code" · 95e0d86b
      Sebastian Andrzej Siewior authored
      This reverts commit c02e3f36
      
       ("kmod: fix race in usermodehelper code")
      
      The patch is wrong.  UMH_WAIT_EXEC is called with VFORK what ensures
      that the child finishes prior returing back to the parent.  No race.
      
      In fact, the patch makes it even worse because it does the thing it
      claims not do:
      
       - It calls ->complete() on UMH_WAIT_EXEC
      
       - the complete() callback may de-allocated subinfo as seen in the
         following call chain:
      
          [<c009f904>] (__link_path_walk+0x20/0xeb4) from [<c00a094c>] (path_walk+0x48/0x94)
          [<c00a094c>] (path_walk+0x48/0x94) from [<c00a0a34>] (do_path_lookup+0x24/0x4c)
          [<c00a0a34>] (do_path_lookup+0x24/0x4c) from [<c00a158c>] (do_filp_open+0xa4/0x83c)
          [<c00a158c>] (do_filp_open+0xa4/0x83c) from [<c009ba90>] (open_exec+0x24/0xe0)
          [<c009ba90>] (open_exec+0x24/0xe0) from [<c009bfa8>] (do_execve+0x7c/0x2e4)
          [<c009bfa8>] (do_execve+0x7c/0x2e4) from [<c0026a80>] (kernel_execve+0x34/0x80)
          [<c0026a80>] (kernel_execve+0x34/0x80) from [<c004b514>] (____call_usermodehelper+0x130/0x148)
          [<c004b514>] (____call_usermodehelper+0x130/0x148) from [<c0024858>] (kernel_thread_exit+0x0/0x8)
      
         and the path pointer was NULL.  Good that ARM's kernel_execve()
         doesn't check the pointer for NULL or else I wouldn't notice it.
      
      The only race there might be is with UMH_NO_WAIT but it is too late for
      me to investigate it now.  UMH_WAIT_PROC could probably also use VFORK
      and we could save one exec.  So the only race I see is with UMH_NO_WAIT
      and recent scheduler changes where the child does not always run first
      might have trigger here something but as I said, it is late....
      
      Signed-off-by: default avatarSebastian Andrzej Siewior <sebastian@breakpoint.cc>
      Acked-by: default avatarNeil Horman <nhorman@tuxdriver.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      95e0d86b
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 0dd52d0d
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: add driver for Atmel AT42QT2160 Sensor Chip
        Input: max7359 - use threaded IRQs
        Input: add driver for Maxim MAX7359 key switch controller
        Input: add driver for ADP5588 QWERTY I2C Keypad
        Input: add touchscreen driver for MELFAS MCS-5000 controller
        Input: add driver for OpenCores Keyboard Controller
        Input: dm355evm_keys - remove dm355evm_keys_hardirq
        Input: synaptics_i2c - switch to using __cancel_delayed_work()
        Input: ad7879 - add support for AD7889
        Input: atkbd - rely on input core to restore state on resume
        Input: add generic suspend and resume for input devices
        Input: libps2 - additional locking for i8042 ports
      0dd52d0d
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next · c37efa93
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (30 commits)
        Use macros for .data.page_aligned section.
        Use macros for .bss.page_aligned section.
        Use new __init_task_data macro in arch init_task.c files.
        kbuild: Don't define ALIGN and ENTRY when preprocessing linker scripts.
        arm, cris, mips, sparc, powerpc, um, xtensa: fix build with bash 4.0
        kbuild: add static to prototypes
        kbuild: fail build if recordmcount.pl fails
        kbuild: set -fconserve-stack option for gcc 4.5
        kbuild: echo the record_mcount command
        gconfig: disable "typeahead find" search in treeviews
        kbuild: fix cc1 options check to ensure we do not use -fPIC when compiling
        checkincludes.pl: add option to remove duplicates in place
        markup_oops: use modinfo to avoid confusion with underscored module names
        checkincludes.pl: provide usage helper
        checkincludes.pl: close file as soon as we're done with it
        ctags: usability fix
        kernel hack...
      c37efa93
    • Linus Torvalds's avatar
      Merge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 · 9e12a7e7
      Linus Torvalds authored
      * 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:
        NFS: Propagate 'fsc' mount option through automounts
        sunrpc/rpc_pipe: fix kernel-doc notation
        sunrpc: xdr_xcode_hyper helpers cannot presume 64-bit alignment
        NFS: Add nfs_alloc_parsed_mount_data
        NFS/RPC: fix problems with reestablish_timeout and related code.
        NFS: Get rid of the NFS_MOUNT_VER3 and NFS_MOUNT_TCP flags
      9e12a7e7
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs · a7ddbf89
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
        9p: Update documentation to add fscache related bits
        9p: Add fscache support to 9p
        9p: Fix the incorrect update of inode size in v9fs_file_write()
        9p: Use the i_size_[read, write]() macros instead of using inode->i_size directly.
      a7ddbf89
    • Linus Torvalds's avatar
      Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · 3e56d493
      Linus Torvalds authored
      * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        hwmon: (ltc4245) Clear faults at startup
        hwmon: (ltc4215) Clear faults at startup
        hwmon: (coretemp) Add Lynnfield CPU
        hwmon: (coretemp) Add support for Penryn mobile CPUs
        hwmon: (coretemp) Fix Atom CPUs support
        hwmon: Delete deprecated FSC drivers
        hwmon: (adm1031) Add sysfs files for temperature offsets
      3e56d493
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of... · c82ffab9
      Linus Torvalds authored
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:
        SELinux: do not destroy the avc_cache_nodep
        KEYS: Have the garbage collector set its timer for live expired keys
        tpm-fixup-pcrs-sysfs-file-update
        creds_are_invalid() needs to be exported for use by modules:
        include/linux/cred.h: fix build
      
      Fix trivial BUILD_BUG_ON-induced conflicts in drivers/char/tpm/tpm.c
      c82ffab9
    • Ira W. Snyder's avatar
      hwmon: (ltc4245) Clear faults at startup · 58f055e5
      Ira W. Snyder authored
      
      
      When power is applied to the ltc4245 chip it sometimes reports spurious
      faults, which are exposed as alarms in the hwmon output. Clear the fault
      register when the driver is installed to clear the alarms.
      
      Signed-off-by: default avatarIra W. Snyder <iws@ovro.caltech.edu>
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      58f055e5
    • Ira W. Snyder's avatar
      hwmon: (ltc4215) Clear faults at startup · b6b9d696
      Ira W. Snyder authored
      
      
      When power is applied to the ltc4215 chip it sometimes reports spurious
      faults. The faults are not yet exposed via sysfs, however it may be useful
      for userspace to read the fault register directly with the i2cget command.
      Clear the fault register when the driver is installed so userspace doesn't
      have to worry about spurious fault indications.
      
      Signed-off-by: default avatarIra W. Snyder <iws@ovro.caltech.edu>
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      b6b9d696
    • Huaxu Wan's avatar
      hwmon: (coretemp) Add Lynnfield CPU · fa08acd7
      Huaxu Wan authored
      
      
      Add Lynnfield processor support. Lynnfield is a quad-core Nehalem
      based microprocessor for Desktop market, which is introduced in
      September 2009.
      
      Signed-off-by: default avatarHuaxu Wan <huaxu.wan@linux.intel.com>
      Signed-off-by: default avatarKent Liu <kent.liu@linux.intel.com>
      Acked-by: default avatarRudolf Marek <r.marek@assembler.cz>
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      fa08acd7
    • Rudolf Marek's avatar
      hwmon: (coretemp) Add support for Penryn mobile CPUs · eccfed42
      Rudolf Marek authored
      
      
      Following patch adds support for mobile Penryn CPUs. Intel documents this
      poorly. I asked the Coretemp author for some help. This is totally untested and
      may not work. Please test!
      
      Signed-off-by: default avatarRudolf Marek <r.marek@assembler.cz>
      Cc: Huaxu Wan <huaxu.wan@linux.intel.com>
      Cc: Kent Liu <kent.liu@linux.intel.com>
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      eccfed42
    • Rudolf Marek's avatar
      hwmon: (coretemp) Fix Atom CPUs support · 708a62bc
      Rudolf Marek authored
      
      
      Fix Atom CPUs support. Intel documents TjMax at 90 degrees C but
      some Atoms may have 125 degrees C (this is undocumented speculation).
      
      Signed-off-by: default avatarRudolf Marek <r.marek@assembler.cz>
      Cc: Huaxu Wan <huaxu.wan@linux.intel.com>
      Cc: Kent Liu <kent.liu@linux.intel.com>
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      708a62bc
    • Jean Delvare's avatar
      hwmon: Delete deprecated FSC drivers · 91f17e02
      Jean Delvare authored
      
      
      The legacy fscpos and fscher drivers have been replaced by the unified
      fschmd driver. The transition period is over now, we can delete them.
      
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
      91f17e02
    • Ira Snyder's avatar
      hwmon: (adm1031) Add sysfs files for temperature offsets · 49dc9efe
      Ira Snyder authored
      
      
      The ADM1030/ADM1031 chips have temperature offset registers, for both the
      local and remote temperature sensors. Following the example set forth in
      the LM90/ADM1032 driver, expose the offset registers to userspace.
      
      Signed-off-by: default avatarIra W. Snyder <iws@ovro.caltech.edu>
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      49dc9efe
    • David Howells's avatar
      NFS: Propagate 'fsc' mount option through automounts · 2df54806
      David Howells authored
      Propagate the NFS 'fsc' mount option through NFS automounts of various types.
      
      This is now required as commit:
      
      	commit c02d7adf
      
      
      	Author: Trond Myklebust <Trond.Myklebust@netapp.com>
      	Date:   Mon Jun 22 15:09:14 2009 -0400
      
      	NFSv4: Replace nfs4_path_walk() with VFS path lookup in a private namespace
      
      uses VFS-driven automounting to reach all submounts barring the root, thus
      preventing fscaching from being enabled on any submount other than the root.
      
      This patch gets around that by propagating the NFS_OPTION_FSCACHE flag across
      automounts.  If a uniquifier is supplied to a mount then this is propagated to
      all automounts of that mount too.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      [Trond: Fixed up the definition of nfs_fscache_get_super_cookie for the
              case of #undef CONFIG_NFS_FSCACHE]
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      2df54806
    • Randy Dunlap's avatar
      sunrpc/rpc_pipe: fix kernel-doc notation · 4111d4fd
      Randy Dunlap authored
      
      
      Fix kernel-doc notation (& warnings) in sunrpc/rpc_pipe.c.
      
      Signed-off-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      4111d4fd
    • Benny Halevy's avatar
    • Chuck Lever's avatar
      NFS: Add nfs_alloc_parsed_mount_data · 9423a08a
      Chuck Lever authored
      
      
      Allocating nfs_parsed_mount_data and setting up the defaults is nearly
      the same for both nfs and nfs4 mounts.
      
      Both paths seem to use nfs_validate_transport_protocol(), so setting a
      default value for nfs_server.protocol ought to be unnecessary.
      
      Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      9423a08a
    • Neil Brown's avatar
      NFS/RPC: fix problems with reestablish_timeout and related code. · 61d0a8e6
      Neil Brown authored
      
      [[resending with correct cc:  - "vfs.kernel.org" just isn't right!]]
      
      xprt->reestablish_timeout is used to cause TCP connection attempts to
      back off if the connection fails so as not to hammer the network,
      but to still allow immediate connections when there is no reason to
      believe there is a problem.
      
      It is not used for the first connection (when transport->sock is NULL)
      but only on reconnects.
      
      It is currently set:
      
       a/ to 0 when xs_tcp_state_change finds a state of TCP_FIN_WAIT1
          on the assumption that the client has closed the connection
          so the reconnect should be immediate when needed.
       b/ to at least XS_TCP_INIT_REEST_TO when xs_tcp_state_change
          detects TCP_CLOSING or TCP_CLOSE_WAIT on the assumption that the
          server closed the connection so a small delay at least is
          required.
       c/ as above when xs_tcp_state_change detects TCP_SYN_SENT, so that
          it is never 0 while a connection has been attempted, else
          the doubling will produce 0 and there will be no backoff.
       d/ to double is value (up to a limit) when delaying a connection,
          thus providing exponential backoff and
       e/ to XS_TCP_INIT_REEST_TO in xs_setup_tcp as simple initialisation.
      
      So you can see it is highly dependant on xs_tcp_state_change being
      called as expected.  However experimental evidence shows that
      xs_tcp_state_change does not see all state changes.
      ("rpcdebug -m rpc trans" can help show what actually happens).
      
      Results show:
       TCP_ESTABLISHED is reported when a connection is made.  TCP_SYN_SENT
       is never reported, so rule 'c' above is never effective.
      
       When the server closes the connection, TCP_CLOSE_WAIT and
       TCP_LAST_ACK *might* be reported, and TCP_CLOSE is always
       reported.  This rule 'b' above will sometimes be effective, but
       not reliably.
      
       When the client closes the connection, it used to result in
       TCP_FIN_WAIT1, TCP_FIN_WAIT2, TCP_CLOSE.  However since commit
       f75e6745
      
       (SUNRPC: Fix the problem of EADDRNOTAVAIL syslog floods on
       reconnect) we don't see *any* events on client-close.  I think this
       is because xs_restore_old_callbacks is called to disconnect
       xs_tcp_state_change before the socket is closed.
       In any case, rule 'a' no longer applies.
      
      So all that is left are rule d, which successfully doubles the
      timeout which is never rest, and rule e which initialises the timeout.
      
      Even if the rules worked as expected, there would be a problem because
      a successful connection does not reset the timeout, so a sequence
      of events where the server closes the connection (e.g. during failover
      testing) will cause longer and longer timeouts with no good reason.
      
      This patch:
      
       - sets reestablish_timeout to 0 in xs_close thus effecting rule 'a'
       - sets it to 0 in xs_tcp_data_ready to ensure that a successful
         connection resets the timeout
       - sets it to at least XS_TCP_INIT_REEST_TO after it is doubled,
         thus effecting rule c
      
      I have not reimplemented rule b and the new version of rule c
      seems sufficient.
      
      I suspect other code in xs_tcp_data_ready needs to be revised as well.
      For example I don't think connect_cookie is being incremented as often
      as it should be.
      
      Signed-off-by: default avatarNeilBrown <neilb@suse.de>
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      61d0a8e6
    • Trond Myklebust's avatar
      NFS: Get rid of the NFS_MOUNT_VER3 and NFS_MOUNT_TCP flags · 8a6e5deb
      Trond Myklebust authored
      
      
      Keep it in the case of the legacy binary mount interface, but purge it from
      the nfs_server structure.
      
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      8a6e5deb
    • Linus Torvalds's avatar
      Merge branch 'ixp4xx' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6 · a724eada
      Linus Torvalds authored
      * 'ixp4xx' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6:
        Add MAINTAINERS entry for ARM/INTEL IXP4xx arch support.
        ixp4xx: arch_idle() documentation fixup
        ixp4xx: timer and clocks cleanups
      a724eada
    • Randy Dunlap's avatar
      serial core: fix new kernel-doc warnings · 1b9894f3
      Randy Dunlap authored
      
      
      Fix new kernel-doc warnings in serial_core.[hc] files.
      
        Warning(include/linux/serial_core.h:485): No description found for parameter 'uport'
        Warning(include/linux/serial_core.h:485): Excess function parameter 'port' description in 'uart_handle_dcd_change'
        Warning(include/linux/serial_core.h:511): No description found for parameter 'uport'
        Warning(include/linux/serial_core.h:511): Excess function parameter 'port' description in 'uart_handle_cts_change'
        Warning(drivers/serial/serial_core.c:2437): No description found for parameter 'uport'
        Warning(drivers/serial/serial_core.c:2437): Excess function parameter 'port' description in 'uart_add_one_port'
        Warning(drivers/serial/serial_core.c:2509): No description found for parameter 'uport'
        Warning(drivers/serial/serial_core.c:2509): Excess function parameter 'port' description in 'uart_remove_one_port'
      
      Signed-off-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      1b9894f3
    • Eric Paris's avatar
      SELinux: do not destroy the avc_cache_nodep · 5224ee08
      Eric Paris authored
      
      
      The security_ops reset done when SELinux is disabled at run time is done
      after the avc cache is freed and after the kmem_cache for the avc is also
      freed.  This means that between the time the selinux disable code destroys
      the avc_node_cachep another process could make a security request and could
      try to allocate from the cache.  We are just going to leave the cachep around,
      like we always have.
      
      SELinux:  Disabled at runtime.
      BUG: unable to handle kernel NULL pointer dereference at (null)
      IP: [<ffffffff81122537>] kmem_cache_alloc+0x9a/0x185
      PGD 0
      Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC
      last sysfs file:
      CPU 1
      Modules linked in:
      Pid: 12, comm: khelper Not tainted 2.6.31-tip-05525-g0eeacc6-dirty #14819
      System Product Name
      RIP: 0010:[<ffffffff81122537>]  [<ffffffff81122537>]
      kmem_cache_alloc+0x9a/0x185
      RSP: 0018:ffff88003f9258b0  EFLAGS: 00010086
      RAX: 0000000000000001 RBX: 0000000000000000 RCX: 0000000078c0129e
      RDX: 0000000000000000 RSI: ffffffff8130b626 RDI: ffffffff81122528
      RBP: ffff88003f925900 R08: 0000000078c0129e R09: 0000000000000001
      R10: 0000000000000000 R11: 0000000078c0129e R12: 0000000000000246
      R13: 0000000000008020 R14: ffff88003f8586d8 R15: 0000000000000001
      FS:  0000000000000000(0000) GS:ffff880002b00000(0000)
      knlGS:0000000000000000
      CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
      CR2: 0000000000000000 CR3: 0000000001001000 CR4: 00000000000006e0
      DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      DR3: ffffffff827bd420 DR6: 00000000ffff0ff0 DR7: 0000000000000400
      Process khelper (pid: 12, threadinfo ffff88003f924000, task
      ffff88003f928000)
      Stack:
       0000000000000246 0000802000000246 ffffffff8130b626 0000000000000001
      <0> 0000000078c0129e 0000000000000000 ffff88003f925a70 0000000000000002
      <0> 0000000000000001 0000000000000001 ffff88003f925960 ffffffff8130b626
      Call Trace:
       [<ffffffff8130b626>] ? avc_alloc_node+0x36/0x273
       [<ffffffff8130b626>] avc_alloc_node+0x36/0x273
       [<ffffffff8130b545>] ? avc_latest_notif_update+0x7d/0x9e
       [<ffffffff8130b8b4>] avc_insert+0x51/0x18d
       [<ffffffff8130bcce>] avc_has_perm_noaudit+0x9d/0x128
       [<ffffffff8130bf20>] avc_has_perm+0x45/0x88
       [<ffffffff8130f99d>] current_has_perm+0x52/0x6d
       [<ffffffff8130fbb2>] selinux_task_create+0x2f/0x45
       [<ffffffff81303bf7>] security_task_create+0x29/0x3f
       [<ffffffff8105c6ba>] copy_process+0x82/0xdf0
       [<ffffffff81091578>] ? register_lock_class+0x2f/0x36c
       [<ffffffff81091a13>] ? mark_lock+0x2e/0x1e1
       [<ffffffff8105d596>] do_fork+0x16e/0x382
       [<ffffffff81091578>] ? register_lock_class+0x2f/0x36c
       [<ffffffff810d9166>] ? probe_workqueue_execution+0x57/0xf9
       [<ffffffff81091a13>] ? mark_lock+0x2e/0x1e1
       [<ffffffff810d9166>] ? probe_workqueue_execution+0x57/0xf9
       [<ffffffff8100cdb2>] kernel_thread+0x82/0xe0
       [<ffffffff81078b1f>] ? ____call_usermodehelper+0x0/0x139
       [<ffffffff8100ce10>] ? child_rip+0x0/0x20
       [<ffffffff81078aea>] ? __call_usermodehelper+0x65/0x9a
       [<ffffffff8107a5c7>] run_workqueue+0x171/0x27e
       [<ffffffff8107a573>] ? run_workqueue+0x11d/0x27e
       [<ffffffff81078a85>] ? __call_usermodehelper+0x0/0x9a
       [<ffffffff8107a7bc>] worker_thread+0xe8/0x10f
       [<ffffffff810808e2>] ? autoremove_wake_function+0x0/0x63
       [<ffffffff8107a6d4>] ? worker_thread+0x0/0x10f
       [<ffffffff8108042e>] kthread+0x91/0x99
       [<ffffffff8100ce1a>] child_rip+0xa/0x20
       [<ffffffff8100c754>] ? restore_args+0x0/0x30
       [<ffffffff8108039d>] ? kthread+0x0/0x99
       [<ffffffff8100ce10>] ? child_rip+0x0/0x20
      Code: 0f 85 99 00 00 00 9c 58 66 66 90 66 90 49 89 c4 fa 66 66 90 66 66 90
      e8 83 34 fb ff e8 d7 e9 26 00 48 98 49 8b 94 c6 10 01 00 00 <48> 8b 1a 44
      8b 7a 18 48 85 db 74 0f 8b 42 14 48 8b 04 c3 ff 42
      RIP  [<ffffffff81122537>] kmem_cache_alloc+0x9a/0x185
       RSP <ffff88003f9258b0>
      CR2: 0000000000000000
      ---[ end trace 42f41a982344e606 ]---
      
      Reported-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarEric Paris <eparis@redhat.com>
      Signed-off-by: default avatarJames Morris <jmorris@namei.org>
      5224ee08
    • David Howells's avatar
      KEYS: Have the garbage collector set its timer for live expired keys · 606531c3
      David Howells authored
      
      
      The key garbage collector sets a timer to start a new collection cycle at the
      point the earliest key to expire should be considered garbage.  However, it
      currently only does this if the key it is considering hasn't yet expired.
      
      If the key being considering has expired, but hasn't yet reached the collection
      time then it is ignored, and won't be collected until some other key provokes a
      round of collection.
      
      Make the garbage collector set the timer for the earliest key that hasn't yet
      passed its collection time, rather than the earliest key that hasn't yet
      expired.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarJames Morris <jmorris@namei.org>
      606531c3
    • Abhishek Kulkarni's avatar
      9p: Update documentation to add fscache related bits · f4edeeb3
      Abhishek Kulkarni authored
      
      
      Update the documentation to describe FS-Cache related
      caching parameters. This patch also updates the pointers
      to 9p-related papers and adds pointer to the Wiki.
      
      Signed-off-by: default avatarAbhishek Kulkarni <adkulkar@umail.iu.edu>
      Signed-off-by: default avatarEric Van Hensbergen <ericvh@gmail.com>
      
      f4edeeb3
    • Abhishek Kulkarni's avatar
      9p: Add fscache support to 9p · 60e78d2c
      Abhishek Kulkarni authored
      
      
      This patch adds a persistent, read-only caching facility for
      9p clients using the FS-Cache caching backend.
      
      When the fscache facility is enabled, each inode is associated
      with a corresponding vcookie which is an index into the FS-Cache
      indexing tree. The FS-Cache indexing tree is indexed at 3 levels:
      - session object associated with each mount.
      - inode/vcookie
      - actual data (pages)
      
      A cache tag is chosen randomly for each session. These tags can
      be read off /sys/fs/9p/caches and can be passed as a mount-time
      parameter to re-attach to the specified caching session.
      
      Signed-off-by: default avatarAbhishek Kulkarni <adkulkar@umail.iu.edu>
      Signed-off-by: default avatarEric Van Hensbergen <ericvh@gmail.com>
      60e78d2c
    • Abhishek Kulkarni's avatar
      9p: Fix the incorrect update of inode size in v9fs_file_write() · 637d020a
      Abhishek Kulkarni authored
      
      
      When using the cache=loose flags, the inode's size was not being
      updated correctly on a remote write. Thus subsequent reads of
      the whole file resulted in a truncated read. Fix it.
      
      Signed-off-by: default avatarAbhishek Kulkarni <adkulkar@umail.iu.edu>
      Signed-off-by: default avatarEric Van Hensbergen <ericvh@gmail.com>
      637d020a
    • Abhishek Kulkarni's avatar
      9p: Use the i_size_[read, write]() macros instead of using inode->i_size directly. · 7549ae3e
      Abhishek Kulkarni authored
      
      
      Change all occurrence of inode->i_size with i_size_read() or i_size_write()
      as appropriate.
      
      Signed-off-by: default avatarAbhishek Kulkarni <adkulkar@umail.iu.edu>
      Signed-off-by: default avatarEric Van Hensbergen <ericvh@gmail.com>
      7549ae3e
    • Jason Gunthorpe's avatar
      tpm-fixup-pcrs-sysfs-file-update · 0afd9056
      Jason Gunthorpe authored
      
      
      Signed-off-by: default avatarJason Gunthorpe <jgunthorpe@obsidianresearch.com>
      Cc: Debora Velarde <debora@linux.vnet.ibm.com>
      Cc: Rajiv Andrade <srajiv@linux.vnet.ibm.com>
      Cc: Marcel Selhorst <m.selhorst@sirrix.com>
      Cc: James Morris <jmorris@namei.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarJames Morris <jmorris@namei.org>
      0afd9056
    • Randy Dunlap's avatar
      creds_are_invalid() needs to be exported for use by modules: · 764db03f
      Randy Dunlap authored
      
      
      ERROR: "creds_are_invalid" [fs/cachefiles/cachefiles.ko] undefined!
      
      Signed-off-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
      Cc: David Howells <dhowells@redhat.com>
      Cc: James Morris <jmorris@namei.org>
      Cc: Serge Hallyn <serue@us.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarJames Morris <jmorris@namei.org>
      764db03f
    • Andrew Morton's avatar
      include/linux/cred.h: fix build · 74908a00
      Andrew Morton authored
      mips allmodconfig:
      
      include/linux/cred.h: In function `creds_are_invalid':
      include/linux/cred.h:187: error: `PAGE_SIZE' undeclared (first use in this function)
      include/linux/cred.h:187: error: (Each undeclared identifier is reported only once
      include/linux/cred.h:187: error: for each function it appears in.)
      
      Fixes
      
      commit b6dff3ec
      
      
      Author:     David Howells <dhowells@redhat.com>
      AuthorDate: Fri Nov 14 10:39:16 2008 +1100
      Commit:     James Morris <jmorris@namei.org>
      CommitDate: Fri Nov 14 10:39:16 2008 +1100
      
          CRED: Separate task security context from task_struct
      
      I think.
      
      It's way too large to be inlined anyway.
      
      Dunno if this needs an EXPORT_SYMBOL() yet.
      
      Cc: David Howells <dhowells@redhat.com>
      Cc: James Morris <jmorris@namei.org>
      Cc: Serge Hallyn <serue@us.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Acked-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarJames Morris <jmorris@namei.org>
      74908a00
    • David Howells's avatar
      MN10300: Handle removal of struct uart_info · 70430786
      David Howells authored
      Commit ebd2c8f6 removed struct uart_info and
      commit bdc04e31
      
       further moved delta_msr_wait.
      Fix up the MN10300 on-chip serial port drivers to comply with this.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      70430786
    • Christoph Hellwig's avatar
      FRV: Use asm/generic-hardirq.h · a7077099
      Christoph Hellwig authored
      
      
      Use asm/generic-hardirq.h to build asm/hardirq.h and also remove the unused
      idle_timestamp field in irq_cpustat whilst we're at it.
      
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a7077099
    • Linus Torvalds's avatar
      Merge branch 'x86/ptrace-syscall-exit' of... · d19110ba
      Linus Torvalds authored
      Merge branch 'x86/ptrace-syscall-exit' of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-roland
      
      * 'x86/ptrace-syscall-exit' of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-roland:
        x86: ptrace: sysret path should reach syscall_trace_leave
      d19110ba
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/battery-2.6 · 433c24ed
      Linus Torvalds authored
      * git://git.infradead.org/battery-2.6:
        power_supply: Add driver for the PMU on WM831x PMICs
        ds2760_battery: Fix integer overflow for time_to_empty_now
        wm97xx_battery: Convert to dev_pm_ops
        wm97xx_battery: Use irq to detect charger state
        wm97xx_battery: Use platform_data
        wm97xx-core: Pass platform_data to battery
        ds2760_battery: implement set_charged() feature
        power_supply: get_by_name and set_charged functionality
        power_supply: EXPORT_SYMBOL cleanups
        ds2760_battery: add current_accum module parameter
        ds2760_battery: handle full_active_uAh == 0 case correctly
        ds2760_battery: add rated_capacity module parameter
        ds2760_battery: export more features
        ds2760_battery: delay power supply registration
        wm8350_power: Implement charge type property
        power_supply: Add a charge_type property, and use it for olpc driver
        olpc_battery: Add an 'error' sysfs device that displays raw errors
        Revert "power: remove POWER_SUPPLY_PROP_CAPACITY_LEVEL"
      433c24ed
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 · 85afd827
      Linus Torvalds authored
      * 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
        drm/radeon/r600: set correct pitch for 4 byte copy
        drm/radeon: consolidate family flags used in pciids.
      85afd827
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/mtd-2.6 · a7c367b9
      Linus Torvalds authored
      * git://git.infradead.org/mtd-2.6: (58 commits)
        mtd: jedec_probe: add PSD4256G6V id
        mtd: OneNand support for Nomadik 8815 SoC (on NHK8815 board)
        mtd: nand: driver for Nomadik 8815 SoC (on NHK8815 board)
        m25p80: Add Spansion S25FL129P serial flashes
        jffs2: Use SLAB_HWCACHE_ALIGN for jffs2_raw_{dirent,inode} slabs
        mtd: sh_flctl: register sh_flctl using platform_driver_probe()
        mtd: nand: txx9ndfmc: transfer 512 byte at a time if possible
        mtd: nand: fix tmio_nand ecc correction
        mtd: nand: add __nand_correct_data helper function
        mtd: cfi_cmdset_0002: add 0xFF intolerance for M29W128G
        mtd: inftl: fix fold chain block number
        mtd: jedec: fix compilation problem with I28F640C3B definition
        mtd: nand: fix ECC Correction bug for SMC ordering for NDFC driver
        mtd: ofpart: Check availability of reg property instead of name property
        driver/Makefile: Initialize "mtd" and "spi" before "net"
        mtd: omap: adding DMA mode support in nand prefetch/post-write
        mtd: omap: add support for nand prefetch-read and post-write
        mtd: add nand support for w90p910 (v2)
        mtd: maps: add mtd-ram support to physmap_of
        mtd: pxa3xx_nand: add single-bit error corrections reporting
        ...
      a7c367b9
    • Linus Torvalds's avatar
      15f964be
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/iommu-2.6 · b09a75fc
      Linus Torvalds authored
      * git://git.infradead.org/iommu-2.6: (23 commits)
        intel-iommu: Disable PMRs after we enable translation, not before
        intel-iommu: Kill DMAR_BROKEN_GFX_WA option.
        intel-iommu: Fix integer wrap on 32 bit kernels
        intel-iommu: Fix integer overflow in dma_pte_{clear_range,free_pagetable}()
        intel-iommu: Limit DOMAIN_MAX_PFN to fit in an 'unsigned long'
        intel-iommu: Fix kernel hang if interrupt remapping disabled in BIOS
        intel-iommu: Disallow interrupt remapping if not all ioapics covered
        intel-iommu: include linux/dmi.h to use dmi_ routines
        pci/dmar: correct off-by-one error in dmar_fault()
        intel-iommu: Cope with yet another BIOS screwup causing crashes
        intel-iommu: iommu init error path bug fixes
        intel-iommu: Mark functions with __init
        USB: Work around BIOS bugs by quiescing USB controllers earlier
        ia64: IOMMU passthrough mode shouldn't trigger swiotlb init
        intel-iommu: make domain_add_dev_info() call domain_context_mapping()
        intel-iommu: Unify hardware and software passthrough support
        intel-iommu: Cope with broken HP DC7900 BIOS
        iommu=pt is a valid early param
        intel-iommu: double kfree()
        intel-iommu: Kill pointless intel_unmap_single() function
        ...
      
      Fixed up trivial include lines conflict in drivers/pci/intel-iommu.c
      b09a75fc
    • Rusty Russell's avatar
      misc: remove redundant start_kernel prototypes · cf63ff5f
      Rusty Russell authored
      
      
      Impact: cleanup
      
      No need for redeclaration.
      
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      cf63ff5f