History log of /freebsd/sys/vm/swap_pager.c (Results 176 – 200 of 1023)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 53faf5a7 13-Oct-2017 Konstantin Belousov <kib@FreeBSD.org>

Evaluate the real size of the sblk_zone.

Submitted by: ota@j.email.ne.jp
PR: 221356
Reviewed by: alc, markj
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D12660


# 50896984 10-Oct-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r324482


# 37244a84 08-Oct-2017 Alan Cox <alc@FreeBSD.org>

Replace an unnecessary call to vm_page_activate() by an assertion that
the page is already wired or queued. Prior to the elimination of PG_CACHED
pages, vm_page_grab() might have returned a valid, p

Replace an unnecessary call to vm_page_activate() by an assertion that
the page is already wired or queued. Prior to the elimination of PG_CACHED
pages, vm_page_grab() might have returned a valid, previously PG_CACHED
page, in which case enqueueing the page was necessary. Now, that can't
happen. Moreover, activating the page is a dubious choice, since the page
is not being accessed.

Reviewed by: kib
MFC after: 1 week

show more ...


# 41e5a226 01-Oct-2017 Alan Cox <alc@FreeBSD.org>

When an I/O error occurs on page out, there is no need to dirty the page,
because it is already dirty. Instead, assert that the page is dirty.

Reviewed by: kib, markj
MFC after: 1 week


Revision tags: release/10.4.0
# 8fcbcc2d 16-Sep-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r323635


# b754c279 13-Sep-2017 Navdeep Parhar <np@FreeBSD.org>

MFH @ r323558.


# d027ed2e 10-Sep-2017 Alan Cox <alc@FreeBSD.org>

To analyze the allocation of swap blocks by blist functions, add a method
for analyzing the radix tree structures and reporting on the number, and
sizes, of maximal intervals of free blocks. The rep

To analyze the allocation of swap blocks by blist functions, add a method
for analyzing the radix tree structures and reporting on the number, and
sizes, of maximal intervals of free blocks. The report includes the number
of maximal intervals, and also the number of them in each of several size
ranges, from small (size 1, or 3 to 4) to large (28657 to 46367) with size
boundaries defined by Fibonacci numbers. The report is written in the test
tool with the 's' command, or in a running kernel by sysctl.

The analysis of the radix tree frequently computes the position of the lone
bit set in a u_daddr_t, a computation that also appears in leaf allocation.
That computation has been moved into a function of its own, and optimized
for cases where an inlined machine instruction can replace the usual binary
search.

Submitted by: Doug Moore <dougm@rice.edu>
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D11906

show more ...


# 5be4ad9e 09-Sep-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r323343


# 85d88d87 06-Sep-2017 Konstantin Belousov <kib@FreeBSD.org>

Do not leak empty swblk.

In swp_pager_meta_build(), if the requested operation results in
freeing the last swap pointer in the swblk, free the trie node. Other
swap pager code does not expect to fi

Do not leak empty swblk.

In swp_pager_meta_build(), if the requested operation results in
freeing the last swap pointer in the swblk, free the trie node. Other
swap pager code does not expect to find completely empty swblk.

Reviewed by: alc, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

show more ...


# eed99cb8 06-Sep-2017 Konstantin Belousov <kib@FreeBSD.org>

In swp_pager_meta_build(), handle a race with other thread allocating
swapblk for our index while we dropped the object lock.

Noted by: jeff
Reviewed by: alc, markj
Tested by: pho
Sponsored by: The

In swp_pager_meta_build(), handle a race with other thread allocating
swapblk for our index while we dropped the object lock.

Noted by: jeff
Reviewed by: alc, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

show more ...


# 35872e79 30-Aug-2017 Konstantin Belousov <kib@FreeBSD.org>

Adjust interface of swapon_check_swzone() to its actual usage.

The function return value is not used. Its argument is always
swap_total/PAGE_SIZE, so make it not take any arguments.

Submitted by:

Adjust interface of swapon_check_swzone() to its actual usage.

The function return value is not used. Its argument is always
swap_total/PAGE_SIZE, so make it not take any arguments.

Submitted by: ota@j.email.ne.jp
PR: 221356
MFC after: 1 week

show more ...


# f08b3099 30-Aug-2017 Konstantin Belousov <kib@FreeBSD.org>

Make the swap_pager_full variable static.

r290920 removed the use of the variable from vm/vm_pageout.c.

Submitted by: ota@j.email.ne.jp
PR: 221356
MFC after: 1 week


