Home
last modified time | relevance | path

Searched refs:gmap (Results 1 – 21 of 21) sorted by relevance

/Linux-v4.19/arch/s390/include/asm/
Dgmap.h42 struct gmap { struct
60 struct gmap *parent; argument
90 void (*notifier_call)(struct gmap *gmap, unsigned long start,
94 static inline int gmap_is_shadow(struct gmap *gmap) in gmap_is_shadow() argument
96 return !!gmap->parent; in gmap_is_shadow()
99 struct gmap *gmap_create(struct mm_struct *mm, unsigned long limit);
100 void gmap_remove(struct gmap *gmap);
101 struct gmap *gmap_get(struct gmap *gmap);
102 void gmap_put(struct gmap *gmap);
104 void gmap_enable(struct gmap *gmap);
[all …]
Dkvm_host.h642 struct gmap *gmap; member
644 struct gmap *enabled_gmap;
805 struct gmap *gmap; member
Dlowcore.h138 __u64 gmap; /* 0x03c8 */ member
/Linux-v4.19/arch/s390/mm/
Dgmap.c35 static struct gmap *gmap_alloc(unsigned long limit) in gmap_alloc()
37 struct gmap *gmap; in gmap_alloc() local
59 gmap = kzalloc(sizeof(struct gmap), GFP_KERNEL); in gmap_alloc()
60 if (!gmap) in gmap_alloc()
62 INIT_LIST_HEAD(&gmap->crst_list); in gmap_alloc()
63 INIT_LIST_HEAD(&gmap->children); in gmap_alloc()
64 INIT_LIST_HEAD(&gmap->pt_list); in gmap_alloc()
65 INIT_RADIX_TREE(&gmap->guest_to_host, GFP_KERNEL); in gmap_alloc()
66 INIT_RADIX_TREE(&gmap->host_to_guest, GFP_ATOMIC); in gmap_alloc()
67 INIT_RADIX_TREE(&gmap->host_to_rmap, GFP_ATOMIC); in gmap_alloc()
[all …]
Dfault.c231 asce = ((struct gmap *) S390_lowcore.gmap)->asce; in dump_fault_info()
407 struct gmap *gmap; in do_exception() local
459 gmap = NULL; in do_exception()
461 gmap = (struct gmap *) S390_lowcore.gmap; in do_exception()
465 address = __gmap_translate(gmap, address); in do_exception()
470 if (gmap->pfault_enabled) in do_exception()
529 if (IS_ENABLED(CONFIG_PGSTE) && gmap && in do_exception()
546 if (IS_ENABLED(CONFIG_PGSTE) && gmap) { in do_exception()
547 address = __gmap_link(gmap, current->thread.gmap_addr, in do_exception()
DMakefile13 obj-$(CONFIG_PGSTE) += gmap.o
/Linux-v4.19/arch/s390/kvm/
Dvsie.c38 struct gmap *gmap; /* 0x0220 */ member
394 void kvm_s390_vsie_gmap_notifier(struct gmap *gmap, unsigned long start, in kvm_s390_vsie_gmap_notifier() argument
397 struct kvm *kvm = gmap->private; in kvm_s390_vsie_gmap_notifier()
403 if (!gmap_is_shadow(gmap)) in kvm_s390_vsie_gmap_notifier()
418 if (READ_ONCE(cur->gmap) != gmap) in kvm_s390_vsie_gmap_notifier()
455 rc = kvm_s390_shadow_fault(vcpu, vsie_page->gmap, prefix); in map_prefix()
457 rc = kvm_s390_shadow_fault(vcpu, vsie_page->gmap, in map_prefix()
748 rc = kvm_s390_shadow_fault(vcpu, vsie_page->gmap, in handle_fault()
770 kvm_s390_shadow_fault(vcpu, vsie_page->gmap, in handle_last_fault()
904 if (vsie_page->gmap) in release_gmap_shadow()
[all …]
Ddiag.c41 gmap_discard(vcpu->arch.gmap, start, end); in diag_release_pages()
49 gmap_discard(vcpu->arch.gmap, start, prefix); in diag_release_pages()
51 gmap_discard(vcpu->arch.gmap, 0, PAGE_SIZE); in diag_release_pages()
53 gmap_discard(vcpu->arch.gmap, PAGE_SIZE, 2 * PAGE_SIZE); in diag_release_pages()
54 gmap_discard(vcpu->arch.gmap, prefix + 2 * PAGE_SIZE, end); in diag_release_pages()
Dkvm-s390.c224 static void kvm_gmap_notifier(struct gmap *gmap, unsigned long start,
528 struct gmap *gmap = kvm->arch.gmap; in kvm_s390_sync_dirty_log() local
541 gmap_sync_dirty_log_pmd(gmap, bitmap, gaddr, vmaddr); in kvm_s390_sync_dirty_log()
785 s390_reset_cmma(kvm->arch.gmap->mm); in kvm_s390_set_mem_control()
814 struct gmap *new = gmap_create(current->mm, new_limit); in kvm_s390_set_mem_control()
819 gmap_remove(kvm->arch.gmap); in kvm_s390_set_mem_control()
821 kvm->arch.gmap = new; in kvm_s390_set_mem_control()
828 (void *) kvm->arch.gmap->asce); in kvm_s390_set_mem_control()
2167 kvm->arch.gmap = NULL; in kvm_arch_init_vm()
2175 kvm->arch.gmap = gmap_create(current->mm, kvm->arch.mem_limit - 1); in kvm_arch_init_vm()
[all …]
Dkvm-s390.h76 if (kvm->arch.gmap) in kvm_is_ucontrol()
274 void kvm_s390_vsie_gmap_notifier(struct gmap *gmap, unsigned long start,
Dpriv.c1101 struct gmap *gmap; in handle_essa() local
1105 gmap = vcpu->arch.gmap; in handle_essa()
1161 down_read(&gmap->mm->mmap_sem); in handle_essa()
1163 __gmap_zap(gmap, cbrlo[i]); in handle_essa()
1164 up_read(&gmap->mm->mmap_sem); in handle_essa()
Dgaccess.h362 int kvm_s390_shadow_fault(struct kvm_vcpu *vcpu, struct gmap *shadow,
Dgaccess.c982 static int kvm_s390_shadow_tables(struct gmap *sg, unsigned long saddr, in kvm_s390_shadow_tables()
986 struct gmap *parent; in kvm_s390_shadow_tables()
1164 int kvm_s390_shadow_fault(struct kvm_vcpu *vcpu, struct gmap *sg, in kvm_s390_shadow_fault()
Dinterrupt.c2276 map->addr = gmap_translate(kvm->arch.gmap, addr); in kvm_s390_adapter_map()
2512 dev->kvm->arch.gmap->pfault_enabled = 1; in flic_set_attr()
2515 dev->kvm->arch.gmap->pfault_enabled = 0; in flic_set_attr()
/Linux-v4.19/arch/s390/kernel/
Dasm-offsets.c175 OFFSET(__LC_GMAP, lowcore, gmap); in main()
198 OFFSET(__GMAP_ASCE, gmap, asce); in main()
Dentry.S252 lg %r14,__LC_GMAP # get gmap pointer
/Linux-v4.19/include/video/
Dgbe.h62 volatile uint32_t gmap[256]; /* gamma map */ member
/Linux-v4.19/Documentation/virtual/kvm/devices/
Ds390_flic.txt103 perform a gmap translation for the guest address provided in addr,
/Linux-v4.19/drivers/video/fbdev/
Dgbefb.c813 gbe->gmap[i] = (i << 24) | (i << 16) | (i << 8); in gbefb_set_par()
/Linux-v4.19/Documentation/s390/
DDebugging390.txt299 to contain the gmap asce before the SIE instruction gets executed. When
/Linux-v4.19/
DMAINTAINERS8076 F: arch/s390/include/asm/gmap.h
8079 F: arch/s390/mm/gmap.c