Home
last modified time | relevance | path

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

/kernel/linux/linux-5.10/arch/s390/include/asm/
Dgmap.h46 struct gmap { struct
66 struct gmap *parent; argument
96 void (*notifier_call)(struct gmap *gmap, unsigned long start,
100 static inline int gmap_is_shadow(struct gmap *gmap) in gmap_is_shadow() argument
102 return !!gmap->parent; in gmap_is_shadow()
105 struct gmap *gmap_create(struct mm_struct *mm, unsigned long limit);
106 void gmap_remove(struct gmap *gmap);
107 struct gmap *gmap_get(struct gmap *gmap);
108 void gmap_put(struct gmap *gmap);
110 void gmap_enable(struct gmap *gmap);
[all …]
Duv.h353 int gmap_make_secure(struct gmap *gmap, unsigned long gaddr, void *uvcb);
356 int gmap_convert_to_secure(struct gmap *gmap, unsigned long gaddr);
Dkvm_host.h730 struct gmap *gmap; member
732 struct gmap *enabled_gmap;
934 struct gmap *gmap; member
Dlowcore.h139 __u64 gmap; /* 0x03d0 */ member
/kernel/linux/linux-5.10/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.c196 asce = ((struct gmap *) S390_lowcore.gmap)->asce; in dump_fault_info()
384 struct gmap *gmap; in do_exception() local
438 gmap = NULL; in do_exception()
440 gmap = (struct gmap *) S390_lowcore.gmap; in do_exception()
444 address = __gmap_translate(gmap, address); in do_exception()
449 if (gmap->pfault_enabled) in do_exception()
493 if (IS_ENABLED(CONFIG_PGSTE) && gmap && in do_exception()
507 if (IS_ENABLED(CONFIG_PGSTE) && gmap) { in do_exception()
508 address = __gmap_link(gmap, current->thread.gmap_addr, in do_exception()
877 struct gmap *gmap = (struct gmap *)S390_lowcore.gmap; in do_non_secure_storage_access() local
[all …]
DMakefile12 obj-$(CONFIG_PGSTE) += gmap.o
/kernel/linux/linux-5.10/arch/s390/kernel/
Duv.c219 int gmap_make_secure(struct gmap *gmap, unsigned long gaddr, void *uvcb) in gmap_make_secure() argument
231 mmap_read_lock(gmap->mm); in gmap_make_secure()
233 uaddr = __gmap_translate(gmap, gaddr); in gmap_make_secure()
236 vma = find_vma(gmap->mm, uaddr); in gmap_make_secure()
255 ptep = get_locked_pte(gmap->mm, uaddr, &ptelock); in gmap_make_secure()
260 mmap_read_unlock(gmap->mm); in gmap_make_secure()
288 if (gmap_fault(gmap, gaddr, FAULT_FLAG_WRITE)) in gmap_make_secure()
296 int gmap_convert_to_secure(struct gmap *gmap, unsigned long gaddr) in gmap_convert_to_secure() argument
301 .guest_handle = gmap->guest_handle, in gmap_convert_to_secure()
305 return gmap_make_secure(gmap, gaddr, &uvcb); in gmap_convert_to_secure()
Dasm-offsets.c149 OFFSET(__LC_GMAP, lowcore, gmap); in main()
174 OFFSET(__GMAP_ASCE, gmap, asce); in main()
Dentry.S329 lg %r14,__LC_GMAP # get gmap pointer
/kernel/linux/linux-5.10/arch/s390/kvm/
Dvsie.c38 struct gmap *gmap; /* 0x0220 */ member
558 void kvm_s390_vsie_gmap_notifier(struct gmap *gmap, unsigned long start, in kvm_s390_vsie_gmap_notifier() argument
561 struct kvm *kvm = gmap->private; in kvm_s390_vsie_gmap_notifier()
567 if (!gmap_is_shadow(gmap)) in kvm_s390_vsie_gmap_notifier()
582 if (READ_ONCE(cur->gmap) != gmap) in kvm_s390_vsie_gmap_notifier()
619 rc = kvm_s390_shadow_fault(vcpu, vsie_page->gmap, prefix, NULL); in map_prefix()
621 rc = kvm_s390_shadow_fault(vcpu, vsie_page->gmap, in map_prefix()
912 rc = kvm_s390_shadow_fault(vcpu, vsie_page->gmap, in handle_fault()
934 kvm_s390_shadow_fault(vcpu, vsie_page->gmap, in handle_last_fault()
1021 rc_dest = kvm_s390_shadow_fault(vcpu, vsie_page->gmap, dest, &pei_dest); in vsie_handle_mvpg()
[all …]
Ddiag.c40 gmap_discard(vcpu->arch.gmap, start, end); in diag_release_pages()
48 gmap_discard(vcpu->arch.gmap, start, prefix); in diag_release_pages()
50 gmap_discard(vcpu->arch.gmap, 0, PAGE_SIZE); in diag_release_pages()
52 gmap_discard(vcpu->arch.gmap, PAGE_SIZE, 2 * PAGE_SIZE); in diag_release_pages()
53 gmap_discard(vcpu->arch.gmap, prefix + 2 * PAGE_SIZE, end); in diag_release_pages()
Dpv.c162 WRITE_ONCE(kvm->arch.gmap->guest_handle, 0); in kvm_s390_pv_deinit_vm()
171 s390_replace_asce(kvm->arch.gmap); in kvm_s390_pv_deinit_vm()
191 uvcb.guest_asce = kvm->arch.gmap->asce; in kvm_s390_pv_init_vm()
212 kvm->arch.gmap->guest_handle = uvcb.guest_handle; in kvm_s390_pv_init_vm()
248 int ret = gmap_make_secure(kvm->arch.gmap, addr, &uvcb); in unpack_one()
Dkvm-s390.c243 static void kvm_gmap_notifier(struct gmap *gmap, unsigned long start,
597 struct gmap *gmap = kvm->arch.gmap; in kvm_arch_sync_dirty_log() local
610 gmap_sync_dirty_log_pmd(gmap, bitmap, gaddr, vmaddr); in kvm_arch_sync_dirty_log()
854 s390_reset_cmma(kvm->arch.gmap->mm); in kvm_s390_set_mem_control()
883 struct gmap *new = gmap_create(current->mm, new_limit); in kvm_s390_set_mem_control()
888 gmap_remove(kvm->arch.gmap); in kvm_s390_set_mem_control()
890 kvm->arch.gmap = new; in kvm_s390_set_mem_control()
897 (void *) kvm->arch.gmap->asce); in kvm_s390_set_mem_control()
2734 kvm->arch.gmap = NULL; in kvm_arch_init_vm()
2742 kvm->arch.gmap = gmap_create(current->mm, kvm->arch.mem_limit - 1); in kvm_arch_init_vm()
[all …]
Dkvm-s390.h88 if (kvm->arch.gmap) in kvm_is_ucontrol()
319 void kvm_s390_vsie_gmap_notifier(struct gmap *gmap, unsigned long start,
Dintercept.c512 rc = gmap_make_secure(vcpu->arch.gmap, uvcb.gaddr, &uvcb); in handle_pv_uvc()
602 gmap_convert_to_secure(vcpu->arch.gmap, in kvm_handle_sie_intercept()
604 gmap_convert_to_secure(vcpu->arch.gmap, in kvm_handle_sie_intercept()
Dpriv.c1208 struct gmap *gmap; in handle_essa() local
1212 gmap = vcpu->arch.gmap; in handle_essa()
1268 mmap_read_lock(gmap->mm); in handle_essa()
1270 __gmap_zap(gmap, cbrlo[i]); in handle_essa()
1271 mmap_read_unlock(gmap->mm); in handle_essa()
Dgaccess.h394 int kvm_s390_shadow_fault(struct kvm_vcpu *vcpu, struct gmap *shadow,
Dgaccess.c984 static int kvm_s390_shadow_tables(struct gmap *sg, unsigned long saddr, in kvm_s390_shadow_tables()
988 struct gmap *parent; in kvm_s390_shadow_tables()
1175 int kvm_s390_shadow_fault(struct kvm_vcpu *vcpu, struct gmap *sg, in kvm_s390_shadow_fault()
Dinterrupt.c2680 dev->kvm->arch.gmap->pfault_enabled = 1; in flic_set_attr()
2683 dev->kvm->arch.gmap->pfault_enabled = 0; in flic_set_attr()
2897 uaddr = gmap_translate(kvm->arch.gmap, ue->u.adapter.summary_addr); in kvm_set_routing_entry()
2901 uaddr = gmap_translate(kvm->arch.gmap, ue->u.adapter.ind_addr); in kvm_set_routing_entry()
/kernel/linux/linux-5.10/include/video/
Dgbe.h60 volatile uint32_t gmap[256]; /* gamma map */ member
/kernel/linux/linux-5.10/drivers/net/dsa/
Dlantiq_gswip.c285 u8 gmap; member
552 tbl->gmap = (crtl & GSWIP_PCE_TBL_CTRL_GMAP_MASK) >> 7; in gswip_pce_table_entry_read()
597 crtl |= (tbl->gmap << 7) & GSWIP_PCE_TBL_CTRL_GMAP_MASK; in gswip_pce_table_entry_write()
/kernel/linux/linux-5.10/drivers/video/fbdev/
Dgbefb.c807 gbe->gmap[i] = (i << 24) | (i << 16) | (i << 8); in gbefb_set_par()
/kernel/linux/linux-5.10/
DMAINTAINERS9663 F: arch/s390/include/asm/gmap.h
9668 F: arch/s390/mm/gmap.c