From: "Paraschiv, Andra-Irina" <andraprs@amazon.com>
To: linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v6 15/18] nitro_enclaves: Add Makefile for the Nitro Enclaves driver
Date: Thu, 6 Aug 2020 08:22:15 +0300 [thread overview]
Message-ID: <1a829062-5dca-82f2-0497-f9cbe6468f37@amazon.com> (raw)
In-Reply-To: <202008052204.eXZb6di1%lkp@intel.com>
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@intel.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.
next prev parent reply other threads:[~2020-08-06 11:01 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-05 9:09 [PATCH v6 00/18] Add support for Nitro Enclaves Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 01/18] nitro_enclaves: Add ioctl interface definition Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 02/18] nitro_enclaves: Define the PCI device interface Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 03/18] nitro_enclaves: Define enclave info for internal bookkeeping Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 04/18] nitro_enclaves: Init PCI device driver Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 05/18] nitro_enclaves: Handle PCI device command requests Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 06/18] nitro_enclaves: Handle out-of-band PCI device events Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 07/18] nitro_enclaves: Init misc device providing the ioctl interface Andra Paraschiv
2020-08-10 5:22 ` Alexander Graf
2020-08-11 7:58 ` Paraschiv, Andra-Irina
2020-08-05 9:10 ` [PATCH v6 08/18] nitro_enclaves: Add logic for creating an enclave VM Andra Paraschiv
2020-08-10 6:11 ` Alexander Graf
2020-08-11 8:16 ` Paraschiv, Andra-Irina
2020-08-05 9:10 ` [PATCH v6 09/18] nitro_enclaves: Add logic for setting an enclave vCPU Andra Paraschiv
2020-08-10 7:33 ` Alexander Graf
2020-08-11 8:52 ` Paraschiv, Andra-Irina
2020-08-05 9:10 ` [PATCH v6 10/18] nitro_enclaves: Add logic for getting the enclave image load info Andra Paraschiv
2020-08-10 9:57 ` Alexander Graf
2020-08-11 10:17 ` Paraschiv, Andra-Irina
2020-08-05 9:10 ` [PATCH v6 11/18] nitro_enclaves: Add logic for setting an enclave memory region Andra Paraschiv
2020-08-10 9:54 ` Alexander Graf
2020-08-05 9:10 ` [PATCH v6 12/18] nitro_enclaves: Add logic for starting an enclave Andra Paraschiv
2020-08-10 10:33 ` Alexander Graf
2020-08-05 9:10 ` [PATCH v6 13/18] nitro_enclaves: Add logic for terminating " Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 14/18] nitro_enclaves: Add Kconfig for the Nitro Enclaves driver Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 15/18] nitro_enclaves: Add Makefile " Andra Paraschiv
2020-08-05 14:23 ` kernel test robot
2020-08-06 5:22 ` Paraschiv, Andra-Irina [this message]
2020-08-05 9:10 ` [PATCH v6 16/18] nitro_enclaves: Add sample for ioctl interface usage Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 17/18] nitro_enclaves: Add overview documentation Andra Paraschiv
2020-08-05 9:10 ` [PATCH v6 18/18] MAINTAINERS: Add entry for the Nitro Enclaves driver Andra Paraschiv
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1a829062-5dca-82f2-0497-f9cbe6468f37@amazon.com \
--to=andraprs@amazon.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®