# ee620ea4 28-Aug-2017 Alan Cox <alc@FreeBSD.org>

Update a couple vm_object lock assertions in the swap pager to reflect the
new use of the vm_object's lock to synchronize updates to a radix trie
mapping per-vm object page indices to on-disk swap bl

Update a couple vm_object lock assertions in the swap pager to reflect the
new use of the vm_object's lock to synchronize updates to a radix trie
mapping per-vm object page indices to on-disk swap blocks.

Fix a typo in a nearby comment.

Reviewed by: kib, markj
X-MFC with: r322913
Differential Revision: https://reviews.freebsd.org/D12134

show more ...


# 05505b6c 26-Aug-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r322921


# f425ab8e 26-Aug-2017 Konstantin Belousov <kib@FreeBSD.org>

Replace global swhash in swap pager with per-object trie to track swap
blocks assigned to the object pages.

- The global swhash_mtx is removed, trie is synchronized by the
corresponding object loc

Replace global swhash in swap pager with per-object trie to track swap
blocks assigned to the object pages.

- The global swhash_mtx is removed, trie is synchronized by the
corresponding object lock.
- The swp_pager_meta_free_all() function used during object
termination is optimized by only looking at the trie instead of
having to search whole hash for the swap blocks owned by the object.
- On swap_pager_swapoff(), instead of iterating over the swhash,
global object list have to be inspected. There, we have to ensure
that we do see valid trie content if we see that the object type is
swap.
Sizing of the swblk zone is same as for swblock zone, each swblk maps
SWAP_META_PAGES pages.

Proposed by: alc
Reviewed by: alc, markj (previous version)
Tested by: alc, pho (previous version)
Sponsored by: The FreeBSD Foundation
MFC after: 1 month
Differential revision: https://reviews.freebsd.org/D11435

show more ...


# 531c2d7a 24-Jul-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r320180


# bca9d05f 23-Jul-2017 Hans Petter Selasky <hselasky@FreeBSD.org>

Merge ^/head r319973 through 321382.


Revision tags: release/11.1.0
# 2fef18f8 19-Jul-2017 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r320994 through r321238.


# 9680bb98 19-Jul-2017 Konstantin Belousov <kib@FreeBSD.org>

Remove unused function swap_pager_isswapped().

Noted by: alc
Sponsored by: The FreeBSD Foundation
MFC after: 1 week


# a3604b95 27-Jun-2017 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r320042 through r320397.


# e2241590 24-Jun-2017 Alan Cox <alc@FreeBSD.org>

Increase the pageout cluster size to 32 pages.

Decouple the pageout cluster size from the size of the hash table entry
used by the swap pager for mapping (object, pindex) to a block on the
swap devi

Increase the pageout cluster size to 32 pages.

Decouple the pageout cluster size from the size of the hash table entry
used by the swap pager for mapping (object, pindex) to a block on the
swap device(s), and keep the size of a hash table entry at its current
size.

Eliminate a pointless macro.

Reviewed by: kib, markj (an earlier version)
MFC after: 4 weeks
Differential Revision: https://reviews.freebsd.org/D11305

show more ...


# 3a5d839e 21-Jun-2017 Alan Cox <alc@FreeBSD.org>

Eliminate an unused macro.

MFC after: 3 days


# 87b0ab69 17-Jun-2017 Alan Cox <alc@FreeBSD.org>

Pages that are passed to swap_pager_putpages() should already be fully
dirty. Assert that they are fully dirty rather than redundantly calling
vm_page_dirty() on them.

Reviewed by: kib, markj
MFC a

Pages that are passed to swap_pager_putpages() should already be fully
dirty. Assert that they are fully dirty rather than redundantly calling
vm_page_dirty() on them.

Reviewed by: kib, markj
MFC after: 1 week
X-MFC after: r319932

show more ...


# 686fb94a 10-Jun-2017 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r319548 through r319778.


# 761097c8 06-Jun-2017 Alan Cox <alc@FreeBSD.org>

Starting in r118390, swaponsomething() began to reserve the blocks at the
beginning of a swap area for a disk label. However, neither r118390 nor
r118544, which increased the reservation from one to

Starting in r118390, swaponsomething() began to reserve the blocks at the
beginning of a swap area for a disk label. However, neither r118390 nor
r118544, which increased the reservation from one to two blocks, correctly
accounted for these blocks when updating the variable "swap_pager_avail".
This change corrects that error.

Reviewed by: kib
MFC after: 5 days

show more ...


12345678910>>...41