/linux-5.10/arch/riscv/boot/dts/sifive/ |
D | fu540-c000.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 2 /* Copyright (c) 2018-2019 SiFive, Inc */ 4 /dts-v1/; 6 #include <dt-bindings/clock/sifive-fu540-prci.h> 9 #address-cells = <2>; 10 #size-cells = <2>; 11 compatible = "sifive,fu540-c000", "sifive,fu540"; 23 #address-cells = <1>; 24 #size-cells = <0>; 28 i-cache-block-size = <64>; [all …]
|
/linux-5.10/fs/squashfs/ |
D | file.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Squashfs - a compressed read only filesystem for Linux 14 * compressed fragment block (tail-end packed block). The compressed size 15 * of each datablock is stored in a block list contained within the 19 * larger), the code implements an index cache that caches the mapping from 20 * block index to datablock location on disk. 22 * The index cache allows Squashfs to handle large files (up to 1.75 TiB) while 23 * retaining a simple and space-efficient block list on disk. The cache 26 * The index cache is designed to be memory efficient, and by default uses 44 * Locate cache slot in range [offset, index] for specified inode. If [all …]
|
D | cache.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Squashfs - a compressed read only filesystem for Linux 8 * cache.c 15 * This file implements a generic cache implementation used for both caches, 16 * plus functions layered ontop of the generic cache implementation to 19 * To avoid out of memory and fragmentation issues with vmalloc the cache 22 * It should be noted that the cache is not used for file datablocks, these 23 * are decompressed and cached in the page-cache in the normal way. The 24 * cache is only used to temporarily cache fragment and metadata blocks 29 * have been packed with it, these because of locality-of-reference may be read [all …]
|
/linux-5.10/Documentation/admin-guide/ |
D | bcache.rst | 2 A block layer cache (bcache) 6 nice if you could use them as cache... Hence bcache. 11 This is the git repository of bcache-tools: 12 https://git.kernel.org/pub/scm/linux/kernel/git/colyli/bcache-tools.git/ 17 It's designed around the performance characteristics of SSDs - it only allocates 18 in erase block sized buckets, and it uses a hybrid btree/log to track cached 19 extents (which can be anywhere from a single sector to the bucket size). It's 20 designed to avoid random writes at all costs; it fills up an erase block 25 great lengths to protect your data - it reliably handles unclean shutdown. (It 29 Writeback caching can use most of the cache for buffering writes - writing [all …]
|
/linux-5.10/arch/powerpc/kernel/ |
D | cacheinfo.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Processor cache information made available to userspace via sysfs; 27 /* per-cpu object for tracking: 28 * - a "cache" kobject for the top-level directory 29 * - a list of "index" objects representing the cpu's local cache hierarchy 32 struct kobject *kobj; /* bare (not embedded) kobject for cache 37 /* "index" object: each cpu's cache directory has an index 38 * subdirectory corresponding to a cache object associated with the 44 struct cache *cache; member 48 * cache type */ [all …]
|
/linux-5.10/arch/riscv/kernel/ |
D | cacheinfo.c | 1 // SPDX-License-Identifier: GPL-2.0-only 22 if (rv_cache_ops && rv_cache_ops->get_priv_group) in cache_get_priv_group() 23 return rv_cache_ops->get_priv_group(this_leaf); in cache_get_priv_group() 33 for (index = 0; index < this_cpu_ci->num_leaves; index++) { in get_cacheinfo() 34 this_leaf = this_cpu_ci->info_list + index; in get_cacheinfo() 35 if (this_leaf->level == level && this_leaf->type == type) in get_cacheinfo() 46 return this_leaf ? this_leaf->size : 0; in get_cache_size() 53 return this_leaf ? (this_leaf->ways_of_associativity << 16 | in get_cache_geometry() 54 this_leaf->coherency_line_size) : in get_cache_geometry() 59 unsigned int level, unsigned int size, in ci_leaf_init() argument [all …]
|
/linux-5.10/arch/riscv/boot/dts/kendryte/ |
D | k210.dtsi | 1 // SPDX-License-Identifier: GPL-2.0+ 6 #include <dt-bindings/clock/k210-clk.h> 10 * Although the K210 is a 64-bit CPU, the address bus is only 32-bits 13 #address-cells = <1>; 14 #size-cells = <1>; 23 * Since this is a non-ratified draft specification, the kernel does not 28 #address-cells = <1>; 29 #size-cells = <0>; 30 timebase-frequency = <7800000>; 36 mmu-type = "none"; [all …]
|
/linux-5.10/fs/ext2/ |
D | xattr.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2001-2003 Andreas Gruenbacher <agruen@suse.de> 18 * block. If all extended attributes of an inode are identical, these 19 * inodes may share the same extended attribute block. Such situations 20 * are automatically detected by keeping a cache of recent attribute block 21 * numbers and hashes over the block's contents in memory. 24 * Extended attribute block layout: 26 * +------------------+ 36 * +------------------+ 38 * The block header is followed by multiple entry descriptors. These entry [all …]
|
/linux-5.10/fs/affs/ |
D | file.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * (c) 1996 Hans-Joachim Widmaier - Rewritten 7 * (C) 1993 Ray Burr - Modified for Amiga FFS filesystem. 11 * (C) 1991 Linus Torvalds - minix filesystem 25 pr_debug("open(%lu,%d)\n", in affs_file_open() 26 inode->i_ino, atomic_read(&AFFS_I(inode)->i_opencnt)); in affs_file_open() 27 atomic_inc(&AFFS_I(inode)->i_opencnt); in affs_file_open() 34 pr_debug("release(%lu, %d)\n", in affs_file_release() 35 inode->i_ino, atomic_read(&AFFS_I(inode)->i_opencnt)); in affs_file_release() 37 if (atomic_dec_and_test(&AFFS_I(inode)->i_opencnt)) { in affs_file_release() [all …]
|
/linux-5.10/arch/powerpc/include/asm/ |
D | vdso_datapage.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 61 __u64 physicalMemorySize; /* Size of real memory(B) 0x28 */ 69 __u32 dcache_size; /* L1 d-cache size 0x60 */ 70 __u32 dcache_line_size; /* L1 d-cache line size 0x64 */ 71 __u32 icache_size; /* L1 i-cache size 0x68 */ 72 __u32 icache_line_size; /* L1 i-cache line size 0x6C */ 77 __u32 dcache_block_size; /* L1 d-cache block size */ 78 __u32 icache_block_size; /* L1 i-cache block size */ 79 __u32 dcache_log_block_size; /* L1 d-cache log block size */ 80 __u32 icache_log_block_size; /* L1 i-cache log block size */ [all …]
|
/linux-5.10/Documentation/devicetree/bindings/riscv/ |
D | cpus.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR MIT) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: RISC-V bindings for 'cpus' DT nodes 10 - Paul Walmsley <paul.walmsley@sifive.com> 11 - Palmer Dabbelt <palmer@sifive.com> 14 This document uses some terminology common to the RISC-V community 18 mandated by the RISC-V ISA: a PC and some registers. This 28 - items: 29 - enum: [all …]
|
/linux-5.10/arch/powerpc/boot/dts/ |
D | iss4xx-mpic.dts | 15 /dts-v1/; 20 #address-cells = <2>; 21 #size-cells = <1>; 22 model = "ibm,iss-4xx"; 23 compatible = "ibm,iss-4xx"; 24 dcr-parent = <&{/cpus/cpu@0}>; 31 #address-cells = <1>; 32 #size-cells = <0>; 38 clock-frequency = <100000000>; // 100Mhz :-) 39 timebase-frequency = <100000000>; [all …]
|
D | iss4xx.dts | 15 /dts-v1/; 18 #address-cells = <2>; 19 #size-cells = <1>; 20 model = "ibm,iss-4xx"; 21 compatible = "ibm,iss-4xx"; 22 dcr-parent = <&{/cpus/cpu@0}>; 29 #address-cells = <1>; 30 #size-cells = <0>; 36 clock-frequency = <100000000>; // 100Mhz :-) 37 timebase-frequency = <100000000>; [all …]
|
D | ps3.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 9 /dts-v1/; 14 #size-cells = <2>; 15 #address-cells = <2>; 21 * We'll get the size of the bootmem block from lv1 after startup, 33 * dtc expects a clock-frequency and timebase-frequency entries, so 38 * threads is with an ibm,ppc-interrupt-server#s entry. We'll put one 43 #size-cells = <0>; 44 #address-cells = <1>; 49 ibm,ppc-interrupt-server#s = <0x0 0x1>; [all …]
|
/linux-5.10/arch/sh/boot/dts/ |
D | j2_mimas_v2.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 5 compatible = "jcore,j2-soc"; 8 #address-cells = <1>; 9 #size-cells = <1>; 11 interrupt-parent = <&aic>; 14 #address-cells = <1>; 15 #size-cells = <0>; 21 clock-frequency = <50000000>; 22 d-cache-size = <8192>; [all …]
|
/linux-5.10/drivers/mtd/ |
D | sm_ftl.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2009 - Maxim Levitsky 27 "Timeout (in ms) for cache flush (1000 ms default"); 31 MODULE_PARM_DESC(debug, "Debug level (0-2)"); 34 /* ------------------- sysfs attributes ---------------------------------- */ 47 strncpy(buf, sm_attr->data, sm_attr->len); in sm_attr_show() 48 return sm_attr->len; in sm_attr_show() 61 vendor = kstrndup(ftl->cis_buffer + SM_CIS_VENDOR_OFFSET, in sm_create_sysfs_attributes() 62 SM_SMALL_PAGE - SM_CIS_VENDOR_OFFSET, GFP_KERNEL); in sm_create_sysfs_attributes() 72 sysfs_attr_init(&vendor_attribute->dev_attr.attr); in sm_create_sysfs_attributes() [all …]
|
/linux-5.10/drivers/gpu/drm/i915/gt/shaders/clear_kernel/ |
D | ivb.asm | 1 // SPDX-License-Identifier: MIT 10 * 2. Write 32x16 block of all "0" to render target buffer which indirectly clears 11 * 512 bytes of Render Cache. 20 * DW 1.0 - Block Offset to write Render Cache 21 * DW 1.1 [15:0] - Clear Word 22 * DW 1.2 - Delay iterations 23 * DW 1.3 - Enable Instrumentation (only for debug) 24 * DW 1.4 - Rsvd (intended for context ID) 25 * DW 1.5 - [31:16]:SliceCount, [15:0]:SubSlicePerSliceCount 26 * DW 1.6 - Rsvd MBZ (intended for Enable Wait on Total Thread Count) [all …]
|
D | hsw.asm | 1 // SPDX-License-Identifier: MIT 10 * 2. Write 32x16 block of all "0" to render target buffer which indirectly clears 11 * 512 bytes of Render Cache. 20 * DW 1.0 - Block Offset to write Render Cache 21 * DW 1.1 [15:0] - Clear Word 22 * DW 1.2 - Delay iterations 23 * DW 1.3 - Enable Instrumentation (only for debug) 24 * DW 1.4 - Rsvd (intended for context ID) 25 * DW 1.5 - [31:16]:SliceCount, [15:0]:SubSlicePerSliceCount 26 * DW 1.6 - Rsvd MBZ (intended for Enable Wait on Total Thread Count) [all …]
|
/linux-5.10/drivers/md/ |
D | dm-cache-target.c | 8 #include "dm-bio-prison-v2.h" 9 #include "dm-bio-record.h" 10 #include "dm-cache-metadata.h" 12 #include <linux/dm-io.h> 13 #include <linux/dm-kcopyd.h> 22 #define DM_MSG_PREFIX "cache" 25 "A percentage of time allocated for copying to and/or from cache"); 27 /*----------------------------------------------------------------*/ 32 * oblock: index of an origin block 33 * cblock: index of a cache block [all …]
|
/linux-5.10/drivers/md/bcache/ |
D | super.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * bcache setup/teardown code, and some metadata io - read a superblock and 65 unsigned int bucket_size = le16_to_cpu(s->bucket_size); in get_bucket_size() 67 if (sb->version >= BCACHE_SB_VERSION_CDEV_WITH_FEATURES && in get_bucket_size() 69 bucket_size |= le16_to_cpu(s->bucket_size_hi) << 16; in get_bucket_size() 80 sb->first_bucket= le16_to_cpu(s->first_bucket); in read_super_common() 81 sb->nbuckets = le64_to_cpu(s->nbuckets); in read_super_common() 82 sb->bucket_size = get_bucket_size(sb, s); in read_super_common() 84 sb->nr_in_set = le16_to_cpu(s->nr_in_set); in read_super_common() 85 sb->nr_this_dev = le16_to_cpu(s->nr_this_dev); in read_super_common() [all …]
|
D | debug.c | 1 // SPDX-License-Identifier: GPL-2.0 26 (void *) i < (void *) (start) + (KEY_SIZE(&b->key) << 9) &&\ 27 i->seq == (start)->seq; \ 28 i = (void *) i + set_blocks(i, block_bytes(b->c->cache)) * \ 29 block_bytes(b->c->cache)) 33 struct btree *v = b->c->verify_data; in bch_btree_verify() 37 if (!b->c->verify || !b->c->verify_ondisk) in bch_btree_verify() 40 down(&b->io_mutex); in bch_btree_verify() 41 mutex_lock(&b->c->verify_lock); in bch_btree_verify() 43 ondisk = b->c->verify_ondisk; in bch_btree_verify() [all …]
|
/linux-5.10/drivers/base/ |
D | cacheinfo.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * cacheinfo support - processor cache information via sysfs 26 #define cache_leaves(cpu) (ci_cacheinfo(cpu)->num_leaves) 27 #define per_cpu_cacheinfo(cpu) (ci_cacheinfo(cpu)->info_list) 38 return sib_leaf->fw_token == this_leaf->fw_token; in cache_leaves_are_shared() 41 /* OF properties to query for a given cache type */ 50 .size_prop = "cache-size", 51 .line_size_props = { "cache-line-size", 52 "cache-block-size", }, 53 .nr_sets_prop = "cache-sets", [all …]
|
/linux-5.10/fs/btrfs/ |
D | extent-tree.c | 1 // SPDX-License-Identifier: GPL-2.0 20 #include "tree-log.h" 21 #include "disk-io.h" 22 #include "print-tree.h" 26 #include "free-space-cache.h" 27 #include "free-space-tree.h" 30 #include "ref-verify.h" 31 #include "space-info.h" 32 #include "block-rsv.h" 33 #include "delalloc-space.h" [all …]
|
/linux-5.10/block/partitions/ |
D | ldm.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * ldm - Support for Windows Logical Disk Manager (Dynamic Disks) 6 * Copyright (c) 2001-2012 Anton Altaparmakov 9 * Documentation is available at http://www.linux-ntfs.org/doku.php?id=downloads 23 * ldm_debug/info/error/crit - Output an error message 57 * ldm_parse_privhead - Read the LDM Database PRIVHEAD structure 59 * @ph: In-memory privhead structure in which to return parsed information 62 * sets up the in-memory privhead structure @ph with the obtained information. 77 ph->ver_major = get_unaligned_be16(data + 0x000C); in ldm_parse_privhead() 78 ph->ver_minor = get_unaligned_be16(data + 0x000E); in ldm_parse_privhead() [all …]
|
/linux-5.10/drivers/md/persistent-data/ |
D | dm-bitset.h | 9 #include "dm-array.h" 11 /*----------------------------------------------------------------*/ 15 * uses a tiny, one word cache to reduce the number of array lookups and so 18 * Like the dm-array that it's based on, the caller needs to keep track of 19 * the size of the bitset separately. The underlying dm-array implicitly 20 * knows how many words it's storing and will return -ENODATA if you try 29 * This describes the bitset and includes the cache. It's not called it 33 * b) Get yourself a root. The root is the index of a block of data on the 44 * Even read operations may trigger the cache to be flushed and as such 49 * d) Set a bit with dm_bitset_set_bit(). [all …]
|