Skip to content
  1. Jun 17, 2021
    • Mark Brown's avatar
      kbuild: modpost: Explicitly warn about unprototyped symbols · 4a679593
      Mark Brown authored
      
      
      One common cause of modpost version generation failures is a failure to
      prototype exported assembly functions - the tooling requires this for
      exported functions even if they are not and should not be called from C
      code in order to do the version mangling for symbols. Unfortunately the
      error message is currently rather abstruse, simply saying that "version
      generation failed" and even diving into the code doesn't directly show
      what's going on since there's several steps between the problem and it
      being observed.
      
      Provide an explicit hint as to the likely cause of a version generation
      failure to help anyone who runs into this in future more readily diagnose
      and fix the problem.
      
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      4a679593
    • Masahiro Yamada's avatar
      kbuild: remove trailing slashes from $(KBUILD_EXTMOD) · 74ee585b
      Masahiro Yamada authored
      M= (or KBUILD_EXTMOD) generally expects a directory path without any
      trailing slashes, like M=a/b/c.
      
      If you add a trailing slash, like M=a/b/c/, you will get ugly build
      logs (two slashes in a series), but it still works fine as long as it
      is consistent between 'make modules' and 'make modules_install'.
      
      The following commands correctly build and install the modules.
      
        $ make M=a/b/c/ modules
        $ sudo make M=a/b/c/ modules_install
      
      Since commit ccae4cfa ("kbuild: refactor scripts/Makefile.modinst"),
      a problem happens if you add a trailing slash only for modules_install.
      
        $ make M=a/b/c modules
        $ sudo make M=a/b/c/ modules_install
      
      No module is installed in this case, Johannes Berg reported. [1]
      
      Trim any trailing slashes from $(KBUILD_EXTMOD).
      
      I used the 'dirname' command to remove all the trailing slashes in
      case someone adds more slashes like M=a/b/c/////. The Make's built-in
      function, $(dir ...) cannot take care of such a case.
      
      [1]: https://lore.kernel.org/lkml/10cc8522b27a051e6a9c3e158a4c4b6414fd04a0.camel@sipsolutions.net/
      
      Fixes: ccae4cfa
      
       ("kbuild: refactor scripts/Makefile.modinst")
      Reported-by: default avatarJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      74ee585b
  2. Jun 05, 2021
  3. May 27, 2021
  4. May 26, 2021
  5. May 24, 2021
  6. May 23, 2021