lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202107311455.guGmXIq7-lkp@intel.com>
Date:   Sat, 31 Jul 2021 14:05:01 +0800
From:   kernel test robot <lkp@...el.com>
To:     Faycal Benmlih <faycal.benmlih@...el.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [mchinth: sep_socwatch_linux_5_9 19/41] drivers/platform/x86/sepdk/sep/linuxos.c:244:26: sparse: sparse: incorrect type in argument 1
 (different address spaces)

Hi Faycal,

First bad commit (maybe != root cause):

tree:   https://github.com/mchinth/linux  sep_socwatch_linux_5_9
head:   7296486889985b9d9895a39f551764a4b0425bea
commit: e65547c5a9bb37e907edecece4da7cb12dadea96 [19/41] platform/x86: Use $(srctree) instead of $(src) to adapt to kbuild regression
config: i386-randconfig-s032-20210730 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.3-341-g8af24329-dirty
        # https://github.com/mchinth/linux/commit/e65547c5a9bb37e907edecece4da7cb12dadea96
        git remote add mchinth https://github.com/mchinth/linux
        git fetch --no-tags mchinth  sep_socwatch_linux_5_9
        git checkout e65547c5a9bb37e907edecece4da7cb12dadea96
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=i386 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>


sparse warnings: (new ones prefixed by >>)
   drivers/platform/x86/sepdk/sep/linuxos.c: note: in included file (through drivers/platform/x86/sepdk/inc/apic.h):
   /usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:406:9: sparse: sparse: preprocessor token offsetof redefined
   drivers/platform/x86/sepdk/sep/linuxos.c: note: in included file (through include/uapi/linux/posix_types.h, include/uapi/linux/types.h, include/linux/types.h, ...):
   include/linux/stddef.h:17:9: sparse: this was the original definition
>> drivers/platform/x86/sepdk/sep/linuxos.c:244:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct path const * @@     got struct path [noderef] __rcu * @@
   drivers/platform/x86/sepdk/sep/linuxos.c:244:26: sparse:     expected struct path const *
   drivers/platform/x86/sepdk/sep/linuxos.c:244:26: sparse:     got struct path [noderef] __rcu *
>> drivers/platform/x86/sepdk/sep/linuxos.c:430:36: sparse: sparse: cast removes address space '__user' of expression
   drivers/platform/x86/sepdk/sep/linuxos.c:503:44: sparse: sparse: cast removes address space '__user' of expression
   drivers/platform/x86/sepdk/sep/linuxos.c:447:33: sparse: sparse: dereference of noderef expression
   drivers/platform/x86/sepdk/sep/linuxos.c:889:48: sparse: sparse: dereference of noderef expression

vim +244 drivers/platform/x86/sepdk/sep/linuxos.c

