| /linux/kernel/livepatch/ |
| A D | shadow.c | 73 return shadow->obj == obj && shadow->id == id; in klp_shadow_match() 85 struct klp_shadow *shadow; in klp_shadow_get() local 92 if (klp_shadow_match(shadow, obj, id)) { in klp_shadow_get() 94 return shadow->data; in klp_shadow_get() 237 hash_del_rcu(&shadow->node); in klp_shadow_free_struct() 239 dtor(shadow->obj, shadow->data); in klp_shadow_free_struct() 240 kfree_rcu(shadow, rcu_head); in klp_shadow_free_struct() 255 struct klp_shadow *shadow; in klp_shadow_free() local 265 klp_shadow_free_struct(shadow, dtor); in klp_shadow_free() 285 struct klp_shadow *shadow; in klp_shadow_free_all() local [all …]
|
| /linux/drivers/scsi/ |
| A D | xen-scsifront.c | 197 info->shadow[id] = shadow; in scsifront_do_request() 308 shadow = info->shadow[id]; in scsifront_cdb_cmd_done() 309 sc = shadow->sc; in scsifront_cdb_cmd_done() 336 struct vscsifrnt_shadow *shadow = info->shadow[id]; in scsifront_sync_cmd_done() local 351 kfree(shadow); in scsifront_sync_cmd_done() 374 shadow = info->shadow[ring_rsp->rqid]; in scsifront_do_response() 502 seg = shadow->sg ? : shadow->seg; in map_data_for_request() 672 shadow = kzalloc(sizeof(*shadow), GFP_NOIO); in scsifront_action_handler() 673 if (!shadow) in scsifront_action_handler() 708 kfree(shadow); in scsifront_action_handler() [all …]
|
| /linux/Documentation/livepatch/ |
| A D | shadow-vars.rst | 24 (See the full API usage docbook notes in livepatch/shadow.c.) 30 meta-data and shadow-data: 37 - data[] - storage for shadow data 48 * klp_shadow_get() - retrieve a shadow variable data pointer 51 * klp_shadow_alloc() - allocate and add a new shadow variable 60 - allocate a new shadow variable 69 - return existing shadow variable 73 - allocate a new shadow variable 83 - free shadow variable 91 - free shadow variable [all …]
|
| /linux/Documentation/arch/x86/ |
| A D | shstk.rst | 14 CET introduces shadow stack and indirect branch tracking (IBT). A shadow stack 23 shadow stack and kernel IBT are supported. 103 if shadow stack is disabled. 130 the shadow stack stores only return addresses, a large shadow stack covers 135 shadow stack is enabled, the shadow stack specific state is pushed onto the 136 shadow stack. Today this is only the old SSP (shadow stack pointer), pushed 139 restorer address to the shadow stack to help userspace avoid a shadow stack 142 So the shadow stack signal frame format is as follows:: 150 32 bit execution while shadow stack is enabled by the allocating shadow stacks 162 shadow access triggers a page fault with the shadow stack access bit set [all …]
|
| /linux/mm/kmsan/ |
| A D | init.c | 100 struct page *shadow, *origin; member 119 struct page *shadow, *origin; in kmsan_memblock_free_pages() local 121 if (!held_back[order].shadow) { in kmsan_memblock_free_pages() 122 held_back[order].shadow = page; in kmsan_memblock_free_pages() 129 shadow = held_back[order].shadow; in kmsan_memblock_free_pages() 131 kmsan_setup_meta(page, shadow, origin, order); in kmsan_memblock_free_pages() 133 held_back[order].shadow = NULL; in kmsan_memblock_free_pages() 171 struct page *page, *shadow, *origin; in do_collection() local 175 shadow = smallstack_pop(&collect); in do_collection() 219 if (held_back[i].shadow) in kmsan_memblock_discard() [all …]
|
| A D | shadow.c | 85 void *shadow; in kmsan_get_shadow_origin_ptr() local 98 if (!shadow) in kmsan_get_shadow_origin_ptr() 101 ret.shadow = shadow; in kmsan_get_shadow_origin_ptr() 108 ret.shadow = dummy_store_page; in kmsan_get_shadow_origin_ptr() 112 ret.shadow = dummy_load_page; in kmsan_get_shadow_origin_ptr() 173 struct page *shadow, *origin; in kmsan_alloc_page() local 180 shadow = shadow_page_for(page); in kmsan_alloc_page() 277 void *shadow, *origin; in kmsan_init_alloc_meta_for_range() local 286 if (!shadow || !origin) in kmsan_init_alloc_meta_for_range() 305 set_no_shadow_origin_page(&shadow[i]); in kmsan_setup_meta() [all …]
|
| A D | instrumentation.c | 144 *shadow = *(u64 *)(ctx->cstate.param_tls); in get_param0_metadata() 152 *(u64 *)(ctx->cstate.retval_tls) = shadow; in set_retval_metadata() 162 u64 shadow; in __msan_memmove() local 164 get_param0_metadata(&shadow, &origin); in __msan_memmove() 176 set_retval_metadata(shadow, origin); in __msan_memmove() 187 u64 shadow; in __msan_memcpy() local 189 get_param0_metadata(&shadow, &origin); in __msan_memcpy() 203 set_retval_metadata(shadow, origin); in __msan_memcpy() 214 u64 shadow; in __msan_memset() local 216 get_param0_metadata(&shadow, &origin); in __msan_memset() [all …]
|
| A D | hooks.c | 154 struct page *shadow, *origin; in kmsan_ioremap_page_range() local 164 shadow = alloc_pages(gfp_mask, 1); in kmsan_ioremap_page_range() 166 if (!shadow || !origin) { in kmsan_ioremap_page_range() 172 vmalloc_shadow(start + off + PAGE_SIZE), prot, &shadow, in kmsan_ioremap_page_range() 178 shadow = NULL; in kmsan_ioremap_page_range() 202 if (shadow) in kmsan_ioremap_page_range() 203 __free_pages(shadow, 1); in kmsan_ioremap_page_range() 222 struct page *shadow, *origin; in kmsan_iounmap_page_range() local 234 shadow = kmsan_vmalloc_to_page_or_null((void *)v_shadow); in kmsan_iounmap_page_range() 238 if (shadow) in kmsan_iounmap_page_range() [all …]
|
| /linux/include/linux/ |
| A D | scx200_gpio.h | 13 #define __SCx200_GPIO_SHADOW unsigned long *shadow = scx200_gpio_shadow+bank 16 #define __SCx200_GPIO_OUT __asm__ __volatile__("outsl":"=mS" (shadow):"d" (ioaddr), "0" (shadow)) 46 set_bit(index, shadow); /* __set_bit()? */ in scx200_gpio_set_high() 57 clear_bit(index, shadow); /* __clear_bit()? */ in scx200_gpio_set_low() 69 set_bit(index, shadow); in scx200_gpio_set() 71 clear_bit(index, shadow); in scx200_gpio_set() 81 change_bit(index, shadow); in scx200_gpio_change()
|
| /linux/drivers/gpio/ |
| A D | gpio-janz-ttl.c | 60 u8 *shadow; in ttl_get_value() local 64 shadow = &mod->porta_shadow; in ttl_get_value() 66 shadow = &mod->portb_shadow; in ttl_get_value() 69 shadow = &mod->portc_shadow; in ttl_get_value() 74 ret = *shadow & BIT(offset); in ttl_get_value() 83 u8 *shadow; in ttl_set_value() local 87 shadow = &mod->porta_shadow; in ttl_set_value() 90 shadow = &mod->portb_shadow; in ttl_set_value() 100 *shadow |= BIT(offset); in ttl_set_value() 102 *shadow &= ~BIT(offset); in ttl_set_value() [all …]
|
| A D | gpio-mm-lantiq.c | 31 u16 shadow; /* shadow the latches state */ member 47 __raw_writew(chip->shadow, chip->mmchip.regs); in ltq_mm_apply() 65 chip->shadow |= (1 << offset); in ltq_mm_set() 67 chip->shadow &= ~(1 << offset); in ltq_mm_set() 104 u32 shadow; in ltq_mm_probe() local 118 if (!of_property_read_u32(pdev->dev.of_node, "lantiq,shadow", &shadow)) in ltq_mm_probe() 119 chip->shadow = shadow; in ltq_mm_probe()
|
| A D | gpio-stp-xway.c | 84 u32 shadow; /* shadow the shift registers state */ member 121 chip->shadow |= BIT(gpio); in xway_stp_set() 123 chip->shadow &= ~BIT(gpio); in xway_stp_set() 124 xway_stp_w32(chip->virt, chip->shadow, XWAY_STP_CPU0); in xway_stp_set() 235 u32 shadow, groups, dsl, phy; in xway_stp_probe() local 258 if (!of_property_read_u32(pdev->dev.of_node, "lantiq,shadow", &shadow)) in xway_stp_probe() 259 chip->shadow = shadow; in xway_stp_probe()
|
| A D | gpio-latch.c | 58 unsigned long *shadow; member 81 assign_bit(offset, priv->shadow, val); in gpio_latch_set_unlocked() 85 test_bit(latch * priv->n_latched_gpios + i, priv->shadow)); in gpio_latch_set_unlocked() 160 priv->shadow = devm_bitmap_zalloc(&pdev->dev, n_latches * priv->n_latched_gpios, in gpio_latch_probe() 162 if (!priv->shadow) in gpio_latch_probe()
|
| /linux/fs/nilfs2/ |
| A D | mdt.c | 478 if (shadow) { in nilfs_mdt_clear() 479 struct inode *s_inode = shadow->inode; in nilfs_mdt_clear() 481 shadow->inode = NULL; in nilfs_mdt_clear() 515 struct nilfs_shadow_map *shadow) in nilfs_mdt_setup_shadow_map() argument 520 INIT_LIST_HEAD(&shadow->frozen_buffers); in nilfs_mdt_setup_shadow_map() 526 shadow->inode = s_inode; in nilfs_mdt_setup_shadow_map() 527 mi->mi_shadow = shadow; in nilfs_mdt_setup_shadow_map() 539 struct nilfs_shadow_map *shadow = mi->mi_shadow; in nilfs_mdt_save_to_shadow_map() local 540 struct inode *s_inode = shadow->inode; in nilfs_mdt_save_to_shadow_map() 579 &shadow->frozen_buffers); in nilfs_mdt_freeze_buffer() [all …]
|
| /linux/drivers/block/ |
| A D | xen-blkfront.c | 190 struct blk_shadow shadow[]; member 304 rinfo->shadow[id].request = NULL; in add_id_to_freelist() 543 rinfo->shadow[id].request = req; in blkif_ring_get_request() 611 struct blk_shadow *shadow = &rinfo->shadow[setup->id]; in blkif_setup_rw_req_grant() local 1250 if (!rinfo->shadow[i].request) in blkif_free_ring() 1283 kvfree(rinfo->shadow[i].sg); in blkif_free_ring() 1284 rinfo->shadow[i].sg = NULL; in blkif_free_ring() 2076 struct blk_shadow *shadow = rinfo->shadow; in blkfront_resume() local 2080 if (!shadow[j].request) in blkfront_resume() 2238 kvfree(rinfo->shadow[i].sg); in blkfront_setup_indirect() [all …]
|
| /linux/mm/kasan/ |
| A D | report_sw_tags.c | 51 u8 *shadow; in kasan_get_alloc_size() local 62 shadow = (u8 *)kasan_mem_to_shadow(object); in kasan_get_alloc_size() 64 if (*shadow != KASAN_TAG_INVALID) in kasan_get_alloc_size() 68 shadow++; in kasan_get_alloc_size() 81 u8 *shadow = (u8 *)kasan_mem_to_shadow(addr); in kasan_print_tags() local 83 pr_err("Pointer tag: [%02x], memory tag: [%02x]\n", addr_tag, *shadow); in kasan_print_tags()
|
| A D | sw_tags.c | 77 u8 *shadow_first, *shadow_last, *shadow; in kasan_check_range() local 113 for (shadow = shadow_first; shadow <= shadow_last; shadow++) { in kasan_check_range() 114 if (*shadow != tag) { in kasan_check_range()
|
| A D | report_generic.c | 49 u8 *shadow; in kasan_get_alloc_size() local 60 shadow = (u8 *)kasan_mem_to_shadow(object); in kasan_get_alloc_size() 62 if (*shadow == 0) in kasan_get_alloc_size() 64 else if (*shadow >= 1 && *shadow <= KASAN_GRANULE_SIZE - 1) in kasan_get_alloc_size() 65 return size + *shadow; in kasan_get_alloc_size() 68 shadow++; in kasan_get_alloc_size()
|
| /linux/mm/ |
| A D | workingset.c | 210 static void unpack_shadow(void *shadow, int *memcgidp, pg_data_t **pgdat, in unpack_shadow() argument 213 unsigned long entry = xa_to_value(shadow); in unpack_shadow() 271 unpack_shadow(shadow, &memcg_id, &pgdat, token, workingset); in lru_gen_test_recent() 280 static void lru_gen_refault(struct folio *folio, void *shadow) in lru_gen_refault() argument 340 static void lru_gen_refault(struct folio *folio, void *shadow) in lru_gen_refault() argument 419 bool workingset_test_recent(void *shadow, bool file, bool *workingset, in workingset_test_recent() argument 434 bool recent = lru_gen_test_recent(shadow, file, in workingset_test_recent() 442 unpack_shadow(shadow, &memcgid, &pgdat, &eviction, workingset); in workingset_test_recent() 538 void workingset_refault(struct folio *folio, void *shadow) in workingset_refault() argument 548 lru_gen_refault(folio, shadow); in workingset_refault() [all …]
|
| /linux/Documentation/dev-tools/ |
| A D | kmsan.rst | 132 KMSAN shadow memory 138 setting its shadow bytes to ``0xff``) is called poisoning, marking it 139 initialized (setting the shadow bytes to ``0x00``) is called unpoisoning. 148 ``mm/kmsan/`` to persist shadow values. 152 When a value is read from memory, its shadow memory is also obtained and 155 shadow of the result depending on those values and their shadows. 163 In this case the shadow of ``a`` is ``0``, shadow of ``b`` is ``0xffffffff``, 240 void *shadow, *origin; 316 For each use of a value the compiler emits a shadow check that calls 384 struct page *shadow, *origin; [all …]
|
| /linux/drivers/ps3/ |
| A D | ps3-lpm.c | 128 struct ps3_lpm_shadow_regs shadow; member 394 return lpm_priv->shadow.pm_control; in ps3_read_pm() 398 return lpm_priv->shadow.pm_start_stop; in ps3_read_pm() 409 return lpm_priv->shadow.group_control; in ps3_read_pm() 411 return lpm_priv->shadow.debug_bus_control; in ps3_read_pm() 451 lpm_priv->shadow.group_control = val; in ps3_write_pm() 459 lpm_priv->shadow.debug_bus_control = val; in ps3_write_pm() 465 if (val != lpm_priv->shadow.pm_control) in ps3_write_pm() 471 lpm_priv->shadow.pm_control = val; in ps3_write_pm() 483 lpm_priv->shadow.pm_start_stop = val; in ps3_write_pm() [all …]
|
| /linux/samples/livepatch/ |
| A D | Makefile | 3 obj-$(CONFIG_SAMPLE_LIVEPATCH) += livepatch-shadow-mod.o 4 obj-$(CONFIG_SAMPLE_LIVEPATCH) += livepatch-shadow-fix1.o 5 obj-$(CONFIG_SAMPLE_LIVEPATCH) += livepatch-shadow-fix2.o
|
| /linux/drivers/usb/host/ |
| A D | xen-hcd.c | 574 info->shadow[id].urb = NULL; in xenhcd_add_id_to_freelist() 718 struct usb_shadow *shadow = info->shadow + id; in xenhcd_gnttab_done() local 722 if (!shadow->in_flight) { in xenhcd_gnttab_done() 726 shadow->in_flight = false; in xenhcd_gnttab_done() 738 shadow->req.nr_buffer_segs = 0; in xenhcd_gnttab_done() 789 req = &info->shadow[id].req; in xenhcd_do_request() 807 *req = info->shadow[id].req; in xenhcd_do_request() 810 info->shadow[id].urb = urb; in xenhcd_do_request() 862 info->shadow[req_id].urb = NULL; in xenhcd_cancel_all_enqueued_urbs() 1490 info->shadow[i].req.id = i + 1; in xenhcd_create_hcd() [all …]
|
| /linux/Documentation/virt/kvm/x86/ |
| A D | mmu.rst | 4 The x86 kvm shadow mmu 55 spte shadow pte (referring to pfns) 152 The level in the shadow paging hierarchy that this shadow page belongs to. 166 so multiple shadow pages are needed to shadow one guest page. 228 at the shadow page structure. 340 - walk shadow page table 386 - look up new shadow roots 387 - synchronize newly reachable shadow pages 392 - look up new shadow roots 393 - synchronize newly reachable shadow pages [all …]
|
| /linux/arch/powerpc/platforms/ps3/ |
| A D | spu.c | 112 struct spe_shadow __iomem *shadow; member 124 unsigned long problem, unsigned long ls, unsigned long shadow, in _dump_areas() argument 131 pr_debug("%s:%d: shadow: %lxh\n", func, line, shadow); in _dump_areas() 180 iounmap(spu_pdata(spu)->shadow); in spu_unmap() 195 spu_pdata(spu)->shadow = ioremap_prot(spu_pdata(spu)->shadow_addr, in setup_areas() 197 if (!spu_pdata(spu)->shadow) { in setup_areas() 231 (unsigned long)spu_pdata(spu)->shadow); in setup_areas() 368 while (in_be64(&spu_pdata(spu)->shadow->spe_execution_status) in ps3_create_spu() 514 return in_be64(&spu_pdata(spu)->shadow->mfc_dar_RW); in mfc_dar_get() 524 return in_be64(&spu_pdata(spu)->shadow->mfc_dsisr_RW); in mfc_dsisr_get()
|