A mirror of the official Linux kernel repository just in case
Go to file
David Hildenbrand 2bba2ffbe0 powerpc/nohash/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
Let's support __HAVE_ARCH_PTE_SWP_EXCLUSIVE on 32bit and 64bit.

On 64bit, let's use MSB 56 (LSB 7), located right next to the page type. 
On 32bit, let's use LSB 2 to avoid stealing one bit from the swap offset.

There seems to be no real reason why these bits cannot be used for swap
PTEs.  The important part is that _PAGE_PRESENT and _PAGE_HASHPTE remain
0.

While at it, mask the type in __swp_entry() and remove _PAGE_BIT_SWAP_TYPE
from pte-e500.h: while it was used in 64bit code it was ignored in 32bit
code.

Link: https://lkml.kernel.org/r/20230113171026.582290-19-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Nicholas Piggin <npiggin@gmail.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2023-02-02 22:33:09 -08:00
arch powerpc/nohash/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE 2023-02-02 22:33:09 -08:00
block block-6.2-2023-01-13 2023-01-13 17:41:19 -06:00
certs
crypto
Documentation Documentation/mm: update references to __m[un]lock_page() to *_folio() 2023-02-02 22:33:05 -08:00
drivers Sync mm-stable with mm-hotfixes-stable to pick up dependent patches 2023-01-31 17:25:17 -08:00
fs mm/mmu_notifier: remove unused mmu_notifier_range_update_to_read_only export 2023-02-02 22:32:54 -08:00
include mm: pagevec: add folio_batch_reinit() 2023-02-02 22:33:04 -08:00
init Sync with v6.2-rc4 2023-01-18 16:52:20 -08:00
io_uring mm/nommu: factor out check for NOMMU shared mappings into is_nommu_shared_mapping() 2023-01-18 17:12:56 -08:00
ipc
kernel mm: remove 'First tail page' members from struct page 2023-02-02 22:32:59 -08:00
lib maple_tree: fix comment of mte_destroy_walk 2023-02-02 22:33:01 -08:00
LICENSES
mm mm/debug_vm_pgtable: more pte_swp_exclusive() sanity checks 2023-02-02 22:33:05 -08:00
net mm: remove zap_page_range and create zap_vma_pages 2023-01-18 17:12:55 -08:00
rust
samples
scripts kernel hardening fixes for v6.2-rc4 2023-01-14 10:04:00 -06:00
security mm: new primitive kvmemdup() 2023-01-18 17:12:47 -08:00
sound sound fixes for 6.2-rc4 2023-01-13 08:20:29 -06:00
tools maple_tree: remove the parameter entry of mas_preallocate 2023-02-02 22:32:52 -08:00
usr
virt KVM: Ensure lockdep knows about kvm->lock vs. vcpu->mutex ordering rule 2023-01-11 13:32:21 -05:00
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap .mailmap: update e-mail address for Eugen Hristev 2023-01-31 16:44:08 -08:00
.rustfmt.toml
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS MAINTAINERS/DAMON: link maintainer profile, git trees, and website 2023-02-02 22:32:52 -08:00
Makefile Linux 6.2-rc4 2023-01-15 09:22:43 -06:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.