Lines Matching refs:frontswap
5 (Note, frontswap -- and cleancache (merged at 3.0) -- are the "frontends"
9 overview of frontswap and related kernel parts:
19 links itself to frontswap by calling frontswap_register_ops to set the
23 An "init" prepares the device to receive frontswap pages associated
35 to swap out a page, it first attempts to use frontswap. If the store returns
41 If a backend chooses, frontswap can be configured as a "writethrough
45 store frontswap pages to more completely manage its memory usage.
50 never be obtained from frontswap.
52 If properly configured, monitoring of frontswap is done via debugfs in
53 the /sys/kernel/debug/frontswap directory. The effectiveness of
54 frontswap can be measured (across all swap devices) with:
75 but-much-faster-than-disk "pseudo-RAM device" and the frontswap (and
111 memory pressure may result in swapping; frontswap allows those pages
117 using frontswap, investigation is also underway on the use of NVM as
121 what's the space/time overhead of frontswap?
123 If CONFIG_FRONTSWAP is disabled, every frontswap hook compiles into
125 swap device. If CONFIG_FRONTSWAP is enabled but no frontswap "backend"
128 AND a frontswap backend registers AND the backend fails every "store"
130 CPU overhead is still negligible -- and since every frontswap fail
135 As for space, if CONFIG_FRONTSWAP is enabled AND a frontswap backend
140 Dickins has observed that frontswap could probably steal one of
151 3) OK, how about a quick overview of what this frontswap patch does
154 Let's assume that a frontswap "backend" has registered during
156 frontswap backend has access to some "memory" that is not directly
162 This notifies frontswap to expect attempts to "store" swap pages
167 consults with the frontswap backend and if the backend says it does NOT
169 to the swap device as normal. Note that the response from the frontswap
175 frontswap sets a bit in the "frontswap_map" for the swap device
181 see if the page was earlier accepted by the frontswap backend. If
182 it was, the page of data is filled from the frontswap backend and
186 So every time the frontswap backend accepts a page, a swap device read
187 and (potentially) a swap device write are replaced by a "frontswap backend
188 store" and (possibly) a "frontswap backend loads", which are presumably much
191 4) Can't frontswap be configured as a "special" swap device that is
204 For example, the acceptance of any swap page by the frontswap backend is
205 entirely unpredictable. This is critical to the definition of frontswap
211 Further, frontswap is entirely synchronous whereas a real swap
217 conditions that would unnecessarily and greatly complicate frontswap
220 is free to manipulate the pages stored by frontswap. For example,
222 kernel sockets to move compressed frontswap pages to a remote machine.
232 frontswap: Since any "store" might fail, there must always be a real
233 slot on a real swap device to swap the page. Thus frontswap must be
237 that frontswap cannot contain more pages than the total of swapon'd
239 installation, frontswap is useless. Swapless portable devices
240 can still use frontswap but a backend for such devices must configure
252 frontswap rejects a store that would overwrite, it also must invalidate
259 When the (non-frontswap) swap subsystem swaps out a page to a real
261 space. But if frontswap has placed a page in transcendent memory, that
264 of the memory managed by frontswap and back into kernel-addressable memory.
270 7) Why does the frontswap patch create the new include file swapfile.h?
272 The frontswap code depends on some swap-subsystem-internal data