| /Linux-v5.4/kernel/livepatch/ |
| D | shadow.c | 70 static inline bool klp_shadow_match(struct klp_shadow *shadow, void *obj, in klp_shadow_match() argument 73 return shadow->obj == obj && shadow->id == id; in klp_shadow_match() 85 struct klp_shadow *shadow; in klp_shadow_get() local 89 hash_for_each_possible_rcu(klp_shadow_hash, shadow, node, in klp_shadow_get() 92 if (klp_shadow_match(shadow, obj, id)) { in klp_shadow_get() 94 return shadow->data; in klp_shadow_get() 234 static void klp_shadow_free_struct(struct klp_shadow *shadow, in klp_shadow_free_struct() argument 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() [all …]
|
| /Linux-v5.4/drivers/scsi/ |
| D | xen-scsifront.c | 118 struct vscsifrnt_shadow *shadow[VSCSIIF_MAX_REQS]; member 160 info->shadow[id] = NULL; in _scsifront_put_rqid() 179 struct vscsifrnt_shadow *shadow) in scsifront_do_request() argument 183 struct scsi_cmnd *sc = shadow->sc; in scsifront_do_request() 194 info->shadow[id] = shadow; in scsifront_do_request() 195 shadow->rqid = id; in scsifront_do_request() 201 ring_req->act = shadow->act; in scsifront_do_request() 202 ring_req->ref_rqid = shadow->ref_rqid; in scsifront_do_request() 203 ring_req->nr_segments = shadow->nr_segments; in scsifront_do_request() 217 for (i = 0; i < (shadow->nr_segments & ~VSCSIIF_SG_GRANT); i++) in scsifront_do_request() [all …]
|
| /Linux-v5.4/Documentation/livepatch/ |
| D | shadow-vars.rst | 6 additional "shadow" data with existing data structures. Shadow data is 8 unmodified. The shadow variable API described in this document is used 9 to allocate/add and remove/free shadow variables to/from their parents. 13 shadow data. The numeric identifier is a simple enumeration that may be 14 used to describe shadow variable version, class or type, etc. More 16 numeric id subsequently filters hashtable queries. Multiple shadow 24 (See the full API usage docbook notes in livepatch/shadow.c.) 26 A hashtable references all shadow variables. These references are 30 meta-data and shadow-data: 37 - data[] - storage for shadow data [all …]
|
| /Linux-v5.4/include/linux/ |
| 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-v5.4/drivers/gpio/ |
| 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() 94 shadow = &mod->portc_shadow; in ttl_set_value() 100 *shadow |= BIT(offset); in ttl_set_value() [all …]
|
| 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()
|
| D | gpio-stp-xway.c | 78 u32 shadow; /* shadow the shift registers state */ member 113 chip->shadow |= BIT(gpio); in xway_stp_set() 115 chip->shadow &= ~BIT(gpio); in xway_stp_set() 116 xway_stp_w32(chip->virt, chip->shadow, XWAY_STP_CPU0); in xway_stp_set() 205 u32 shadow, groups, dsl, phy; in xway_stp_probe() local 228 if (!of_property_read_u32(pdev->dev.of_node, "lantiq,shadow", &shadow)) in xway_stp_probe() 229 chip->shadow = shadow; in xway_stp_probe()
|
| /Linux-v5.4/fs/nilfs2/ |
| D | mdt.c | 505 struct nilfs_shadow_map *shadow) in nilfs_mdt_setup_shadow_map() argument 509 INIT_LIST_HEAD(&shadow->frozen_buffers); in nilfs_mdt_setup_shadow_map() 510 address_space_init_once(&shadow->frozen_data); in nilfs_mdt_setup_shadow_map() 511 nilfs_mapping_init(&shadow->frozen_data, inode); in nilfs_mdt_setup_shadow_map() 512 address_space_init_once(&shadow->frozen_btnodes); in nilfs_mdt_setup_shadow_map() 513 nilfs_mapping_init(&shadow->frozen_btnodes, inode); in nilfs_mdt_setup_shadow_map() 514 mi->mi_shadow = shadow; in nilfs_mdt_setup_shadow_map() 526 struct nilfs_shadow_map *shadow = mi->mi_shadow; in nilfs_mdt_save_to_shadow_map() local 529 ret = nilfs_copy_dirty_pages(&shadow->frozen_data, inode->i_mapping); in nilfs_mdt_save_to_shadow_map() 533 ret = nilfs_copy_dirty_pages(&shadow->frozen_btnodes, in nilfs_mdt_save_to_shadow_map() [all …]
|
| /Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
| D | ktls.h | 64 struct mlx5e_ktls_offload_context_tx_shadow *shadow; in mlx5e_set_ktls_tx_priv_ctx() local 66 BUILD_BUG_ON(sizeof(*shadow) > TLS_OFFLOAD_CONTEXT_SIZE_TX); in mlx5e_set_ktls_tx_priv_ctx() 68 shadow = (struct mlx5e_ktls_offload_context_tx_shadow *)tx_ctx; in mlx5e_set_ktls_tx_priv_ctx() 70 shadow->priv_tx = priv_tx; in mlx5e_set_ktls_tx_priv_ctx() 78 struct mlx5e_ktls_offload_context_tx_shadow *shadow; in mlx5e_get_ktls_tx_priv_ctx() local 80 BUILD_BUG_ON(sizeof(*shadow) > TLS_OFFLOAD_CONTEXT_SIZE_TX); in mlx5e_get_ktls_tx_priv_ctx() 82 shadow = (struct mlx5e_ktls_offload_context_tx_shadow *)tx_ctx; in mlx5e_get_ktls_tx_priv_ctx() 84 return shadow->priv_tx; in mlx5e_get_ktls_tx_priv_ctx()
|
| /Linux-v5.4/drivers/block/ |
| D | xen-blkfront.c | 180 struct blk_shadow shadow[BLK_MAX_RING_SIZE]; member 270 rinfo->shadow_free = rinfo->shadow[free].req.u.rw.id; in get_id_from_freelist() 271 rinfo->shadow[free].req.u.rw.id = 0x0fffffee; /* debug */ in get_id_from_freelist() 278 if (rinfo->shadow[id].req.u.rw.id != id) in add_id_to_freelist() 280 if (rinfo->shadow[id].request == NULL) in add_id_to_freelist() 282 rinfo->shadow[id].req.u.rw.id = rinfo->shadow_free; in add_id_to_freelist() 283 rinfo->shadow[id].request = NULL; in add_id_to_freelist() 534 rinfo->shadow[id].request = req; in blkif_ring_get_request() 535 rinfo->shadow[id].status = REQ_WAITING; in blkif_ring_get_request() 536 rinfo->shadow[id].associated_id = NO_ASSOCIATED_ID; in blkif_ring_get_request() [all …]
|
| /Linux-v5.4/mm/kasan/ |
| D | tags.c | 83 u8 *shadow_first, *shadow_last, *shadow; in check_memory_region() local 119 for (shadow = shadow_first; shadow <= shadow_last; shadow++) { in check_memory_region() 120 if (*shadow != tag) { in check_memory_region()
|
| D | report.c | 402 static int shadow_pointer_offset(const void *row, const void *shadow) in shadow_pointer_offset() argument 407 return 3 + (BITS_PER_LONG/8)*2 + (shadow - row)*2 + in shadow_pointer_offset() 408 (shadow - row) / SHADOW_BYTES_PER_BLOCK + 1; in shadow_pointer_offset() 414 const void *shadow = kasan_mem_to_shadow(addr); in print_shadow_for_address() local 417 shadow_row = (void *)round_down((unsigned long)shadow, in print_shadow_for_address() 440 if (row_is_guilty(shadow_row, shadow)) in print_shadow_for_address() 442 shadow_pointer_offset(shadow_row, shadow), in print_shadow_for_address()
|
| D | tags_report.c | 79 u8 *shadow = (u8 *)kasan_mem_to_shadow(addr); in print_tags() local 81 pr_err("Pointer tag: [%02x], memory tag: [%02x]\n", addr_tag, *shadow); in print_tags()
|
| /Linux-v5.4/drivers/gpu/drm/amd/amdgpu/ |
| D | amdgpu_vm_sdma.c | 44 if (table->shadow) in amdgpu_vm_sdma_map_table() 45 r = amdgpu_ttm_alloc_gart(&table->shadow->tbo); in amdgpu_vm_sdma_map_table() 229 if (bo->shadow) in amdgpu_vm_sdma_update() 230 amdgpu_vm_sdma_set_ptes(p, bo->shadow, pe, addr, in amdgpu_vm_sdma_update() 239 (bo->shadow ? 2 : 1); in amdgpu_vm_sdma_update() 254 if (bo->shadow) in amdgpu_vm_sdma_update() 255 amdgpu_vm_sdma_copy_ptes(p, bo->shadow, pe, nptes); in amdgpu_vm_sdma_update()
|
| /Linux-v5.4/drivers/net/phy/ |
| D | bcm-phy-lib.c | 141 int bcm_phy_read_shadow(struct phy_device *phydev, u16 shadow) in bcm_phy_read_shadow() argument 143 phy_write(phydev, MII_BCM54XX_SHD, MII_BCM54XX_SHD_VAL(shadow)); in bcm_phy_read_shadow() 148 int bcm_phy_write_shadow(struct phy_device *phydev, u16 shadow, in bcm_phy_write_shadow() argument 153 MII_BCM54XX_SHD_VAL(shadow) | in bcm_phy_write_shadow() 344 static u64 bcm_phy_get_stat(struct phy_device *phydev, u64 *shadow, in bcm_phy_get_stat() argument 357 shadow[i] += val; in bcm_phy_get_stat() 358 ret = shadow[i]; in bcm_phy_get_stat() 364 void bcm_phy_get_stats(struct phy_device *phydev, u64 *shadow, in bcm_phy_get_stats() argument 370 data[i] = bcm_phy_get_stat(phydev, shadow, i); in bcm_phy_get_stats()
|
| D | bcm-phy-lib.h | 47 int bcm_phy_write_shadow(struct phy_device *phydev, u16 shadow, 49 int bcm_phy_read_shadow(struct phy_device *phydev, u16 shadow); 64 void bcm_phy_get_stats(struct phy_device *phydev, u64 *shadow,
|
| /Linux-v5.4/samples/livepatch/ |
| 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-v5.4/drivers/ps3/ |
| 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() 446 if (val != lpm_priv->shadow.group_control) in ps3_write_pm() 451 lpm_priv->shadow.group_control = val; in ps3_write_pm() 454 if (val != lpm_priv->shadow.debug_bus_control) 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() [all …]
|
| /Linux-v5.4/Documentation/dev-tools/ |
| D | kasan.rst | 144 The state of each 8 aligned bytes of memory is encoded in one shadow byte. 146 We use the following encoding for each shadow byte: 0 means that all 8 bytes 153 In the report above the arrows point to the shadow byte 03, which means that 167 of kmemcheck: use shadow memory to record whether each byte of memory is safe 168 to access, and use compile-time instrumentation to insert checks of shadow 171 Generic KASAN dedicates 1/8th of kernel memory to its shadow memory (e.g. 16TB 173 translate a memory address to its corresponding shadow address. 175 Here is the function which translates an address to its corresponding shadow 189 access is valid or not by checking corresponding shadow memory. 192 function calls GCC directly inserts the code to check the shadow memory. [all …]
|
| /Linux-v5.4/arch/powerpc/platforms/ps3/ |
| 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()
|
| /Linux-v5.4/Documentation/virt/kvm/ |
| D | mmu.txt | 1 The x86 kvm shadow mmu 42 spte shadow pte (referring to pfns) 73 direct mode; otherwise it operates in shadow mode (see below). 105 The principal data structure is the shadow page, 'struct kvm_mmu_page'. A 106 shadow page contains 512 sptes, which can be either leaf or nonleaf sptes. A 107 shadow page may contain a mix of leaf and nonleaf sptes. 110 is not related to a translation directly. It points to other shadow pages. 133 The level in the shadow paging hierarchy that this shadow page belongs to. 147 so multiple shadow pages are needed to shadow one guest page. 148 For first-level shadow pages, role.quadrant can be 0 or 1 and denotes the [all …]
|
| /Linux-v5.4/drivers/gpu/drm/nouveau/nvkm/subdev/bios/ |
| D | shadow.c | 30 struct shadow { struct 39 shadow_fetch(struct nvkm_bios *bios, struct shadow *mthd, u32 upto) in shadow_fetch() argument 52 shadow_image(struct nvkm_bios *bios, int idx, u32 offset, struct shadow *mthd) in shadow_image() 110 shadow_method(struct nvkm_bios *bios, struct shadow *mthd, const char *name) in shadow_method() 171 struct shadow mthds[] = { in nvbios_shadow()
|
| /Linux-v5.4/tools/perf/util/scripting-engines/ |
| D | Build | 4 …) -Wno-redundant-decls -Wno-strict-prototypes -Wno-unused-parameter -Wno-shadow -Wno-nested-extern… 6 …(PYTHON_EMBED_CCOPTS) -Wno-redundant-decls -Wno-strict-prototypes -Wno-unused-parameter -Wno-shadow
|
| /Linux-v5.4/drivers/media/i2c/ |
| D | tvaudio.c | 126 audiocmd shadow; member 163 chip->shadow.bytes[1] = val; in chip_write() 173 if (subaddr + 1 >= ARRAY_SIZE(chip->shadow.bytes)) { in chip_write() 182 chip->shadow.bytes[subaddr+1] = val; in chip_write() 204 val = (chip->shadow.bytes[1] & ~mask) | (val & mask); in chip_write_masked() 206 if (subaddr + 1 >= ARRAY_SIZE(chip->shadow.bytes)) { in chip_write_masked() 213 val = (chip->shadow.bytes[subaddr+1] & ~mask) | (val & mask); in chip_write_masked() 281 if (cmd->count + cmd->bytes[0] - 1 >= ARRAY_SIZE(chip->shadow.bytes)) { in chip_cmd() 296 chip->shadow.bytes[i+cmd->bytes[0]] = cmd->bytes[i]; in chip_cmd() 441 int t = chip->shadow.bytes[TDA9840_SW + 1] & ~0x7e; in tda9840_setaudmode() [all …]
|
| /Linux-v5.4/drivers/media/dvb-frontends/ |
| D | itd1000.c | 77 itd1000_write_regs(state, (reg - 1) & 0xff, &state->shadow[(reg - 1) & 0xff], 1); in itd1000_read_reg() 90 state->shadow[r] = tmp; in itd1000_write_reg() 382 memset(state->shadow, 0xff, sizeof(state->shadow)); in itd1000_attach() 384 state->shadow[i] = itd1000_read_reg(state, i); in itd1000_attach()
|