diff mbox

scripts/Makefile.modpost: error in finding modules from .mod files.

Message ID CAA5UCLK9Zssct_f_8sSm8bDGeMFaAv_kr2GTFFWSCcP=Xz9ikw@mail.gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

??? Aug. 29, 2012, 1:58 p.m. UTC
This error may happen when the user's id or path includes .ko string.
For example, user's id is xxx.ko and building test.ko module,
the test.mod file lists ko name and all object files.
   /home/xxx.ko/kernel_dev/device/drivers/test.ko
   /home/xxx.ko/kernel_dev/device/drivers/test_main.o
/home/xxx.ko/kernel_dev/device/drivers/test_io.o ...
Current Makefile.modpost and Makefile.modinst find and list up not
only test.ko but also other object files.
because all of object file's path includes .ko string.
This is a patch to fix it.

Signed-off-by: Gunho Lee <gunho.lee@lge.com>
---
 scripts/Makefile.modinst |    2 +-
 scripts/Makefile.modpost |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)


 # Stop after building .o files if NOFINAL is set. Makes compile tests quicker

Comments

Michal Marek Aug. 31, 2012, 3:47 p.m. UTC | #1
On Wed, Aug 29, 2012 at 10:58:12PM +0900, ??? wrote:
> This error may happen when the user's id or path includes .ko string.
> For example, user's id is xxx.ko and building test.ko module,
> the test.mod file lists ko name and all object files.
>    /home/xxx.ko/kernel_dev/device/drivers/test.ko
>    /home/xxx.ko/kernel_dev/device/drivers/test_main.o
> /home/xxx.ko/kernel_dev/device/drivers/test_io.o ...
> Current Makefile.modpost and Makefile.modinst find and list up not
> only test.ko but also other object files.
> because all of object file's path includes .ko string.
> This is a patch to fix it.
> 
> Signed-off-by: Gunho Lee <gunho.lee@lge.com>

Good catch, applied to kbuild.git#kbuild. BTW, your mailer (gmail?)
broke the log lines into two. I fixed it manually, but it makes the
recipient's life easier if you send your patches either using
git-send-email or a mailer that does not mangle the message (see
Documentation/email-clients.txt).

Michal
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst
index efa5d94..3d13d3a 100644
--- a/scripts/Makefile.modinst
+++ b/scripts/Makefile.modinst
@@ -9,7 +9,7 @@  include scripts/Kbuild.include

 #

-__modules := $(sort $(shell grep -h '\.ko' /dev/null $(wildcard
$(MODVERDIR)/*.mod)))
+__modules := $(sort $(shell grep -h '\.ko$$' /dev/null $(wildcard
$(MODVERDIR)/*.mod)))
 modules := $(patsubst %.o,%.ko,$(wildcard $(__modules:.ko=.o)))

 PHONY += $(modules)
diff --git a/scripts/Makefile.modpost b/scripts/Makefile.modpost
index 08dce14..a1cb022 100644
--- a/scripts/Makefile.modpost
+++ b/scripts/Makefile.modpost
@@ -60,7 +60,7 @@  kernelsymfile := $(objtree)/Module.symvers
 modulesymfile := $(firstword $(KBUILD_EXTMOD))/Module.symvers

 # Step 1), find all modules listed in $(MODVERDIR)/
-__modules := $(sort $(shell grep -h '\.ko' /dev/null $(wildcard
$(MODVERDIR)/*.mod)))
+__modules := $(sort $(shell grep -h '\.ko$$' /dev/null $(wildcard
$(MODVERDIR)/*.mod)))
 modules   := $(patsubst %.o,%.ko, $(wildcard $(__modules:.ko=.o)))