--- zzzz-none-000/linux-4.4.271/scripts/Makefile.modpost 2021-06-03 06:22:09.000000000 +0000 +++ hawkeye-5590-750/linux-4.4.271/scripts/Makefile.modpost 2023-04-19 10:22:30.000000000 +0000 @@ -115,12 +115,98 @@ targets += $(modules:.ko=.mod.o) +ifdef CONFIG_DEBUG_MEM_USAGE +MLDFLAGS_WRAP := --wrap=__kmalloc \ + --wrap=kmalloc \ + --wrap=__kmalloc_node \ + --wrap=kmalloc_node \ + --wrap=kzalloc \ + --wrap=kzalloc_node \ + --wrap=kmalloc_array \ + --wrap=kmalloc_order \ + --wrap=kmalloc_order_trace \ + --wrap=kcalloc \ + --wrap=krealloc \ + --wrap=kmemdup \ + --wrap=memdup_user \ + --wrap=kfree \ + --wrap=kzfree \ + --wrap=__vmalloc \ + --wrap=vmalloc \ + --wrap=vzalloc \ + --wrap=vmalloc_user \ + --wrap=vmalloc_32 \ + --wrap=vmalloc_node \ + --wrap=vzalloc_node \ + --wrap=vfree \ + --wrap=kvfree \ + --wrap=alloc_pages \ + --wrap=alloc_pages_node \ + --wrap=__alloc_pages_nodemask \ + --wrap=__get_free_pages \ + --wrap=get_zeroed_page \ + --wrap=free_pages \ + --wrap=__free_pages \ + --wrap=dma_alloc_coherent \ + --wrap=dma_free_coherent \ + --wrap=dma_pool_alloc \ + --wrap=dma_pool_free \ + --wrap=kmem_cache_alloc \ + --wrap=kmem_cache_alloc_node \ + --wrap=kmem_cache_alloc_trace \ + --wrap=kmem_cache_alloc_node_trace \ + --wrap=kmem_cache_free \ + --wrap=mempool_alloc \ + --wrap=mempool_free \ + --wrap=devm_kmalloc \ + --wrap=devm_kmalloc_array \ + --wrap=devm_kzalloc \ + --wrap=devm_kcalloc \ + --wrap=devm_kmemdup \ + --wrap=devm_kfree \ + --wrap=devm_get_free_pages \ + --wrap=devm_free_pages + +MNEW_LD_FLAGS := $(MLDFLAGS_WRAP) + +cmd_export_mnew_ldflags = \ + $(if $(findstring kernel/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring arch/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring init/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring mm/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring block/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring kernel/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring block/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring usr/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring security/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring sound/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring crypto/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring firmware/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring samples/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring tools/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring lib/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring fs/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring ipc/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring drivers/, $@), $(filter-out $(MNEW_LD_FLAGS), $(MLDFLAGS_WRAP))) \ + $(if $(findstring drivers/net/, $@), $(MLDFLAGS_WRAP)) \ + $(if $(findstring net/, $@), $(MLDFLAGS_WRAP)) \ + $(if $(findstring /linux-ipq_, $@), $(MLDFLAGS_WRAP)) +endif + + # Step 6), final link of the modules +ifdef CONFIG_DEBUG_MEM_USAGE +quiet_cmd_ld_ko_o = LD [M] $@ + cmd_ld_ko_o = $(LD) $(cmd_export_mnew_ldflags) -r $(LDFLAGS) \ + $(KBUILD_LDFLAGS_MODULE) $(LDFLAGS_MODULE) \ + -o $@ $(filter-out FORCE,$^) +else quiet_cmd_ld_ko_o = LD [M] $@ cmd_ld_ko_o = $(LD) -r $(LDFLAGS) \ $(KBUILD_LDFLAGS_MODULE) $(LDFLAGS_MODULE) \ -o $@ $(filter-out FORCE,$^) +endif $(modules): %.ko :%.o %.mod.o FORCE $(call if_changed,ld_ko_o)