Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d35cb360 authored by Mathieu Desnoyers's avatar Mathieu Desnoyers Committed by Linus Torvalds
Browse files

markers: fix duplicate modpost entry



When a kernel was rebuilt, the previous Module.markers was not cleared.
It caused markers with different format strings to appear as duplicates
when a markers was changed.  This problem is present since
scripts/mod/modpost.c started to generate Module.markers, commit
b2e3e658

It therefore applies to 2.6.25, 2.6.26 and linux-next.

I merely merged the patches from Roland, Wenji and Takashi here.

Credits to
Roland McGrath <roland@redhat.com>
Wenji Huang <wenji.huang@oracle.com>
and
Takashi Nishiie <t-nishiie@np.css.fujitsu.com>

for providing the individual fixes.

- Changelog :
  - Integrated Takashi's Makefile modification to clear Module.markers upon
    make clean.

Signed-off-by: default avatarMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: Roland McGrath <roland@redhat.com>
Cc: Wenji Huang <wenji.huang@oracle.com>
Cc: Takashi Nishiie <t-nishiie@np.css.fujitsu.com>
Cc: <stable@kernel.org>		[2.6.25.x, 2.6.26.x]
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 5f17156f
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1148,7 +1148,8 @@ clean: archclean $(clean-dirs)
	@find . $(RCS_FIND_IGNORE) \
		\( -name '*.[oas]' -o -name '*.ko' -o -name '.*.cmd' \
		-o -name '.*.d' -o -name '.*.tmp' -o -name '*.mod.c' \
		-o -name '*.symtypes' -o -name 'modules.order' \) \
		-o -name '*.symtypes' -o -name 'modules.order' \
		-o -name 'Module.markers' \) \
		-type f -print | xargs rm -f

# mrproper - Delete all generated files, including .config
+1 −0
Original line number Diff line number Diff line
@@ -101,6 +101,7 @@ quiet_cmd_kernel-mod = MODPOST $@
      cmd_kernel-mod = $(modpost) $@

vmlinux.o: FORCE
	@rm -fr $(kernelmarkersfile)
	$(call cmd,kernel-mod)

# Declare generated files as targets for modpost
+2 −1
Original line number Diff line number Diff line
@@ -1992,6 +1992,7 @@ static void read_markers(const char *fname)
			mod->skip = 1;
		}

		if (!mod->skip)
			add_marker(mod, marker, fmt);
	}
	return;