1. 18 4月, 2014 1 次提交
    • B
      ipmi: Fix a race restarting the timer · 48e8ac29
      Bodo Stroesser 提交于
      With recent changes it is possible for the timer handler to detect an
      idle interface and not start the timer, but the thread to start an
      operation at the same time.  The thread will not start the timer in that
      instance, resulting in the timer not running.
      
      Instead, move all timer operations under the lock and start the timer in
      the thread if it detect non-idle and the timer is not already running.
      Moving under locks allows the last timeout to be set in both the thread
      and the timer.  'Timer is not running' means that the timer is not
      pending and smi_timeout() is not running.  So we need a flag to detect
      this correctly.
      
      Also fix a few other timeout bugs: setting the last timeout when the
      interrupt has to be disabled and the timer started, and setting the last
      timeout in check_start_timer_thread possibly racing with the timer
      Signed-off-by: NCorey Minyard <cminyard@mvista.com>
      Signed-off-by: NBodo Stroesser <bstroesser@ts.fujitsu.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      48e8ac29
  2. 08 2月, 2014 1 次提交
    • P
      drivers/char: delete non-required instances of include <linux/init.h> · 4c020b03
      Paul Gortmaker 提交于
      None of these files are actually using any __init type directives
      and hence don't need to include <linux/init.h>.  Most are just a
      left over from __devinit and __cpuinit removal, or simply due to
      code getting copied from one driver to the next.
      
      Cc: David Airlie <airlied@linux.ie>
      Cc: Matt Mackall <mpm@selenic.com>
      Cc: Herbert Xu <herbert@gondor.apana.org.au>
      Cc: Kukjin Kim <kgene.kim@samsung.com>
      Cc: Corey Minyard <minyard@acm.org>
      Cc: Chris Metcalf <cmetcalf@tilera.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Peter Huewe <peterhuewe@gmx.de>
      Cc: Ashley Lai <ashley@ashleylai.com>
      Cc: Marcel Selhorst <tpmdd@selhorst.net>
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      4c020b03
  3. 31 1月, 2014 1 次提交
  4. 26 1月, 2014 3 次提交
  5. 05 9月, 2013 2 次提交
  6. 17 5月, 2013 1 次提交
  7. 10 4月, 2013 1 次提交
    • A
      procfs: new helper - PDE_DATA(inode) · d9dda78b
      Al Viro 提交于
      The only part of proc_dir_entry the code outside of fs/proc
      really cares about is PDE(inode)->data.  Provide a helper
      for that; static inline for now, eventually will be moved
      to fs/proc, along with the knowledge of struct proc_dir_entry
      layout.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      d9dda78b
  8. 28 2月, 2013 2 次提交
  9. 04 1月, 2013 1 次提交
    • G
      Drivers: char: remove __dev* attributes. · bcd2982a
      Greg Kroah-Hartman 提交于
      CONFIG_HOTPLUG is going away as an option.  As a result, the __dev*
      markings need to be removed.
      
      This change removes the use of __devinit, __devexit_p, __devinitdata,
      __devinitconst, and __devexit from these drivers.
      
      Based on patches originally written by Bill Pemberton, but redone by me
      in order to handle some of the coding style issues better, by hand.
      
      Cc: Bill Pemberton <wfp5p@virginia.edu>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Matt Mackall <mpm@selenic.com>
      Cc: Herbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      bcd2982a
  10. 22 11月, 2012 3 次提交
    • B
      char: remove use of __devexit · 39af33fc
      Bill Pemberton 提交于
      CONFIG_HOTPLUG is going away as an option so __devexit is no
      longer needed.
      Signed-off-by: NBill Pemberton <wfp5p@virginia.edu>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Olof Johansson <olof@lixom.net>
      Cc: Mattia Dongili <malattia@linux.it>
      Cc: Kent Yoder <key@linux.vnet.ibm.com>
      Cc: Rajiv Andrade <mail@srajiv.net>
      Cc: Marcel Selhorst <tpmdd@selhorst.net>
      Cc: Sirrix AG <tpmdd@sirrix.com>
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: openipmi-developer@lists.sourceforge.net
      Cc: platform-driver-x86@vger.kernel.org
      Cc: tpmdd-devel@lists.sourceforge.net
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      39af33fc
    • B
      char: remove use of __devinitdata · 0bbed20e
      Bill Pemberton 提交于
      CONFIG_HOTPLUG is going away as an option so __devinitdata is no
      longer needed.
      Signed-off-by: NBill Pemberton <wfp5p@virginia.edu>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Kent Yoder <key@linux.vnet.ibm.com>
      Cc: Rajiv Andrade <mail@srajiv.net>
      Cc: Marcel Selhorst <tpmdd@selhorst.net>
      Cc: Sirrix AG <tpmdd@sirrix.com>
      Cc: openipmi-developer@lists.sourceforge.net
      Cc: tpmdd-devel@lists.sourceforge.net
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      0bbed20e
    • B
      char: remove use of __devinit · 2223cbec
      Bill Pemberton 提交于
      CONFIG_HOTPLUG is going away as an option so __devinit is no longer
      needed.
      Signed-off-by: NBill Pemberton <wfp5p@virginia.edu>
      Cc: Geoff Levand <geoff@infradead.org>
      Cc: Mattia Dongili <malattia@linux.it>
      Cc: Amit Shah <amit.shah@redhat.com>
      Cc: openipmi-developer@lists.sourceforge.net
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: cbe-oss-dev@lists.ozlabs.org
      Cc: platform-driver-x86@vger.kernel.org
      Cc: virtualization@lists.linux-foundation.org
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      2223cbec
  11. 19 11月, 2012 1 次提交
  12. 17 10月, 2012 1 次提交
  13. 11 7月, 2012 1 次提交
  14. 29 3月, 2012 4 次提交
  15. 13 1月, 2012 1 次提交
  16. 27 5月, 2011 1 次提交
  17. 19 5月, 2011 1 次提交
    • G
      drivercore: revert addition of of_match to struct device · b1608d69
      Grant Likely 提交于
      Commit b826291c, "drivercore/dt: add a match table pointer to struct
      device" added an of_match pointer to struct device to cache the
      of_match_table entry discovered at driver match time.  This was unsafe
      because matching is not an atomic operation with probing a driver.  If
      two or more drivers are attempted to be matched to a driver at the
      same time, then the cached matching entry pointer could get
      overwritten.
      
      This patch reverts the of_match cache pointer and reworks all users to
      call of_match_device() directly instead.
      Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
      b1608d69
  18. 31 3月, 2011 1 次提交
  19. 24 3月, 2011 1 次提交
  20. 11 3月, 2011 1 次提交
  21. 01 3月, 2011 1 次提交
  22. 11 2月, 2011 1 次提交
  23. 12 1月, 2011 1 次提交
  24. 04 1月, 2011 2 次提交
  25. 14 12月, 2010 1 次提交
    • Z
      IPMI: Add one interface to get more info of low-level IPMI device · 16f4232c
      Zhao Yakui 提交于
      The IPMI smi_watcher will be used to catch the IPMI interface as they
      come or go.  In order to communicate with the correct IPMI device, it
      should be confirmed whether it is what we wanted especially on the
      system with multiple IPMI devices. But the new_smi callback function
      of smi_watcher provides very limited info(only the interface number
      and dev pointer) and there is no detailed info about the low level
      interface. For example: which mechansim registers the IPMI
      interface(ACPI, PCI, DMI and so on).
      
      This is to add one interface that can get more info of low-level IPMI
      device. For example: the ACPI device handle will be returned for the
      pnp_acpi IPMI device.
      Signed-off-by: NZhao Yakui <yakui.zhao@intel.com>
      Signed-off-by: NCorey Minyard <cminyard@mvista.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      16f4232c
  26. 28 10月, 2010 1 次提交
  27. 27 10月, 2010 1 次提交
    • E
      ipmi: proper spinlock initialization · de5e2ddf
      Eric Dumazet 提交于
      Unloading ipmi module can trigger following error.  (if
      CONFIG_DEBUG_SPINLOCK=y)
      
      [ 9633.779590] BUG: spinlock bad magic on CPU#1, rmmod/7170
      [ 9633.779606]  lock: f41f5414, .magic: 00000000, .owner:
      <none>/-1, .owner_cpu: 0
      [ 9633.779626] Pid: 7170, comm: rmmod Not tainted
      2.6.36-rc7-11474-gb71eb1e-dirty #328
      [ 9633.779644] Call Trace:
      [ 9633.779657]  [<c13921cc>] ? printk+0x18/0x1c
      [ 9633.779672]  [<c11a1f33>] spin_bug+0xa3/0xf0
      [ 9633.779685]  [<c11a1ffd>] do_raw_spin_lock+0x7d/0x160
      [ 9633.779702]  [<c1131537>] ? release_sysfs_dirent+0x47/0xb0
      [ 9633.779718]  [<c1131b78>] ? sysfs_addrm_finish+0xa8/0xd0
      [ 9633.779734]  [<c1394bac>] _raw_spin_lock_irqsave+0xc/0x20
      [ 9633.779752]  [<f99d93da>] cleanup_one_si+0x6a/0x200 [ipmi_si]
      [ 9633.779768]  [<c11305b2>] ? sysfs_hash_and_remove+0x72/0x80
      [ 9633.779786]  [<f99dcf26>] ipmi_pnp_remove+0xd/0xf [ipmi_si]
      [ 9633.779802]  [<c11f622b>] pnp_device_remove+0x1b/0x40
      
      Fix this by initializing spinlocks in a smi_info_alloc() helper function,
      right after memory allocation and clearing.
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Acked-by: NDavid Miller <davem@davemloft.net>
      Cc: Yinghai Lu <yinghai@kernel.org>
      Acked-by: NCorey Minyard <cminyard@mvista.com>
      Cc: <stable@kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      de5e2ddf
  28. 18 10月, 2010 1 次提交
  29. 23 9月, 2010 2 次提交
    • Y
      ipmi: fix hardcoded ipmi device exit path warning · 561f8182
      Yinghai Lu 提交于
      When modprobe.conf has
      options ipmi_si type="kcs" ports=0xCA2 regspacings="4"
      
      ipmi_si can be loaded properly, but when try to unload it get:
      
      Sep 20 15:00:27 xx abrt: Kerneloops: Reported 1 kernel oopses to Abrt
      Sep 20 15:00:27 xx abrtd: Directory 'kerneloops-1285020027-1' creation detected
      Sep 20 15:00:27 xx abrtd: New crash /var/spool/abrt/kerneloops-1285020027-1, processing
      Sep 20 15:01:09 xx kernel: ------------[ cut here ]------------
      Sep 20 15:01:09 xx kernel: WARNING: at drivers/base/driver.c:262 driver_unregister+0x8a/0xa0()
      Sep 20 15:01:09 xx kernel: Hardware name: Sun Fire x4800
      Sep 20 15:01:09 xx kernel: Unexpected driver unregister!
      Sep 20 15:01:09 xx kernel: Modules linked in: ipmi_si(-) ipmi_msghandler ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat bridge stp llc autofs4 sunrpc cpufreq_ondemand acpi_cpufreq freq_table mperf xt_physdev be2iscsi iscsi_boot_sysfs bnx2i cnic uio cxgb3i iw_cxgb3 cxgb3 mdio ib_iser rdma_cm ib_cm iw_cm ib_sa ib_mad ib_core ib_addr ipv6 iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi dm_mirror dm_region_hash dm_log dm_mod vhost_net macvtap macvlan tun kvm_intel kvm uinput sg ses enclosure ahci libahci pcspkr i2c_i801 i2c_core iTCO_wdt iTCO_vendor_support igb dca i7core_edac edac_core ext3 jbd mbcache sd_mod crc_t10dif megaraid_sas [last unloaded: ipmi_devintf]
      Sep 20 15:01:09 xx kernel: Pid: 10625, comm: modprobe Tainted: G        W   2.6.36-rc5-tip+ #6
      Sep 20 15:01:09 xx kernel: Call Trace:
      Sep 20 15:01:09 xx kernel: [<ffffffff810600df>] warn_slowpath_common+0x7f/0xc0
      Sep 20 15:01:09 xx kernel: [<ffffffff810601d6>] warn_slowpath_fmt+0x46/0x50
      Sep 20 15:01:09 xx kernel: [<ffffffff812ff60a>] driver_unregister+0x8a/0xa0
      Sep 20 15:01:09 xx kernel: [<ffffffff812ae112>] pnp_unregister_driver+0x12/0x20
      Sep 20 15:01:09 xx kernel: [<ffffffffa01d0327>] cleanup_ipmi_si+0x3c/0xa7 [ipmi_si]
      Sep 20 15:01:09 xx kernel: [<ffffffff81099a60>] sys_delete_module+0x1a0/0x270
      Sep 20 15:01:09 xx kernel: [<ffffffff814b7070>] ? do_page_fault+0x150/0x320
      Sep 20 15:01:09 xx kernel: [<ffffffff8100b072>] system_call_fastpath+0x16/0x1b
      Sep 20 15:01:09 xx kernel: ---[ end trace 0d1967161adcee0d ]---
      
      We need to check if ipmi_pnp_driver is loaded before we try to unload it.
      Signed-off-by: NYinghai Lu <yinghai@kernel.org>
      Cc: Corey Minyard <minyard@acm.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      561f8182
    • Y
      ipmi: fix acpi probe print · a9e31765
      Yinghai Lu 提交于
      After d9e1b6c4 ("ipmi: fix ACPI detection with regspacing") we get
      
      [   11.026326] ipmi_si: probing via ACPI
      [   11.030019] ipmi_si 00:09: (null) regsize 1 spacing 1 irq 0
      [   11.035594] ipmi_si: Adding ACPI-specified kcs state machine
      
      on an old system with only one range for ipmi kcs range.
      
      Try to fix it by adding another res pointer.
      Signed-off-by: NYinghai Lu <yinghai@kernel.org>
      Signed-off-by: NCorey Minyard <cminyard@mvista.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      a9e31765