1. 04 6月, 2013 1 次提交
    • T
      firmware: Avoid deadlock of usermodehelper lock at shutdown · fe304143
      Takashi Iwai 提交于
      When a system goes to reboot/shutdown, it tries to disable the
      usermode helper via usermodehelper_disable().  This might be blocked
      when a driver tries to load a firmware beforehand and it's stuck by
      some reason.  For example, dell_rbu driver loads the firmware in
      non-hotplug mode and waits for user-space clearing the loading sysfs
      flag.  If user-space doesn't clear the flag, it waits forever, thus
      blocks the reboot, too.
      
      As a workaround, in this patch, the firmware class driver registers a
      reboot notifier so that it can abort all pending f/w bufs before
      issuing usermodehelper_disable().
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      Acked-by: NMing Lei <ming.lei@canonical.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      fe304143
  2. 26 2月, 2013 1 次提交
  3. 04 2月, 2013 4 次提交
  4. 17 1月, 2013 1 次提交
    • L
      firmware: make sure the fw file size is not 0 · 4adf07fb
      Luciano Coelho 提交于
      If the requested firmware file size is 0 bytes in the filesytem, we
      will try to vmalloc(0), which causes a warning:
      
        vmalloc: allocation failure: 0 bytes
        kworker/1:1: page allocation failure: order:0, mode:0xd2
          __vmalloc_node_range+0x164/0x208
          __vmalloc_node+0x4c/0x58
          vmalloc+0x38/0x44
          _request_firmware_load+0x220/0x6b0
          request_firmware+0x64/0xc8
          wl18xx_setup+0xb4/0x570 [wl18xx]
          wlcore_nvs_cb+0x64/0x9f8 [wlcore]
          request_firmware_work_func+0x94/0x100
          process_one_work+0x1d0/0x750
          worker_thread+0x184/0x4ac
          kthread+0xb4/0xc0
      
      To fix this, check whether the file size is less than or equal to zero
      in fw_read_file_contents().
      
      Cc: stable <stable@vger.kernel.org> [3.7]
      Signed-off-by: NLuciano Coelho <coelho@ti.com>
      Acked-by: NMing Lei <ming.lei@canonical.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      4adf07fb
  5. 15 11月, 2012 5 次提交
  6. 29 10月, 2012 1 次提交
  7. 22 10月, 2012 4 次提交
  8. 05 10月, 2012 1 次提交
  9. 04 10月, 2012 1 次提交
    • L
      firmware: teach the kernel to load firmware files directly from the filesystem · abb139e7
      Linus Torvalds 提交于
      This is a first step in allowing people to by-pass udev for loading
      device firmware.  Current versions of udev will deadlock (causing us to
      block for the 30 second timeout) under some circumstances if the
      firmware is loaded as part of the module initialization path, and this
      is causing problems for media drivers in particular.
      
      The current patch hardcodes the firmware path that udev uses by default,
      and will fall back to the legacy udev mode if the firmware cannot be
      found there.  We'd like to add support for both configuring the paths
      and the fallback behaviour, but in the meantime this hopefully fixes the
      immediate problem, while also giving us a way forward.
      
      [ v2: Some VFS layer interface cleanups suggested by Al Viro ]
      [ v3: use the default udev paths suggested by Kay Sievers ]
      Suggested-by: NIvan Kalvachev <ikalvachev@gmail.com>
      Acked-by: NGreg KH <gregkh@linuxfoundation.org>
      Acked-by: NAl Viro <viro@zeniv.linux.org.uk>
      Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
      Cc: Kay Sievers <kay@redhat.com>
      Cc: Ming Lei <ming.lei@canonical.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      abb139e7
  10. 11 9月, 2012 1 次提交
  11. 07 9月, 2012 2 次提交
  12. 17 8月, 2012 15 次提交
  13. 17 7月, 2012 1 次提交
  14. 29 3月, 2012 2 次提交