Files
tegra-linux-noble/include/linux
Dan Magenheimer 38b5faf4b1 mm: frontswap: core swap subsystem hooks and headers
This patch, 2of4, contains the changes to the core swap subsystem.
This includes:

(1) makes available core swap data structures (swap_lock, swap_list and
swap_info) that are needed by frontswap.c but we don't need to expose them
to the dozens of files that include swap.h so we create a new swapfile.h
just to extern-ify these and modify their declarations to non-static

(2) adds frontswap-related elements to swap_info_struct.  Frontswap_map
points to vzalloc'ed one-bit-per-swap-page metadata that indicates
whether the swap page is in frontswap or in the device and frontswap_pages
counts how many pages are in frontswap.

(3) adds hooks in the swap subsystem and extends try_to_unuse so that
frontswap_shrink can do a "partial swapoff".

Note that a failed frontswap_map allocation is safe... failure is noted
by lack of "FS" in the subsequent printk.

---

[v14: rebase to 3.4-rc2]
[v10: no change]
[v9: akpm@linux-foundation.org: mark some statics __read_mostly]
[v9: akpm@linux-foundation.org: add clarifying comments]
[v9: akpm@linux-foundation.org: no need to loop repeating try_to_unuse]
[v9: error27@gmail.com: remove superfluous check for NULL]
[v8: rebase to 3.0-rc4]
[v8: kamezawa.hiroyu@jp.fujitsu.com: change counter to atomic_t to avoid races]
[v8: kamezawa.hiroyu@jp.fujitsu.com: comment to clarify informational counters]
[v7: rebase to 3.0-rc3]
[v7: JBeulich@novell.com: add new swap struct elements only if config'd]
[v6: rebase to 3.0-rc1]
[v6: lliubbo@gmail.com: fix null pointer deref if vzalloc fails]
[v6: konrad.wilk@oracl.com: various checks and code clarifications/comments]
[v5: no change from v4]
[v4: rebase to 2.6.39]
Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>
Reviewed-by: Kamezawa Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Acked-by: Jan Beulich <JBeulich@novell.com>
Acked-by: Seth Jennings <sjenning@linux.vnet.ibm.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Hugh Dickins <hughd@google.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Nitin Gupta <ngupta@vflare.org>
Cc: Matthew Wilcox <matthew@wil.cx>
Cc: Chris Mason <chris.mason@oracle.com>
Cc: Rik Riel <riel@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
[v11: Rebased, fixed mm/swapfile.c context change]
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
2012-05-15 11:33:58 -04:00
..
2012-03-20 21:29:46 -04:00
2012-03-21 17:55:01 -07:00
2012-03-16 20:35:02 +00:00
2012-03-16 20:35:02 +00:00
2012-02-28 16:02:54 +01:00
2012-03-29 15:38:31 +10:30
2012-03-23 16:58:38 -07:00
2012-03-20 21:29:37 -04:00
2012-03-20 21:29:53 -04:00
2012-02-20 19:46:36 +11:00
2012-03-28 18:30:03 +01:00
2012-04-05 15:30:34 -07:00
2012-02-28 17:10:21 +00:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-27 22:45:26 -04:00
2012-03-08 10:50:35 -08:00
2012-03-21 17:54:57 -07:00
2012-03-08 10:50:35 -08:00
2012-02-29 15:35:41 -06:00
2012-03-15 21:41:34 +01:00
2012-03-03 15:04:45 -05:00
2012-03-28 17:19:28 -07:00
2012-04-03 17:23:23 -04:00
2012-03-05 15:26:47 -05:00
2012-03-21 17:54:58 -07:00
2012-03-21 17:55:01 -07:00
2012-03-16 21:49:24 +01:00
2012-03-20 21:29:38 -04:00
2012-03-28 18:30:03 +01:00
2012-03-08 11:38:50 -08:00
2012-03-12 22:19:13 +01:00
2012-03-06 11:01:33 +02:00
2012-03-19 16:53:08 -04:00
2012-03-22 19:43:43 -07:00
2012-03-28 18:30:03 +01:00
2012-03-31 08:09:50 +05:30
2012-03-08 10:50:35 -08:00
2012-03-28 18:30:03 +01:00