/linux/fs/jfs/ |
H A D | jfs_extent.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (C) International Business Machines Corp., 2000-2004 54 * ip - the inode of the file. 55 * xlen - requested extent length. 56 * pno - the starting page number with the file. 57 * xp - pointer to an xad. on entry, xad describes an 59 * xaddr of the xad is non-zero. on successful exit, 61 * abnr - bool indicating whether the newly allocated extent 65 * 0 - success 66 * -EIO - i/o error. [all …]
|
/linux/Documentation/devicetree/bindings/sifive/ |
H A D | sifive-blocks-ip-versioning.txt | 1 DT compatible string versioning for SiFive open-source IP blocks 4 strings for open-source SiFive IP blocks. HDL for these IP blocks 7 https://github.com/sifive/sifive-blocks 9 IP block-specific DT compatible strings are contained within the HDL, 10 in the form "sifive,<ip-block-name><integer version number>". 14 https://github.com/sifive/sifive-blocks/blob/v1.0/src/main/scala/devices/uart/UART.scala#L43 16 Until these IP blocks (or IP integration) support version 17 auto-discovery, the maintainers of these IP blocks intend to increment 19 interface to these IP blocks changes, or when the functionality of the 20 underlying IP blocks changes in a way that software should be aware of. [all …]
|
/linux/fs/xfs/ |
H A D | xfs_reflink.c | 1 // SPDX-License-Identifier: GPL-2.0+ 39 * Copy on Write of Shared Blocks 42 * the same physical blocks. This means that a write to one file must not 43 * alter the blocks in a different file; the way that we'll do that is 44 * through the use of a copy-on-write mechanism. At a high level, that 50 * of disk blocks to dirty-but-not-yet-mapped file blocks as long as 56 * create a delalloc mapping, which is a regular in-core extent, but without 58 * a flag that this is a delalloc mapping, and a worst-case estimate of how 59 * many blocks might be required to put the mapping into the BMBT.) delalloc 68 * D: --RRRRRRSSSRRRRRRRR--- (data fork) [all …]
|
H A D | xfs_bmap_util.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2006 Silicon Graphics, Inc. 42 xfs_fsb_to_db(struct xfs_inode *ip, xfs_fsblock_t fsb) in xfs_fsb_to_db() argument 44 if (XFS_IS_REALTIME_INODE(ip)) in xfs_fsb_to_db() 45 return xfs_rtb_to_daddr(ip->i_mount, fsb); in xfs_fsb_to_db() 46 return XFS_FSB_TO_DADDR(ip->i_mount, fsb); in xfs_fsb_to_db() 54 struct xfs_inode *ip, in xfs_zero_extent() argument 58 return blkdev_issue_zeroout(xfs_inode_buftarg(ip)->bt_bdev, in xfs_zero_extent() 59 xfs_fsb_to_db(ip, start_fsb), in xfs_zero_extent() 60 XFS_FSB_TO_BB(ip->i_mount, count_fsb), in xfs_zero_extent() [all …]
|
H A D | xfs_aops.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2005 Silicon Graphics, Inc. 4 * Copyright (c) 2016-2018 Christoph Hellwig. 37 * Fast and loose check if this write could update the on-disk inode size. 41 return ioend->io_offset + ioend->io_size > in xfs_ioend_is_append() 42 XFS_I(ioend->io_inode)->i_disk_size; in xfs_ioend_is_append() 46 * Update on-disk file size now that data has been written to disk. 50 struct xfs_inode *ip, in xfs_setfilesize() argument 54 struct xfs_mount *mp = ip->i_mount; in xfs_setfilesize() 59 error = xfs_trans_alloc(mp, &M_RES(mp)->tr_fsyncts, 0, 0, 0, &tp); in xfs_setfilesize() [all …]
|
H A D | xfs_trans.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2003,2005 Silicon Graphics, Inc. 71 xfs_extent_busy_sort(&tp->t_busy); in xfs_trans_free() 72 xfs_extent_busy_clear(&tp->t_busy, false); in xfs_trans_free() 76 if (!(tp->t_flags & XFS_TRANS_NO_WRITECOUNT)) in xfs_trans_free() 77 sb_end_intwrite(tp->t_mountp->m_super); in xfs_trans_free() 87 * blocks. Locks and log items, however, are no inherited. They must 103 ntp->t_mountp = tp->t_mountp; in xfs_trans_dup() 104 INIT_LIST_HEAD(&ntp->t_items); in xfs_trans_dup() 105 INIT_LIST_HEAD(&ntp->t_busy); in xfs_trans_dup() [all …]
|
H A D | xfs_symlink.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2006 Silicon Graphics, Inc. 4 * Copyright (c) 2012-2013 Red Hat, Inc. 33 struct xfs_inode *ip, in xfs_readlink() argument 36 struct xfs_mount *mp = ip->i_mount; in xfs_readlink() 40 trace_xfs_readlink(ip); in xfs_readlink() 43 return -EIO; in xfs_readlink() 44 if (xfs_ifork_zapped(ip, XFS_DATA_FORK)) in xfs_readlink() 45 return -EIO; in xfs_readlink() 47 xfs_ilock(ip, XFS_ILOCK_SHARED); in xfs_readlink() [all …]
|
H A D | xfs_quota.h | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2005 Silicon Graphics, Inc. 27 #define XFS_NOT_DQATTACHED(mp, ip) \ argument 28 ((XFS_IS_UQUOTA_ON(mp) && (ip)->i_udquot == NULL) || \ 29 (XFS_IS_GQUOTA_ON(mp) && (ip)->i_gdquot == NULL) || \ 30 (XFS_IS_PQUOTA_ON(mp) && (ip)->i_pdquot == NULL)) 34 (mp->m_sb.sb_qflags & XFS_UQUOTA_CHKD) == 0) || \ 36 (mp->m_sb.sb_qflags & XFS_GQUOTA_CHKD) == 0) || \ 38 (mp->m_sb.sb_qflags & XFS_PQUOTA_CHKD) == 0)) 101 int xfs_trans_reserve_quota_nblks(struct xfs_trans *tp, struct xfs_inode *ip, [all …]
|
H A D | xfs_trans_dquot.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2002 Silicon Graphics, Inc. 35 ASSERT(dqp->q_logitem.qli_dquot == dqp); in xfs_trans_dqjoin() 40 xfs_trans_add_item(tp, &dqp->q_logitem.qli_item); in xfs_trans_dqjoin() 61 if (dqp->q_id != 0 && in xfs_trans_log_dquot() 62 xfs_has_bigtime(tp->t_mountp) && in xfs_trans_log_dquot() 63 !(dqp->q_type & XFS_DQTYPE_BIGTIME)) in xfs_trans_log_dquot() 64 dqp->q_type |= XFS_DQTYPE_BIGTIME; in xfs_trans_log_dquot() 66 tp->t_flags |= XFS_TRANS_DIRTY; in xfs_trans_log_dquot() 67 set_bit(XFS_LI_DIRTY, &dqp->q_logitem.qli_item.li_flags); in xfs_trans_log_dquot() [all …]
|
/linux/fs/gfs2/ |
H A D | bmap.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. 4 * Copyright (C) 2004-2006 Red Hat, Inc. All rights reserved. 43 static int punch_hole(struct gfs2_inode *ip, u64 offset, u64 length); 46 * gfs2_unstuffer_folio - unstuff a stuffed inode into a block cached by a folio 47 * @ip: the inode 54 static int gfs2_unstuffer_folio(struct gfs2_inode *ip, struct buffer_head *dibh, in gfs2_unstuffer_folio() argument 57 struct inode *inode = &ip->i_inode; in gfs2_unstuffer_folio() 63 memcpy(kaddr, dibh->b_data + sizeof(struct gfs2_dinode), dsize); in gfs2_unstuffer_folio() 64 memset(kaddr + dsize, 0, folio_size(folio) - dsize); in gfs2_unstuffer_folio() [all …]
|
H A D | quota.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. 4 * Copyright (C) 2004-2007 Red Hat, Inc. All rights reserved. 10 * per-node file) and then are periodically synced to the quota file. This 32 * GFS quotas also use per-ID Lock Value Blocks (LVBs) to cache the contents of 76 #define GFS2_QD_HASH_MASK (GFS2_QD_HASH_SIZE - 1) 78 /* Lock order: qd_lock -> bucket lock -> qd->lockref.lock -> lru lock */ 79 /* -> sd_bitmap_lock */ 109 struct gfs2_sbd *sdp = qd->qd_sbd; in gfs2_qd_dealloc() 112 if (atomic_dec_and_test(&sdp->sd_quota_count)) in gfs2_qd_dealloc() [all …]
|
H A D | bmap.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. 4 * Copyright (C) 2004-2006 Red Hat, Inc. All rights reserved. 20 * gfs2_write_calc_reserv - calculate number of blocks needed to write to a file 21 * @ip: the file 23 * @data_blocks: returns the number of data blocks required 24 * @ind_blocks: returns the number of indirect blocks required 28 static inline void gfs2_write_calc_reserv(const struct gfs2_inode *ip, in gfs2_write_calc_reserv() argument 33 const struct gfs2_sbd *sdp = GFS2_SB(&ip->i_inode); in gfs2_write_calc_reserv() 36 BUG_ON(gfs2_is_dir(ip)); in gfs2_write_calc_reserv() [all …]
|
/linux/fs/xfs/libxfs/ |
H A D | xfs_metafile.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (c) 2018-2024 Oracle. All Rights Reserved. 47 struct xfs_inode *ip, in xfs_metafile_set_iflag() argument 50 VFS_I(ip)->i_mode &= ~0777; in xfs_metafile_set_iflag() 51 VFS_I(ip)->i_uid = GLOBAL_ROOT_UID; in xfs_metafile_set_iflag() 52 VFS_I(ip)->i_gid = GLOBAL_ROOT_GID; in xfs_metafile_set_iflag() 53 if (S_ISDIR(VFS_I(ip)->i_mode)) in xfs_metafile_set_iflag() 54 ip->i_diflags |= XFS_METADIR_DIFLAGS; in xfs_metafile_set_iflag() 56 ip->i_diflags |= XFS_METAFILE_DIFLAGS; in xfs_metafile_set_iflag() 57 ip->i_diflags2 &= ~XFS_DIFLAG2_DAX; in xfs_metafile_set_iflag() [all …]
|
/linux/fs/xfs/scrub/ |
H A D | agheader_repair.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (C) 2018-2023 Oracle. All Rights Reserved. 44 struct xfs_mount *mp = sc->mp; in xrep_superblock() 50 agno = sc->sm->sm_agno; in xrep_superblock() 52 return -EOPNOTSUPP; in xrep_superblock() 54 error = xfs_sb_get_secondary(mp, sc->tp, agno, &bp); in xrep_superblock() 63 xfs_buf_zero(bp, 0, BBTOB(bp->b_length)); in xrep_superblock() 64 xfs_sb_to_disk(bp->b_addr, &mp->m_sb); in xrep_superblock() 71 struct xfs_dsb *sb = bp->b_addr; in xrep_superblock() 73 sb->sb_features_incompat &= in xrep_superblock() [all …]
|
H A D | reap.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (C) 2022-2023 Oracle. All Rights Reserved. 50 * Disposal of Blocks from Old Metadata 53 * to dispose of the blocks that (we think) the old btree was using. 56 * blocks with the same rmap owner that are owned by another data structure 58 * remaining in bitmap are the old btree's blocks. 61 * blocks on disk. The rmap data can tell us if there are multiple owners, so 68 * will be rebuilt (atop different blocks), thereby removing all the cross 130 error = xfs_rmap_alloc(sc->tp, sc->sa.agf_bp, sc->sa.pag, agbno, 1, in xreap_put_freelist() 136 error = xfs_alloc_read_agfl(sc->sa.pag, sc->tp, &agfl_bp); in xreap_put_freelist() [all …]
|
H A D | symlink_repair.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (c) 2018-2024 Oracle. All Rights Reserved. 59 struct xfs_mount *mp = sc->mp; in xrep_setup_symlink() 60 unsigned long long blocks; in xrep_setup_symlink() local 68 * If we're doing a repair, we reserve enough blocks to write out a in xrep_setup_symlink() 69 * completely new symlink file, plus twice as many blocks as we would in xrep_setup_symlink() 80 blocks = xfs_symlink_blocks(sc->mp, XFS_SYMLINK_MAXLEN); in xrep_setup_symlink() 81 blocks += xfs_bmbt_calc_size(mp, blocks) * 2; in xrep_setup_symlink() 82 if (blocks > UINT_MAX) in xrep_setup_symlink() 83 return -EOPNOTSUPP; in xrep_setup_symlink() [all …]
|
H A D | rmap_repair.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (c) 2018-2024 Oracle. All Rights Reserved. 68 * I) Reverse mappings for all non-space metadata and file data are collected 72 * 1.1. Create a bitmap BMBIT to track bmbt blocks if necessary. 77 * just visit the bmbt blocks to set the corresponding BMBIT areas. 99 * 2. Estimate the number of rmapbt blocks needed to store NR records. (= RMB) 100 * 3. Reserve RMB blocks through the newbt using the allocator in normap mode. 105 * 8. Estimate the number of rmapbt blocks needed for NR + AGNR rmaps. (= RMB') 106 * 9. If RMB' >= RMB, reserve RMB' - RMB more newbt blocks, set RMB = RMB', 115 * IV) Reap the old btree blocks. [all …]
|
H A D | rtbitmap_repair.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (C) 2020-2023 Oracle. All Rights Reserved. 45 struct xfs_mount *mp = sc->mp; in xrep_setup_rtbitmap() 47 unsigned long long blocks = mp->m_sb.sb_rbmblocks; in xrep_setup_rtbitmap() local 56 error = xfile_create(descr, blocks * mp->m_sb.sb_blocksize, &sc->xfile); in xrep_setup_rtbitmap() 62 * Reserve enough blocks to write out a completely new bitmap file, in xrep_setup_rtbitmap() 63 * plus twice as many blocks as we would need if we can only allocate in xrep_setup_rtbitmap() 74 blocks += xfs_bmbt_calc_size(mp, blocks) * 2; in xrep_setup_rtbitmap() 75 if (blocks > UINT_MAX) in xrep_setup_rtbitmap() 76 return -EOPNOTSUPP; in xrep_setup_rtbitmap() [all …]
|
H A D | bmap_repair.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (C) 2018-2023 Oracle. All Rights Reserved. 57 RLS_IRRELEVANT = -1, /* not applicable to this file */ 63 /* Old bmbt blocks */ 74 /* How many blocks did we find allocated to this file? */ 77 /* How many bmbt blocks did we find for this fork? */ 83 /* How many real (non-hole, non-delalloc) mappings do we have? */ 103 struct xfs_scrub *sc = rb->sc; in xrep_bmap_discover_shared() 110 if (XFS_IS_REALTIME_INODE(sc->ip)) { in xrep_bmap_discover_shared() 111 agbno = xfs_rtb_to_rgbno(sc->mp, startblock); in xrep_bmap_discover_shared() [all …]
|
/linux/drivers/gpu/drm/amd/include/ |
H A D | amd_shared.h | 57 * DOC: IP Blocks 59 * GPUs are composed of IP (intellectual property) blocks. These 60 * IP blocks provide various functionalities: display, graphics, 61 * video decode, etc. The IP blocks that comprise a particular GPU 63 * acquires the list of IP blocks for the GPU in use on initialization. 68 * IP block implementations are named using the following convention: 73 * enum amd_ip_block_type - Used to classify IP blocks by functionality. 85 * @AMD_IP_BLOCK_TYPE_ACP: Audio Co-Processor 87 * @AMD_IP_BLOCK_TYPE_MES: Micro-Engine Scheduler 92 * @AMD_IP_BLOCK_TYPE_NUM: Total number of IP block types [all …]
|
/linux/fs/freevxfs/ |
H A D | vxfs.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copyright (c) 2000-2001 Christoph Hellwig. 10 * Veritas filesystem driver - superblock structure. 18 * Superblock magic number (vxfs_super->vs_magic). 53 __fs32 vs_ctime; /* create time - secs */ 54 __fs32 vs_cutime; /* create time - usecs */ 60 __fs32 vs_size; /* number of blocks */ 61 __fs32 vs_dsize; /* number of data blocks */ 81 __fs32 vs_aulen; /* length of AU in blocks */ 82 __fs32 vs_auimlen; /* length of imap in blocks */ [all …]
|
/linux/tools/perf/util/ |
H A D | call-path.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * call-path.h: Manipulate a tree data structure containing function call paths 12 #include "call-path.h" 15 struct symbol *sym, u64 ip, bool in_kernel) in call_path__init() argument 17 cp->parent = parent; in call_path__init() 18 cp->sym = sym; in call_path__init() 19 cp->ip = sym ? 0 : ip; in call_path__init() 20 cp->db_id = 0; in call_path__init() 21 cp->in_kernel = in_kernel; in call_path__init() 22 RB_CLEAR_NODE(&cp->rb_node); in call_path__init() [all …]
|
/linux/arch/arm/crypto/ |
H A D | aes-ce-core.S | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * aes-ce-core.S - AES in CBC/CTR/XTS mode using ARMv8 Crypto Extensions 12 .arch armv8-a 13 .fpu crypto-neon-fp-armv8 102 vld1.32 {q10-q11}, [ip]! 104 vld1.32 {q12-q13}, [ip]! 106 vld1.32 {q10-q11}, [ip]! 108 vld1.32 {q12-q13}, [ip]! 110 blo 0f @ AES-128: 10 rounds 111 vld1.32 {q10-q11}, [ip]! [all …]
|
H A D | aes-neonbs-core.S | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 11 * 'Faster and Timing-Attack Resistant AES-GCM' by Emilia Kaesper and 15 * for 32-bit ARM written by Andy Polyakov <appro@openssl.org> 24 rounds .req ip 262 vld1.8 {\t0-\t1}, [bskey, :256]! 264 vld1.8 {\t2-\t3}, [bskey, :256]! 269 vld1.8 {\t0-\t1}, [bskey, :256]! 273 vld1.8 {\t2-\t3}, [bskey, :256]! 354 vld1.8 {\t0-\t1}, [bskey, :256]! 356 vld1.8 {\t2-\t3}, [bskey, :256]! [all …]
|
/linux/Documentation/gpu/amdgpu/ |
H A D | driver-core.rst | 8 Each ASIC is a collection of hardware blocks. We refer to them as 9 "IPs" (Intellectual Property blocks). Each IP encapsulates certain 13 the initialization and operation of each IP. There are also a bunch 32 This was a dedicated IP on older pre-vega chips, but has since 43 their interrupts into this IP and it aggregates them into a set of 49 applications, and validates and loads firmwares for other blocks. 58 It is described in more details in :ref:`Display Core <amdgpu-display-core>`. 61 This is a multi-purpose DMA engine. The kernel driver uses it for 68 encompasses the 3D pipeline and and shader blocks. This is by far the 69 largest block on the GPU. The 3D pipeline has tons of sub-blocks. In [all …]
|