d605aabab41663 Jon Moeller          2018-11-13  215  
d605aabab41663 Jon Moeller          2018-11-13  216  #ifdef DRV_MM_EXE_FILE_PRESENT
d605aabab41663 Jon Moeller          2018-11-13  217  static DRV_BOOL linuxos_Equal_VM_Exe_File(struct vm_area_struct *vma)
d605aabab41663 Jon Moeller          2018-11-13  218  {
d605aabab41663 Jon Moeller          2018-11-13  219  	S8 name_vm_file[MAXNAMELEN];
d605aabab41663 Jon Moeller          2018-11-13  220  	S8 name_exe_file[MAXNAMELEN];
d605aabab41663 Jon Moeller          2018-11-13  221  	S8 *pname_vm_file = NULL;
d605aabab41663 Jon Moeller          2018-11-13  222  	S8 *pname_exe_file = NULL;
d605aabab41663 Jon Moeller          2018-11-13  223  	DRV_BOOL res;
d605aabab41663 Jon Moeller          2018-11-13  224  
d605aabab41663 Jon Moeller          2018-11-13  225  	SEP_DRV_LOG_TRACE_IN("FMA: %p.", vma);
d605aabab41663 Jon Moeller          2018-11-13  226  
d605aabab41663 Jon Moeller          2018-11-13  227  	if (vma == NULL) {
d605aabab41663 Jon Moeller          2018-11-13  228  		SEP_DRV_LOG_TRACE_OUT("FALSE (!vma).");
d605aabab41663 Jon Moeller          2018-11-13  229  		return FALSE;
d605aabab41663 Jon Moeller          2018-11-13  230  	}
d605aabab41663 Jon Moeller          2018-11-13  231  
d605aabab41663 Jon Moeller          2018-11-13  232  	if (vma->vm_file == NULL) {
d605aabab41663 Jon Moeller          2018-11-13  233  		SEP_DRV_LOG_TRACE_OUT("FALSE (!vma->vm_file).");
d605aabab41663 Jon Moeller          2018-11-13  234  		return FALSE;
d605aabab41663 Jon Moeller          2018-11-13  235  	}
d605aabab41663 Jon Moeller          2018-11-13  236  
d605aabab41663 Jon Moeller          2018-11-13  237  	if (vma->vm_mm->exe_file == NULL) {
d605aabab41663 Jon Moeller          2018-11-13  238  		SEP_DRV_LOG_TRACE_OUT("FALSE (!vma->vm_mm->exe_file).");
d605aabab41663 Jon Moeller          2018-11-13  239  		return FALSE;
d605aabab41663 Jon Moeller          2018-11-13  240  	}
d605aabab41663 Jon Moeller          2018-11-13  241  
d605aabab41663 Jon Moeller          2018-11-13  242  	pname_vm_file = D_PATH(vma->vm_file,
d605aabab41663 Jon Moeller          2018-11-13  243  			name_vm_file, MAXNAMELEN);
d605aabab41663 Jon Moeller          2018-11-13 @244  	pname_exe_file = D_PATH(vma->vm_mm->exe_file,
d605aabab41663 Jon Moeller          2018-11-13  245  			name_exe_file, MAXNAMELEN);
d605aabab41663 Jon Moeller          2018-11-13  246  	res = strcmp(pname_vm_file, pname_exe_file) == 0;
d605aabab41663 Jon Moeller          2018-11-13  247  
d605aabab41663 Jon Moeller          2018-11-13  248  	SEP_DRV_LOG_TRACE_OUT("Res: %u.", res);
d605aabab41663 Jon Moeller          2018-11-13  249  	return res;
d605aabab41663 Jon Moeller          2018-11-13  250  }
d605aabab41663 Jon Moeller          2018-11-13  251  #endif
d605aabab41663 Jon Moeller          2018-11-13  252  
d605aabab41663 Jon Moeller          2018-11-13  253  /* ------------------------------------------------------------------------- */
d605aabab41663 Jon Moeller          2018-11-13  254  /*!
d605aabab41663 Jon Moeller          2018-11-13  255   * @fn          linuxos_Map_Kernel_Modules (void)
d605aabab41663 Jon Moeller          2018-11-13  256   *
d605aabab41663 Jon Moeller          2018-11-13  257   * @brief       Obtain kernel module details from modules list
d605aabab41663 Jon Moeller          2018-11-13  258   *              and map the details to the module record.
d605aabab41663 Jon Moeller          2018-11-13  259   *
d605aabab41663 Jon Moeller          2018-11-13  260   * @return      S32       VT_SUCCESS on success
d605aabab41663 Jon Moeller          2018-11-13  261   */
d605aabab41663 Jon Moeller          2018-11-13  262  static S32 linuxos_Map_Kernel_Modules(void)
d605aabab41663 Jon Moeller          2018-11-13  263  {
1f57010172d61a Manisha Chinthapally 2018-11-13  264  #if defined(CONFIG_MODULES)
d605aabab41663 Jon Moeller          2018-11-13  265  	struct module *current_module;
d605aabab41663 Jon Moeller          2018-11-13  266  	struct list_head *modules;
d605aabab41663 Jon Moeller          2018-11-13  267  	U16 exec_mode;
d605aabab41663 Jon Moeller          2018-11-13  268  	unsigned long long addr;
d605aabab41663 Jon Moeller          2018-11-13  269  	unsigned long long size;
d605aabab41663 Jon Moeller          2018-11-13  270  #if defined(CONFIG_RANDOMIZE_BASE)
d605aabab41663 Jon Moeller          2018-11-13  271  	unsigned long dyn_addr = 0;
d605aabab41663 Jon Moeller          2018-11-13  272  #endif
d605aabab41663 Jon Moeller          2018-11-13  273  
d605aabab41663 Jon Moeller          2018-11-13  274  	SEP_DRV_LOG_TRACE_IN("");
d605aabab41663 Jon Moeller          2018-11-13  275  
1f57010172d61a Manisha Chinthapally 2018-11-13  276  
d605aabab41663 Jon Moeller          2018-11-13  277  	mutex_lock(&module_mutex);
d605aabab41663 Jon Moeller          2018-11-13  278  
d605aabab41663 Jon Moeller          2018-11-13  279  #if defined(DRV_EM64T)
d605aabab41663 Jon Moeller          2018-11-13  280  	addr = (unsigned long)__START_KERNEL_map;
d605aabab41663 Jon Moeller          2018-11-13  281  	exec_mode = MODE_64BIT;
d605aabab41663 Jon Moeller          2018-11-13  282  #elif defined(DRV_IA32)
d605aabab41663 Jon Moeller          2018-11-13  283  	addr = (unsigned long)PAGE_OFFSET;
d605aabab41663 Jon Moeller          2018-11-13  284  	exec_mode = MODE_32BIT;
d605aabab41663 Jon Moeller          2018-11-13  285  #else
d605aabab41663 Jon Moeller          2018-11-13  286  	exec_mode = MODE_UNKNOWN;
d605aabab41663 Jon Moeller          2018-11-13  287  #endif
d605aabab41663 Jon Moeller          2018-11-13  288  
d605aabab41663 Jon Moeller          2018-11-13  289  	SEP_DRV_LOG_TRACE(
d605aabab41663 Jon Moeller          2018-11-13  290  		"     kernel module            address           size");
d605aabab41663 Jon Moeller          2018-11-13  291  	SEP_DRV_LOG_TRACE(
d605aabab41663 Jon Moeller          2018-11-13  292  		"  -------------------    ------------------    -------");
d605aabab41663 Jon Moeller          2018-11-13  293  
d605aabab41663 Jon Moeller          2018-11-13  294  	addr += (CONFIG_PHYSICAL_START + (CONFIG_PHYSICAL_ALIGN - 1)) &
d605aabab41663 Jon Moeller          2018-11-13  295  		~(CONFIG_PHYSICAL_ALIGN - 1);
d605aabab41663 Jon Moeller          2018-11-13  296  	size = (unsigned long)KERNEL_IMAGE_SIZE -
d605aabab41663 Jon Moeller          2018-11-13  297  	       ((CONFIG_PHYSICAL_START + (CONFIG_PHYSICAL_ALIGN - 1)) &
d605aabab41663 Jon Moeller          2018-11-13  298  		~(CONFIG_PHYSICAL_ALIGN - 1)) -
d605aabab41663 Jon Moeller          2018-11-13  299  	       1;
d605aabab41663 Jon Moeller          2018-11-13  300  
d605aabab41663 Jon Moeller          2018-11-13  301  #if defined(CONFIG_RANDOMIZE_BASE)
d605aabab41663 Jon Moeller          2018-11-13  302  	if (!dyn_addr) {
d605aabab41663 Jon Moeller          2018-11-13  303  		dyn_addr = (unsigned long)UTILITY_Find_Symbol("_text");
d605aabab41663 Jon Moeller          2018-11-13  304  		if (!dyn_addr) {
d605aabab41663 Jon Moeller          2018-11-13  305  			dyn_addr = (unsigned long)UTILITY_Find_Symbol("_stext");
d605aabab41663 Jon Moeller          2018-11-13  306  		}
d605aabab41663 Jon Moeller          2018-11-13  307  
d605aabab41663 Jon Moeller          2018-11-13  308  		if (dyn_addr && dyn_addr > addr) {
d605aabab41663 Jon Moeller          2018-11-13  309  			dyn_addr &= ~(PAGE_SIZE - 1);
d605aabab41663 Jon Moeller          2018-11-13  310  			size -= (dyn_addr - addr);
d605aabab41663 Jon Moeller          2018-11-13  311  			addr = dyn_addr;
d605aabab41663 Jon Moeller          2018-11-13  312  		} else {
d605aabab41663 Jon Moeller          2018-11-13  313  			SEP_DRV_LOG_WARNING_TRACE_OUT(
d605aabab41663 Jon Moeller          2018-11-13  314  				"Could not find the kernel start address!");
d605aabab41663 Jon Moeller          2018-11-13  315  		}
d605aabab41663 Jon Moeller          2018-11-13  316  	}
d605aabab41663 Jon Moeller          2018-11-13  317  #endif
d605aabab41663 Jon Moeller          2018-11-13  318  
d605aabab41663 Jon Moeller          2018-11-13  319  	linuxos_Load_Image_Notify_Routine(
d605aabab41663 Jon Moeller          2018-11-13  320  		"vmlinux", addr, size, 0, 0, 0,
d605aabab41663 Jon Moeller          2018-11-13  321  		LOPTS_1ST_MODREC | LOPTS_GLOBAL_MODULE | LOPTS_EXE, exec_mode,
d605aabab41663 Jon Moeller          2018-11-13  322  		-1, MR_SEG_NUM, 1, OS_ID_NATIVE);
d605aabab41663 Jon Moeller          2018-11-13  323  
d605aabab41663 Jon Moeller          2018-11-13  324  	SEP_DRV_LOG_TRACE("kmodule: %20s    0x%llx    0x%llx.", "vmlinux", addr,
d605aabab41663 Jon Moeller          2018-11-13  325  			  size);
d605aabab41663 Jon Moeller          2018-11-13  326  
d605aabab41663 Jon Moeller          2018-11-13  327  #if defined(DRV_SEP_ACRN_ON)
d605aabab41663 Jon Moeller          2018-11-13  328  	linuxos_Load_Image_Notify_Routine(
d605aabab41663 Jon Moeller          2018-11-13  329  		"VMM", 0x0, (U32)0xffffffffffffffffLL, 0, 0, 0,
d605aabab41663 Jon Moeller          2018-11-13  330  		LOPTS_1ST_MODREC | LOPTS_GLOBAL_MODULE | LOPTS_EXE, exec_mode,
d605aabab41663 Jon Moeller          2018-11-13  331  		-1, MR_SEG_NUM, 1, OS_ID_ACORN);
d605aabab41663 Jon Moeller          2018-11-13  332  #endif
d605aabab41663 Jon Moeller          2018-11-13  333  
d605aabab41663 Jon Moeller          2018-11-13  334  	for (modules = (struct list_head *)(THIS_MODULE->list.prev);
d605aabab41663 Jon Moeller          2018-11-13  335  	     (unsigned long)modules > MODULES_VADDR; modules = modules->prev)
d605aabab41663 Jon Moeller          2018-11-13  336  		;
d605aabab41663 Jon Moeller          2018-11-13  337  	list_for_each_entry (current_module, modules, list) {
d605aabab41663 Jon Moeller          2018-11-13  338  		char *name = current_module->name;
d605aabab41663 Jon Moeller          2018-11-13  339  #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 5, 0) ||                           \
d605aabab41663 Jon Moeller          2018-11-13  340  	defined(SEP_CONFIG_MODULE_LAYOUT)
d605aabab41663 Jon Moeller          2018-11-13  341  		addr = (unsigned long)current_module->core_layout.base;
d605aabab41663 Jon Moeller          2018-11-13  342  		size = current_module->core_layout.size;
d605aabab41663 Jon Moeller          2018-11-13  343  #else
d605aabab41663 Jon Moeller          2018-11-13  344  		addr = (unsigned long)current_module->module_core;
d605aabab41663 Jon Moeller          2018-11-13  345  		size = current_module->core_size;
d605aabab41663 Jon Moeller          2018-11-13  346  #endif
d605aabab41663 Jon Moeller          2018-11-13  347  
d605aabab41663 Jon Moeller          2018-11-13  348  		if (module_is_live(current_module)) {
d605aabab41663 Jon Moeller          2018-11-13  349  			SEP_DRV_LOG_TRACE("kmodule: %20s    0x%llx    0x%llx.",
d605aabab41663 Jon Moeller          2018-11-13  350  					  name, addr, size);
d605aabab41663 Jon Moeller          2018-11-13  351  			linuxos_Load_Image_Notify_Routine(
d605aabab41663 Jon Moeller          2018-11-13  352  				name, addr, size, 0, 0, 0, LOPTS_GLOBAL_MODULE,
d605aabab41663 Jon Moeller          2018-11-13  353  				exec_mode, -1, 0, 1, OS_ID_NATIVE);
d605aabab41663 Jon Moeller          2018-11-13  354  		}
d605aabab41663 Jon Moeller          2018-11-13  355  	}
d605aabab41663 Jon Moeller          2018-11-13  356  
d605aabab41663 Jon Moeller          2018-11-13  357  	mutex_unlock(&module_mutex);
d605aabab41663 Jon Moeller          2018-11-13  358  #endif
d605aabab41663 Jon Moeller          2018-11-13  359  	SEP_DRV_LOG_TRACE_OUT("OS_SUCCESS");
d605aabab41663 Jon Moeller          2018-11-13  360  	return OS_SUCCESS;
d605aabab41663 Jon Moeller          2018-11-13  361  }
d605aabab41663 Jon Moeller          2018-11-13  362  
d605aabab41663 Jon Moeller          2018-11-13  363  //
d605aabab41663 Jon Moeller          2018-11-13  364  // Register the module for a process.  The task_struct and mm
d605aabab41663 Jon Moeller          2018-11-13  365  // should be locked if necessary to make sure they don't change while we're
d605aabab41663 Jon Moeller          2018-11-13  366  // iterating...
d605aabab41663 Jon Moeller          2018-11-13  367  // Used as a service routine
d605aabab41663 Jon Moeller          2018-11-13  368  //
d605aabab41663 Jon Moeller          2018-11-13  369  static S32 linuxos_VMA_For_Process(struct task_struct *p,
d605aabab41663 Jon Moeller          2018-11-13  370  				   struct vm_area_struct *vma, S32 load_event,
d605aabab41663 Jon Moeller          2018-11-13  371  				   U32 *first)
d605aabab41663 Jon Moeller          2018-11-13  372  {
d605aabab41663 Jon Moeller          2018-11-13  373  	U32 options = 0;
d605aabab41663 Jon Moeller          2018-11-13  374  	S8 name[MAXNAMELEN];
d605aabab41663 Jon Moeller          2018-11-13  375  	S8 *pname = NULL;
d605aabab41663 Jon Moeller          2018-11-13  376  	U32 ppid = 0;
d605aabab41663 Jon Moeller          2018-11-13  377  	U16 exec_mode;
d605aabab41663 Jon Moeller          2018-11-13  378  	U64 page_offset = 0;
d605aabab41663 Jon Moeller          2018-11-13  379  
d605aabab41663 Jon Moeller          2018-11-13  380  #if defined(DRV_ANDROID)
d605aabab41663 Jon Moeller          2018-11-13  381  	char andr_app[TASK_COMM_LEN];
d605aabab41663 Jon Moeller          2018-11-13  382  #endif
d605aabab41663 Jon Moeller          2018-11-13  383  
d605aabab41663 Jon Moeller          2018-11-13  384  	SEP_DRV_LOG_NOTIFICATION_TRACE_IN(
d605aabab41663 Jon Moeller          2018-11-13  385  		load_event == 1, "P = %p, vma = %p, load_event: %d, first: %p.",
d605aabab41663 Jon Moeller          2018-11-13  386  		p, vma, load_event, first);
d605aabab41663 Jon Moeller          2018-11-13  387  
d605aabab41663 Jon Moeller          2018-11-13  388  	if (p == NULL) {
d605aabab41663 Jon Moeller          2018-11-13  389  		SEP_DRV_LOG_NOTIFICATION_ERROR(load_event == 1,
d605aabab41663 Jon Moeller          2018-11-13  390  					       "Skipped p=NULL.");
d605aabab41663 Jon Moeller          2018-11-13  391  		SEP_DRV_LOG_NOTIFICATION_TRACE_OUT(load_event == 1,
d605aabab41663 Jon Moeller          2018-11-13  392  						   "OS_SUCCESS (!p).");
d605aabab41663 Jon Moeller          2018-11-13  393  		return OS_SUCCESS;
d605aabab41663 Jon Moeller          2018-11-13  394  	}
d605aabab41663 Jon Moeller          2018-11-13  395  
d605aabab41663 Jon Moeller          2018-11-13  396  	if (vma->vm_file)
d605aabab41663 Jon Moeller          2018-11-13  397  		pname = D_PATH(vma->vm_file, name, MAXNAMELEN);
d605aabab41663 Jon Moeller          2018-11-13  398  
d605aabab41663 Jon Moeller          2018-11-13  399  	page_offset = vma->vm_pgoff;
d605aabab41663 Jon Moeller          2018-11-13  400  
d605aabab41663 Jon Moeller          2018-11-13  401  	if (!IS_ERR(pname) && pname != NULL) {
d605aabab41663 Jon Moeller          2018-11-13  402  		SEP_DRV_LOG_NOTIFICATION_TRACE(load_event == 1,
d605aabab41663 Jon Moeller          2018-11-13  403  					       "enum: %s, %d, %lx, %lx %llu.",
d605aabab41663 Jon Moeller          2018-11-13  404  					       pname, p->pid, vma->vm_start,
d605aabab41663 Jon Moeller          2018-11-13  405  					       (vma->vm_end - vma->vm_start),
d605aabab41663 Jon Moeller          2018-11-13  406  					       page_offset);
d605aabab41663 Jon Moeller          2018-11-13  407  
d605aabab41663 Jon Moeller          2018-11-13  408  		// if the VM_EXECUTABLE flag is set then this is the module
d605aabab41663 Jon Moeller          2018-11-13  409  		// that is being used to name the module
d605aabab41663 Jon Moeller          2018-11-13  410  		if (DRV_VM_MOD_EXECUTABLE(vma)) {
d605aabab41663 Jon Moeller          2018-11-13  411  			options |= LOPTS_EXE;
d605aabab41663 Jon Moeller          2018-11-13  412  #if defined(DRV_ANDROID)
d605aabab41663 Jon Moeller          2018-11-13  413  			if (!strcmp(pname, "/system/bin/app_process") ||
d605aabab41663 Jon Moeller          2018-11-13  414  			    !strcmp(pname, "/system/bin/app_process32") ||
d605aabab41663 Jon Moeller          2018-11-13  415  			    !strcmp(pname, "/system/bin/app_process64")) {
d605aabab41663 Jon Moeller          2018-11-13  416  				memset(andr_app, '\0', TASK_COMM_LEN);
d605aabab41663 Jon Moeller          2018-11-13  417  				strncpy(andr_app, p->comm, TASK_COMM_LEN);
d605aabab41663 Jon Moeller          2018-11-13  418  				pname = andr_app;
d605aabab41663 Jon Moeller          2018-11-13  419  			}
d605aabab41663 Jon Moeller          2018-11-13  420  #endif
d605aabab41663 Jon Moeller          2018-11-13  421  		}
d605aabab41663 Jon Moeller          2018-11-13  422  		// mark the first of the bunch...
d605aabab41663 Jon Moeller          2018-11-13  423  		if (*first == 1) {
d605aabab41663 Jon Moeller          2018-11-13  424  			options |= LOPTS_1ST_MODREC;
d605aabab41663 Jon Moeller          2018-11-13  425  			*first = 0;
d605aabab41663 Jon Moeller          2018-11-13  426  		}
d605aabab41663 Jon Moeller          2018-11-13  427  	}
d605aabab41663 Jon Moeller          2018-11-13  428  #if defined(DRV_ALLOW_VDSO)
d605aabab41663 Jon Moeller          2018-11-13  429  	else if ((vma->vm_mm  != NULL) &&
d605aabab41663 Jon Moeller          2018-11-13 @430  		 vma->vm_start == (long)vma->vm_mm->context.vdso) {
d605aabab41663 Jon Moeller          2018-11-13  431  		pname = "[vdso]";
d605aabab41663 Jon Moeller          2018-11-13  432  	}
d605aabab41663 Jon Moeller          2018-11-13  433  #endif
d605aabab41663 Jon Moeller          2018-11-13  434  #if defined(DRV_ALLOW_SYSCALL)
d605aabab41663 Jon Moeller          2018-11-13  435  	else if (vma->vm_start == VSYSCALL_START) {
d605aabab41663 Jon Moeller          2018-11-13  436  		pname = "[vsyscall]";
d605aabab41663 Jon Moeller          2018-11-13  437  	}
d605aabab41663 Jon Moeller          2018-11-13  438  #endif
d605aabab41663 Jon Moeller          2018-11-13  439  
d605aabab41663 Jon Moeller          2018-11-13  440  	if (pname != NULL) {
d605aabab41663 Jon Moeller          2018-11-13  441  		options = 0;
d605aabab41663 Jon Moeller          2018-11-13  442  		if (DRV_VM_MOD_EXECUTABLE(vma)) {
d605aabab41663 Jon Moeller          2018-11-13  443  			options |= LOPTS_EXE;
d605aabab41663 Jon Moeller          2018-11-13  444  		}
d605aabab41663 Jon Moeller          2018-11-13  445  
d605aabab41663 Jon Moeller          2018-11-13  446  		if (p && p->parent) {
d605aabab41663 Jon Moeller          2018-11-13  447  			ppid = p->parent->tgid;
d605aabab41663 Jon Moeller          2018-11-13  448  		}
d605aabab41663 Jon Moeller          2018-11-13  449  		exec_mode = linuxos_Get_Exec_Mode(p);
d605aabab41663 Jon Moeller          2018-11-13  450  		// record this module
d605aabab41663 Jon Moeller          2018-11-13  451  		linuxos_Load_Image_Notify_Routine(
d605aabab41663 Jon Moeller          2018-11-13  452  			pname, vma->vm_start, (vma->vm_end - vma->vm_start),
d605aabab41663 Jon Moeller          2018-11-13  453  			page_offset, p->pid, ppid, options, exec_mode,
d605aabab41663 Jon Moeller          2018-11-13  454  			load_event, 1, 0, OS_ID_NATIVE);
d605aabab41663 Jon Moeller          2018-11-13  455  	}
d605aabab41663 Jon Moeller          2018-11-13  456  
d605aabab41663 Jon Moeller          2018-11-13  457  	SEP_DRV_LOG_NOTIFICATION_TRACE_OUT(load_event == 1, "OS_SUCCESS.");
d605aabab41663 Jon Moeller          2018-11-13  458  	return OS_SUCCESS;
d605aabab41663 Jon Moeller          2018-11-13  459  }
d605aabab41663 Jon Moeller          2018-11-13  460  

:::::: The code at line 244 was first introduced by commit
:::::: d605aabab41663c9be9e8c549042933189adbf2f platform/x86: add sep and socwatch drivers without socperf.

:::::: TO: Jon Moeller <jon.moeller@...el.com>
:::::: CC: Faycal Benmlih <faycal.benmlih@...el.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (37755 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