1. 05 Aug, 2010 10 commits
    • Jarek Poplawski's avatar
      net: Fix napi_gro_frags vs netpoll path · ce9e76c8
      Jarek Poplawski authored
      The netpoll_rx_on() check in __napi_gro_receive() skips part of the
      "common" GRO_NORMAL path, especially "pull:" in dev_gro_receive(),
      where at least eth header should be copied for entirely paged skbs.
      Signed-off-by: default avatarJarek Poplawski <jarkao2@gmail.com>
      Acked-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ce9e76c8
    • Christian Samsel's avatar
      usbnet: remove noisy and hardly useful printk · 23d23e40
      Christian Samsel authored
      With turned on hspa modem (Dell 5530 internal card) and activated usb auto
      suspend, my system gets up 100 "usbnet_resume has delayed data" per
      minute. I didnt noticed any pathological behaviour, so just drop
      this message. if any objections, please at least change it to _DEBUG.
      Signed-off-by: default avatarChristian Samsel <christian.samsel@rwth-aachen.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      23d23e40
    • Rusty Russell's avatar
      virtio_net: implements ethtool_ops.get_drvinfo · a767bde4
      Rusty Russell authored
      I often use "ethtool -i" command to check what driver controls the
      ehternet device.  But because current virtio_net driver doesn't
      support "ethtool -i", it becomes the following:
      
              # ethtool -i eth3
              Cannot get driver information: Operation not supported
      
      This patch simply adds the "ethtool -i" support. The following is the
      result when using the virtio_net driver with my patch applied to.
      
              # ethtool -i eth3
              driver: virtio_net
              version: N/A
              firmware-version: N/A
              bus-info: virtio0
      
      Personally, "-i" is one of the most frequently-used option, and most
      network drivers support "ethtool -i", so I think virtio_net also
      should do.
      Signed-off-by: default avatarTaku Izumi <izumi.taku@jp.fujitsu.com>
      Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (use ARRAY_SIZE)
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a767bde4
    • stephen hemminger's avatar
      ppp: make channel_ops const · d7100da0
      stephen hemminger authored
      The PPP channel ops structure should be const.
      Cleanup the declarations to use standard C99 format.
      Signed-off-by: default avatarStephen Hemminger <shemminger@vyatta.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d7100da0
    • David Howells's avatar
      RxRPC: Fix a potential deadlock between the call resend_timer and state_lock · 3b5bac2b
      David Howells authored
      RxRPC can potentially deadlock as rxrpc_resend_time_expired() wants to get
      call->state_lock so that it can alter the state of an RxRPC call.  However, its
      caller (call_timer_fn()) has an apparent lock on the timer struct.
      
      The problem is that rxrpc_resend_time_expired() isn't permitted to lock
      call->state_lock as this could cause a deadlock against rxrpc_send_abort() as
      that takes state_lock and then attempts to delete the resend timer by calling
      del_timer_sync().
      
      The deadlock can occur because del_timer_sync() will sit there forever waiting
      for rxrpc_resend_time_expired() to return, but the latter may then wait for
      call->state_lock, which rxrpc_send_abort() holds around del_timer_sync()...
      
      This leads to a warning appearing in the kernel log that looks something like
      the attached.
      
      It should be sufficient to simply dispense with the locks.  It doesn't matter
      if we set the resend timer expired event bit and queue the event processor
      whilst we're changing state to one where the resend timer is irrelevant as the
      event can just be ignored by the processor thereafter.
      
      =======================================================
      [ INFO: possible circular locking dependency detected ]
      2.6.35-rc3-cachefs+ #115
      -------------------------------------------------------
      swapper/0 is trying to acquire lock:
       (&call->state_lock){++--..}, at: [<ffffffffa00200d4>] rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc]
      
      but task is already holding lock:
       (&call->resend_timer){+.-...}, at: [<ffffffff8103b675>] run_timer_softirq+0x182/0x2a5
      
      which lock already depends on the new lock.
      
      the existing dependency chain (in reverse order) is:
      
      -> #1 (&call->resend_timer){+.-...}:
             [<ffffffff810560bc>] __lock_acquire+0x889/0x8fa
             [<ffffffff81056184>] lock_acquire+0x57/0x6d
             [<ffffffff8103bb9c>] del_timer_sync+0x3c/0x86
             [<ffffffffa002bb7a>] rxrpc_send_abort+0x50/0x97 [af_rxrpc]
             [<ffffffffa002bdd9>] rxrpc_kernel_abort_call+0xa1/0xdd [af_rxrpc]
             [<ffffffffa0061588>] afs_deliver_to_call+0x129/0x368 [kafs]
             [<ffffffffa006181b>] afs_process_async_call+0x54/0xff [kafs]
             [<ffffffff8104261d>] worker_thread+0x1ef/0x2e2
             [<ffffffff81045f47>] kthread+0x7a/0x82
             [<ffffffff81002cd4>] kernel_thread_helper+0x4/0x10
      
      -> #0 (&call->state_lock){++--..}:
             [<ffffffff81055237>] validate_chain+0x727/0xd23
             [<ffffffff810560bc>] __lock_acquire+0x889/0x8fa
             [<ffffffff81056184>] lock_acquire+0x57/0x6d
             [<ffffffff813e6b69>] _raw_read_lock_bh+0x34/0x43
             [<ffffffffa00200d4>] rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc]
             [<ffffffff8103b6e6>] run_timer_softirq+0x1f3/0x2a5
             [<ffffffff81036828>] __do_softirq+0xa2/0x13e
             [<ffffffff81002dcc>] call_softirq+0x1c/0x28
             [<ffffffff810049f0>] do_softirq+0x38/0x80
             [<ffffffff810361a2>] irq_exit+0x45/0x47
             [<ffffffff81018fb3>] smp_apic_timer_interrupt+0x88/0x96
             [<ffffffff81002893>] apic_timer_interrupt+0x13/0x20
             [<ffffffff810011ac>] cpu_idle+0x4d/0x83
             [<ffffffff813e06f3>] start_secondary+0x1bd/0x1c1
      
      other info that might help us debug this:
      
      1 lock held by swapper/0:
       #0:  (&call->resend_timer){+.-...}, at: [<ffffffff8103b675>] run_timer_softirq+0x182/0x2a5
      
      stack backtrace:
      Pid: 0, comm: swapper Not tainted 2.6.35-rc3-cachefs+ #115
      Call Trace:
       <IRQ>  [<ffffffff81054414>] print_circular_bug+0xae/0xbd
       [<ffffffff81055237>] validate_chain+0x727/0xd23
       [<ffffffff810560bc>] __lock_acquire+0x889/0x8fa
       [<ffffffff810539a7>] ? mark_lock+0x42f/0x51f
       [<ffffffff81056184>] lock_acquire+0x57/0x6d
       [<ffffffffa00200d4>] ? rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc]
       [<ffffffff813e6b69>] _raw_read_lock_bh+0x34/0x43
       [<ffffffffa00200d4>] ? rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc]
       [<ffffffffa00200d4>] rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc]
       [<ffffffff8103b6e6>] run_timer_softirq+0x1f3/0x2a5
       [<ffffffff8103b675>] ? run_timer_softirq+0x182/0x2a5
       [<ffffffffa002007e>] ? rxrpc_resend_time_expired+0x0/0x96 [af_rxrpc]
       [<ffffffff810367ef>] ? __do_softirq+0x69/0x13e
       [<ffffffff81036828>] __do_softirq+0xa2/0x13e
       [<ffffffff81002dcc>] call_softirq+0x1c/0x28
       [<ffffffff810049f0>] do_softirq+0x38/0x80
       [<ffffffff810361a2>] irq_exit+0x45/0x47
       [<ffffffff81018fb3>] smp_apic_timer_interrupt+0x88/0x96
       [<ffffffff81002893>] apic_timer_interrupt+0x13/0x20
       <EOI>  [<ffffffff81049de1>] ? __atomic_notifier_call_chain+0x0/0x86
       [<ffffffff8100955b>] ? mwait_idle+0x6e/0x78
       [<ffffffff81009552>] ? mwait_idle+0x65/0x78
       [<ffffffff810011ac>] cpu_idle+0x4d/0x83
       [<ffffffff813e06f3>] start_secondary+0x1bd/0x1c1
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3b5bac2b
    • Changli Gao's avatar
      sch_sfq: add sanity check for the packet length · f2f00981
      Changli Gao authored
      The packet length should be checked before the packet data is dereferenced.
      Signed-off-by: default avatarChangli Gao <xiaosuo@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f2f00981
    • Changli Gao's avatar
      cls_rsvp: add sanity check for the packet length · 12dc96d1
      Changli Gao authored
      The packet length should be checked before the packet data is dereferenced.
      Signed-off-by: default avatarChangli Gao <xiaosuo@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      12dc96d1
    • Changli Gao's avatar
      cls_flow: add sanity check for the packet length · 4b95c3d4
      Changli Gao authored
      The packet length should be checked before the packet data is dereferenced.
      Signed-off-by: default avatarChangli Gao <xiaosuo@gmail.com>
      Acked-by: default avatarPatrick McHardy <kaber@trash.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4b95c3d4
    • Changli Gao's avatar
      f9599ce1
    • Changli Gao's avatar
      act_nat: fix on the TX path · 36d12690
      Changli Gao authored
      On the TX path, skb->data points to the ethernet header, not the network
      header. So when validating the packet length for accessing we should
      take the ethernet header into account.
      Signed-off-by: default avatarChangli Gao <xiaosuo@gmail.com>
      Acked-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      36d12690
  2. 04 Aug, 2010 30 commits
    • Joe Perches's avatar
      c33788b4
    • Stefan Weil's avatar
      davinci_emac: Fix use after free in davinci_emac_remove · 2a1bc0d5
      Stefan Weil authored
      free_netdev finally calls kfree which makes the contents
      of ndev and priv (private data contained in ndev) invalid.
      
      So iounmap should be called before free_netdev.
      
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Chaithrika U S <chaithrika@ti.com>
      Cc: Sriramakrishnan <srk@ti.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      Cc: netdev@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Signed-off-by: default avatarStefan Weil <weil@mail.berlios.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2a1bc0d5
    • Kulikov Vasiliy's avatar
      via-velocity: do not use PCI resources before pci_enable_device() · 889635fd
      Kulikov Vasiliy authored
      IRQ and resource[] may not have correct values until
      after PCI hotplug setup occurs at pci_enable_device() time.
      
      The semantic match that finds this problem is as follows:
      
      // <smpl>
      @@
      identifier x;
      identifier request ~= "pci_request.*|pci_resource.*";
      @@
      
      (
      * x->irq
      |
      * x->resource
      |
      * request(x, ...)
      )
       ...
      *pci_enable_device(x)
      // </smpl>
      Signed-off-by: default avatarKulikov Vasiliy <segooon@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      889635fd
    • Kulikov Vasiliy's avatar
      cxgb4vf: do not use PCI resources before pci_enable_device() · 7a0c2029
      Kulikov Vasiliy authored
      IRQ and resource[] may not have correct values until
      after PCI hotplug setup occurs at pci_enable_device() time.
      
      The semantic match that finds this problem is as follows:
      
      // <smpl>
      @@
      identifier x;
      identifier request ~= "pci_request.*|pci_resource.*";
      @@
      
      (
      * x->irq
      |
      * x->resource
      |
      * request(x, ...)
      )
       ...
      *pci_enable_device(x)
      // </smpl>
      Signed-off-by: default avatarKulikov Vasiliy <segooon@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7a0c2029
    • Kulikov Vasiliy's avatar
      cxgb3: do not use PCI resources before pci_enable_device() · 7aaaaa1e
      Kulikov Vasiliy authored
      IRQ and resource[] may not have correct values until
      after PCI hotplug setup occurs at pci_enable_device() time.
      
      The semantic match that finds this problem is as follows:
      
      // <smpl>
      @@
      identifier x;
      identifier request ~= "pci_request.*|pci_resource.*";
      @@
      
      (
      * x->irq
      |
      * x->resource
      |
      * request(x, ...)
      )
       ...
      *pci_enable_device(x)
      // </smpl>
      Signed-off-by: default avatarKulikov Vasiliy <segooon@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7aaaaa1e
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial · 3cfc2c42
      Linus Torvalds authored
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits)
        Documentation: update broken web addresses.
        fix comment typo "choosed" -> "chosen"
        hostap:hostap_hw.c Fix typo in comment
        Fix spelling contorller -> controller in comments
        Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -> Fault
        fs/Kconfig: Fix typo Userpace -> Userspace
        Removing dead MACH_U300_BS26
        drivers/infiniband: Remove unnecessary casts of private_data
        fs/ocfs2: Remove unnecessary casts of private_data
        libfc: use ARRAY_SIZE
        scsi: bfa: use ARRAY_SIZE
        drm: i915: use ARRAY_SIZE
        drm: drm_edid: use ARRAY_SIZE
        synclink: use ARRAY_SIZE
        block: cciss: use ARRAY_SIZE
        comment typo fixes: charater => character
        fix comment typos concerning "challenge"
        arm: plat-spear: fix typo in kerneldoc
        reiserfs: typo comment fix
        update email address
        ...
      3cfc2c42
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 5cf65713
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (30 commits)
        Revert "HID: add support for the Wacom Intuos 4 wireless"
        HID: fix up Kconfig entry for ACRUX driver
        HID: add ACRUX game controller force feedback support
        HID: Force input registration for "VEC footpedal"
        HID: add HID_QUIRK_HIDINPUT_FORCE
        HID: hid-input.c: indentation fixes
        HID: hiddev: use usb_find_interface, get rid of BKL
        HID: ignore digitizer usage Undefined (0x00)
        HID: Add support for Conceptronic CLLRCMCE
        HID: hid-ids.h: Whitespace fixup, align using TABs
        HID: picolcd: implement refcounting of framebuffer
        HID: picolcd: do not reallocate memory on depth change
        HID: picolcd: Add minimal palette required by fbcon on 8bpp
        HID: magicmouse: Correct parsing of large X and Y motions.
        HID: magicmouse: report last touch up
        HID: picolcd: fix deferred_io init/cleanup to fb ordering
        HID: hid-ids.h: keep vendor ids in alphabetical order
        HID: add proper support for Elecom BM084 bluetooth mouse
        HID: magicmouse: enable horizontal scrolling
        HID: magicmouse: add param for scroll speed
        ...
      5cf65713
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · b7c8e55d
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (39 commits)
        random: Reorder struct entropy_store to remove padding on 64bits
        padata: update API documentation
        padata: Remove padata_get_cpumask
        crypto: pcrypt - Update pcrypt cpumask according to the padata cpumask notifier
        crypto: pcrypt - Rename pcrypt_instance
        padata: Pass the padata cpumasks to the cpumask_change_notifier chain
        padata: Rearrange set_cpumask functions
        padata: Rename padata_alloc functions
        crypto: pcrypt - Dont calulate a callback cpu on empty callback cpumask
        padata: Check for valid cpumasks
        padata: Allocate cpumask dependend recources in any case
        padata: Fix cpu index counting
        crypto: geode_aes - Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used)
        pcrypt: Added sysfs interface to pcrypt
        padata: Added sysfs primitives to padata subsystem
        padata: Make two separate cpumasks
        padata: update documentation
        padata: simplify serialization mechanism
        padata: make padata_do_parallel to return zero on success
        padata: Handle empty padata cpumasks
        ...
      b7c8e55d
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · ffd386a9
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu: allow limited allocation before slab is online
        percpu: make @dyn_size always mean min dyn_size in first chunk init functions
      ffd386a9
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 · 03da3098
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (276 commits)
        [SCSI] zfcp: Trigger logging in the FCP channel on qdio error conditions
        [SCSI] zfcp: Introduce experimental support for DIF/DIX
        [SCSI] zfcp: Enable data division support for FCP devices
        [SCSI] zfcp: Prevent access on uninitialized memory.
        [SCSI] zfcp: Post events through FC transport class
        [SCSI] zfcp: Cleanup QDIO attachment and improve processing.
        [SCSI] zfcp: Cleanup function parameters for sbal value.
        [SCSI] zfcp: Use correct width for timer_interval field
        [SCSI] zfcp: Remove SCSI device when removing unit
        [SCSI] zfcp: Use memdup_user and kstrdup
        [SCSI] zfcp: Fix retry after failed "open port" erp action
        [SCSI] zfcp: Fail erp after timeout
        [SCSI] zfcp: Use forced_reopen in terminate_rport_io callback
        [SCSI] zfcp: Register SCSI devices after successful fc_remote_port_add
        [SCSI] zfcp: Do not try "forced close" when port is already closed
        [SCSI] zfcp: Do not unblock rport from REOPEN_PORT_FORCED
        [SCSI] sd: add support for runtime PM
        [SCSI] implement runtime Power Management
        [SCSI] convert to the new PM framework
        [SCSI] Unify SAM_ and SAM_STAT_ macros
        ...
      03da3098
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 · 6ba74014
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1443 commits)
        phy/marvell: add 88ec048 support
        igb: Program MDICNFG register prior to PHY init
        e1000e: correct MAC-PHY interconnect register offset for 82579
        hso: Add new product ID
        can: Add driver for esd CAN-USB/2 device
        l2tp: fix export of header file for userspace
        can-raw: Fix skb_orphan_try handling
        Revert "net: remove zap_completion_queue"
        net: cleanup inclusion
        phy/marvell: add 88e1121 interface mode support
        u32: negative offset fix
        net: Fix a typo from "dev" to "ndev"
        igb: Use irq_synchronize per vector when using MSI-X
        ixgbevf: fix null pointer dereference due to filter being set for VLAN 0
        e1000e: Fix irq_synchronize in MSI-X case
        e1000e: register pm_qos request on hardware activation
        ip_fragment: fix subtracting PPPOE_SES_HLEN from mtu twice
        net: Add getsockopt support for TCP thin-streams
        cxgb4: update driver version
        cxgb4: add new PCI IDs
        ...
      
      Manually fix up conflicts in:
       - drivers/net/e1000e/netdev.c: due to pm_qos registration
         infrastructure changes
       - drivers/net/phy/marvell.c: conflict between adding 88ec048 support
         and cleaning up the IDs
       - drivers/net/wireless/ipw2x00/ipw2100.c: trivial ipw2100_pm_qos_req
         conflict (registration change vs marking it static)
      6ba74014
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft-2.6 · 5abd9ccc
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft-2.6:
        ibft: Use IBFT_SIGN instead of open-coding the search string.
        ibft: convert iscsi_ibft module to iscsi boot lib
        ibft: separate ibft parsing from sysfs interface
        ibft: For UEFI machines actually do scan ACPI for iBFT.
        ibft: Update iBFT handling for v1.03 of the spec.
      5abd9ccc
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · d5fc1d51
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        amd64_edac: Minor formatting fix
        amd64_edac: Fix operator precendence error
        edac, mc: Improve scrub rate handling
        amd64_edac: Correct scrub rate setting
        amd64_edac: Fix DCT base address selector
        amd64_edac: Remove polling mechanism
        x86, mce: Notify about corrected events too
        amd64_edac: Remove unneeded defines
        edac: Remove EDAC_DEBUG_VERBOSE
        amd64_edac: Sanitize syndrome extraction
      d5fc1d51
    • David Howells's avatar
      CRED: Fix RCU warning due to previous patch fixing __task_cred()'s checks · 694f690d
      David Howells authored
      Commit 8f92054e ("CRED: Fix __task_cred()'s lockdep check and banner
      comment") fixed the lockdep checks on __task_cred().  This has shown up
      a place in the signalling code where a lock should be held - namely that
      check_kill_permission() requires its callers to hold the RCU lock.
      
      Fix group_send_sig_info() to get the RCU read lock around its call to
      check_kill_permission().
      
      Without this patch, the following warning can occur:
      
        ===================================================
        [ INFO: suspicious rcu_dereference_check() usage. ]
        ---------------------------------------------------
        kernel/signal.c:660 invoked rcu_dereference_check() without protection!
        ...
      Reported-by: default avatarTetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Acked-by: default avatarOleg Nesterov <oleg@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      694f690d
    • Tejun Heo's avatar
      block_dev: always serialize exclusive open attempts · e75aa858
      Tejun Heo authored
      bd_prepare_to_claim() incorrectly allowed multiple attempts for
      exclusive open to progress in parallel if the attempting holders are
      identical.  This triggered BUG_ON() as reported in the following bug.
      
        https://bugzilla.kernel.org/show_bug.cgi?id=16393
      
      __bd_abort_claiming() is used to finish claiming blocks and doesn't
      work if multiple openers are inside a claiming block.  Allowing
      multiple parallel open attempts to continue doesn't gain anything as
      those are serialized down in the call chain anyway.  Fix it by always
      allowing only single open attempt in a claiming block.
      
      This problem can easily be reproduced by adding a delay after
      bd_prepare_to_claim() and attempting to mount two partitions of a
      disk.
      
      stable: only applicable to v2.6.35
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Reported-by: default avatarMarkus Trippelsdorf <markus@trippelsdorf.de>
      Cc: stable@kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      e75aa858
    • Kyle McMartin's avatar
      parisc: pass through '\t' to early (iodc) console · d9b68e5e
      Kyle McMartin authored
      The firmware handles '\t' internally, so stop trying to emulate it
      (which, incidentally, had a bug in it.)
      
      Fixes a really weird hang at bootup in rcu_bootup_announce, which,
      as far as I can tell, is the first printk in the core kernel to use
      a tab as the first character.
      
      Cc: stable@kernel.org
      Signed-off-by: default avatarKyle McMartin <kyle@parisc-linux.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d9b68e5e
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 · f46e9913
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:
        PM / Runtime: Add runtime PM statistics (v3)
        PM / Runtime: Make runtime_status attribute not debug-only (v. 2)
        PM: Do not use dynamically allocated objects in pm_wakeup_event()
        PM / Suspend: Fix ordering of calls in suspend error paths
        PM / Hibernate: Fix snapshot error code path
        PM / Hibernate: Fix hibernation_platform_enter()
        pm_qos: Get rid of the allocation in pm_qos_add_request()
        pm_qos: Reimplement using plists
        plist: Add plist_last
        PM: Make it possible to avoid races between wakeup and system sleep
        PNPACPI: Add support for remote wakeup
        PM: describe kernel policy regarding wakeup defaults (v. 2)
        PM / Hibernate: Fix typos in comments in kernel/power/swap.c
      f46e9913
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq · 8d91530c
      Linus Torvalds authored
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:
        [CPUFREQ] Remove pointless printk from p4-clockmod.
        [CPUFREQ] Fix section mismatch for powernow_cpu_init in powernow-k7.c
        [CPUFREQ] Fix section mismatch for longhaul_cpu_init.
        [CPUFREQ] Fix section mismatch for longrun_cpu_init.
        [CPUFREQ] powernow-k8: Fix misleading variable naming
        [CPUFREQ] Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used)
        [CPUFREQ] arch/x86/kernel/cpu/cpufreq: use for_each_pci_dev()
        [CPUFREQ] fix brace coding style issue.
        [CPUFREQ] x86 cpufreq: Make trace_power_frequency cpufreq driver independent
        [CPUFREQ] acpi-cpufreq: Fix CPU_ANY CPUFREQ_{PRE,POST}CHANGE notification
        [CPUFREQ] ondemand: don't synchronize sample rate unless multiple cpus present
        [CPUFREQ] unexport (un)lock_policy_rwsem* functions
        [CPUFREQ] ondemand: Refactor frequency increase code
        [CPUFREQ] powernow-k8: On load failure, remind the user to enable support in BIOS setup
        [CPUFREQ] powernow-k8: Limit Pstate transition latency check
        [CPUFREQ] Fix PCC driver error path
        [CPUFREQ] fix double freeing in error path of pcc-cpufreq
        [CPUFREQ] pcc driver should check for pcch method before calling _OSC
        [CPUFREQ] fix memory leak in cpufreq_add_dev
        [CPUFREQ] revert "[CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call (second call site)"
      
      Manually fix up non-data merge conflict introduced by new calling
      conventions for trace_power_start() in commit 6f4f2723 ("x86
      cpufreq: Make trace_power_frequency cpufreq driver independent"), which
      didn't update the intel_idle native hardware cpuidle driver.
      8d91530c
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of... · c145307a
      Linus Torvalds authored
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: (88 commits)
        ips driver: make it less chatty
        intel_scu_ipc: fix size field for intel_scu_ipc_command
        intel_scu_ipc: return -EIO for error condition in busy_loop
        intel_scu_ipc: fix data packing of PMIC command on Moorestown
        Clean up command packing on MRST.
        zero the stack buffer before giving random garbage to the SCU
        Fix stack buffer size for IPC writev messages
        intel_scu_ipc: Use the new cpu identification function
        intel_scu_ipc: tidy up unused bits
        Remove indirect read write api support.
        intel_scu_ipc: Support Medfield processors
        intel_scu_ipc: detect CPU type automatically
        x86 plat: limit x86 platform driver menu to X86
        acpi ec_sys: Be more cautious about ec write access
        acpi ec: Fix possible double io port registration
        hp-wmi: acpi_drivers.h is already included through acpi.h two lines below
        hp-wmi: Fix mixing up of and/or directive
        dell-laptop: make dell_laptop_i8042_filter() static
        asus-laptop: fix asus_input_init error path
        msi-wmi: make needlessly global symbols static
        ...
      c145307a
    • Linus Torvalds's avatar
      Merge branch 'kvm-updates/2.6.36' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 5e83f6fb
      Linus Torvalds authored
      * 'kvm-updates/2.6.36' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (198 commits)
        KVM: VMX: Fix host GDT.LIMIT corruption
        KVM: MMU: using __xchg_spte more smarter
        KVM: MMU: cleanup spte set and accssed/dirty tracking
        KVM: MMU: don't atomicly set spte if it's not present
        KVM: MMU: fix page dirty tracking lost while sync page
        KVM: MMU: fix broken page accessed tracking with ept enabled
        KVM: MMU: add missing reserved bits check in speculative path
        KVM: MMU: fix mmu notifier invalidate handler for huge spte
        KVM: x86 emulator: fix xchg instruction emulation
        KVM: x86: Call mask notifiers from pic
        KVM: x86: never re-execute instruction with enabled tdp
        KVM: Document KVM_GET_SUPPORTED_CPUID2 ioctl
        KVM: x86: emulator: inc/dec can have lock prefix
        KVM: MMU: Eliminate redundant temporaries in FNAME(fetch)
        KVM: MMU: Validate all gptes during fetch, not just those used for new pages
        KVM: MMU: Simplify spte fetch() function
        KVM: MMU: Add gpte_valid() helper
        KVM: MMU: Add validate_direct_spte() helper
        KVM: MMU: Add drop_large_spte() helper
        KVM: MMU: Use __set_spte to link shadow pages
        ...
      5e83f6fb
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · fe445c6e
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (57 commits)
        Input: adp5588-keypad - fix NULL dereference in adp5588_gpio_add()
        Input: cy8ctmg110 - capacitive touchscreen support
        Input: keyboard - also match braille-only keyboards
        Input: adp5588-keys - export unused GPIO pins
        Input: xpad - add product ID for Hori Fighting Stick EX2
        Input: adxl34x - fix leak and use after free
        Input: samsung-keypad - Add samsung keypad driver
        Input: i8042 - reset keyboard controller wehen resuming from S2R
        Input: synaptics - set min/max for finger width
        Input: synaptics - only report width on hardware that supports it
        Input: evdev - signal that device is writable in evdev_poll()
        Input: mousedev - signal that device is writable in mousedev_poll()
        Input: change input handlers to use bool when possible
        Input: document the MT event slot protocol
        Input: introduce MT event slots
        Input: usbtouchscreen - implement reset_resume
        Input: usbtouchscreen - implement runtime power management
        Input: usbtouchscreen - implement basic suspend/resume
        Input: Add ATMEL QT602240 touchscreen driver
        Input: fix signedness warning in input_set_keycode()
        ...
      fe445c6e
    • Linus Torvalds's avatar
      Merge branch 'v4l_for_2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 · f63b759c
      Linus Torvalds authored
      * 'v4l_for_2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (243 commits)
        V4L/DVB: sms: Convert IR support to use the Remote Controller core
        V4L/DVB: sms: properly initialize IR phys and IR name
        V4L/DVB: standardize names at rc-dib0700 tables
        V4L/DVB: smsusb: enable IR port for Hauppauge WinTV MiniStick
        V4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5
        V4L/DVB: dib0700: properly implement IR change_protocol
        V4L/DVB: dib0700: break keytable into NEC and RC-5 variants
        V4L/DVB: dib0700: avoid bad repeat
        V4L/DVB: Port dib0700 to rc-core
        V4L/DVB: Add a keymap file with dib0700 table
        V4L/DVB: dvb-usb: add support for rc-core mode
        V4L/DVB: dvb-usb: prepare drivers for using rc-core
        V4L/DVB: dvb-usb: get rid of struct dvb_usb_rc_key
        V4L/DVB: rj54n1cb0c: fix a comment in the driver
        V4L/DVB: V4L2: sh_vou: VOU does support the full PAL resolution too
        V4L/DVB: V4L2: sh_mobile_camera_ceu: add support for CSI2
        V4L/DVB: V4L2: soc-camera: add a MIPI CSI-2 driver for SH-Mobile platforms
        V4L/DVB: V4L2: soc-camera: export soc-camera bus type for notifications
        V4L/DVB: V4L2: mediabus: add 12-bit Bayer and YUV420 pixel formats
        V4L/DVB: mediabus: fix ambiguous pixel code names
        ...
      f63b759c
    • Linus Torvalds's avatar
      Merge branch 'stable/swiotlb-0.8.3' of... · 4a35cee0
      Linus Torvalds authored
      Merge branch 'stable/swiotlb-0.8.3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6
      
      * 'stable/swiotlb-0.8.3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6:
        swiotlb: Make swiotlb bookkeeping functions visible in the header file.
        swiotlb: search and replace "int dir" with "enum dma_data_direction dir"
        swiotlb: Make internal bookkeeping functions have 'swiotlb_tbl' prefix.
        swiotlb: add the swiotlb initialization function with iotlb memory
        swiotlb: add swiotlb_tbl_map_single library function
      4a35cee0
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of... · 7e688095
      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: (90 commits)
        AppArmor: fix build warnings for non-const use of get_task_cred
        selinux: convert the policy type_attr_map to flex_array
        AppArmor: Enable configuring and building of the AppArmor security module
        TOMOYO: Use pathname specified by policy rather than execve()
        AppArmor: update path_truncate method to latest version
        AppArmor: core policy routines
        AppArmor: policy routines for loading and unpacking policy
        AppArmor: mediation of non file objects
        AppArmor: LSM interface, and security module initialization
        AppArmor: Enable configuring and building of the AppArmor security module
        AppArmor: update Maintainer and Documentation
        AppArmor: functions for domain transitions
        AppArmor: file enforcement routines
        AppArmor: userspace interfaces
        AppArmor: dfa match engine
        AppArmor: contexts used in attaching policy to system objects
        AppArmor: basic auditing infrastructure.
        AppArmor: misc. base functions and defines
        TOMOYO: Update version to 2.3.0
        TOMOYO: Fix quota check.
        ...
      7e688095
    • Jiri Kosina's avatar
      Merge branch 'bkl' into for-linus · 9f17d516
      Jiri Kosina authored
      9f17d516
    • Jiri Kosina's avatar
      Merge branches 'magicmouse', 'roccat' and 'vec-pedal' into for-linus · ada8c797
      Jiri Kosina authored
      Conflicts:
      	drivers/hid/hid-ids.h
      ada8c797
    • Jiri Kosina's avatar
      Merge branch 'acrux' into for-linus · 35d03a0d
      Jiri Kosina authored
      Conflicts:
      	drivers/hid/hid-ids.h
      35d03a0d
    • Jiri Kosina's avatar
      Merge branch 'upstream-fixes' into for-linus · 9929ffed
      Jiri Kosina authored
      Conflicts:
      	drivers/hid/hid-ids.h
      9929ffed
    • Jiri Kosina's avatar
      Merge branch 'upstream' into for-linus · fc73697b
      Jiri Kosina authored
      Conflicts:
      	drivers/hid/hid-ids.h
      fc73697b
    • Justin P. Mattock's avatar
      Documentation: update broken web addresses. · 0ea6e611
      Justin P. Mattock authored
      Below you will find an updated version from the original series bunching all patches into one big patch
      updating broken web addresses that are located in Documentation/*
      Some of the addresses date as far far back as 1995 etc... so searching became a bit difficult,
      the best way to deal with these is to use web.archive.org to locate these addresses that are outdated.
      Now there are also some addresses pointing to .spec files some are located, but some(after searching
      on the companies site)where still no where to be found. In this case I just changed the address
      to the company site this way the users can contact the company and they can locate them for the users.
      Signed-off-by: default avatarJustin P. Mattock <justinmattock@gmail.com>
      Signed-off-by: default avatarThomas Weber <weber@corscience.de>
      Signed-off-by: default avatarMike Frysinger <vapier.adi@gmail.com>
      Cc: Paulo Marques <pmarques@grupopie.com>
      Cc: Randy Dunlap <rdunlap@xenotime.net>
      Cc: Michael Neuling <mikey@neuling.org>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      0ea6e611