Linux Kernel
3.7.1
|
#include "jfs_txnmgr.h"
Go to the source code of this file.
Data Structures | |
struct | dmaptree |
struct | dmap |
struct | dmapctl |
union | dmtree |
struct | dbmap_disk |
struct | dbmap |
struct | bmap |
Macros | |
#define | BMAPVERSION 1 /* version number */ |
#define | TREESIZE (256+64+16+4+1) /* size of a dmap tree */ |
#define | LEAFIND (64+16+4+1) /* index of 1st leaf of a dmap tree */ |
#define | LPERDMAP 256 /* num leaves per dmap tree */ |
#define | L2LPERDMAP 8 /* l2 number of leaves per dmap tree */ |
#define | DBWORD 32 /* # of blks covered by a map word */ |
#define | L2DBWORD 5 /* l2 # of blks covered by a mword */ |
#define | BUDMIN L2DBWORD /* max free string in a map word */ |
#define | BPERDMAP (LPERDMAP * DBWORD) /* num of blks per dmap */ |
#define | L2BPERDMAP 13 /* l2 num of blks per dmap */ |
#define | CTLTREESIZE (1024+256+64+16+4+1) /* size of a dmapctl tree */ |
#define | CTLLEAFIND (256+64+16+4+1) /* idx of 1st leaf of a dmapctl tree */ |
#define | LPERCTL 1024 /* num of leaves per dmapctl tree */ |
#define | L2LPERCTL 10 /* l2 num of leaves per dmapctl tree */ |
#define | ROOT 0 /* index of the root of a tree */ |
#define | NOFREE ((s8) -1) /* no blocks free */ |
#define | MAXAG 128 /* max number of allocation groups */ |
#define | L2MAXAG 7 /* l2 max num of AG */ |
#define | L2MINAGSZ 25 /* l2 of minimum AG size in bytes */ |
#define | BMAPBLKNO 0 /* lblkno of bmap within the map */ |
#define | L2MAXL0SIZE (L2BPERDMAP + 1 * L2LPERCTL) |
#define | L2MAXL1SIZE (L2BPERDMAP + 2 * L2LPERCTL) |
#define | L2MAXL2SIZE (L2BPERDMAP + 3 * L2LPERCTL) |
#define | MAXL0SIZE ((s64)1 << L2MAXL0SIZE) |
#define | MAXL1SIZE ((s64)1 << L2MAXL1SIZE) |
#define | MAXL2SIZE ((s64)1 << L2MAXL2SIZE) |
#define | MAXMAPSIZE MAXL2SIZE /* maximum aggregate map size */ |
#define | BLKTODMAP(b, s) ((((b) >> 13) + ((b) >> 23) + ((b) >> 33) + 3 + 1) << (s)) |
#define | BLKTOL0(b, s) (((((b) >> 23) << 10) + ((b) >> 23) + ((b) >> 33) + 2 + 1) << (s)) |
#define | BLKTOL1(b, s) (((((b) >> 33) << 20) + (((b) >> 33) << 10) + ((b) >> 33) + 1 + 1) << (s)) |
#define | BLKTOCTL(b, s, l) (((l) == 2) ? 1 : ((l) == 1) ? BLKTOL1((b),(s)) : BLKTOL0((b),(s))) |
#define | BMAPSZTOLEV(size) (((size) <= MAXL0SIZE) ? 0 : ((size) <= MAXL1SIZE) ? 1 : 2) |
#define | BLKTOAG(b, sbi) ((b) >> ((sbi)->bmap->db_agl2size)) |
#define | AGTOBLK(a, ip) ((s64)(a) << (JFS_SBI((ip)->i_sb)->bmap->db_agl2size)) |
#define | dmt_nleafs t1.nleafs |
#define | dmt_l2nleafs t1.l2nleafs |
#define | dmt_leafidx t1.leafidx |
#define | dmt_height t1.height |
#define | dmt_budmin t1.budmin |
#define | dmt_stree t1.stree |
#define | db_mapsize db_bmap.dn_mapsize |
#define | db_nfree db_bmap.dn_nfree |
#define | db_agfree db_bmap.dn_agfree |
#define | db_agsize db_bmap.dn_agsize |
#define | db_agl2size db_bmap.dn_agl2size |
#define | db_agwidth db_bmap.dn_agwidth |
#define | db_agheight db_bmap.dn_agheight |
#define | db_agstart db_bmap.dn_agstart |
#define | db_numag db_bmap.dn_numag |
#define | db_maxlevel db_bmap.dn_maxlevel |
#define | db_aglevel db_bmap.dn_aglevel |
#define | db_agpref db_bmap.dn_agpref |
#define | db_maxag db_bmap.dn_maxag |
#define | db_maxfreebud db_bmap.dn_maxfreebud |
#define | db_l2nbperpage db_bmap.dn_l2nbperpage |
#define | BLKSTOL2(d) (blkstol2(d)) |
#define | NLSTOL2BSZ(n) (31 - cntlz((n)) + BUDMIN) |
#define | LITOL2BSZ(n, m, b) ((((n) == 0) ? (m) : cnttz((n))) + (b)) |
#define | BLKTOCTLLEAF(b, m) (((b) & (((s64)1 << ((m) + L2LPERCTL)) - 1)) >> (m)) |
#define | BUDSIZE(s, m) (1 << ((s) - (m))) |
Typedefs | |
typedef union dmtree | dmtree_t |
Functions | |
int | dbMount (struct inode *ipbmap) |
int | dbUnmount (struct inode *ipbmap, int mounterror) |
int | dbFree (struct inode *ipbmap, s64 blkno, s64 nblocks) |
int | dbUpdatePMap (struct inode *ipbmap, int free, s64 blkno, s64 nblocks, struct tblock *tblk) |
int | dbNextAG (struct inode *ipbmap) |
int | dbAlloc (struct inode *ipbmap, s64 hint, s64 nblocks, s64 *results) |
int | dbReAlloc (struct inode *ipbmap, s64 blkno, s64 nblocks, s64 addnblocks, s64 *results) |
int | dbSync (struct inode *ipbmap) |
int | dbAllocBottomUp (struct inode *ip, s64 blkno, s64 nblocks) |
int | dbExtendFS (struct inode *ipbmap, s64 blkno, s64 nblocks) |
void | dbFinalizeBmap (struct inode *ipbmap) |
s64 | dbMapFileSizeToMapSize (struct inode *ipbmap) |
s64 | dbDiscardAG (struct inode *ip, int agno, s64 minlen) |
Definition at line 139 of file jfs_dmap.h.
Definition at line 275 of file jfs_dmap.h.
#define BLKTOAG | ( | b, | |
sbi | |||
) | ((b) >> ((sbi)->bmap->db_agl2size)) |
Definition at line 134 of file jfs_dmap.h.
Definition at line 122 of file jfs_dmap.h.
Definition at line 284 of file jfs_dmap.h.
Definition at line 85 of file jfs_dmap.h.
Definition at line 100 of file jfs_dmap.h.
Definition at line 115 of file jfs_dmap.h.
Definition at line 42 of file jfs_dmap.h.
Definition at line 129 of file jfs_dmap.h.
Definition at line 23 of file jfs_dmap.h.
Definition at line 31 of file jfs_dmap.h.
Definition at line 30 of file jfs_dmap.h.
#define CTLLEAFIND (256+64+16+4+1) /* idx of 1st leaf of a dmapctl tree */ |
Definition at line 34 of file jfs_dmap.h.
Definition at line 33 of file jfs_dmap.h.
#define db_agfree db_bmap.dn_agfree |
Definition at line 254 of file jfs_dmap.h.
#define db_agheight db_bmap.dn_agheight |
Definition at line 258 of file jfs_dmap.h.
#define db_agl2size db_bmap.dn_agl2size |
Definition at line 256 of file jfs_dmap.h.
#define db_aglevel db_bmap.dn_aglevel |
Definition at line 262 of file jfs_dmap.h.
#define db_agpref db_bmap.dn_agpref |
Definition at line 263 of file jfs_dmap.h.
#define db_agsize db_bmap.dn_agsize |
Definition at line 255 of file jfs_dmap.h.
#define db_agstart db_bmap.dn_agstart |
Definition at line 259 of file jfs_dmap.h.
#define db_agwidth db_bmap.dn_agwidth |
Definition at line 257 of file jfs_dmap.h.
#define db_l2nbperpage db_bmap.dn_l2nbperpage |
Definition at line 266 of file jfs_dmap.h.
#define db_mapsize db_bmap.dn_mapsize |
Definition at line 252 of file jfs_dmap.h.
#define db_maxag db_bmap.dn_maxag |
Definition at line 264 of file jfs_dmap.h.
#define db_maxfreebud db_bmap.dn_maxfreebud |
Definition at line 265 of file jfs_dmap.h.
#define db_maxlevel db_bmap.dn_maxlevel |
Definition at line 261 of file jfs_dmap.h.
#define db_nfree db_bmap.dn_nfree |
Definition at line 253 of file jfs_dmap.h.
#define db_numag db_bmap.dn_numag |
Definition at line 260 of file jfs_dmap.h.
#define dmt_budmin t1.budmin |
Definition at line 198 of file jfs_dmap.h.
#define dmt_height t1.height |
Definition at line 197 of file jfs_dmap.h.
#define dmt_l2nleafs t1.l2nleafs |
Definition at line 195 of file jfs_dmap.h.
#define dmt_leafidx t1.leafidx |
Definition at line 196 of file jfs_dmap.h.
#define dmt_nleafs t1.nleafs |
Definition at line 194 of file jfs_dmap.h.
#define dmt_stree t1.stree |
Definition at line 199 of file jfs_dmap.h.
Definition at line 29 of file jfs_dmap.h.
Definition at line 36 of file jfs_dmap.h.
Definition at line 27 of file jfs_dmap.h.
Definition at line 40 of file jfs_dmap.h.
#define L2MAXL0SIZE (L2BPERDMAP + 1 * L2LPERCTL) |
Definition at line 47 of file jfs_dmap.h.
#define L2MAXL1SIZE (L2BPERDMAP + 2 * L2LPERCTL) |
Definition at line 48 of file jfs_dmap.h.
#define L2MAXL2SIZE (L2BPERDMAP + 3 * L2LPERCTL) |
Definition at line 49 of file jfs_dmap.h.
#define LEAFIND (64+16+4+1) /* index of 1st leaf of a dmap tree */ |
Definition at line 25 of file jfs_dmap.h.
Definition at line 281 of file jfs_dmap.h.
Definition at line 39 of file jfs_dmap.h.
#define MAXL0SIZE ((s64)1 << L2MAXL0SIZE) |
Definition at line 54 of file jfs_dmap.h.
#define MAXL1SIZE ((s64)1 << L2MAXL1SIZE) |
Definition at line 55 of file jfs_dmap.h.
#define MAXL2SIZE ((s64)1 << L2MAXL2SIZE) |
Definition at line 56 of file jfs_dmap.h.
Definition at line 58 of file jfs_dmap.h.
Definition at line 278 of file jfs_dmap.h.
Definition at line 38 of file jfs_dmap.h.
Definition at line 24 of file jfs_dmap.h.
Definition at line 702 of file jfs_dmap.c.
Definition at line 3222 of file jfs_dmap.c.
Definition at line 1628 of file jfs_dmap.c.
Definition at line 3398 of file jfs_dmap.c.
Definition at line 3671 of file jfs_dmap.c.
TRIM the blocks, when mounted with discard option
Definition at line 331 of file jfs_dmap.c.
Definition at line 4067 of file jfs_dmap.c.
Definition at line 165 of file jfs_dmap.c.
Definition at line 605 of file jfs_dmap.c.
Definition at line 980 of file jfs_dmap.c.
Definition at line 263 of file jfs_dmap.c.