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>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 6 Aug 2020 08:22:15 +0300
From:   "Paraschiv, Andra-Irina" <andraprs@...zon.com>
To:     linux-kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v6 15/18] nitro_enclaves: Add Makefile for the Nitro
 Enclaves driver



On 05/08/2020 17:23, kernel test robot wrote:
>
> Hi Andra,
>
> Thank you for the patch! Yet something to improve:
>
> [auto build test ERROR on linux/master]
> [also build test ERROR on linus/master v5.8 next-20200805]
> [If your patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch]
>
> url:    https://github.com/0day-ci/linux/commits/Andra-Paraschiv/Add-support-for-Nitro-Enclaves/20200805-171942
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git bcf876870b95592b52519ed4aafcf9d95999bc9c
> config: arm64-allyesconfig (attached as .config)
> compiler: aarch64-linux-gcc (GCC) 9.3.0
> reproduce (this is a W=1 build):
>          wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>          chmod +x ~/bin/make.cross
>          # save the attached .config to linux build tree
>          COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64

Removed, for now, the dependency on ARM64 arch. x86 is currently 
supported, with Arm to come afterwards.

Thanks,
Andra

>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@...el.com>
>
> All errors (new ones prefixed by >>):
>
>     drivers/virt/nitro_enclaves/ne_misc_dev.c: In function 'ne_setup_cpu_pool':
>>> drivers/virt/nitro_enclaves/ne_misc_dev.c:245:46: error: 'smp_num_siblings' undeclared (first use in this function); did you mean 'cpu_sibling'?
>       245 |  ne_cpu_pool.avail_cores_size = nr_cpu_ids / smp_num_siblings;
>           |                                              ^~~~~~~~~~~~~~~~
>           |                                              cpu_sibling
>     drivers/virt/nitro_enclaves/ne_misc_dev.c:245:46: note: each undeclared identifier is reported only once for each function it appears in
>     drivers/virt/nitro_enclaves/ne_misc_dev.c: In function 'ne_enclave_ioctl':
>     drivers/virt/nitro_enclaves/ne_misc_dev.c:928:54: error: 'smp_num_siblings' undeclared (first use in this function)
>       928 |   if (vcpu_id >= (ne_enclave->avail_cpu_cores_size * smp_num_siblings)) {
>           |                                                      ^~~~~~~~~~~~~~~~
>
> vim +245 drivers/virt/nitro_enclaves/ne_misc_dev.c
>
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  130
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  131  /**
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  132   * ne_setup_cpu_pool() - Set the NE CPU pool after handling sanity checks such
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  133   *                      as not sharing CPU cores with the primary / parent VM
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  134   *                      or not using CPU 0, which should remain available for
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  135   *                      the primary / parent VM. Offline the CPUs from the
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  136   *                      pool after the checks passed.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  137   * @ne_cpu_list:       The CPU list used for setting NE CPU pool.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  138   *
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  139   * Context: Process context.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  140   * Return:
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  141   * * 0 on success.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  142   * * Negative return value on failure.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  143   */
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  144  static int ne_setup_cpu_pool(const char *ne_cpu_list)
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  145  {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  146         int core_id = -1;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  147         unsigned int cpu = 0;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  148         cpumask_var_t cpu_pool = NULL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  149         unsigned int cpu_sibling = 0;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  150         unsigned int i = 0;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  151         int numa_node = -1;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  152         int rc = -EINVAL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  153
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  154         if (!ne_cpu_list)
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  155                 return 0;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  156
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  157         if (!zalloc_cpumask_var(&cpu_pool, GFP_KERNEL))
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  158                 return -ENOMEM;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  159
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  160         mutex_lock(&ne_cpu_pool.mutex);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  161
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  162         rc = cpulist_parse(ne_cpu_list, cpu_pool);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  163         if (rc < 0) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  164                 pr_err("%s: Error in cpulist parse [rc=%d]\n", ne_misc_dev.name, rc);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  165
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  166                 goto free_pool_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  167         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  168
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  169         cpu = cpumask_any(cpu_pool);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  170         if (cpu >= nr_cpu_ids) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  171                 pr_err("%s: No CPUs available in CPU pool\n", ne_misc_dev.name);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  172
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  173                 rc = -EINVAL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  174
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  175                 goto free_pool_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  176         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  177
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  178         /*
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  179          * Check if the CPUs from the NE CPU pool are from the same NUMA node.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  180          */
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  181         for_each_cpu(cpu, cpu_pool) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  182                 if (numa_node < 0) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  183                         numa_node = cpu_to_node(cpu);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  184                         if (numa_node < 0) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  185                                 pr_err("%s: Invalid NUMA node %d\n",
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  186                                        ne_misc_dev.name, numa_node);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  187
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  188                                 rc = -EINVAL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  189
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  190                                 goto free_pool_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  191                         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  192                 } else {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  193                         if (numa_node != cpu_to_node(cpu)) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  194                                 pr_err("%s: CPUs with different NUMA nodes\n",
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  195                                        ne_misc_dev.name);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  196
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  197                                 rc = -EINVAL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  198
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  199                                 goto free_pool_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  200                         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  201                 }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  202         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  203
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  204         /*
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  205          * Check if CPU 0 and its siblings are included in the provided CPU pool
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  206          * They should remain available for the primary / parent VM.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  207          */
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  208         if (cpumask_test_cpu(0, cpu_pool)) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  209                 pr_err("%s: CPU 0 has to remain available\n", ne_misc_dev.name);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  210
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  211                 rc = -EINVAL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  212
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  213                 goto free_pool_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  214         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  215
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  216         for_each_cpu(cpu_sibling, topology_sibling_cpumask(0)) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  217                 if (cpumask_test_cpu(cpu_sibling, cpu_pool)) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  218                         pr_err("%s: CPU sibling %d for CPU 0 is in CPU pool\n",
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  219                                ne_misc_dev.name, cpu_sibling);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  220
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  221                         rc = -EINVAL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  222
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  223                         goto free_pool_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  224                 }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  225         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  226
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  227         /*
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  228          * Check if CPU siblings are included in the provided CPU pool. The
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  229          * expectation is that CPU cores are made available in the CPU pool for
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  230          * enclaves.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  231          */
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  232         for_each_cpu(cpu, cpu_pool) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  233                 for_each_cpu(cpu_sibling, topology_sibling_cpumask(cpu)) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  234                         if (!cpumask_test_cpu(cpu_sibling, cpu_pool)) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  235                                 pr_err("%s: CPU %d is not in CPU pool\n",
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  236                                        ne_misc_dev.name, cpu_sibling);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  237
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  238                                 rc = -EINVAL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  239
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  240                                 goto free_pool_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  241                         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  242                 }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  243         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  244
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05 @245         ne_cpu_pool.avail_cores_size = nr_cpu_ids / smp_num_siblings;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  246
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  247         ne_cpu_pool.avail_cores = kcalloc(ne_cpu_pool.avail_cores_size,
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  248                                           sizeof(*ne_cpu_pool.avail_cores),
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  249                                           GFP_KERNEL);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  250         if (!ne_cpu_pool.avail_cores) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  251                 rc = -ENOMEM;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  252
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  253                 goto free_pool_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  254         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  255
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  256         for (i = 0; i < ne_cpu_pool.avail_cores_size; i++)
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  257                 if (!zalloc_cpumask_var(&ne_cpu_pool.avail_cores[i], GFP_KERNEL)) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  258                         rc = -ENOMEM;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  259
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  260                         goto free_cores_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  261                 }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  262
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  263         /* Split the NE CPU pool in CPU cores. */
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  264         for_each_cpu(cpu, cpu_pool) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  265                 core_id = topology_core_id(cpu);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  266                 if (core_id < 0 || core_id >= ne_cpu_pool.avail_cores_size) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  267                         pr_err("%s: Invalid core id  %d\n",
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  268                                ne_misc_dev.name, core_id);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  269
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  270                         rc = -EINVAL;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  271
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  272                         goto clear_cpumask;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  273                 }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  274
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  275                 cpumask_set_cpu(cpu, ne_cpu_pool.avail_cores[core_id]);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  276         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  277
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  278         /*
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  279          * CPUs that are given to enclave(s) should not be considered online
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  280          * by Linux anymore, as the hypervisor will degrade them to floating.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  281          * The physical CPUs (full cores) are carved out of the primary / parent
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  282          * VM and given to the enclave VM. The same number of vCPUs would run
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  283          * on less pCPUs for the primary / parent VM.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  284          *
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  285          * We offline them here, to not degrade performance and expose correct
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  286          * topology to Linux and user space.
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  287          */
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  288         for_each_cpu(cpu, cpu_pool) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  289                 rc = remove_cpu(cpu);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  290                 if (rc != 0) {
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  291                         pr_err("%s: CPU %d is not offlined [rc=%d]\n",
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  292                                ne_misc_dev.name, cpu, rc);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  293
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  294                         goto online_cpus;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  295                 }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  296         }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  297
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  298         free_cpumask_var(cpu_pool);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  299
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  300         ne_cpu_pool.numa_node = numa_node;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  301
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  302         mutex_unlock(&ne_cpu_pool.mutex);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  303
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  304         return 0;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  305
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  306  online_cpus:
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  307         for_each_cpu(cpu, cpu_pool)
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  308                 add_cpu(cpu);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  309  clear_cpumask:
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  310         for (i = 0; i < ne_cpu_pool.avail_cores_size; i++)
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  311                 cpumask_clear(ne_cpu_pool.avail_cores[i]);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  312  free_cores_cpumask:
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  313         for (i = 0; i < ne_cpu_pool.avail_cores_size; i++)
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  314                 free_cpumask_var(ne_cpu_pool.avail_cores[i]);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  315         kfree(ne_cpu_pool.avail_cores);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  316         ne_cpu_pool.avail_cores_size = 0;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  317  free_pool_cpumask:
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  318         free_cpumask_var(cpu_pool);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  319         mutex_unlock(&ne_cpu_pool.mutex);
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  320
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  321         return rc;
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  322  }
> 7d5c9a7dfa51e60 Andra Paraschiv 2020-08-05  323
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org




Amazon Development Center (Romania) S.R.L. registered office: 27A Sf. Lazar Street, UBC5, floor 2, Iasi, Iasi County, 700045, Romania. Registered in Romania. Registration number J22/2621/2005.

Powered by blists - more mailing lists