laptop-mode: Disable module wireless-power |
||||
Issue descriptionChrome OS uses the 'wifi-nl80211-powermgmt' module to enable/disable WiFi power save mode. The original laptop-mode module 'wireless-power' is still enabled and exits with an error since it can't find iwconfig. This causes "laptop-mode force" to end prematurely and exit with an error code.
,
Dec 17 2016
iw is what we should be using for this instead of iwconfig.
,
Dec 17 2016
The patch that enabled use of iw: We support only nl80211 WiFi devices; no more WEXT support: - remove old script that used iwconfig - add new module script that uses iw to ena/dis power save Note this also fixes wifi power save operation for nl80211 devices as the iwconfig code never worked right due to it checking the wrong file under /sys. This means we should now have lower latency on AC because we'll turn off power save. https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/master/app-laptop/laptop-mode-tools/files/0005-switch-wifi-support-to-nl80211.patch (I already patched the wireless-power module in upstream, but since our long/mid-term plan is to get rid of laptop-mode altogether it's probably not worth to integrate it)
,
Dec 17 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/8f4e89675d36ff3cd937281cc970933405c0dbc7 commit 8f4e89675d36ff3cd937281cc970933405c0dbc7 Author: Matthias Kaehlcke <mka@chromium.org> Date: Sat Dec 17 00:53:33 2016 laptop-mode-tools: Disable module wireless-power Chrome OS uses the 'wifi-nl80211-powermgmt' module to enable/disable WiFi powersave mode. The original laptop-mode module 'wireless-power' is still enabled and exits with an error since it can't find iwconfig. This causes "laptop_mode force" to end prematurely. Disable the module. BUG= chromium:675286 TEST=manual with additional logs in laptop_mode script Change-Id: I30398aff7f0262f5bc5bcbc963e0246434a15228 Reviewed-on: https://chromium-review.googlesource.com/422094 Commit-Ready: Matthias Kaehlcke <mka@chromium.org> Tested-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Todd Broch <tbroch@chromium.org> [rename] https://crrev.com/8f4e89675d36ff3cd937281cc970933405c0dbc7/app-laptop/laptop-mode-tools/laptop-mode-tools-1.59-r39.ebuild [add] https://crrev.com/8f4e89675d36ff3cd937281cc970933405c0dbc7/app-laptop/laptop-mode-tools/files/0034-wireless-power-disable-module.patch [modify] https://crrev.com/8f4e89675d36ff3cd937281cc970933405c0dbc7/app-laptop/laptop-mode-tools/laptop-mode-tools-1.59.ebuild
,
Dec 19 2016
Additional info: The premature exit of 'laptop_mode force' can have a nasty side-effect. After the command exits often no other laptop-mode instance can acquire the inner LMT lock (fd=9) for 30s: [ 16.389989] MKA: LM (1727): lmt_main_function: force [ 16.517003] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 17.555442] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 18.248635] MKA: wireless-power (1727): EXIT: no iwconfig [ 18.565693] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 19.571777] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 20.576955] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 21.581577] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 22.592947] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 23.603972] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 24.614005] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 25.624140] MKA: LM (1762): Couldn't acquire lock. PARAMS='force modules=wifi-nl80211-powermgmt') [ 26.635638] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 27.646647] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 28.657003] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 29.667449] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 30.677886] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 31.691165] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 32.698771] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 33.707761] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 34.718627] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 35.728898] MKA: LM (1851): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=1-0:1.0') [ 36.741048] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 37.751542] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 38.762595] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 39.772831] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 40.782976] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 41.793451] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 42.800280] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 43.807293] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 44.817916] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 45.824685] MKA: LM (2154): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=usb6') [ 46.834536] MKA: LM (2188): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=6-1') [ 47.847189] MKA: LM (2188): Couldn't acquire lock. PARAMS='force modules=usb-autosuspend devices=6-1') [ 48.255753] MKA: LM (2188): lmt_main_function: force modules=usb-autosuspend devices=6-1 Apparently the 30s period stems from the wait time of the outer lock (fd=8), if it is reduced the inner lock can be acquired earlier. Not sure how the wait time of the outer lock affects the inner lock.
,
Mar 4 2017
,
Apr 4 2017
Verified on build 9334.33.0 |
||||
►
Sign in to add a comment |
||||
Comment 1 by tbroch@chromium.org
, Dec 17 2016