1. 06 1月, 2009 40 次提交
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm · 7d8a804c
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:
        dlm: fs/dlm/ast.c: fix warning
        dlm: add new debugfs entry
        dlm: add time stamp of blocking callback
        dlm: change lock time stamping
        dlm: improve how bast mode handling
        dlm: remove extra blocking callback check
        dlm: replace schedule with cond_resched
        dlm: remove kmap/kunmap
        dlm: trivial annotation of be16 value
        dlm: fix up memory allocation flags
      7d8a804c
    • L
      Merge branch 'i2c-next' of git://aeryn.fluff.org.uk/bjdooks/linux · c58bd34d
      Linus Torvalds 提交于
      * 'i2c-next' of git://aeryn.fluff.org.uk/bjdooks/linux:
        i2c-omap: fix type of irq handler function
        i2c-s3c2410: Change IRQ to be plain integer.
        i2c-s3c2410: Allow more than one i2c-s3c2410 adapter
        i2c-s3c2410: Remove default platform data.
        i2c-s3c2410: Use platform data for gpio configuration
        i2c-s3c2410: Fixup style problems from checkpatch.pl
        i2c-omap: Enable I2C wakeups for 34xx
        i2c-omap: reprogram OCP_SYSCONFIG register after reset
        i2c-omap: convert 'rev1' flag to generic 'rev' u8
        i2c-omap: fix I2C timeouts due to recursive omap_i2c_{un,}idle()
        i2c-omap: Clean-up i2c-omap
        i2c-omap: Don't compile in OMAP15xx I2C ISR for non-OMAP15xx builds
        i2c-omap: Mark init-only functions as __init
        i2c-omap: Add support for omap34xx
        i2c-omap: FIFO handling support and broken hw workaround for i2c-omap
        i2c-omap: Add high-speed support to omap-i2c
        i2c-omap: Close suspected race between omap_i2c_idle() and omap_i2c_isr()
        i2c-omap: Do not use interruptible wait call in omap_i2c_xfer_msg
      
      Fix up apparently-trivial conflict in drivers/i2c/busses/i2c-s3c2410.c
      c58bd34d
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 8606ab6d
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (22 commits)
        HID: fix error condition propagation in hid-sony driver
        HID: fix reference count leak hidraw
        HID: add proper support for pensketch 12x9 tablet
        HID: don't allow DealExtreme usb-radio be handled by usb hid driver
        HID: fix default Kconfig setting for TopSpeed driver
        HID: driver for TopSeed Cyberlink quirky remote
        HID: make boot protocol drivers depend on EMBEDDED
        HID: avoid sparse warning in HID_COMPAT_LOAD_DRIVER
        HID: hiddev cleanup -- handle all error conditions properly
        HID: force feedback driver for GreenAsia 0x12 PID
        HID: switch specialized drivers from "default y" to !EMBEDDED
        HID: set proper dev.parent in hidraw
        HID: add dynids facility
        HID: use GFP_KERNEL in hid_alloc_buffers
        HID: usbhid, use usb_endpoint_xfer_int
        HID: move usbhid flags to usbhid.h
        HID: add n-trig digitizer support
        HID: add phys and name ioctls to hidraw
        HID: struct device - replace bus_id with dev_name(), dev_set_name()
        HID: automatically call usbhid_set_leds in usbhid driver
        ...
      8606ab6d
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw · c54febae
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw: (27 commits)
        GFS2: Use DEFINE_SPINLOCK
        GFS2: Fix use-after-free bug on umount (try #2)
        Revert "GFS2: Fix use-after-free bug on umount"
        GFS2: Streamline alloc calculations for writes
        GFS2: Send useful information with uevent messages
        GFS2: Fix use-after-free bug on umount
        GFS2: Remove ancient, unused code
        GFS2: Move four functions from super.c
        GFS2: Fix bug in gfs2_lock_fs_check_clean()
        GFS2: Send some sensible sysfs stuff
        GFS2: Kill two daemons with one patch
        GFS2: Move gfs2_recoverd into recovery.c
        GFS2: Fix "truncate in progress" hang
        GFS2: Clean up & move gfs2_quotad
        GFS2: Add more detail to debugfs glock dumps
        GFS2: Banish struct gfs2_rgrpd_host
        GFS2: Move rg_free from gfs2_rgrpd_host to gfs2_rgrpd
        GFS2: Move rg_igeneration into struct gfs2_rgrpd
        GFS2: Banish struct gfs2_dinode_host
        GFS2: Move i_size from gfs2_dinode_host and rename it to i_disksize
        ...
      c54febae
    • L
      igb: fix anoying type mismatch warning on rx/tx queue sizing · e42e4ba0
      Linus Torvalds 提交于
      When using "min()", the types of both sides should match.  With the cpu
      mask changes, the type of num_online_cpus() will now depend on config
      options. Use "min_t()" with an explicit type instead.
      
      And make the rx/tx case look the same too, just for sanity.
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      e42e4ba0
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 · 7a1fcd5f
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: (30 commits)
        sparc: Fix minor SPARC32 compile error
        sparc: Remove reg*.h from Kbuild
        sparc: Clean arch-specific code in prom_common.c
        sparc: Kill asm/reg*.h
        sparc: Use 64BIT config entry
        MAINTAINERS: update sparc maintainer
        sparc: unify ipcbuf.h
        sparc: Update 64-bit defconfig.
        sparc: remove NO_PROC_ID - it is no longer used
        sparc: drop get_tbr() in traps.h
        sparc: fix warning in userspace header traps.h
        sparc: fix warnings in userspace header byteorder.h
        sparc: fix warning in userspace header jsflash.h
        sparc: unify openprom.h
        sparc64: delete unused linux_prom64_ranges from openprom_64.h
        sparc: prepare openprom for unification
        sparc: remove linux_prom_pci_assigned_addresses from openprom_32.h
        sparc: remove ebus definitions from openprom*.h
        sparc: unify siginfo.h
        sparc: unify ptrace.h
        ...
      7a1fcd5f
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 · 15b06690
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (44 commits)
        qlge: Fix sparse warnings for tx ring indexes.
        qlge: Fix sparse warning regarding rx buffer queues.
        qlge: Fix sparse endian warning in ql_hw_csum_setup().
        qlge: Fix sparse endian warning for inbound packet control block flags.
        qlge: Fix sparse warnings for byte swapping in qlge_ethool.c
        myri10ge: print MAC and serial number on probe failure
        pkt_sched: cls_u32: Fix locking in u32_change()
        iucv: fix cpu hotplug
        af_iucv: Free iucv path/socket in path_pending callback
        af_iucv: avoid left over IUCV connections from failing connects
        af_iucv: New error return codes for connect()
        net/ehea: bitops work on unsigned longs
        Revert "net: Fix for initial link state in 2.6.28"
        tcp: Kill extraneous SPLICE_F_NONBLOCK checks.
        tcp: don't mask EOF and socket errors on nonblocking splice receive
        dccp: Integrate the TFRC library with DCCP
        dccp: Clean up ccid.c after integration of CCID plugins
        dccp: Lockless integration of CCID congestion-control plugins
        qeth: get rid of extra argument after printk to dev_* conversion
        qeth: No large send using EDDP for HiperSockets.
        ...
      15b06690
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 · c155b914
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
        ALSA: ice1724 - Fix a typo in IEC958 PCM name
        ASoC: fix davinci-sffsdr buglet
        ALSA: sound/usb: Use negated usb_endpoint_xfer_control, etc
        ALSA: hda - cxt5051 report jack state
        ALSA: hda - add basic jack reporting functions to patch_conexant.c
        ALSA: Use usb_set/get_intfdata
        ASoC: Clean up kerneldoc warnings
        ASoC: Fix pxa2xx-pcm checks for invalid DMA channels
        LSA: hda - Add HP Acacia detection
        ALSA: hda - fix name for ALC1200
        ALSA: sound/usb: use USB API functions rather than constants
        ASoC: TWL4030: DAPM based capture implementation
        ASoC: TWL4030: Make the enum filter generic for twl4030
      c155b914
    • L
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq · e9af797d
      Linus Torvalds 提交于
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:
        [CPUFREQ] Fix on resume, now preserves user policy min/max.
        [CPUFREQ] Add Celeron Core support to p4-clockmod.
        [CPUFREQ] add to speedstep-lib additional fsb values for core processors
        [CPUFREQ] Disable sysfs ui for p4-clockmod.
        [CPUFREQ] p4-clockmod: reduce noise
        [CPUFREQ] clean up speedstep-centrino and reduce cpumask_t usage
      e9af797d
    • L
      Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2 · 10cc04f5
      Linus Torvalds 提交于
      * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: (138 commits)
        ocfs2: Access the right buffer_head in ocfs2_merge_rec_left.
        ocfs2: use min_t in ocfs2_quota_read()
        ocfs2: remove unneeded lvb casts
        ocfs2: Add xattr support checking in init_security
        ocfs2: alloc xattr bucket in ocfs2_xattr_set_handle
        ocfs2: calculate and reserve credits for xattr value in mknod
        ocfs2/xattr: fix credits calculation during index create
        ocfs2/xattr: Always updating ctime during xattr set.
        ocfs2/xattr: Remove extend_trans call and add its credits from the beginning
        ocfs2/dlm: Fix race during lockres mastery
        ocfs2/dlm: Fix race in adding/removing lockres' to/from the tracking list
        ocfs2/dlm: Hold off sending lockres drop ref message while lockres is migrating
        ocfs2/dlm: Clean up errors in dlm_proxy_ast_handler()
        ocfs2/dlm: Fix a race between migrate request and exit domain
        ocfs2: One more hamming code optimization.
        ocfs2: Another hamming code optimization.
        ocfs2: Don't hand-code xor in ocfs2_hamming_encode().
        ocfs2: Enable metadata checksums.
        ocfs2: Validate superblock with checksum and ecc.
        ocfs2: Checksum and ECC for directory blocks.
        ...
      10cc04f5
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 · 520c8534
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
        inotify: fix type errors in interfaces
        fix breakage in reiserfs_new_inode()
        fix the treatment of jfs special inodes
        vfs: remove duplicate code in get_fs_type()
        add a vfs_fsync helper
        sys_execve and sys_uselib do not call into fsnotify
        zero i_uid/i_gid on inode allocation
        inode->i_op is never NULL
        ntfs: don't NULL i_op
        isofs check for NULL ->i_op in root directory is dead code
        affs: do not zero ->i_op
        kill suid bit only for regular files
        vfs: lseek(fd, 0, SEEK_CUR) race condition
      520c8534
    • N
      mm lockless pagecache barrier fix · e8c82c2e
      Nick Piggin 提交于
      An XFS workload showed up a bug in the lockless pagecache patch. Basically it
      would go into an "infinite" loop, although it would sometimes be able to break
      out of the loop! The reason is a missing compiler barrier in the "increment
      reference count unless it was zero" case of the lockless pagecache protocol in
      the gang lookup functions.
      
      This would cause the compiler to use a cached value of struct page pointer to
      retry the operation with, rather than reload it. So the page might have been
      removed from pagecache and freed (refcount==0) but the lookup would not correctly
      notice the page is no longer in pagecache, and keep attempting to increment the
      refcount and failing, until the page gets reallocated for something else. This
      isn't a data corruption because the condition will be detected if the page has
      been reallocated. However it can result in a lockup.
      
      Linus points out that ACCESS_ONCE is also required in that pointer load, even
      if it's absence is not causing a bug on our particular build. The most general
      way to solve this is just to put an rcu_dereference in radix_tree_deref_slot.
      
      Assembly of find_get_pages,
      before:
      .L220:
              movq    (%rbx), %rax    #* ivtmp.1162, tmp82
              movq    (%rax), %rdi    #, prephitmp.1149
      .L218:
              testb   $1, %dil        #, prephitmp.1149
              jne     .L217   #,
              testq   %rdi, %rdi      # prephitmp.1149
              je      .L203   #,
              cmpq    $-1, %rdi       #, prephitmp.1149
              je      .L217   #,
              movl    8(%rdi), %esi   # <variable>._count.counter, c
              testl   %esi, %esi      # c
              je      .L218   #,
      
      after:
      .L212:
              movq    (%rbx), %rax    #* ivtmp.1109, tmp81
              movq    (%rax), %rdi    #, ret
              testb   $1, %dil        #, ret
              jne     .L211   #,
              testq   %rdi, %rdi      # ret
              je      .L197   #,
              cmpq    $-1, %rdi       #, ret
              je      .L211   #,
              movl    8(%rdi), %esi   # <variable>._count.counter, c
              testl   %esi, %esi      # c
              je      .L212   #,
      
      (notice the obvious infinite loop in the first example, if page->count remains 0)
      Signed-off-by: NNick Piggin <npiggin@suse.de>
      Reviewed-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      e8c82c2e
    • A
      i2o: Update my address · f1b11e50
      Alan Cox 提交于
      Signed-off-by: NAlan Cox <alan@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f1b11e50
    • R
      qlge: Fix sparse warnings for tx ring indexes. · 3537d54c
      Ron Mercer 提交于
      Warnings:
      drivers/net/qlge/qlge_main.c:1474:34: warning: restricted degrades to integer
      drivers/net/qlge/qlge_main.c:1475:36: warning: restricted degrades to integer
      drivers/net/qlge/qlge_main.c:1592:51: warning: restricted degrades to integer
      drivers/net/qlge/qlge_main.c:1941:20: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:1941:20:    expected restricted unsigned int [usertype] tid
      drivers/net/qlge/qlge_main.c:1941:20:    got int [signed] index
      drivers/net/qlge/qlge_main.c:1945:24: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:1945:24:    expected restricted unsigned int [usertype] txq_idx
      drivers/net/qlge/qlge_main.c:1945:24:    got unsigned int [unsigned] [usertype] tx_ring_idx
      Signed-off-by: NRon Mercer <ron.mercer@qlogic.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3537d54c
    • R
      qlge: Fix sparse warning regarding rx buffer queues. · 2c9a0d41
      Ron Mercer 提交于
      Warnings:
      drivers/net/qlge/qlge_main.c:909:17: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:909:17:    expected unsigned int [unsigned] [usertype] addr_lo
      drivers/net/qlge/qlge_main.c:909:17:    got restricted unsigned int [usertype] <noident>
      drivers/net/qlge/qlge_main.c:911:17: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:911:17:    expected unsigned int [unsigned] [usertype] addr_hi
      drivers/net/qlge/qlge_main.c:911:17:    got restricted unsigned int [usertype] <noident>
      drivers/net/qlge/qlge_main.c:974:17: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:974:17:    expected unsigned int [unsigned] [usertype] addr_lo
      drivers/net/qlge/qlge_main.c:974:17:    got restricted unsigned int [usertype] <noident>
      drivers/net/qlge/qlge_main.c:975:17: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:975:17:    expected unsigned int [unsigned] [usertype] addr_hi
      drivers/net/qlge/qlge_main.c:975:17:    got restricted unsigned int [usertype] <noident>
      drivers/net/qlge/qlge_main.c:2132:16: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:2132:16:    expected unsigned int [unsigned] [usertype] addr_lo
      drivers/net/qlge/qlge_main.c:2132:16:    got restricted unsigned int [usertype] <noident>
      drivers/net/qlge/qlge_main.c:2133:16: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:2133:16:    expected unsigned int [unsigned] [usertype] addr_hi
      drivers/net/qlge/qlge_main.c:2133:16:    got restricted unsigned int [usertype] <noident>
      drivers/net/qlge/qlge_main.c:2212:15: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:2212:15:    expected unsigned int [unsigned] [usertype] addr_lo
      drivers/net/qlge/qlge_main.c:2212:15:    got restricted unsigned int [usertype] <noident>
      drivers/net/qlge/qlge_main.c:2214:15: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:2214:15:    expected unsigned int [unsigned] [usertype] addr_hi
      drivers/net/qlge/qlge_main.c:2214:15:    got restricted unsigned int [usertype] <noident>
      Signed-off-by: NRon Mercer <ron.mercer@qlogic.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2c9a0d41
    • R
      qlge: Fix sparse endian warning in ql_hw_csum_setup(). · fd2df4f7
      Ron Mercer 提交于
      Changed u16 to __sum16 usage.
      
      Warnings:
      drivers/net/qlge/qlge_main.c:1897:9: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:1897:9:    expected unsigned short [usertype] *check
      drivers/net/qlge/qlge_main.c:1897:9:    got restricted unsigned short *<noident>
      drivers/net/qlge/qlge_main.c:1903:9: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:1903:9:    expected unsigned short [usertype] *check
      drivers/net/qlge/qlge_main.c:1903:9:    got restricted unsigned short *<noident>
      drivers/net/qlge/qlge_main.c:1909:9: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_main.c:1909:9:    expected unsigned short [unsigned] [short] [usertype] <noident>
      Signed-off-by: NRon Mercer <ron.mercer@qlogic.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fd2df4f7
    • R
      qlge: Fix sparse endian warning for inbound packet control block flags. · a303ce09
      Ron Mercer 提交于
      Changed flags element from __le32 to 3 reserved bytes and one byte of
      flags.  Changed flags bit definitions to reflect byte width instead of
      __le32 width.
      
      Warnings:
      drivers/net/qlge/qlge_main.c:1206:16: warning: restricted degrades to integer
      drivers/net/qlge/qlge_main.c:1207:16: warning: restricted degrades to integer
      drivers/net/qlge/qlge_main.c:1233:17: warning: restricted degrades to integer
      drivers/net/qlge/qlge_main.c:1276:17: warning: restricted degrades to integer
      drivers/net/qlge/qlge_main.c:1349:19: warning: restricted degrades to integer
      Signed-off-by: NRon Mercer <ron.mercer@qlogic.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a303ce09
    • R
      qlge: Fix sparse warnings for byte swapping in qlge_ethool.c · 8306c952
      Ron Mercer 提交于
      drivers/net/qlge/qlge_ethtool.c:59:23: warning: cast to restricted type
      drivers/net/qlge/qlge_ethtool.c:59:21: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_ethtool.c:59:21:    expected restricted unsigned short [usertype] irq_delay
      drivers/net/qlge/qlge_ethtool.c:59:21:    got unsigned short [unsigned] [usertype] <noident>
      drivers/net/qlge/qlge_ethtool.c:61:8: warning: cast to restricted type
      drivers/net/qlge/qlge_ethtool.c:60:21: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_ethtool.c:60:21:    expected restricted unsigned short [usertype] pkt_delay
      drivers/net/qlge/qlge_ethtool.c:60:21:    got unsigned short [unsigned] [usertype] <noident>
      drivers/net/qlge/qlge_ethtool.c:82:23: warning: cast to restricted type
      drivers/net/qlge/qlge_ethtool.c:82:21: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_ethtool.c:82:21:    expected restricted unsigned short [usertype] irq_delay
      drivers/net/qlge/qlge_ethtool.c:82:21:    got unsigned short [unsigned] [usertype] <noident>
      drivers/net/qlge/qlge_ethtool.c:84:8: warning: cast to restricted type
      drivers/net/qlge/qlge_ethtool.c:83:21: warning: incorrect type in assignment (different base types)
      drivers/net/qlge/qlge_ethtool.c:83:21:    expected restricted unsigned short [usertype] pkt_delay
      drivers/net/qlge/qlge_ethtool.c:83:21:    got unsigned short [unsigned] [usertype] <noident>
      Signed-off-by: NRon Mercer <ron.mercer@qlogic.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8306c952
    • B
      myri10ge: print MAC and serial number on probe failure · 0f840011
      Brice Goglin 提交于
      To help board identification and diagnosis, print the MAC
      and serial number on probe failure if they are available.
      Signed-off-by: NBrice Goglin <brice@myri.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0f840011
    • J
      pkt_sched: cls_u32: Fix locking in u32_change() · 6f573214
      Jarek Poplawski 提交于
      New nodes are inserted in u32_change() under rtnl_lock() with wmb(),
      so without tcf_tree_lock() like in other classifiers (e.g. cls_fw).
      This isn't enough without rmb() on the read side, but on the other
      hand adding such barriers doesn't give any savings, so the lock is
      added instead.
      Reported-by: Nm0sia <m0sia@plotinka.ru>
      Signed-off-by: NJarek Poplawski <jarkao2@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6f573214
    • J
      sparc: Fix minor SPARC32 compile error · 4696b64d
      Julian Calaby 提交于
      When CONFIG_PROC_FS is unset, include/linux/interrupt.h defines
      init_irq_proc() as an empty function.
      
      arch/sparc/kernel/irq_32.c defines this function unconditionally.
      
      Fix the latter so that it only defines this function when CONFIG_PROC_FS
      is set.
      
      This fixes the following error:
      arch/sparc/kernel/irq_32.c:672: error: redefinition of 'init_irq_proc'
      include/linux/interrupt.h:461: error: previous definition of
      'init_irq_proc' was here
      
      This was found using randconfig builds.
      Signed-off-by: NJulian Calaby <julian.calaby@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4696b64d
    • H
      iucv: fix cpu hotplug · f1d3e4dc
      Heiko Carstens 提交于
      If the iucv module is compiled in/loaded but no user is registered cpu
      hot remove doesn't work. Reason for that is that the iucv cpu hotplug
      notifier on CPU_DOWN_PREPARE checks if the iucv_buffer_cpumask would
      be empty after the corresponding bit would be cleared. However the bit
      was never set since iucv wasn't enable. That causes all cpu hot unplug
      operations to fail in this scenario.
      To fix this use iucv_path_table as an indicator wether iucv is enabled
      or not.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NUrsula Braun <ursula.braun@de.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f1d3e4dc
    • H
      af_iucv: Free iucv path/socket in path_pending callback · 65dbd7c2
      Hendrik Brueckner 提交于
      Free iucv path after iucv_path_sever() calls in iucv_callback_connreq()
      (path_pending() iucv callback).
      If iucv_path_accept() fails, free path and free/kill newly created socket.
      Signed-off-by: NHendrik Brueckner <brueckner@linux.vnet.ibm.com>
      Signed-off-by: NUrsula Braun <ursula.braun@de.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      65dbd7c2
    • U
      af_iucv: avoid left over IUCV connections from failing connects · 18becbc5
      Ursula Braun 提交于
      For certain types of AFIUCV socket connect failures IUCV connections
      are left over. Add some cleanup-statements to avoid cluttered IUCV
      connections.
      Signed-off-by: NUrsula Braun <ursula.braun@de.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      18becbc5
    • H
      af_iucv: New error return codes for connect() · 55cdea9e
      Hendrik Brueckner 提交于
      If the iucv_path_connect() call fails then return an error code that
      corresponds to the iucv_path_connect() failure condition; instead of
      returning -ECONNREFUSED for any failure.
      
      This helps to improve error handling for user space applications
      (e.g.  inform the user that the z/VM guest is not authorized to
      connect to other guest virtual machines).
      
      The error return codes are based on those described in connect(2).
      Signed-off-by: NHendrik Brueckner <brueckner@linux.vnet.ibm.com>
      Signed-off-by: NUrsula Braun <ursula.braun@de.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      55cdea9e
    • A
      mm: update my address · 046c6884
      Alan Cox 提交于
      Signed-off-by: NAlan Cox <alan@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      046c6884
    • A
      X86_DEBUGCTLMSR won't work on uml · 5641f1fd
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      5641f1fd
    • A
      uml got broken by commit 30742d5c · 7483cb7b
      Al Viro 提交于
      ... if you revert a commit, revert the fixups elsewhere that had been
      triggered by it.  Such as 8c56250f
      (lockdep, UML: fix compilation when CONFIG_TRACE_IRQFLAGS_SUPPORT is not set).
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      7483cb7b
    • A
      get rid of the last symlink in uml build · 22409f9c
      Al Viro 提交于
      We need to make asm-offsets.h contents visible for objects built
      with userland headers.  Instead of creating a symlink, just have the
      file with equivalent include (relative to location of header) created
      once.  That kills the last symlink used in arch/um builds.
      
      Additionally, both generated headers can become dependencies of
      archprepare now, killing the misuse of prepare.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      22409f9c
    • S
      net/ehea: bitops work on unsigned longs · 48e4cc77
      Stephen Rothwell 提交于
      The flags field of struct ehea_port is only used with test_bit(),
      clear_bit() and set_bit() and these interfaces only work on
      "unsigned long"s, so change the field to be an "unsigned long".  Also,
      this field only has two bits defined for it (0 and 1) so will still be
      fine if someone builds this driver for a 32 bit arch (at least as far as
      this flags field is concerned).
      
      Also note that ehea_driver_flags is only used in ehca_main.c, so make it
      static in there.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      48e4cc77
    • D
      Revert "net: Fix for initial link state in 2.6.28" · c276e098
      David S. Miller 提交于
      This reverts commit 22604c86.
      
      We can't fix this issue in this way, because we now can try
      to take the dev_base_lock rwlock as a writer in software interrupt
      context and that is not allowed without major surgery elsewhere.
      
      This initial link state problem needs to be solved in some other
      way.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c276e098
    • T
      Merge branch 'topic/misc' into for-linus · 3a5e1d17
      Takashi Iwai 提交于
      3a5e1d17
    • T
      Merge branch 'topic/asoc' into for-linus · 9d7eff60
      Takashi Iwai 提交于
      9d7eff60
    • T
      Merge branch 'fixes' of... · cad9d90e
      Takashi Iwai 提交于
      Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc
      cad9d90e
    • A
      ALSA: ice1724 - Fix a typo in IEC958 PCM name · 8eca7538
      Alan Horstmann 提交于
      Fix trivial name string typo as reported in bug 2552.
      Signed-off-by: NAlan Horstmann <gineera@aspect135.co.uk>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      8eca7538
    • M
      inotify: fix type errors in interfaces · 4ae8978c
      Michael Kerrisk 提交于
      The problems lie in the types used for some inotify interfaces, both at the kernel level and at the glibc level. This mail addresses the kernel problem. I will follow up with some suggestions for glibc changes.
      
      For the sys_inotify_rm_watch() interface, the type of the 'wd' argument is
      currently 'u32', it should be '__s32' .  That is Robert's suggestion, and
      is consistent with the other declarations of watch descriptors in the
      kernel source, in particular, the inotify_event structure in
      include/linux/inotify.h:
      
      struct inotify_event {
              __s32           wd;             /* watch descriptor */
              __u32           mask;           /* watch mask */
              __u32           cookie;         /* cookie to synchronize two events */
              __u32           len;            /* length (including nulls) of name */
              char            name[0];        /* stub for possible name */
      };
      
      The patch makes the changes needed for inotify_rm_watch().
      Signed-off-by: NMichael Kerrisk <mtk.manpages@googlemail.com>
      Cc: Robert Love <rlove@google.com>
      Cc: Vegard Nossum <vegard.nossum@gmail.com>
      Cc: Ulrich Drepper <drepper@redhat.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      4ae8978c
    • A
      fix breakage in reiserfs_new_inode() · 2f1169e2
      Al Viro 提交于
      now that we use ih.key earlier, we need to do all its setup early enough
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      2f1169e2
    • A
      fix the treatment of jfs special inodes · 5b45d96b
      Al Viro 提交于
      We used to put them on a single list, without any locking.  Racy.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      5b45d96b
    • L
      vfs: remove duplicate code in get_fs_type() · d8e9650d
      Li Zefan 提交于
      save 14 bytes:
      
         text    data     bss     dec     hex filename
         1354      32       4    1390     56e fs/filesystems.o.before
         text    data     bss     dec     hex filename
         1340      32       4    1376     560 fs/filesystems.o
      Signed-off-by: NLi Zefan <lizf@cn.fujitsu.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      d8e9650d
    • C
      add a vfs_fsync helper · 4c728ef5
      Christoph Hellwig 提交于
      Fsync currently has a fdatawrite/fdatawait pair around the method call,
      and a mutex_lock/unlock of the inode mutex.  All callers of fsync have
      to duplicate this, but we have a few and most of them don't quite get
      it right.  This patch adds a new vfs_fsync that takes care of this.
      It's a little more complicated as usual as ->fsync might get a NULL file
      pointer and just a dentry from nfsd, but otherwise gets afile and we
      want to take the mapping and file operations from it when it is there.
      
      Notes on the fsync callers:
      
       - ecryptfs wasn't calling filemap_fdatawrite / filemap_fdatawait on the
         	lower file
       - coda wasn't calling filemap_fdatawrite / filemap_fdatawait on the host
      	file, and returning 0 when ->fsync was missing
       - shm wasn't calling either filemap_fdatawrite / filemap_fdatawait nor
         taking i_mutex.  Now given that shared memory doesn't have disk
         backing not doing anything in fsync seems fine and I left it out of
         the vfs_fsync conversion for now, but in that case we might just
         not pass it through to the lower file at all but just call the no-op
         simple_sync_file directly.
      
      [and now actually export vfs_fsync]
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      4c728ef5