linux/arch/s390/include/asm
Jan Glauber 448694a1d5 module: undo module RONX protection correctly.
While debugging I stumbled over two problems in the code that protects module
pages.

First issue is that disabling the protection before freeing init or unload of
a module is not symmetric with the enablement. For instance, if pages are set
to RO the page range from module_core to module_core + core_ro_size is
protected. If a module is unloaded the page range from module_core to
module_core + core_size is set back to RW.
So pages that were not set to RO are also changed to RW.
This is not critical but IMHO it should be symmetric.

Second issue is that while set_memory_rw & set_memory_ro are used for
RO/RW changes only set_memory_nx is involved for NX/X. One would await that
the inverse function is called when the NX protection should be removed,
which is not the case here, unless I'm missing something.

Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2011-05-19 16:55:26 +09:30
..
Kbuild KVM: S390: Export kvm_virtio.h 2010-10-24 10:51:30 +02:00
airq.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
appldata.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
atomic.h Fix common misspellings 2011-03-31 11:26:23 -03:00
auxvec.h [S390] introduce vdso on s390 2008-12-25 13:38:55 +01:00
bitops.h bitops: remove minix bitops from asm/bitops.h 2011-03-23 19:46:22 -07:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bug.h panic: Allow warnings to set different taint flags 2010-05-19 08:36:48 +01:00
bugs.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h [S390] net: provide architecture specific NET_SKB_PAD 2011-02-17 13:13:59 +01:00
cacheflush.h module: undo module RONX protection correctly. 2011-05-19 16:55:26 +09:30
ccwdev.h [S390] ccw_driver: remove duplicate members 2011-03-23 10:15:59 +01:00
ccwgroup.h [S390] ccwgroup_driver: remove duplicate members 2011-03-23 10:15:59 +01:00
checksum.h [S390] convert/optimize csum_fold() to C 2009-09-11 10:29:43 +02:00
chpid.h [S390] types: add/fix types.h include in header files 2009-01-09 12:15:06 +01:00
chsc.h [S390] cio: move scsw helper functions to header file 2009-09-11 10:29:36 +02:00
cio.h Fix common misspellings 2011-03-31 11:26:23 -03:00
cmb.h [S390] types: add/fix types.h include in header files 2009-01-09 12:15:06 +01:00
cmpxchg.h [S390] cmpxchg: implement cmpxchg64() 2011-03-23 10:16:00 +01:00
compat.h [S390] Add is_32bit_task() helper function 2011-01-12 09:55:25 +01:00
cpcmd.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
cpu.h [S390] correct alignment of cpuid structure 2010-10-25 16:10:19 +02:00
cputime.h [S390] nohz: optimize arch_needs_cpu() 2011-01-05 12:47:28 +01:00
crw.h [S390] cio: wait for channel report 2010-02-26 22:37:29 +01:00
current.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
dasd.h [S390] dasd: Add support for raw ECKD access. 2011-01-05 12:47:30 +01:00
debug.h [S390] s390dbf: Add description for usage of "%s" in sprintf events 2009-09-11 10:29:53 +02:00
delay.h [S390] Provide arch specific mdelay implementation. 2009-10-06 10:35:08 +02:00
device.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
diag.h [S390] replace diag10() with diag10_range() function 2011-05-10 17:13:43 +02:00
div64.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
dma.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
ebcdic.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
elf.h [S390] Randomize PIEs 2011-01-12 09:55:25 +01:00
emergency-restart.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
errno.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
etr.h [S390] use inline assembly contraints available with gcc 3.3.3 2010-02-26 22:37:30 +01:00
extmem.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
fb.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
fcntl.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
fcx.h [S390] cio: update sac values 2008-12-25 13:39:06 +01:00
ftrace.h [S390] cleanup ftrace backend functions 2011-01-05 12:47:31 +01:00
futex.h futex: Sanitize futex ops argument types 2011-03-11 12:23:31 +01:00
hardirq.h [S390] time: move local_tick_enable()/disable() to timex.h 2011-01-05 12:47:24 +01:00
hugetlb.h [S390] pgtable: move pte_mkhuge() from hugetlb.h to pgtable.h 2010-10-25 16:10:19 +02:00
idals.h [S390] dasd: add High Performance FICON support 2009-03-26 15:24:05 +01:00
io.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
ioctl.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
ioctls.h ioctl: Use asm-generic/ioctls.h on s390 (enables termiox) 2010-10-22 10:20:01 -07:00
ipcbuf.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
ipl.h [S390] kernel: Append scpdata to kernel boot command line 2009-09-11 10:29:46 +02:00
irq.h [S390] ap bus: add support for irq statistics 2011-01-05 12:47:26 +01:00
irq_regs.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
irqflags.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
isc.h [S390] zcrypt: Use of Thin Interrupts 2008-12-25 13:38:57 +01:00
itcw.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
kdebug.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
kexec.h kexec jump: rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE 2008-08-15 08:35:42 -07:00
kmap_types.h kmap_types: make most arches use generic header file 2009-06-16 19:47:51 -07:00
kprobes.h [S390] kprobes: jprobe save and restore 2011-01-05 12:47:24 +01:00
kvm.h KVM: s390: Make psw available on all exits, not just a subset 2009-12-03 09:32:25 +02:00
kvm_host.h KVM: Remove unnecessary divide operations 2010-08-01 10:47:30 +03:00
kvm_para.h KVM: Add __KERNEL__ guards to exported headers 2009-09-10 10:46:48 +03:00
kvm_virtio.h KVM: S390: Add virtio hotplug add support 2010-10-24 10:51:29 +02:00
linkage.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
local.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
lowcore.h [S390] cleanup facility list handling 2010-10-25 16:10:21 +02:00
mathemu.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
mman.h mm: remove duplicate asm/mman.h files 2009-09-22 07:17:42 -07:00
mmu.h [S390] fix tlb flushing vs. concurrent /proc accesses 2010-08-24 09:26:34 +02:00
mmu_context.h [S390] fix alloc_pgste check in init_new_context 2011-05-10 17:13:43 +02:00
module.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
monwriter.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
msgbuf.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
mutex.h [S390] mutex: Introduce arch_mutex_cpu_relax() 2011-01-05 12:47:31 +01:00
nmi.h [S390] split/move machine check handler code 2009-03-26 15:24:10 +01:00
page.h [S390] mm: add devmem_is_allowed() for STRICT_DEVMEM checking 2010-11-10 10:05:54 +01:00
param.h [S390] Have param.h simply include <asm-generic/param.h>. 2010-01-04 09:05:58 +01:00
pci.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
percpu.h s390: switch to dynamic percpu allocator 2009-06-24 15:13:53 +09:00
perf_event.h irq_work: Add generic hardirq context callbacks 2010-10-18 19:58:50 +02:00
pgalloc.h [S390] lockless get_user_pages_fast() 2010-10-25 16:10:15 +02:00
pgtable.h mm: remove pte_*map_nested() 2010-10-26 16:52:08 -07:00
poll.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
posix_types.h [S390] asm-s390/posix_types.h: drop __USE_ALL usage 2009-01-09 12:15:04 +01:00
processor.h s390: remove task_show_regs 2011-02-15 07:34:16 -08:00
ptrace.h [S390] ptrace cleanup 2011-01-05 12:47:31 +01:00
qdio.h [S390] qdio: outbound tasklet scan threshold 2011-01-05 12:47:28 +01:00
qeth.h qeth: support ipv6 query arp cache for HiperSockets 2010-12-10 14:28:47 -08:00
reset.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
resource.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
rwsem.h rwsem: Move duplicate function prototypes to linux/rwsem.h 2011-01-27 12:30:39 +01:00
s390_ext.h [S390] extint: get rid of early code plus cleanup 2011-01-05 12:47:26 +01:00
scatterlist.h [S390] set ARCH_HAS_SG_CHAIN for s390 2010-10-25 16:10:15 +02:00
schid.h [S390] types: add/fix types.h include in header files 2009-01-09 12:15:06 +01:00
sclp.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
scsw.h [S390] cio: move scsw helper functions to header file 2009-09-11 10:29:36 +02:00
seccomp.h [S390] secure computing arch backend 2009-06-12 10:27:31 +02:00
sections.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
segment.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
sembuf.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
setup.h [S390] topology: clean up facility detection 2010-10-25 16:10:21 +02:00
sfp-machine.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
sfp-util.h Revert "endian: #define __BYTE_ORDER" 2010-05-26 08:30:15 -07:00
shmbuf.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
shmparam.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
sigcontext.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
siginfo.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
signal.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
sigp.h [S390] spinlock: check virtual cpu running status 2010-02-26 22:37:31 +01:00
smp.h [S390] smp/idle: call init_idle() before starting a new cpu 2011-01-05 12:47:30 +01:00
socket.h net: Generalize socket rx gap / receive queue overflow cmsg 2009-10-12 13:26:31 -07:00
sockios.h [S390] use generic sockios.h header file 2009-12-07 12:51:37 +01:00
sparsemem.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
spinlock.h [S390] use inline assembly contraints available with gcc 3.3.3 2010-02-26 22:37:30 +01:00
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
stat.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
statfs.h add f_flags to struct statfs(64) 2010-08-09 16:48:44 -04:00
string.h [S390] use compiler builtin versions of strlen/strcpy/strcat 2009-03-26 15:24:24 +01:00
suspend.h [S390] s390: hibernation support for s390 2009-06-16 10:31:22 +02:00
swab.h [S390] use inline assembly contraints available with gcc 3.3.3 2010-02-26 22:37:30 +01:00
syscall.h [S390] cleanup system call parameter setup 2010-10-25 16:10:19 +02:00
sysinfo.h [S390] topology: move topology sysinfo code 2010-10-25 16:10:21 +02:00
system.h [S390] xchg/cmpxchg: move to own header file 2011-03-23 10:15:59 +01:00
tape390.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
termbits.h [S390] use generic termbits.h header file 2009-12-07 12:51:37 +01:00
termios.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
thread_info.h [S390] Add is_32bit_task() helper function 2011-01-12 09:55:25 +01:00
timer.h [S390] extend virtual timer interface by mod_virt_timer_periodic 2009-04-14 15:37:23 +02:00
timex.h [S390] time: let local_tick_enable/disable() reprogram the clock comparator 2011-01-05 12:47:25 +01:00
tlb.h [S390] tlb: fix build error caused by THP 2011-01-31 11:30:21 +01:00
tlbflush.h [S390] fix tlb flushing vs. concurrent /proc accesses 2010-08-24 09:26:34 +02:00
topology.h [S390] topology: export cpu topology via proc/sysinfo 2010-10-25 16:10:21 +02:00
types.h remove dma64_addr_t 2011-03-23 19:47:18 -07:00
uaccess.h futex: Sanitize futex ops argument types 2011-03-11 12:23:31 +01:00
ucontext.h [S390] 64-bit register support for 31-bit processes 2009-10-06 10:35:10 +02:00
unaligned.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
unistd.h [S390] wire up sys_syncfs 2011-03-23 10:15:58 +01:00
user.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
vdso.h [S390] vdso: use ntp adjusted clock multiplier 2010-04-22 17:17:19 +02:00
vtoc.h [S390] dasd: add large volume support 2009-03-26 15:24:05 +01:00
xor.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00
zcrypt.h [S390] move include/asm-s390 to arch/s390/include/asm 2008-08-01 20:42:05 +02:00