Core35 iwlwifi code no longer builds on 32 bit kernels |
||||||||
Issue descriptionAttempts to build iwl7000 for 32 bit kernels results in: ./usr/include/drm/i915_drm.h:33: userspace cannot reference function or variable defined in the kernel ERROR: "__udivdi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! ERROR: "__umoddi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! Obviously this isn't tested, so let's just restrict iwl7000 support to 64 bit images.
,
Apr 17 2018
As I mentioned in the commit itself, we do test 32-bit it in our main driver tree. I'll check what is going on here. What is the exact kernel configuration you are using?
,
Apr 17 2018
I could not reproduce this problem with the latest chromeos-4.4 kernel with the attached .config (based on i386_defconfig with ARCH=i386). iwl7000 (including iwlxvt.ko) seem to build cleanly with gcc-6 (Debian 6.4.0-12) 6.4.0 20180123. Can you give more information on how to reproduce this? Configuration file, compiler version and git head would be useful.
,
Apr 17 2018
A quick glance shows that the provided configuration does not enable all configuration options used by the iwl7000 code. The most striking ones are IWL7000_DEBUGFS and LOCKDEP, though there may be others. It is not surprising that the problem can not be reproduced with such a limited configuration. Configurations used in our build tests are defconfig, allmodconfig, and allyesconfig.
,
Apr 17 2018
For completeness: $ gcc --version gcc (Ubuntu 5.4.0-6ubuntu1~16.04.9) 5.4.0 20160609 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. groeck@server:~$ cd src/linux-chromeos/ groeck@server:~/src/linux-chromeos$ git describe v4.4.127-13876-g5a8db585f0c0
,
Apr 17 2018
Commit d2ce576a9723079f1ca1a67608f2a3a1223567ab: 64-bit iterators are kind of unusual, but explain the problem. This makes me wonder, though, if the code was really compile tested for 32 bit.
,
Apr 17 2018
Reply #c6: If thats the only problematic commit, its in the iwlxvt.ko module which is used only by the factory and RF testers (unrelated to iwlwifi/iwl7000)
,
Apr 17 2018
#7: It is part of the iwl7000 code and thus not "unrelated", and it fails to build. If it fails to build, it should not be enabled. I'll retest making IWL7000_XVT dependent on 64BIT. If that works, I'll update the CL accordingly.
,
Apr 18 2018
Problem now also affects chromeos-4.14.
,
Apr 19 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/1733fcca17ec1531cad0e1d7a9d93fe9de726a30 commit 1733fcca17ec1531cad0e1d7a9d93fe9de726a30 Author: Guenter Roeck <groeck@chromium.org> Date: Thu Apr 19 15:31:19 2018 CHROMIUM: iwl7000: 32 bit images are not supported Attempts to build iwl7000 images for 32 bit kernels results in: ./usr/include/drm/i915_drm.h:33: userspace cannot reference function or variable defined in the kernel ERROR: "__udivdi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! ERROR: "__umoddi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! Mark the offending code (IWL7000_XVT) as dependent on 64 bit builds. BUG= chromium:833502 TEST=Build i386:allmodconfig Change-Id: I5fd0ff3a11da8eef9b231609dc834734914c5bd6 Signed-off-by: Guenter Roeck <groeck@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1014291 Reviewed-by: Kirtika Ruchandani <kirtika@chromium.org> [modify] https://crrev.com/1733fcca17ec1531cad0e1d7a9d93fe9de726a30/drivers/net/wireless/iwl7000/Kconfig
,
Apr 19 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/9ba91fd712bfbc144d371df39b3df22808c66cc1 commit 9ba91fd712bfbc144d371df39b3df22808c66cc1 Author: Guenter Roeck <groeck@chromium.org> Date: Thu Apr 19 15:31:21 2018 CHROMIUM: iwl7000: 32 bit images are not supported Attempts to build iwl7000 images for 32 bit kernels results in: ./usr/include/drm/i915_drm.h:33: userspace cannot reference function or variable defined in the kernel ERROR: "__udivdi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! ERROR: "__umoddi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! Mark the offending code (IWL7000_XVT) as dependent on 64 bit builds. BUG= chromium:833502 TEST=Build i386:allmodconfig Change-Id: I5fd0ff3a11da8eef9b231609dc834734914c5bd6 Signed-off-by: Guenter Roeck <groeck@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1017160 Reviewed-by: Kirtika Ruchandani <kirtika@chromium.org> [modify] https://crrev.com/9ba91fd712bfbc144d371df39b3df22808c66cc1/drivers/net/wireless/iwl7000/Kconfig
,
Apr 19 2018
,
May 27 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/4b15733ce3520a3a99b22d583b6d33a4a1319f7d commit 4b15733ce3520a3a99b22d583b6d33a4a1319f7d Author: Guenter Roeck <groeck@chromium.org> Date: Sun May 27 06:25:35 2018 CHROMIUM: iwl7000: 32 bit images are not supported Attempts to build iwl7000 images for 32 bit kernels results in: ./usr/include/drm/i915_drm.h:33: userspace cannot reference function or variable defined in the kernel ERROR: "__udivdi3" [drivers/net/wireless-3.8/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! ERROR: "__umoddi3" [drivers/net/wireless-3.8/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! Mark the offending code (IWL7000_XVT) as dependent on 64 bit builds. BUG= chromium:833502 TEST=Build i386:allmodconfig Change-Id: I5fd0ff3a11da8eef9b231609dc834734914c5bd6 Signed-off-by: Guenter Roeck <groeck@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1074727 Commit-Ready: Kirtika Ruchandani <kirtika@chromium.org> Tested-by: Kirtika Ruchandani <kirtika@chromium.org> [modify] https://crrev.com/4b15733ce3520a3a99b22d583b6d33a4a1319f7d/drivers/net/wireless-3.8/iwl7000/Kconfig
,
Jun 2 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/e11c1905f337cc38913969210896131805e0f349 commit e11c1905f337cc38913969210896131805e0f349 Author: Guenter Roeck <groeck@chromium.org> Date: Sat Jun 02 00:44:28 2018 CHROMIUM: iwl7000: 32 bit images are not supported Attempts to build iwl7000 images for 32 bit kernels results in: ./usr/include/drm/i915_drm.h:33: userspace cannot reference function or variable defined in the kernel ERROR: "__udivdi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! ERROR: "__umoddi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! Mark the offending code (IWL7000_XVT) as dependent on 64 bit builds. BUG= chromium:833502 TEST=Build i386:allmodconfig Change-Id: I5fd0ff3a11da8eef9b231609dc834734914c5bd6 Signed-off-by: Guenter Roeck <groeck@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1074729 Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com> Tested-by: Kirtika Ruchandani <kirtika@chromium.org> [modify] https://crrev.com/e11c1905f337cc38913969210896131805e0f349/drivers/net/wireless/iwl7000/Kconfig
,
Jun 21 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/5007f7b6454f731cd7aead93a3347b57d1a2f983 commit 5007f7b6454f731cd7aead93a3347b57d1a2f983 Author: Guenter Roeck <groeck@chromium.org> Date: Thu Jun 21 08:05:54 2018 CHROMIUM: iwl7000: 32 bit images are not supported Attempts to build iwl7000 images for 32 bit kernels results in: ./usr/include/drm/i915_drm.h:33: userspace cannot reference function or variable defined in the kernel ERROR: "__udivdi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! ERROR: "__umoddi3" [drivers/net/wireless/iwl7000/iwlwifi/xvt/iwlxvt.ko] undefined! Mark the offending code (IWL7000_XVT) as dependent on 64 bit builds. BUG= chromium:833502 TEST=Build i386:allmodconfig Change-Id: I5fd0ff3a11da8eef9b231609dc834734914c5bd6 Signed-off-by: Guenter Roeck <groeck@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1014291 Reviewed-by: Kirtika Ruchandani <kirtika@chromium.org> (cherry picked from commit 1733fcca17ec1531cad0e1d7a9d93fe9de726a30) Reviewed-on: https://chromium-review.googlesource.com/1103877 Commit-Ready: Kirtika Ruchandani <kirtika@chromium.org> Tested-by: Kirtika Ruchandani <kirtika@chromium.org> [modify] https://crrev.com/5007f7b6454f731cd7aead93a3347b57d1a2f983/drivers/net/wireless/iwl7000/Kconfig |
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by groeck@chromium.org
, Apr 16 2018