22 lines
497 B
C
22 lines
497 B
C
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||
|
/*
|
||
|
* Module kmemleak support
|
||
|
*
|
||
|
* Copyright (C) 2009 Catalin Marinas
|
||
|
*/
|
||
|
|
||
|
#include <linux/module.h>
|
||
|
#include <linux/kmemleak.h>
|
||
|
#include "internal.h"
|
||
|
|
||
|
void kmemleak_load_module(const struct module *mod,
|
||
|
const struct load_info *info)
|
||
|
{
|
||
|
/* only scan writable, non-executable sections */
|
||
|
for_each_mod_mem_type(type) {
|
||
|
if (type != MOD_DATA && type != MOD_INIT_DATA &&
|
||
|
!mod->mem[type].is_rox)
|
||
|
kmemleak_no_scan(mod->mem[type].base);
|
||
|
}
|
||
|
}
|