1. 08 3月, 2010 31 次提交
  2. 07 3月, 2010 9 次提交
    • B
      vsprintf: move %pR resource printf_specs off the stack · 4da0b66c
      Bjorn Helgaas 提交于
      This adds separate I/O and memory specs, so we don't have to change the
      field width in a shared spec, which then lets us make all the specs const
      and static, since they never change.
      Signed-off-by: NBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      4da0b66c
    • B
      vsprintf: clarify comments for printf_spec flags · b89dc5d6
      Bjorn Helgaas 提交于
      Add clues about what the SMALL and SPECIAL flags do.
      Signed-off-by: NBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      b89dc5d6
    • J
      vsprintf.c: Reduce sizeof struct printf_spec from 24 to 8 bytes · ef0658f3
      Joe Perches 提交于
      Reducing the size of struct printf_spec is a good thing because multiple
      instances are commonly passed on stack.
      
      It's possible for type to be u8 and field_width to be s8, but this is
      likely small enough for now.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ef0658f3
    • L
      usbfs: fix deadlock on 'usbfs_mutex', clean up poll · 7bc80cd9
      Linus Torvalds 提交于
      The caller of usbfs_conn_disc_event() in some cases (but not always)
      already holds usbfs_mutex, so trying to protect the event counter with
      that lock causes nasty deadlocks.
      
      The problem was introduced by commit 554f7696 ("USB: Remove BKL from
      poll()") when the BLK protection was turned into using the mutex instead.
      
      So fix this by using an atomic variable instead.  And while we're at it,
      get rid of the atrocious naming of said variable and the waitqueue it is
      associated with.
      
      This also cleans up the unnecessary locking in the poll routine, since
      the whole point of how the pollwait table works is that you can just add
      yourself to the waiting list, and then check the condition you're
      waiting for afterwards - avoiding all races.
      
      It also gets rid of the unnecessary dynamic allocation of the device
      status that just contained a single word.  We should use f_version for
      this, as Dmitry Torokhov points out.  That simplifies everything
      further.
      Reported-and-tested-by: NJeff Chua <jeff.chua.linux@gmail.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Acked-by: NAlan Stern <stern@rowland.harvard.edu>
      Cc: Oliver Neukum <oliver@neukum.org>
      Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      7bc80cd9
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/joern/logfs · 66b89159
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/joern/logfs:
        [LogFS] Change magic number
        [LogFS] Remove h_version field
        [LogFS] Check feature flags
        [LogFS] Only write journal if dirty
        [LogFS] Fix bdev erases
        [LogFS] Silence gcc
        [LogFS] Prevent 64bit divisions in hash_index
        [LogFS] Plug memory leak on error paths
        [LogFS] Add MAINTAINERS entry
        [LogFS] add new flash file system
      
      Fixed up trivial conflict in lib/Kconfig, and a semantic conflict in
      fs/logfs/inode.c introduced by write_inode() being changed to use
      writeback_control' by commit a9185b41
      ("pass writeback_control to ->write_inode")
      66b89159
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm · 87c7ae06
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm:
        dm raid1: fix deadlock when suspending failed device
        dm: eliminate some holes data structures
        dm ioctl: introduce flag indicating uevent was generated
        dm: free dm_io before bio_endio not after
        dm table: remove unused dm_get_device range parameters
        dm ioctl: only issue uevent on resume if state changed
        dm raid1: always return error if all legs fail
        dm mpath: refactor pg_init
        dm mpath: wait for pg_init completion when suspending
        dm mpath: hold io until all pg_inits completed
        dm mpath: avoid storing private suspended state
        dm: document when snapshot has finished merging
        dm table: remove dm_get from dm_table_get_md
        dm mpath: skip activate_path for failed paths
        dm mpath: pass struct pgpath to pg init done
      87c7ae06
    • L
      Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · dff6d1c5
      Linus Torvalds 提交于
      * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: (23 commits)
        hwmon: Remove the deprecated adt7473 driver
        hwmon: Fix off-by-one kind values
        hwmon: (tmp421) Fix temperature conversions
        hwmon: (tmp421) Restore missing inputs
        hwmon: Driver for Andigilog aSC7621 family monitoring chips
        hwmon: (adt7411) Improve locking
        hwmon: Add driver for ADT7411 voltage and temperature sensor
        hwmon: (w83793) Add watchdog functionality
        hwmon: (g760a) Make rpm_from_cnt static
        hwmon: (it87) Validate auto pwm settings
        hwmon: (it87) Add support for old automatic fan speed control
        hwmon: (it87) Drop dead web links in documentation
        hwmon: (it87) Add an entry in MAINTAINERS
        hwmon: (it87) Use strict_strtol instead of simple_strtol
        hwmon: (it87) Fix many checkpatch errors and warnings
        hwmon: (it87) Add support for beep on alarm
        hwmon: (it87) Create vid attributes by group
        hwmon: (it87) Refactor attributes creation and removal
        hwmon: (it87) Expose the PWM/temperature mappings
        hwmon: (it87) Display fan outputs in automatic mode as such
        ...
      dff6d1c5
    • L
      Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs · 66ce3cf8
      Linus Torvalds 提交于
      * 'for-linus' of git://oss.sgi.com/xfs/xfs: (21 commits)
        xfs: return inode fork offset in bulkstat for fsr
        xfs: Increase the default size of the reserved blocks pool
        xfs: truncate delalloc extents when IO fails in writeback
        xfs: check for more work before sleeping in xfssyncd
        xfs: Fix a build warning in xfs_aops.c
        xfs: fix locking for inode cache radix tree tag updates
        xfs: remove xfs_ipin/xfs_iunpin
        xfs: cleanup xfs_iunpin_wait/xfs_iunpin_nowait
        xfs: kill xfs_lrw.h
        xfs: factor common xfs_trans_bjoin code
        xfs: stop passing opaque handles to xfs_log.c routines
        xfs: split xfs_bmap_btalloc
        xfs: fix xfs_fsblock_t tracing
        xfs: fix inode pincount check in fsync
        xfs: Non-blocking inode locking in IO completion
        xfs: implement optimized fdatasync
        xfs: remove wrapper for the fsync file operation
        xfs: remove wrappers for read/write file operations
        xfs: merge xfs_lrw.c into xfs_file.c
        xfs: fix dquota trace format
        ...
      66ce3cf8
    • L
      Merge branch 'for-2.6.34' of git://linux-nfs.org/~bfields/linux · 05c5cb31
      Linus Torvalds 提交于
      * 'for-2.6.34' of git://linux-nfs.org/~bfields/linux: (22 commits)
        nfsd4: fix minor memory leak
        svcrpc: treat uid's as unsigned
        nfsd: ensure sockets are closed on error
        Revert "sunrpc: move the close processing after do recvfrom method"
        Revert "sunrpc: fix peername failed on closed listener"
        sunrpc: remove unnecessary svc_xprt_put
        NFSD: NFSv4 callback client should use RPC_TASK_SOFTCONN
        xfs_export_operations.commit_metadata
        commit_metadata export operation replacing nfsd_sync_dir
        lockd: don't clear sm_monitored on nsm_reboot_lookup
        lockd: release reference to nsm_handle in nlm_host_rebooted
        nfsd: Use vfs_fsync_range() in nfsd_commit
        NFSD: Create PF_INET6 listener in write_ports
        SUNRPC: NFS kernel APIs shouldn't return ENOENT for "transport not found"
        SUNRPC: Bury "#ifdef IPV6" in svc_create_xprt()
        NFSD: Support AF_INET6 in svc_addsock() function
        SUNRPC: Use rpc_pton() in ip_map_parse()
        nfsd: 4.1 has an rfc number
        nfsd41: Create the recovery entry for the NFSv4.1 client
        nfsd: use vfs_fsync for non-directories
        ...
      05c5cb31