kernel-hacking-2024-linux-s.../include/asm-s390
Heiko Carstens f4eb07c17d [S390] Virtual memmap for s390.
Virtual memmap support for s390. Inspired by the ia64 implementation.

Unlike ia64 we need a mechanism which allows us to dynamically attach
shared memory regions.
These memory regions are accessed via the dcss device driver. dcss
implements the 'direct_access' operation, which requires struct pages
for every single shared page.
Therefore this implementation provides an interface to attach/detach
shared memory:

int add_shared_memory(unsigned long start, unsigned long size);
int remove_shared_memory(unsigned long start, unsigned long size);

The purpose of the add_shared_memory function is to add the given
memory range to the 1:1 mapping and to make sure that the
corresponding range in the vmemmap is backed with physical pages.
It also initialises the new struct pages.

remove_shared_memory in turn only invalidates the page table
entries in the 1:1 mapping. The page tables and the memory used for
struct pages in the vmemmap are currently not freed. They will be
reused when the next segment will be attached.
Given that the maximum size of a shared memory region is 2GB and
in addition all regions must reside below 2GB this is not too much of
a restriction, but there is room for improvement.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2006-12-08 15:56:07 +01:00
..
a.out.h
appldata.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
atomic.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
auxvec.h
bitops.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
bug.h [S390] __builtin_trap() and gcc version. 2006-07-12 16:39:42 +02:00
bugs.h
byteorder.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
cache.h
cacheflush.h
ccwdev.h [S390] Fix sparse warnings. 2006-07-12 16:41:55 +02:00
ccwgroup.h
checksum.h [NET]: S390 checksum annotations and cleanups. 2006-12-02 21:23:21 -08:00
cio.h [S390] cio: Make ccw_dev_id_is_equal() more robust. 2006-12-04 15:40:54 +01:00
cmb.h [S390] rework of channel measurement facility. 2006-06-29 15:08:41 +02:00
compat.h
cpcmd.h [S390] cpcmd <-> __cpcmd calling issues 2006-12-04 15:40:30 +01:00
cputime.h
current.h
dasd.h [S390] New DASD feature for ERP related logging 2006-12-08 15:54:15 +01:00
debug.h [PATCH] Fix 'make headers_check' on s390 2006-09-16 12:54:31 -07:00
delay.h
device.h Driver core: add dev_archdata to struct device 2006-12-01 14:52:01 -08:00
div64.h [S390] __div64_32 for 31 bit. 2006-09-28 16:55:39 +02:00
dma-mapping.h
dma.h [S390] empty function defines. 2006-09-20 15:58:51 +02:00
ebcdic.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
elf.h [PATCH] Fix 'make headers_check' on s390 2006-09-16 12:54:31 -07:00
emergency-restart.h
errno.h
extmem.h
fcntl.h
futex.h [S390] Make user-copy operations run-time configurable. 2006-09-20 15:59:42 +02:00
hardirq.h [S390] irq change build fixes. 2006-10-06 16:38:35 +02:00
idals.h
io.h [S390] Remove open-coded mem_map usage. 2006-10-04 20:02:23 +02:00
ioctl.h
ioctls.h
ipc.h
ipcbuf.h
irq.h [PATCH] Make touch_nmi_watchdog imply touch_softlockup_watchdog on all archs 2006-09-29 09:18:05 -07:00
irq_regs.h [S390] irq change build fixes. 2006-10-06 16:38:35 +02:00
irqflags.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
Kbuild [S390] Unexport <asm/z90crypt.h>, export <asm/zcrypt.h> in its place. 2006-09-24 22:07:25 +01:00
kdebug.h [S390] add kprobes support. 2006-09-20 15:58:39 +02:00
kexec.h [S390] Bad kexec control page allocation. 2006-12-04 15:40:28 +01:00
kmap_types.h
kprobes.h [S390] add kprobes support. 2006-09-20 15:58:39 +02:00
linkage.h
local.h
lowcore.h [S390] Reset infrastructure for re-IPL. 2006-12-04 15:40:26 +01:00
mathemu.h
mman.h
mmu.h
mmu_context.h
module.h
monwriter.h [S390] Linux API for writing z/VM APPLDATA Monitor records. 2006-09-20 15:59:34 +02:00
msgbuf.h
mutex.h
namei.h
page.h [S390] Virtual memmap for s390. 2006-12-08 15:56:07 +01:00
param.h
pci.h
percpu.h [PATCH] Fix typo in "syntax error if percpu macros are incorrectly used" patch 2006-10-06 08:53:41 -07:00
pgalloc.h [S390] Virtual memmap for s390. 2006-12-08 15:56:07 +01:00
pgtable.h [S390] Virtual memmap for s390. 2006-12-08 15:56:07 +01:00
poll.h
posix_types.h
processor.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
ptrace.h [PATCH] Add regs_return_value() helper 2006-10-02 07:57:16 -07:00
qdio.h fix file specification in comments 2006-10-03 23:01:26 +02:00
qeth.h
reset.h [S390] Reset infrastructure for re-IPL. 2006-12-04 15:40:26 +01:00
resource.h
rwsem.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
s390_ext.h [S390] irq change build fixes. 2006-10-06 16:38:35 +02:00
s390_rdev.h
scatterlist.h
sections.h
segment.h
semaphore.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
sembuf.h
setup.h [PATCH] cleanup asm/setup.h userspace visibility 2006-12-07 08:39:46 -08:00
sfp-machine.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h [PATCH] irq-flags: S390: Use the new IRQF_ constants 2006-07-02 13:58:48 -07:00
sigp.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
smp.h [S390] cpu shutdown rework 2006-12-04 15:40:33 +01:00
socket.h [AF_UNIX]: Datagram getpeersec 2006-06-29 16:58:06 -07:00
sockios.h
spinlock.h [S390] incorrect placement of include. 2006-10-04 20:02:12 +02:00
spinlock_types.h [PATCH] Directed yield: direct yield of spinlocks for s390. 2006-10-01 00:39:22 -07:00
stat.h
statfs.h
string.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
suspend.h
system.h [S390] pfault code cleanup. 2006-12-04 15:40:40 +01:00
tape390.h
termbits.h
termios.h [S390] termio <-> termios conversion error handling. 2006-12-04 15:40:02 +01:00
thread_info.h [S390] preempt_count initialization. 2006-06-29 15:02:47 +02:00
timer.h [S390] irq change improvements. 2006-10-11 15:31:26 +02:00
timex.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
tlb.h
tlbflush.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
todclk.h
topology.h
types.h [PATCH] Centralise definitions of sector_t and blkcnt_t 2006-12-04 19:41:15 -08:00
uaccess.h [S390] Add __must_check to uaccess functions. 2006-12-04 15:39:55 +01:00
ucontext.h
unaligned.h
unistd.h [PATCH] remove kernel syscalls 2006-12-07 08:39:37 -08:00
user.h
vtoc.h
xor.h
zcrypt.h [S390] update interface notes in zcrypt.h 2006-12-04 15:40:00 +01:00