Issue metadata
Sign in to add a comment
|
Switch over Intel wifi devices to using Intel's cfg80211 |
||||||||||||||||||||||
Issue descriptionPrior discussion at: https://bugs.chromium.org/p/chromium/issues/detail?id=780293 Feature description: cfg80211 is a layer in the wireless stack. Currently, Chrome OS picks up the cfg80211, like all other things in the kernel, from upstream, when a kernel version is fixed. We continue to use that cfg80211 with sporadic patches and bugfixes on top. The problem is that with 5 active kernels shipping [1], this implies we are often shipping very old cfg80211 and the Intel driver folks have trouble shipping their driver+mac80211 with the old cfg80211. The proposal is to get Intel's cfg80211 but apply it only on Intel devices. This or an alternate solution should launch in R64, as this is blocking the Core30 Intel driver drop. [1] 3.8, 3.10, 3.14 and 4.4 - only 4 of these kernels have Intel wifi devices. 3.10 doesn't have any Intel devices on it anymore.
,
Nov 8 2017
The NextAction date has arrived: 2017-11-08
,
Jan 3 2018
,
Jan 30 2018
Issue 803957 has been merged into this issue.
,
Jan 30 2018
I'm dup'ing some regressions against this bug, since the bugfixes are targeting this one. I believe this stuff started to land in M65 and is causing problems. Fixes are in flight.
,
Jan 31 2018
The following revision refers to this bug: https://chromium.googlesource.com/aosp/platform/system/connectivity/shill/+/6455013e3b0038a35473756687cf2348b5c77c33 commit 6455013e3b0038a35473756687cf2348b5c77c33 Author: Kirtika Ruchandani <kirtika@google.com> Date: Wed Jan 31 01:47:15 2018 init: Get rid of load_cfg80211 network-services.conf auto-loads cfg80211 before shill starts. This is a problem for Chrome OS, as we introduce iwl7000_cfg80211 on Intel platforms. Now we have two copies of cfg80211, and the wrong one gets loaded first. This leads to a kernel warning when iwlwifi tries to load iwl700_cfg80211: mnt/host/source/src/third_party/kernel/v4.4/fs/sysfs/dir.c:31 sysfs_warn_dup+0x64/0x73() 2018-01-17T16:48:51.055515-08:00 WARNING kernel: [ 46.896091] sysfs: cannot create duplicate filename '/class/ieee80211' 2018-01-17T16:48:51.058117-08:00 WARNING kernel: [ 46.896097] Modules linked in: iwl7000_cfg80211(+) rfcomm uinput zram [snipped] 2018-01-17T16:48:51.058156-08:00 WARNING kernel: [ 46.899200] CPU: 1 PID: 3066 Comm: modprobe Tainted: G U 4.4.70 #2 2018-01-17T16:48:51.058160-08:00 WARNING kernel: [ 46.899211] Hardware name: Google Reef/Reef, BIOS Google_Reef.9042.59.0 02/27/2017 2018-01-17T16:48:51.058162-08:00 WARNING kernel: [ 46.899219] 0000000000000286 00000000f738afb5 ffff88026e9dbb68 ffffffffaacf350a 2018-01-17T16:48:51.058165-08:00 WARNING kernel: [ 46.899237] ffff88026e9dbbb0 0000000000000009 ffff88026e9dbba0 ffffffffaaa6bdee 2018-01-17T16:48:51.058167-08:00 WARNING kernel: [ 46.899252] ffffffffaabed7e8 ffff88026e8e6000 ffff88024acc6890 ffff8802768a5618 2018-01-17T16:48:51.058170-08:00 WARNING kernel: [ 46.899268] Call Trace: 2018-01-17T16:48:51.058172-08:00 WARNING kernel: [ 46.899288] [<ffffffffaacf350a>] dump_stack+0x4d/0x63 network-services was added to autoload cfg80211 in CL:47829, and since kernels after v3.3 already take care of loading cfg80211, it is redundant. Thanks to Brian Norris for digging up commit afa8430953302 "genetlink: add auto module loading". It is helpful to keep network-services around as it services as a generic checkpoint for (interface-agnostic) network status at boot. With load_cfg80211 removed, network-services doesn't need any transformations before the ebuild installs it into the rootfs, so get rid of the .in suffix. CQ-DEPEND=CL:890079 BUG=b:68778576, chromium:782368 TEST=(a) Built with this change and Core31 on meowth 4.14 kernel, checked that wifi comes up correctly without the kernel warning above, and lsmod shows iwl7000_cfg80211, iwl7000_mac80211 and iwlwifi loaded. (b) Tests on VM (betty) without wifi USE flag enabled (c) Tests on 3.18, 3.14 and 4.4 kernel-based devices Change-Id: I7f80886a99f33fd9fdbcd6bf069401eb20aed0fb Reviewed-on: https://chromium-review.googlesource.com/890221 Commit-Ready: Kirtika Ruchandani <kirtika@chromium.org> Tested-by: Kirtika Ruchandani <kirtika@chromium.org> Reviewed-by: Brian Norris <briannorris@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [rename] https://crrev.com/6455013e3b0038a35473756687cf2348b5c77c33/init/network-services.service [rename] https://crrev.com/6455013e3b0038a35473756687cf2348b5c77c33/init/network-services.conf
,
Jan 31 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/0210eb644f8eb11ebb9ca1623e55998863aaf83c commit 0210eb644f8eb11ebb9ca1623e55998863aaf83c Author: Kirtika Ruchandani <kirtika@google.com> Date: Wed Jan 31 01:47:15 2018 shill: remove load_cfg80211 in init/network-services network-services.conf auto-loads cfg80211 before shill starts. This is a problem for Chrome OS, as we introduce iwl7000_cfg80211 on Intel platforms. Now we have two copies of cfg80211, and the wrong one gets loaded first. This leads to a kernel warning when iwlwifi tries to load iwl700_cfg80211: mnt/host/source/src/third_party/kernel/v4.4/fs/sysfs/dir.c:31 sysfs_warn_dup+0x64/0x73() 2018-01-17T16:48:51.055515-08:00 WARNING kernel: [ 46.896091] sysfs: cannot create duplicate filename '/class/ieee80211' 2018-01-17T16:48:51.058117-08:00 WARNING kernel: [ 46.896097] Modules linked in: iwl7000_cfg80211(+) rfcomm uinput zram [snipped] 2018-01-17T16:48:51.058156-08:00 WARNING kernel: [ 46.899200] CPU: 1 PID: 3066 Comm: modprobe Tainted: G U 4.4.70 #2 2018-01-17T16:48:51.058160-08:00 WARNING kernel: [ 46.899211] Hardware name: Google Reef/Reef, BIOS Google_Reef.9042.59.0 02/27/2017 2018-01-17T16:48:51.058162-08:00 WARNING kernel: [ 46.899219] 0000000000000286 00000000f738afb5 ffff88026e9dbb68 ffffffffaacf350a 2018-01-17T16:48:51.058165-08:00 WARNING kernel: [ 46.899237] ffff88026e9dbbb0 0000000000000009 ffff88026e9dbba0 ffffffffaaa6bdee 2018-01-17T16:48:51.058167-08:00 WARNING kernel: [ 46.899252] ffffffffaabed7e8 ffff88026e8e6000 ffff88024acc6890 ffff8802768a5618 2018-01-17T16:48:51.058170-08:00 WARNING kernel: [ 46.899268] Call Trace: 2018-01-17T16:48:51.058172-08:00 WARNING kernel: [ 46.899288] [<ffffffffaacf350a>] dump_stack+0x4d/0x63 network-services was added to autoload cfg80211 in CL:47829, and since kernels after v3.3 already take care of loading cfg80211, it is redundant. Thanks to Brian Norris for digging up commit afa8430953302 "genetlink: add auto module loading". It is helpful to keep network-services around as it serves as a generic checkpoint for (interface-agnostic) network status at boot. CQ-DEPEND=CL:890221 BUG=b:68778576, chromium:782368 TEST=(a) Built with CL:890221 and Core31 on meowth 4.14 kernel, checked that wifi comes up correctly without the kernel warning above, and lsmod shows iwl7000_cfg80211, iwl7000_mac80211 and iwlwifi loaded. (b) Tests on VM (betty) without wifi USE flag enabled (c) Tests on 3.18, 3.14 and 4.4 kernel-based devices Change-Id: I69e85246d380a8dee6da6b5e19dda5070fd704b0 Signed-off-by: Brian Norris <briannorris@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/890079 Commit-Ready: Kirtika Ruchandani <kirtika@chromium.org> Tested-by: Kirtika Ruchandani <kirtika@chromium.org> Reviewed-by: Kirtika Ruchandani <kirtika@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [modify] https://crrev.com/0210eb644f8eb11ebb9ca1623e55998863aaf83c/chromeos-base/shill/shill-9999.ebuild
,
Feb 6 2018
The following revision refers to this bug: https://chromium.googlesource.com/aosp/platform/system/connectivity/shill/+/af72f428ecfae00cc6e2ee786037948d25f60bdc commit af72f428ecfae00cc6e2ee786037948d25f60bdc Author: Kirtika Ruchandani <kirtika@google.com> Date: Tue Feb 06 21:12:43 2018 init: Get rid of load_cfg80211 network-services.conf auto-loads cfg80211 before shill starts. This is a problem for Chrome OS, as we introduce iwl7000_cfg80211 on Intel platforms. Now we have two copies of cfg80211, and the wrong one gets loaded first. This leads to a kernel warning when iwlwifi tries to load iwl700_cfg80211: mnt/host/source/src/third_party/kernel/v4.4/fs/sysfs/dir.c:31 sysfs_warn_dup+0x64/0x73() 2018-01-17T16:48:51.055515-08:00 WARNING kernel: [ 46.896091] sysfs: cannot create duplicate filename '/class/ieee80211' 2018-01-17T16:48:51.058117-08:00 WARNING kernel: [ 46.896097] Modules linked in: iwl7000_cfg80211(+) rfcomm uinput zram [snipped] 2018-01-17T16:48:51.058156-08:00 WARNING kernel: [ 46.899200] CPU: 1 PID: 3066 Comm: modprobe Tainted: G U 4.4.70 #2 2018-01-17T16:48:51.058160-08:00 WARNING kernel: [ 46.899211] Hardware name: Google Reef/Reef, BIOS Google_Reef.9042.59.0 02/27/2017 2018-01-17T16:48:51.058162-08:00 WARNING kernel: [ 46.899219] 0000000000000286 00000000f738afb5 ffff88026e9dbb68 ffffffffaacf350a 2018-01-17T16:48:51.058165-08:00 WARNING kernel: [ 46.899237] ffff88026e9dbbb0 0000000000000009 ffff88026e9dbba0 ffffffffaaa6bdee 2018-01-17T16:48:51.058167-08:00 WARNING kernel: [ 46.899252] ffffffffaabed7e8 ffff88026e8e6000 ffff88024acc6890 ffff8802768a5618 2018-01-17T16:48:51.058170-08:00 WARNING kernel: [ 46.899268] Call Trace: 2018-01-17T16:48:51.058172-08:00 WARNING kernel: [ 46.899288] [<ffffffffaacf350a>] dump_stack+0x4d/0x63 network-services was added to autoload cfg80211 in CL:47829, and since kernels after v3.3 already take care of loading cfg80211, it is redundant. Thanks to Brian Norris for digging up commit afa8430953302 "genetlink: add auto module loading". It is helpful to keep network-services around as it services as a generic checkpoint for (interface-agnostic) network status at boot. With load_cfg80211 removed, network-services doesn't need any transformations before the ebuild installs it into the rootfs, so get rid of the .in suffix. CQ-DEPEND=CL:890079 BUG=b:68778576, chromium:782368 TEST=(a) Built with this change and Core31 on meowth 4.14 kernel, checked that wifi comes up correctly without the kernel warning above, and lsmod shows iwl7000_cfg80211, iwl7000_mac80211 and iwlwifi loaded. (b) Tests on VM (betty) without wifi USE flag enabled (c) Tests on 3.18, 3.14 and 4.4 kernel-based devices Change-Id: I7f80886a99f33fd9fdbcd6bf069401eb20aed0fb Reviewed-on: https://chromium-review.googlesource.com/890221 Commit-Ready: Kirtika Ruchandani <kirtika@chromium.org> Tested-by: Kirtika Ruchandani <kirtika@chromium.org> Reviewed-by: Brian Norris <briannorris@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> (cherry picked from commit 6455013e3b0038a35473756687cf2348b5c77c33) [rename] https://crrev.com/af72f428ecfae00cc6e2ee786037948d25f60bdc/init/network-services.service [rename] https://crrev.com/af72f428ecfae00cc6e2ee786037948d25f60bdc/init/network-services.conf
,
Feb 6 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/77315d03834f219f8d2a410294d239c65587e6f0 commit 77315d03834f219f8d2a410294d239c65587e6f0 Author: Kirtika Ruchandani <kirtika@google.com> Date: Tue Feb 06 21:15:31 2018 shill: remove load_cfg80211 in init/network-services network-services.conf auto-loads cfg80211 before shill starts. This is a problem for Chrome OS, as we introduce iwl7000_cfg80211 on Intel platforms. Now we have two copies of cfg80211, and the wrong one gets loaded first. This leads to a kernel warning when iwlwifi tries to load iwl700_cfg80211: mnt/host/source/src/third_party/kernel/v4.4/fs/sysfs/dir.c:31 sysfs_warn_dup+0x64/0x73() 2018-01-17T16:48:51.055515-08:00 WARNING kernel: [ 46.896091] sysfs: cannot create duplicate filename '/class/ieee80211' 2018-01-17T16:48:51.058117-08:00 WARNING kernel: [ 46.896097] Modules linked in: iwl7000_cfg80211(+) rfcomm uinput zram [snipped] 2018-01-17T16:48:51.058156-08:00 WARNING kernel: [ 46.899200] CPU: 1 PID: 3066 Comm: modprobe Tainted: G U 4.4.70 #2 2018-01-17T16:48:51.058160-08:00 WARNING kernel: [ 46.899211] Hardware name: Google Reef/Reef, BIOS Google_Reef.9042.59.0 02/27/2017 2018-01-17T16:48:51.058162-08:00 WARNING kernel: [ 46.899219] 0000000000000286 00000000f738afb5 ffff88026e9dbb68 ffffffffaacf350a 2018-01-17T16:48:51.058165-08:00 WARNING kernel: [ 46.899237] ffff88026e9dbbb0 0000000000000009 ffff88026e9dbba0 ffffffffaaa6bdee 2018-01-17T16:48:51.058167-08:00 WARNING kernel: [ 46.899252] ffffffffaabed7e8 ffff88026e8e6000 ffff88024acc6890 ffff8802768a5618 2018-01-17T16:48:51.058170-08:00 WARNING kernel: [ 46.899268] Call Trace: 2018-01-17T16:48:51.058172-08:00 WARNING kernel: [ 46.899288] [<ffffffffaacf350a>] dump_stack+0x4d/0x63 network-services was added to autoload cfg80211 in CL:47829, and since kernels after v3.3 already take care of loading cfg80211, it is redundant. Thanks to Brian Norris for digging up commit afa8430953302 "genetlink: add auto module loading". It is helpful to keep network-services around as it serves as a generic checkpoint for (interface-agnostic) network status at boot. CQ-DEPEND=CL:890221 BUG=b:68778576, chromium:782368 TEST=(a) Built with CL:890221 and Core31 on meowth 4.14 kernel, checked that wifi comes up correctly without the kernel warning above, and lsmod shows iwl7000_cfg80211, iwl7000_mac80211 and iwlwifi loaded. (b) Tests on VM (betty) without wifi USE flag enabled (c) Tests on 3.18, 3.14 and 4.4 kernel-based devices Change-Id: I69e85246d380a8dee6da6b5e19dda5070fd704b0 Signed-off-by: Brian Norris <briannorris@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/890079 Commit-Ready: Kirtika Ruchandani <kirtika@chromium.org> Tested-by: Kirtika Ruchandani <kirtika@chromium.org> Reviewed-by: Kirtika Ruchandani <kirtika@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> (cherry picked from commit 0210eb644f8eb11ebb9ca1623e55998863aaf83c) Reviewed-on: https://chromium-review.googlesource.com/905502 Commit-Queue: Kirtika Ruchandani <kirtika@chromium.org> Trybot-Ready: Kirtika Ruchandani <kirtika@chromium.org> [modify] https://crrev.com/77315d03834f219f8d2a410294d239c65587e6f0/chromeos-base/shill/shill-9999.ebuild
,
Feb 21 2018
Do we have what we need merged into 65 already for this? This is marked as release block stable for 65.
,
Feb 21 2018
The bugs that the initial merges introduced should now be fixed. I don't think Kirtika has completely finished this work, but at least it's not supremely buggy on M65 any more. So I guess the best thing there is to remove the 'ReleaseBlock-*' label?
,
Aug 2
,
Sep 25
Adding here for posterity: this should have been closed as "Fixed" for R65, as we switched Intle wifi devices to using Intel's cfg80211 on R65. We reverted this in R66 due to boot-time regressions, loss of usb-wifi and other issues with using Intel's cfg80211 (made any other wifi driver non-compliant/non-working on the same unibuild). Closing as Wont-Fix since we will not attempt this switch again. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by kirtika@google.com
, Nov 7 2017