uipc_shm.c (175164) | uipc_shm.c (175383) |
---|---|
1/*- 2 * Copyright (c) 2006 Robert N. M. Watson 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 17 unchanged lines hidden (view full) --- 26 27/* 28 * Support for shared swap-backed anonymous memory objects via 29 * shm_open(2) and shm_unlink(2). While most of the implementation is 30 * here, vm_mmap.c contains mapping logic changes. 31 * 32 * TODO: 33 * | 1/*- 2 * Copyright (c) 2006 Robert N. M. Watson 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 17 unchanged lines hidden (view full) --- 26 27/* 28 * Support for shared swap-backed anonymous memory objects via 29 * shm_open(2) and shm_unlink(2). While most of the implementation is 30 * here, vm_mmap.c contains mapping logic changes. 31 * 32 * TODO: 33 * |
34 * (1) Convert test utilities into regression tests and import them into 35 * src/tools/regression. 36 * | |
37 * (2) Need to export data to a userland tool via a sysctl. Should ipcs(1) 38 * and ipcrm(1) be expanded or should new tools to manage both POSIX 39 * kernel semaphores and POSIX shared memory be written? 40 * 41 * (3) Add support for this file type to fstat(1). 42 * 43 * (4) Resource limits? Does this need its own resource limits or are the 44 * existing limits in mmap(2) sufficient? 45 * 46 * (5) Partial page truncation. vnode_pager_setsize() will zero any parts 47 * of a partially mapped page as a result of ftruncate(2)/truncate(2). 48 * We can do the same (with the same pmap evil), but do we need to 49 * worry about the bits on disk if the page is swapped out or will the 50 * swapper zero the parts of a page that are invalid if the page is 51 * swapped back in for us? 52 */ 53 54#include <sys/cdefs.h> | 34 * (2) Need to export data to a userland tool via a sysctl. Should ipcs(1) 35 * and ipcrm(1) be expanded or should new tools to manage both POSIX 36 * kernel semaphores and POSIX shared memory be written? 37 * 38 * (3) Add support for this file type to fstat(1). 39 * 40 * (4) Resource limits? Does this need its own resource limits or are the 41 * existing limits in mmap(2) sufficient? 42 * 43 * (5) Partial page truncation. vnode_pager_setsize() will zero any parts 44 * of a partially mapped page as a result of ftruncate(2)/truncate(2). 45 * We can do the same (with the same pmap evil), but do we need to 46 * worry about the bits on disk if the page is swapped out or will the 47 * swapper zero the parts of a page that are invalid if the page is 48 * swapped back in for us? 49 */ 50 51#include <sys/cdefs.h> |
55__FBSDID("$FreeBSD: head/sys/kern/uipc_shm.c 175164 2008-01-08 21:58:16Z jhb $"); | 52__FBSDID("$FreeBSD: head/sys/kern/uipc_shm.c 175383 2008-01-16 15:51:24Z jhb $"); |
56 57#include "opt_mac.h" 58 59#include <sys/param.h> 60#include <sys/fcntl.h> 61#include <sys/file.h> 62#include <sys/filedesc.h> 63#include <sys/fnv_hash.h> --- 545 unchanged lines hidden --- | 53 54#include "opt_mac.h" 55 56#include <sys/param.h> 57#include <sys/fcntl.h> 58#include <sys/file.h> 59#include <sys/filedesc.h> 60#include <sys/fnv_hash.h> --- 545 unchanged lines hidden --- |