1. 11 9月, 2013 6 次提交
  2. 10 9月, 2013 1 次提交
  3. 09 9月, 2013 1 次提交
    • A
      virtio_pci: pm: Use CONFIG_PM_SLEEP instead of CONFIG_PM · 9e266ece
      Aaron Lu 提交于
      The virtio_pci_freeze/restore are defined under CONFIG_PM but is used
      by SET_SYSTEM_SLEEP_PM_OPS macro, which is defined under
      CONFIG_PM_SLEEP. So if CONFIG_PM_SLEEP is not cofigured but
      CONFIG_PM_RUNTIME is, the following warning message appeared:
      
      drivers/virtio/virtio_pci.c:770:12: warning: ‘virtio_pci_freeze’ defined but not used [-Wunused-function]
       static int virtio_pci_freeze(struct device *dev)
                  ^
      drivers/virtio/virtio_pci.c:790:12: warning: ‘virtio_pci_restore’ defined but not used [-Wunused-function]
       static int virtio_pci_restore(struct device *dev)
                  ^
      Fix it by changing CONFIG_PM to CONFIG_PM_SLEEP.
      Signed-off-by: NAaron Lu <aaron.lu@intel.com>
      Reviewed-by: NAmit Shah <amit.shah@redhat.com>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      9e266ece
  4. 08 9月, 2013 1 次提交
  5. 07 9月, 2013 4 次提交
  6. 06 9月, 2013 27 次提交
    • G
      hwmon: (emc6w201) Do not declare enum variable · 94e44413
      Guenter Roeck 提交于
      Fix the following smatch warning:
      
      emc6w201.c:52:26: warning: symbol 'subfeature' was not declared.
      Should it be static?
      
      'enum { } subtype' declares an enum as (global) variable which we don't want.
      Signed-off-by: NGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      94e44413
    • S
      hwmon: (w83792d) Update module author · f85b5205
      Shane Huang 提交于
      w83792d was written by me in 2004, I'd like to update my first name
      into my current one to keep consistent, and delete invalid address.
      Signed-off-by: NShane Huang <shane.huang@amd.com>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      f85b5205
    • O
      net: stmmac: fix bad merge conflict resolution · 356f9e74
      Olof Johansson 提交于
      Merge commit 06c54055 did a bad conflict resolution accidentally
      leaving out a closing brace.  Add it back.
      
      This breaks a handful of defconfigs on ARM, so it'd be good to see it
      applied pretty quickly.
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      Cc: David S. Miller <davem@davemloft.net>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      356f9e74
    • R
      lguest: fix guest kernel stack overflow when TF bit set. · 98fb4e5e
      Rusty Russell 提交于
      The symptoms are that running gdb on a binary causes the guest to
      overflow the kernels stack (after some period of time), resulting in
      it finally being killed with a "Bad address" message.
      Reported-by: NSakari Ailus <sakari.ailus@iki.fi>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      98fb4e5e
    • R
      lguest: fix BUG_ON() in invalid guest page table. · 4623c28e
      Rusty Russell 提交于
      If we discover the entry is invalid, we kill the guest, but we must
      avoid calling gpte_addr() on the invalid pmd, otherwise:
      
      	kernel BUG at drivers/lguest/page_tables.c:157!
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      4623c28e
    • J
      ide: sgiioc4: Staticize ioc4_ide_attach_one() · 64110c16
      Jingoo Han 提交于
      ioc4_ide_attach_one() is used only in this file.
      Fix the following sparse warnings:
      
      drivers/ide/sgiioc4.c:603:5: warning: symbol 'ioc4_ide_attach_one' was not declared. Should it be static?
      Signed-off-by: NJingoo Han <jg1.han@samsung.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      64110c16
    • J
      ide: palm_bk3710: add missing __iomem annotation · 70ddce83
      Jingoo Han 提交于
      Added missing __iomem annotation in order to fix the following
      sparse warnings:
      
      drivers/ide/palm_bk3710.c:194:31: warning: incorrect type in initializer (different address spaces)
      drivers/ide/palm_bk3710.c:194:31:    expected void [noderef] <asn:2>*base
      drivers/ide/palm_bk3710.c:194:31:    got void *<noident>
      drivers/ide/palm_bk3710.c:212:31: warning: incorrect type in initializer (different address spaces)
      drivers/ide/palm_bk3710.c:212:31:    expected void [noderef] <asn:2>*base
      drivers/ide/palm_bk3710.c:212:31:    got void *<noident>
      Signed-off-by: NJingoo Han <jg1.han@samsung.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      70ddce83
    • J
      ide: use dev_get_platdata() · 7b6b5612
      Jingoo Han 提交于
      Use the wrapper function for retrieving the platform data instead of
      accessing dev->platform_data directly.
      Signed-off-by: NJingoo Han <jg1.han@samsung.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7b6b5612
    • X
      6fcf0497
    • J
      ide: replace strict_strtol() with kstrtol() · 79c8fa0b
      Jingoo Han 提交于
      The usage of strict_strtol() is not preferred, because
      strict_strtol() is obsolete. Thus, kstrtol() should be
      used.
      Signed-off-by: NJingoo Han <jg1.han@samsung.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      79c8fa0b
    • D
      bnx2x: Add missing braces in bnx2x:bnx2x_link_initialize · c0a77ec7
      Dave Jones 提交于
      The indentation here implies that the intent was for this to be a multiline if.
      Introduced a few years ago in commit ec146a6f ("bnx2x: Modify XGXS functions")
      Signed-off-by: NDave Jones <davej@fedoraproject.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c0a77ec7
    • P
      vxlan: Fix kernel panic on device delete. · f011baf9
      Pravin B Shelar 提交于
      On vxlan device create if socket create fails vxlan device is not
      added to hash table. Therefore we need to check if device
      is in hashtable before we delete it from hlist.
      Following patch avoid the crash. net-next already has this fix.
      
      ---8<---
      BUG: unable to handle kernel NULL pointer dereference at           (null)
      IP: [<ffffffffa05f9ca7>] vxlan_dellink+0x77/0xf0 [vxlan]
      PGD 42b2d9067 PUD 42e04c067 PMD 0
      Oops: 0002 [#1] SMP
      Modules linked in: vxlan(-)
      Hardware name: Dell Inc. PowerEdge R620/0KCKR5, BIOS 1.4.8 10/25/2012
      task: ffff88042ecf8760 ti: ffff88042f106000 task.ti: ffff88042f106000
      RIP: 0010:[<ffffffffa05f9ca7>]  [<ffffffffa05f9ca7>]
      vxlan_dellink+0x77/0xf0 [vxlan]
      RSP: 0018:ffff88042f107e28  EFLAGS: 00010246
      RAX: 0000000000000000 RBX: ffff88082af08000 RCX: ffff88083fd80000
      RDX: 0000000000000000 RSI: ffff88042f107e58 RDI: ffff88042e12f810
      RBP: ffff88042f107e48 R08: ffffffff8166eca0 R09: 0000000000000000
      R10: 0000000000000001 R11: 0000000000000000 R12: ffff88082af087c0
      R13: ffff88042e12f000 R14: ffff88042f107e58 R15: ffff88042f107e58
      FS:  00007f4ed2de7700(0000) GS:ffff88043fc80000(0000)
      knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 0000000000000000 CR3: 000000042e076000 CR4: 00000000000407e0
      Stack:
       ffff88082af08000 ffffffff81654848 ffffffffa05fb4e0 ffffffff81654780
       ffff88042f107e98 ffffffff813b9c7a ffff88042f107e58 ffff88042f107e58
       ffff88042f107e88 ffffffffa05fb4e0 ffffffffa05fb780 ffff88042f107f18
      Call Trace:
       [<ffffffff813b9c7a>] __rtnl_link_unregister+0xca/0xd0
       [<ffffffff813bb0e9>] rtnl_link_unregister+0x19/0x30
       [<ffffffffa05faa4c>] vxlan_cleanup_module+0x10/0x2f [vxlan]
       [<ffffffff81099fef>] SyS_delete_module+0x1cf/0x2c0
       [<ffffffff8146c069>] ? do_page_fault+0x9/0x10
       [<ffffffff8146f012>] system_call_fastpath+0x16/0x1b
      Code: 4d 85 ed 0f 84 95 00 00 00 4c 8d a7 c0 07 00 00 49 8d bd 10 08 00
      00 e8 28 e8 e6 e0 48 8b 83 c0 07 00 00 49 8b 54 24 08 48 85 c0 <48> 89
      02 74 04 48 89 50 08 49 b8 00 02 20 00 00 00 ad de 4d 89
      RIP  [<ffffffffa05f9ca7>] vxlan_dellink+0x77/0xf0 [vxlan]
       RSP <ffff88042f107e28>
      CR2: 0000000000000000
      Signed-off-by: NPravin B Shelar <pshelar@nicira.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f011baf9
    • T
      net: mvneta: implement ->ndo_do_ioctl() to support PHY ioctls · 15f59456
      Thomas Petazzoni 提交于
      This commit implements the ->ndo_do_ioctl() operation so that the
      PHY-related ioctl() calls can work from userspace, which allows
      applications like mii-tool or mii-diag to do their job.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Tested-by: NGregory CLEMENT <gregory.clement@free-electrons.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      15f59456
    • T
      net: mvneta: properly disable HW PHY polling and ensure adjust_link() works · 71408602
      Thomas Petazzoni 提交于
      This commit fixes a long-standing bug that has been reported by many
      users: on some Armada 370 platforms, only the network interface that
      has been used in U-Boot to tftp the kernel works properly in
      Linux. The other network interfaces can see a 'link up', but are
      unable to transmit data. The reports were generally made on the Armada
      370-based Mirabox, but have also been given on the Armada 370-RD
      board.
      
      The network MAC in the Armada 370/XP (supported by the mvneta driver
      in Linux) has a functionality that allows it to continuously poll the
      PHY and directly update the MAC configuration accordingly (speed,
      duplex, etc.). The very first versions of the driver submitted for
      review were using this hardware mechanism, but due to this, the driver
      was not integrated with the kernel phylib. Following reviews, the
      driver was changed to use the phylib, and therefore a software based
      polling. In software based polling, Linux regularly talks to the PHY
      over the MDIO bus, and sees if the link status has changed. If it's
      the case then the adjust_link() callback of the driver is called to
      update the MAC configuration accordingly.
      
      However, it turns out that the adjust_link() callback was not
      configuring the hardware in a completely correct way: while it was
      setting the speed and duplex bits correctly, it wasn't telling the
      hardware to actually take into account those bits rather than what the
      hardware-based PHY polling mechanism has concluded. So, in fact the
      adjust_link() callback was basically a no-op.
      
      However, the network happened to be working because on the network
      interfaces used by U-Boot for tftp on Armada 370 platforms because the
      hardware PHY polling was enabled by the bootloader, and left enabled
      by Linux. However, the second network interface not used for tftp (or
      both network interfaces if the kernel is loaded from USB, NAND or SD
      card) didn't had the hardware PHY polling enabled.
      
      This patch fixes this situation by:
      
       (1) Making sure that the hardware PHY polling is disabled by clearing
           the MVNETA_PHY_POLLING_ENABLE bit in the MVNETA_UNIT_CONTROL
           register in the driver ->probe() function.
      
       (2) Making sure that the duplex and speed selections made by the
           adjust_link() callback are taken into account by clearing the
           MVNETA_GMAC_AN_SPEED_EN and MVNETA_GMAC_AN_DUPLEX_EN bits in the
           MVNETA_GMAC_AUTONEG_CONFIG register.
      
      This patch has been tested on Armada 370 Mirabox, and now both network
      interfaces are usable after boot.
      
      [ Problem introduced by commit c5aff182 ("net: mvneta: driver for
        Marvell Armada 370/XP network unit") ]
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Cc: Willy Tarreau <w@1wt.eu>
      Cc: Jochen De Smet <jochen.armkernel@leahnim.org>
      Cc: Peter Sanford <psanford@nearbuy.io>
      Cc: Ethan Tuttle <ethan@ethantuttle.com>
      Cc: Chény Yves-Gael <yves@cheny.fr>
      Cc: Ryan Press <ryan@presslab.us>
      Cc: Simon Guinot <simon.guinot@sequanux.org>
      Cc: vdonnefort@lacie.com
      Cc: stable@vger.kernel.org
      Acked-by: NJason Cooper <jason@lakedaemon.net>
      Tested-by: NVincent Donnefort <vdonnefort@gmail.com>
      Tested-by: NYves-Gael Cheny <yves@cheny.fr>
      Tested-by: NGregory CLEMENT <gregory.clement@free-electrons.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      71408602
    • J
      icplus: Use netif_running to determine device state · dfafb73f
      Jon Mason 提交于
      Remove the __LINK_STATE_START check to verify the device is running, in
      favor of netif_running().  netif_running() performs the same check of
      __LINK_STATE_START, so the code should behave the same.
      Signed-off-by: NJon Mason <jdmason@kudzu.us>
      Cc: Francois Romieu <romieu@fr.zoreil.com>
      Cc: Sorbica Shieh <sorbica@icplus.com.tw>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      dfafb73f
    • V
      ethernet/arc/arc_emac: Fix huge delays in large file copies · 27082ee1
      Vineet Gupta 提交于
      copying large files to a NFS mounted host was taking absurdly large
      time.
      
      Turns out that TX BD reclaim had a sublte bug.
      
      Loop starts off from @txbd_dirty cursor and stops when it hits a BD
      still in use by controller. However when it stops it needs to keep the
      cursor at that very BD to resume scanning in next iteration. However it
      was erroneously incrementing the cursor, causing the next scan(s) to
      fail too, unless the BD chain was completely drained out.
      
      [ARCLinux]$ ls -l -sh /disk/log.txt
       17976 -rw-r--r--    1 root     root       17.5M Sep  /disk/log.txt
      
      ========== Before =====================
      [ARCLinux]$ time cp /disk/log.txt /mnt/.
      real    31m 7.95s
      user    0m 0.00s
      sys     0m 0.10s
      
      ========== After =====================
      [ARCLinux]$ time cp /disk/log.txt /mnt/.
      real    0m 24.33s
      user    0m 0.00s
      sys     0m 0.19s
      Signed-off-by: NVineet Gupta <vgupta@synopsys.com>
      Cc: Alexey Brodkin <abrodkin@synopsys.com> (commit_signer:3/4=75%)
      Cc: "David S. Miller" <davem@davemloft.net> (commit_signer:3/4=75%)
      Cc: netdev@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: arc-linux-dev@synopsys.com
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      27082ee1
    • Y
      ntb: clean up unnecessary MSI/MSI-X capability find · 73f47cad
      Yijing Wang 提交于
      PCI core will initialize device MSI/MSI-X capability in
      pci_msi_init_pci_dev(). So device driver should use
      pci_dev->msi_cap/msix_cap to determine whether the device
      support MSI/MSI-X instead of using
      pci_find_capability(pci_dev, PCI_CAP_ID_MSI/MSIX).
      Access to PCIe device config space again will consume more time.
      Signed-off-by: NYijing Wang <wangyijing@huawei.com>
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      73f47cad
    • J
      NTB: Update Version · db3bb3f0
      Jon Mason 提交于
      Update NTB version to 1.0
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      db3bb3f0
    • J
      NTB: Comment Fix · f9a2cf89
      Jon Mason 提交于
      Add "data" ntb_register_db_callback parameter description comment and
      correct poor spelling.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      f9a2cf89
    • J
      NTB: Remove unused variable · 3daa3a07
      Jon Mason 提交于
      Remove unused pci_dev variable from ntb_transport_free()
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      3daa3a07
    • J
      NTB: Remove References of non-B2B BWD HW · b1ef0043
      Jon Mason 提交于
      NTB-RP is not a supported configuration on BWD hardware.  Remove the
      code attempting to set it up.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      b1ef0043
    • J
      NTB: NTB-RP support · ed6c24ed
      Jon Mason 提交于
      Add support for Non-Transparent Bridge connected to a PCI-E Root Port on
      the remote system (also known as NTB-RP mode).  This allows for a NTB
      enabled system to be connected to a non-NTB enabled system/slot.
      
      Modifications to the registers and BARs/MWs on the Secondary side by the
      remote system are reflected into registers on the Primary side for the
      local system.  Similarly, modifications of registers and BARs/MWs on
      Primary side by the local system are reflected into registers on the
      Secondary side for the Remote System.  This allows communication between
      the 2 sides via these registers and BARs/MWs.
      
      Note: there is not a fix for the Xeon Errata (that was already worked
      around in NTB-B2B mode) for NTB-RP mode.  Due to this limitation, NTB-RP
      will not work on the Secondary side with the Xeon Errata workaround
      enabled.  To get around this, disable the workaround via the
      xeon_errata_workaround=0 modparm.  However, this can cause the hang
      described in the errata.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      ed6c24ed
    • J
      NTB: Rename Variables for NTB-RP · 49793889
      Jon Mason 提交于
      Many variable names in the NTB driver refer to the primary or secondary
      side.  However, these variables will be used to access the reverse case
      when in NTB-RP mode.  Make these names more generic in anticipation of
      NTB-RP support.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      49793889
    • J
      NTB: Use DMA Engine to Transmit and Receive · 282a2fee
      Jon Mason 提交于
      Allocate and use a DMA engine channel to transmit and receive data over
      NTB.  If none is allocated, fall back to using the CPU to transfer data.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      Reviewed-by: NDan Williams <dan.j.williams@intel.com>
      Reviewed-by: NDave Jiang <dave.jiang@intel.com>
      282a2fee
    • J
      tuntap: orphan frags before trying to set tx timestamp · 7bf66305
      Jason Wang 提交于
      sock_tx_timestamp() will clear all zerocopy flags of skb which may lead the
      frags never to be orphaned. This will break guest to guest traffic when zerocopy
      is enabled. Fix this by orphaning the frags before trying to set tx time stamp.
      
      The issue were introduced by commit eda29772
      (tun: Support software transmit time stamping).
      
      Cc: Richard Cochran <richardcochran@gmail.com>
      Cc: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Acked-by: NRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7bf66305
    • J
      tuntap: purge socket error queue on detach · 4bfb0513
      Jason Wang 提交于
      Commit eda29772
      (tun: Support software transmit time stamping) will queue skbs into error queue
      when tx stamping is enabled. But it forgets to purge the error queue during
      detach. This patch fixes this.
      
      Cc: Richard Cochran <richardcochran@gmail.com>
      Acked-by: NRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4bfb0513
    • M
      qlcnic: use standard NAPI weights · df95fc44
      Michal Schmidt 提交于
      Since commit 82dc3c63 ("net: introduce NAPI_POLL_WEIGHT")
      netif_napi_add() produces an error message if a NAPI poll weight
      greater than 64 is requested.
      
      qlcnic requests the weight as large as 256 for some of its rings, and
      smaller values for other rings. For instance in qlcnic_82xx_napi_add()
      I think the intention was to give the tx+rx ring a bigger weight than
      to rx-only rings, but it's actually doing the opposite. So I'm assuming
      the weights do not really matter much.
      
      Just use the standard NAPI weights for all rings.
      Signed-off-by: NMichal Schmidt <mschmidt@redhat.com>
      Acked-by: NHimanshu Madhani <himanshu.madhani@qlogic.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      df95fc44