History log of /src/sys/dev/mm.c |
Revision | | Date | Author | Comments |
1.25 |
| 25-Aug-2024 |
uwe | mm.c: g/c duplicate mm_ioctl declaration
|
1.24 |
| 05-Feb-2019 |
mrg | appease the gcc7 fallthru checker.
|
1.23 |
| 05-Dec-2018 |
christos | As discussed in tech-kern:
- make sysctl kern.expose_address tri-state: 0: no access 1: access to processes with open /dev/kmem 2: access to everyone defaults: 0: KASLR kernels 1: non-KASLR kernels
- improve efficiency by calling get_expose_address() per sysctl, not per process.
- don't expose addresses for linux procfs
- welcome to 8.99.27, changes to fill_*proc ABI
|
1.22 |
| 13-Oct-2016 |
ryo | branches: 1.22.14; 1.22.16; /dev/mem cannot lseek over 0x80000000 on 32bit architectures.
|
1.21 |
| 11-Jul-2016 |
matt | branches: 1.21.2; Add mm_md_page_color hook and use to support better page coloring.
|
1.20 |
| 17-Jan-2016 |
christos | add /dev/full
|
1.19 |
| 25-Jul-2014 |
dholland | branches: 1.19.4; Add d_discard to all struct cdevsw instances I could find.
All have been set to "nodiscard"; some should get a real implementation.
|
1.18 |
| 16-Mar-2014 |
dholland | branches: 1.18.2; Change (mostly mechanically) every cdevsw/bdevsw I can find to use designated initializers.
I have not built every extant kernel so I have probably broken at least one build; however I've also found and fixed some wrong cdevsw/bdevsw entries so even if so I think we come out ahead.
|
1.17 |
| 19-Jan-2013 |
matt | branches: 1.17.2; Fix __HAVE_MM_MD_CACHE_ALIASING case to use UVM_KMF_COLORMATCH so that uvm returns a page of the correct color.
|
1.16 |
| 21-Feb-2012 |
rmind | branches: 1.16.2; mm_init: re-enable zero page protection.
|
1.15 |
| 16-Jun-2011 |
joerg | branches: 1.15.2; 1.15.6; Explicitly initialise vaddr_t and let dead store elimination remove it later.
|
1.14 |
| 12-Jun-2011 |
rmind | Welcome to 5.99.53! Merge rmind-uvmplock branch:
- Reorganize locking in UVM and provide extra serialisation for pmap(9). New lock order: [vmpage-owner-lock] -> pmap-lock.
- Simplify locking in some pmap(9) modules by removing P->V locking.
- Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs).
- Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner. Add TLBSTATS option for x86 to collect statistics about TLB shootdowns.
- Unify /dev/mem et al in MI code and provide required locking (removes kernel-lock on some ports). Also, avoid cache-aliasing issues.
Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches formed the core changes of this branch.
|
1.13 |
| 08-Oct-2008 |
oster | branches: 1.13.16; 1.13.26; Need to include sys/termios.h here too.
|
1.12 |
| 08-Oct-2008 |
christos | return ENOTTY instead of EOPNOTSUPP for ioctl(/dev/null, TIOCGETA) from Andy Shevchenko
|
1.11 |
| 28-Apr-2008 |
martin | branches: 1.11.2; 1.11.6; Remove clause 3 and 4 from TNF licenses
|
1.10 |
| 04-Mar-2007 |
christos | branches: 1.10.36; 1.10.38; 1.10.40; Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
|
1.9 |
| 16-Nov-2006 |
christos | branches: 1.9.4; __unused removal on arguments; approved by core.
|
1.8 |
| 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
1.7 |
| 11-Dec-2005 |
christos | branches: 1.7.20; 1.7.22; merge ktrace-lwp.
|
1.6 |
| 20-Dec-2003 |
jdolecek | branches: 1.6.16; don't enumerate individual minor number cases in mmioctl(), handle all as single 'default' case adresses part of port-arm/23581 by Richard Earnshaw
|
1.5 |
| 21-Sep-2003 |
jdolecek | cleanup & uniform descriptor owner handling: * introduce fsetown(), fgetown(), fownsignal() - this sets/retrieves/signals the owner of descriptor, according to appropriate sematics of TIOCSPGRP/FIOSETOWN/SIOCSPGRP/TIOCGPGRP/FIOGETOWN/SIOCGPGRP ioctl; use these routines instead of custom code where appropriate * make every place handling TIOCSPGRP/TIOCGPGRP handle also FIOSETOWN/FIOGETOWN properly, and remove the translation of FIO[SG]OWN to TIOC[SG]PGRP in sys_ioctl() & sys_fcntl() * also remove the socket-specific hack in sys_ioctl()/sys_fcntl() and pass the ioctls down to soo_ioctl() as any other ioctl
change discussed on tech-kern@
|
1.4 |
| 29-Jun-2003 |
fvdl | branches: 1.4.2; Back out the lwp/ktrace changes. They contained a lot of colateral damage, and need to be examined and discussed more.
|
1.3 |
| 28-Jun-2003 |
darrenr | Pass lwp pointers throughtout the kernel, as required, so that the lwpid can be inserted into ktrace records. The general change has been to replace "struct proc *" with "struct lwp *" in various function prototypes, pass the lwp through and use l_proc to get the process pointer when needed.
Bump the kernel rev up to 1.6V
|
1.2 |
| 06-Sep-2002 |
gehenna | Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to dynamically generated by config(8).
- All device switches is defined as a constant structure in device drivers.
- The new grammer ``device-major'' is introduced to ``files''.
device-major <prefix> char <num> [block <num>] [<rules>]
- All device major numbers must be listed up in port dependent majors.<arch> by using this grammer.
- Added the new naming convention. The name of the device switch must be <prefix>_[bc]devsw for auto-generation of device switch tables.
- The backward compatibility of loading block/character device switch by LKM framework is broken. This is necessary to convert from block/character device major to device name in runtime and vice versa.
- The restriction to assign device major by LKM is completely removed. We don't need to reserve LKM entries for dynamic loading of device switch.
- In compile time, device major numbers list is packed into the kernel and the LKM framework will refer it to assign device major number dynamically.
|
1.1 |
| 27-Feb-2002 |
christos | branches: 1.1.2; 1.1.8; 1.1.12; Start of mi /dev/{mem,kmem,zero,null} driver. We add an ioctl entry, because we don't want to throw an error when FIONBIO is requested. We also allow FIOASYNC clear.
|
1.1.12.1 |
| 16-May-2002 |
gehenna | Add a prototype.
|
1.1.8.3 |
| 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.1.8.2 |
| 16-Mar-2002 |
jdolecek | Catch up with -current.
|
1.1.8.1 |
| 27-Feb-2002 |
jdolecek | file mm.c was added on branch kqueue on 2002-03-16 16:00:48 +0000
|
1.1.2.3 |
| 17-Sep-2002 |
nathanw | Catch up to -current.
|
1.1.2.2 |
| 28-Feb-2002 |
nathanw | Catch up to -current.
|
1.1.2.1 |
| 27-Feb-2002 |
nathanw | file mm.c was added on branch nathanw_sa on 2002-02-28 04:13:11 +0000
|
1.4.2.4 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.4.2.3 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.4.2.2 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.4.2.1 |
| 02-Jul-2003 |
darrenr | Apply the aborted ktrace-lwp changes to a specific branch. This is just for others to review, I'm concerned that patch fuziness may have resulted in some errant code being generated but I'll look at that later by comparing the diff from the base to the branch with the file I attempt to apply to it. This will, at the very least, put the changes in a better context for others to review them and attempt to tinker with removing passing of 'struct lwp' through the kernel.
|
1.6.16.3 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.6.16.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.6.16.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.7.22.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.7.22.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.7.20.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.9.4.1 |
| 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.10.40.2 |
| 04-May-2009 |
yamt | sync with head.
|
1.10.40.1 |
| 16-May-2008 |
yamt | sync with head.
|
1.10.38.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.10.36.2 |
| 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.10.36.1 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.11.6.1 |
| 19-Oct-2008 |
haad | Sync with HEAD.
|
1.11.2.1 |
| 10-Oct-2008 |
skrll | Sync with HEAD.
|
1.13.26.1 |
| 23-Jun-2011 |
cherry | Catchup with rmind-uvmplock merge.
|
1.13.16.6 |
| 21-May-2011 |
rmind | - Use MIN() instead of min(). - Use __read_mostly and __cacheline_aligned.
|
1.13.16.5 |
| 06-Mar-2011 |
rmind | - mm_init: disable pmap_protect() call on zero-page for now (x86 pmap issue). - Run evcnt_init() a little bit earlier, before uvm_init().
|
1.13.16.4 |
| 02-Jun-2010 |
rmind | Add code, dev_mem_getva() and dev_mem_relva(), to deal with cache-aliasing issues by allocating an appropriate KVA from physical address, according to the colour. Used by architectures, which have such requirement. For now, enable only for MIPS, others will follow. This renames previously invented mm_md_getva() and mm_md_relva(), since we do this in MI way, instead of MD. Architectures just need to define __HAVE_MM_MD_CACHE_ALIASING as indicator.
Reviewed by Matt Thomas.
|
1.13.16.3 |
| 25-Apr-2010 |
rmind | - Drop vmmap and its reserved page on hp700, sparc and x86. - mm_init: use UVM_KMF_WAITVA when allocating a VA.
|
1.13.16.2 |
| 25-Apr-2010 |
rmind | - Invent mm_md_getva() and mm_md_relva() routines, provided by MD and indicated with __HAVE_MM_MD_PREFER_VA. It will be used to deal with cache aliasing issues and thus fix little MIPS, ARM and friends.
- Convert dev_mem_readwrite() to use unmanaged mappings. Fix a missed offset addition in a case of direct map. Sprinkle various comments in the memory device driver.
- Add missing direct map handling on hp700 and vax. Make checks across m68k ports more consistent, reduce the diffs. Fix kernacc check miss on news68k. Minor off-by-one fix for alpha. Add MEMC_PHYS_BASE for mmap() case check on acorn26. Misc clean-up.
|
1.13.16.1 |
| 18-Mar-2010 |
rmind | Unify /dev/{mem,kmem,zero,null} implementations in MI code. Based on patch from Joerg Sonnenberger, proposed on tech-kern@, in February 2008.
Work and depression still in progress.
|
1.15.6.1 |
| 24-Feb-2012 |
mrg | sync to -current.
|
1.15.2.3 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.15.2.2 |
| 23-Jan-2013 |
yamt | sync with head
|
1.15.2.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.16.2.3 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.16.2.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.16.2.1 |
| 25-Feb-2013 |
tls | resync with head
|
1.17.2.1 |
| 18-May-2014 |
rmind | sync with head
|
1.18.2.1 |
| 10-Aug-2014 |
tls | Rebase.
|
1.19.4.3 |
| 05-Dec-2016 |
skrll | Sync with HEAD
|
1.19.4.2 |
| 05-Oct-2016 |
skrll | Sync with HEAD
|
1.19.4.1 |
| 19-Mar-2016 |
skrll | Sync with HEAD
|
1.21.2.1 |
| 04-Nov-2016 |
pgoyette | Sync with HEAD
|
1.22.16.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.22.14.1 |
| 26-Dec-2018 |
pgoyette | Sync with HEAD, resolve a few conflicts
|