Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(427)

Side by Side Diff: src/trusted/service_runtime/sys_memory.c

Issue 298443002: Remove unused support for SysV shared memory (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/trusted/service_runtime/mmap_unittest.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2013 The Native Client Authors. All rights reserved. 2 * Copyright (c) 2013 The Native Client Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be 3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file. 4 * found in the LICENSE file.
5 */ 5 */
6 6
7 #include "native_client/src/trusted/service_runtime/sys_memory.h" 7 #include "native_client/src/trusted/service_runtime/sys_memory.h"
8 8
9 #include <errno.h> 9 #include <errno.h>
10 #include <string.h> 10 #include <string.h>
(...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 /* 396 /*
397 * Preemptively refuse to map anything that's not a regular file or 397 * Preemptively refuse to map anything that's not a regular file or
398 * shared memory segment. Other types usually report st_size of zero, 398 * shared memory segment. Other types usually report st_size of zero,
399 * which the code below will handle by just doing a dummy PROT_NONE 399 * which the code below will handle by just doing a dummy PROT_NONE
400 * mapping for the requested size and never attempting the underlying 400 * mapping for the requested size and never attempting the underlying
401 * NaClDesc Map operation. So without this check, the host OS never 401 * NaClDesc Map operation. So without this check, the host OS never
402 * gets the chance to refuse the mapping operation on an object that 402 * gets the chance to refuse the mapping operation on an object that
403 * can't do it. 403 * can't do it.
404 */ 404 */
405 if (!NACL_ABI_S_ISREG(stbuf.nacl_abi_st_mode) && 405 if (!NACL_ABI_S_ISREG(stbuf.nacl_abi_st_mode) &&
406 !NACL_ABI_S_ISSHM(stbuf.nacl_abi_st_mode) && 406 !NACL_ABI_S_ISSHM(stbuf.nacl_abi_st_mode)) {
407 !NACL_ABI_S_ISSHM_SYSV(stbuf.nacl_abi_st_mode)) {
408 map_result = -NACL_ABI_ENODEV; 407 map_result = -NACL_ABI_ENODEV;
409 goto cleanup; 408 goto cleanup;
410 } 409 }
411 410
412 /* 411 /*
413 * BUG(bsy): there's a race between this fstat and the actual mmap 412 * BUG(bsy): there's a race between this fstat and the actual mmap
414 * below. It's probably insoluble. Even if we fstat again after 413 * below. It's probably insoluble. Even if we fstat again after
415 * mmap and compared, the mmap could have "seen" the file with a 414 * mmap and compared, the mmap could have "seen" the file with a
416 * different size, after which the racing thread restored back to 415 * different size, after which the racing thread restored back to
417 * the same value before the 2nd fstat takes place. 416 * the same value before the 2nd fstat takes place.
(...skipping 952 matching lines...) Expand 10 before | Expand all | Expand 10 after
1370 size_t length, 1369 size_t length,
1371 int prot) { 1370 int prot) {
1372 struct NaClApp *nap = natp->nap; 1371 struct NaClApp *nap = natp->nap;
1373 1372
1374 NaClLog(3, "Entered NaClSysMprotect(0x%08"NACL_PRIxPTR", " 1373 NaClLog(3, "Entered NaClSysMprotect(0x%08"NACL_PRIxPTR", "
1375 "0x%08"NACL_PRIxPTR", 0x%"NACL_PRIxS", 0x%x)\n", 1374 "0x%08"NACL_PRIxPTR", 0x%"NACL_PRIxS", 0x%x)\n",
1376 (uintptr_t) natp, (uintptr_t) start, length, prot); 1375 (uintptr_t) natp, (uintptr_t) start, length, prot);
1377 1376
1378 return NaClSysMprotectInternal(nap, start, length, prot); 1377 return NaClSysMprotectInternal(nap, start, length, prot);
1379 } 1378 }
OLDNEW
« no previous file with comments | « src/trusted/service_runtime/mmap_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698