1. 27 4月, 2009 23 次提交
  2. 25 4月, 2009 1 次提交
  3. 24 4月, 2009 16 次提交
    • A
      radio_si470x: Fix free memory corruption · ec5f5bf8
      Alan Cox 提交于
      The release path for a disconnected device frees the object then unlocks
      the mutex in the freed object...
      
      Found by Dan Carpenter using Smatch
      Signed-off-by: NAlan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ec5f5bf8
    • N
      serial: remove contact data · 79e95eba
      Niels de Vos 提交于
      Remove my name and emailaddress from note in the source. Wincor Nixdorf
      only has some ITE-chips on their mainboards, other chips are not
      available for me for testing.
      Signed-off-by: NNiels de Vos <niels.devos@wincor-nixdorf.com>
      Signed-off-by: NAlan Cox <alan@linux.intel.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      79e95eba
    • A
      cafe_nand: Fix warning · 67cd724f
      Alan Cox 提交于
      Wrong types on IRQ handler
      Signed-off-by: NAlan Cox <alan@linux.intel.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      67cd724f
    • S
      umem: fix request_queue lock warning · f3c737de
      Sage Weil 提交于
      The umem driver issues two warnings on boot, due to blk_plug_device() and
      blk_remove_plug() being called without q->queue_lock held.  Starting with
      e48ec690 (block: extend queue_flag bitops), the queue_flag_* functions
      warn if q->queue_lock doesn't appear to be locked.  In fact, q->queue_lock
      is NULL (though that apparently isn't otherwise a problem as the driver is
      using card->lock for everything).
      
      Although blk_init_queue() with take a request_fn_proc and spinlock_t*,
      there isn't a corresponding init helper that takes a make_request_fn.
      Setting queue_lock to &card->lock explicitly seems to work fine for me.
      The warning goes away and the device appears to behave.
      
      [    1.531881] v2.3 : Micro Memory(tm) PCI memory board block driver
      [    1.538136] umem 0000:02:01.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20
      [    1.545018] umem 0000:02:01.0: Micro Memory(tm) controller found (PCI Mem Module (Battery Backup))
      [    1.554176] umem 0000:02:01.0: CSR 0xfc9ffc00 -> 0xffffc200013d0c00 (0x100)
      [    1.561279] umem 0000:02:01.0: Size 1048576 KB, Battery 1 Disabled (FAILURE), Battery 2 Disabled (FAILURE)
      [    1.571114] umem 0000:02:01.0: Window size 16777216 bytes, IRQ 20
      [    1.577304] umem 0000:02:01.0: memory NOT initialized. Consider over-writing whole device.
      [    1.585989]  umema:<4>------------[ cut here ]------------
      [    1.591775] WARNING: at include/linux/blkdev.h:492 blk_plug_device+0x6d/0x106()
      [    1.592025] Hardware name: H8SSL
      [    1.592025] Modules linked in:
      [    1.592025] Pid: 1, comm: swapper Not tainted 2.6.29 #8
      [    1.592025] Call Trace:
      [    1.592025]  [<ffffffff8023c994>] warn_slowpath+0xd3/0xf2
      [    1.592025]  [<ffffffff8025a5b5>] ? save_trace+0x3f/0x9b
      [    1.592025]  [<ffffffff8025a68b>] ? add_lock_to_list+0x7a/0xba
      [    1.592025]  [<ffffffff8025e609>] ? validate_chain+0xb3b/0xce8
      [    1.592025]  [<ffffffff80441556>] ? mm_make_request+0x27/0x59
      [    1.592025]  [<ffffffff80441556>] ? mm_make_request+0x27/0x59
      [    1.592025]  [<ffffffff8025ef04>] ? __lock_acquire+0x74e/0x7b9
      [    1.592025]  [<ffffffff8025a70e>] ? get_lock_stats+0x34/0x5e
      [    1.592025]  [<ffffffff8025a746>] ? put_lock_stats+0xe/0x27
      [    1.592025]  [<ffffffff80441556>] ? mm_make_request+0x27/0x59
      [    1.592025]  [<ffffffff803ad165>] blk_plug_device+0x6d/0x106
      [    1.592025]  [<ffffffff80441575>] mm_make_request+0x46/0x59
      [    1.592025]  [<ffffffff803ac2d9>] generic_make_request+0x335/0x3cf
      [    1.592025]  [<ffffffff8027fcc7>] ? mempool_alloc_slab+0x11/0x13
      [    1.592025]  [<ffffffff8027fdce>] ? mempool_alloc+0x45/0x101
      [    1.592025]  [<ffffffff8025a746>] ? put_lock_stats+0xe/0x27
      [    1.592025]  [<ffffffff803adda5>] submit_bio+0x10a/0x119
      [    1.592025]  [<ffffffff802c8d00>] submit_bh+0xe5/0x109
      [    1.592025]  [<ffffffff802cbf43>] block_read_full_page+0x2aa/0x2cb
      [    1.592025]  [<ffffffff802cf4c4>] ? blkdev_get_block+0x0/0x4c
      [    1.592025]  [<ffffffff805c90a8>] ? _spin_unlock_irq+0x36/0x51
      [    1.592025]  [<ffffffff80286836>] ? __lru_cache_add+0x92/0xb2
      [    1.592025]  [<ffffffff802cf008>] blkdev_readpage+0x13/0x15
      [    1.592025]  [<ffffffff8027de06>] read_cache_page_async+0x90/0x134
      [    1.592025]  [<ffffffff802ceff5>] ? blkdev_readpage+0x0/0x15
      [    1.592025]  [<ffffffff802f5f1c>] ? adfspart_check_ICS+0x0/0x16c
      [    1.592025]  [<ffffffff8027deb8>] read_cache_page+0xe/0x45
      [    1.592025]  [<ffffffff802f5170>] read_dev_sector+0x2e/0x93
      [    1.592025]  [<ffffffff802f5f44>] adfspart_check_ICS+0x28/0x16c
      [    1.592025]  [<ffffffff8025d427>] ? trace_hardirqs_on+0xd/0xf
      [    1.592025]  [<ffffffff802f5f1c>] ? adfspart_check_ICS+0x0/0x16c
      [    1.592025]  [<ffffffff802f59c5>] rescan_partitions+0x168/0x2fb
      [    1.592025]  [<ffffffff802ceae9>] __blkdev_get+0x259/0x336
      [    1.592025]  [<ffffffff803ca1e2>] ? kobject_put+0x47/0x4b
      [    1.592025]  [<ffffffff802cebd1>] blkdev_get+0xb/0xd
      [    1.592025]  [<ffffffff802f5773>] register_disk+0xc4/0x12b
      [    1.592025]  [<ffffffff803b2a7b>] add_disk+0xc3/0x12d
      [    1.592025]  [<ffffffff808a1d4a>] ? mm_init+0x0/0x1a5
      [    1.592025]  [<ffffffff808a1e73>] mm_init+0x129/0x1a5
      [    1.592025]  [<ffffffff808a1d4a>] ? mm_init+0x0/0x1a5
      [    1.592025]  [<ffffffff80209056>] _stext+0x56/0x130
      [    1.592025]  [<ffffffff80274932>] ? register_irq_proc+0xae/0xca
      [    1.592025]  [<ffffffff802f0000>] ? proc_pid_lookup+0xb4/0x18b
      [    1.592025]  [<ffffffff8087f975>] kernel_init+0x132/0x18b
      [    1.592025]  [<ffffffff8020d17a>] child_rip+0xa/0x20
      [    1.592025]  [<ffffffff8020cb40>] ? restore_args+0x0/0x30
      [    1.592025]  [<ffffffff8087f843>] ? kernel_init+0x0/0x18b
      [    1.592025]  [<ffffffff8020d170>] ? child_rip+0x0/0x20
      [    1.592025] ---[ end trace 7150b3b86da74e1e ]---
      [    1.889858] ------------[ cut here ]------------[ve_plug+0x5f/0x91()
      [    1.893848] Hardware name: H8SSL
      [    1.893848] Modules linked in:
      [    1.893848] Pid: 1, comm: swapper Tainted: G        W  2.6.29 #8
      [    1.893848] Call Trace:
      [    1.893848]  [<ffffffff8023c994>] warn_slowpath+0xd3/0xf2
      [    1.893848]  [<ffffffff805c8411>] ? trace_hardirqs_on_thunk+0x3a/0x3f
      [    1.893848]  [<ffffffff8020cb40>] ? restore_args+0x0/0x30
      [    1.893848]  [<ffffffff80254245>] ? __atomic_notifier_call_chain+0x0/0xb2
      [    1.893848]  [<ffffffff805c90a3>] ? _spin_unlock_irq+0x31/0x51
      [    1.893848]  [<ffffffff805c90bf>] ? _spin_unlock_irq+0x4d/0x51
      [    1.893848]  [<ffffffff8044157d>] ? mm_make_request+0x4e/0x59
      [    1.893848]  [<ffffffff8025a70e>] ? get_lock_stats+0x34/0x5e
      [    1.893848]  [<ffffffff8025a75d>] ? put_lock_stats+0x25/0x27
      [    1.893848]  [<ffffffff80441504>] ? mm_unplug_device+0x25/0x50
      [    1.893848]  [<ffffffff803acf23>] blk_remove_plug+0x5f/0x91
      [    1.893848]  [<ffffffff8044150f>] mm_unplug_device+0x30/0x50
      [    1.893848]  [<ffffffff803ab74a>] blk_unplug+0x78/0x7d
      [    1.893848]  [<ffffffff803ab75c>] blk_backing_dev_unplug+0xd/0xf
      [    1.893848]  [<ffffffff802c853c>] block_sync_page+0x4a/0x4c
      [    1.893848]  [<ffffffff8027da1c>] sync_page+0x44/0x4d
      [    1.893848]  [<ffffffff805c66fd>] __wait_on_bit_lock+0x42/0x8a
      [    1.893848]  [<ffffffff8027d9d8>] ? sync_page+0x0/0x4d
      [    1.893848]  [<ffffffff8027d9c4>] __lock_page+0x64/0x6b
      [    1.893848]  [<ffffffff802508db>] ? wake_bit_function+0x0/0x2a
      [    1.893848]  [<ffffffff8027de4a>] read_cache_page_async+0xd4/0x134
      [    1.893848]  [<ffffffff802ceff5>] ? blkdev_readpage+0x0/0x15
      [    1.893848]  [<ffffffff802f5f1c>] ? adfspart_check_ICS+0x0/0x16c
      [    1.893848]  [<ffffffff8027deb8>] read_cache_page+0xe/0x45
      [    1.893848]  [<ffffffff802f5170>] read_dev_sector+0x2e/0x93
      [    1.893848]  [<ffffffff802f5f44>] adfspart_check_ICS+0x28/0x16c
      [    1.893848]  [<ffffffff8025d427>] ? trace_hardirqs_on+0xd/0xf
      [    1.893848]  [<ffffffff802f5f1c>] ? adfspart_check_ICS+0x0/0x16c
      [    1.893848]  [<ffffffff802f59c5>] rescan_partitions+0x168/0x2fb
      [    1.893848]  [<ffffffff802ceae9>] __blkdev_get+0x259/0x336
      [    1.893848]  [<ffffffff803ca1e2>] ? kobject_put+0x47/0x4b
      [    1.893848]  [<ffffffff802cebd1>] blkdev_get+0xb/0xd
      [    1.893848]  [<ffffffff802f5773>] register_disk+0xc4/0x12b
      [    1.893848]  [<ffffffff803b2a7b>] add_disk+0xc3/0x12d
      [    1.893848]  [<ffffffff808a1d4a>] ? mm_init+0x0/0x1a5
      [    1.893848]  [<ffffffff808a1e73>] mm_init+0x129/0x1a5
      [    1.893848]  [<ffffffff808a1d4a>] ? mm_init+0x0/0x1a5
      [    1.893848]  [<ffffffff80209056>] _stext+0x56/0x130
      [    1.893848]  [<ffffffff80274932>] ? register_irq_proc+0xae/0xca
      [    1.893848]  [<ffffffff802f0000>] ? proc_pid_lookup+0xb4/0x18b
      [    1.893848]  [<ffffffff8087f975>] kernel_init+0x132/0x18b
      [    1.893848]  [<ffffffff8020d17a>] child_rip+0xa/0x20
      [    1.893848]  [<ffffffff8020cb40>] ? restore_args+0x0/0x30
      [    1.893848]  [<ffffffff8087f843>] ? kernel_init+0x0/0x18b
      [    1.893848]  [<ffffffff8020d170>] ? child_rip+0x0/0x20
      [    1.893848] ---[ end trace 7150b3b86da74e1f ]---
      Signed-off-by: NSage Weil <sage@newdream.net>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      f3c737de
    • M
      ACPI, i915: Register ACPI video even when not modesetting · b7f0ab46
      Matthew Garrett 提交于
      The ACPI video driver defers registration to the i915 driver if the
      system supports opregion-mediated backlight control. This registration
      was only being performed in the KMS case. Ensure it's done even if we
      don't have modesetting enabled.
      
      http://bugzilla.kernel.org/show_bug.cgi?id=13048Signed-off-by: NMatthew Garrett <mjg@redhat.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      b7f0ab46
    • L
      Revert "ACPICA: delete check for AML access to port 0x81-83" · a38d75fa
      Len Brown 提交于
      This reverts commit fdbdc7fc.
      
      That temporary quick-fix is no longer necessary,
      as the previous patch, a65131e9,
      "I/O port protection: update for windows compatibility"
      should handle this issue for all ports, including this one.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      a38d75fa
    • L
      I/O port protection: update for windows compatibility. · a65131e9
      Lin Ming 提交于
      For windows compatibility,
      1) On a port protection violation, simply ignore the request and
         do not return an exception (allow the control method to continue execution.)
      2) If only part of the request overlaps a protected port,
         read/write the individual ports that are not protected.
      
      http://bugzilla.kernel.org/show_bug.cgi?id=13036Signed-off-by: NLin Ming <ming.m.lin@intel.com>
      Signed-off-by: NBob Moore <robert.moore@intel.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      a65131e9
    • M
      sony-laptop: always try to unblock rfkill on load · 53005a0a
      Mattia Dongili 提交于
      This fixes an inconsistent behaviour when loading the driver with the
      switch on or off. In the former case you would also need to soft unblock
      the switch via the sysfs file entries to really disable rfkill, in the
      latter you wouldn't.
      Signed-off-by: NMattia Dongili <malattia@linux.it>
      Cc: Matthias Welwarsky <matze@welwarsky.de>
      Acked-by: NMatthew Garrett <mjg@redhat.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      53005a0a
    • M
      sony-laptop: fix bogus error message display on resume · c35d4b35
      Mattia Dongili 提交于
      sony_backlight_update_status returns 0 on success -1 on failure (i.e.: the
      return value from acpi_callsetfunc. The return value in the resume path
      was broken and thus always displaying a bogus warning about not being able
      to restore the brightness level.
      Signed-off-by: NMattia Dongili <malattia@linux.it>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      c35d4b35
    • A
      ACPI: EC: Fix ACPI EC resume non-query interrupt message · 5aa63f03
      Almer S. Tigelaar 提交于
      When resuming from standby (on a laptop) I see the following message in
      my kernel.log:
      "ACPI: EC: non-query interrupt received, switching to interrupt mode"
      This apparently prevented sony-laptop to properly restore the brightness
      level on resume.
      
      The cause: In drivers/acpi/ec.c the acpi_ec_suspend function clears the
      GPE mode bit, but this is not restored in acpi_ec_resume (the function
      below it). The patch below fixes this by properly restoring the GPE_MODE
      bit. Tested and confirmed to work.
      Signed-off-by: NAlmer S. Tigelaar <almer@gnome.org>
      Signed-off-by: NMattia Dongili <malattia@linux.it>
      Acked-by: NAlexey Starikovskiy <astarikovskiy@suse.de>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      5aa63f03
    • A
      sony-laptop: SNC input event 38 fix · a83021a2
      Almer S. Tigelaar 提交于
      Fixes the "unknown input event 38" messages. ANYBUTTON_RELEASED is now
      treated the same way as FN_KEY_RELEASED.
      Signed-off-by: NAlmer S. Tigelaar <almer@gnome.org>
      Signed-off-by: NMattia Dongili <malattia@linux.it>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      a83021a2
    • A
      sony-laptop: SNC 127 Initialization Fix · 560e84ac
      Almer S. Tigelaar 提交于
      Fixes additional special key initialization for SNC 127 key events.
      Verified / tested on a Sony VAIO SR model.
      Signed-off-by: NAlmer S. Tigelaar <almer@gnome.org>
      Signed-off-by: NMattia Dongili <malattia@linux.it>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      560e84ac
    • A
      sony-laptop: Duplicate SNC 127 Event Fix · 226fced3
      Almer S. Tigelaar 提交于
      Fixes a duplicate mapping in the SNC sony_127_events structure.
      Signed-off-by: NAlmer S. Tigelaar <almer@gnome.org>
      Signed-off-by: NMattia Dongili <malattia@linux.it>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      226fced3
    • L
      ACPI: prevent processor.max_cstate=0 boot crash · 615dfd93
      Len Brown 提交于
      As processor.max_cstate is an init-time-only modparam,
      sanity checking it at init-time is sufficient.
      
      http://bugzilla.kernel.org/show_bug.cgi?id=13142Signed-off-by: NLen Brown <len.brown@intel.com>
      615dfd93
    • L
      ACPI/hpet: prevent boot hang when hpet=force used on ICH-4M · f461ddea
      Len Brown 提交于
      Linux tells ICH4 users that they can (manually) invoke
      "hpet=force" to enable the undocumented ICH-4M HPET.
      The HPET becomes available for both clocksource and clockevents.
      
      But as of ff69f2bb
      (acpi: fix of pmtimer overflow that make Cx states time incorrect)
      the HPET may be used via clocksource for idle accounting, and
      hpet=force on an ICH4 box hangs boot.
      
      It turns out that touching the MMIO HPET withing
      the ARB_DIS part of C3 will hang the hardware.
      
      The fix is to simply move the timer access outside
      the ARB_DIS region.  This is a no-op on modern hardware
      because ARB_DIS is no longer used.
      
      http://bugzilla.kernel.org/show_bug.cgi?id=13087Acked-by: NVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      f461ddea
    • N
      [ARM] 5460/1: Orion: reduce namespace pollution · fdd8b079
      Nicolas Pitre 提交于
      Symbols like SOFT_RESET are way too generic to be exported at large.
      To avoid this, let's move the mbus bridge register defines into a
      separate file and include it where needed.  This affects mach-kirkwood,
      mach-loki, mach-mv78xx0 and mach-orion5x simultaneously as they all
      share code in plat-orion which relies on those defines.
      
      Some other defines have been moved to narrower scopes, or simply deleted
      when they had no user.
      
      This fixes compilation problem with mpt2sas on the above listed
      platforms.
      Signed-off-by: NNicolas Pitre <nico@marvell.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      fdd8b079