em 136 arch/arc/include/asm/entry-compact.h st \reg, [\mem] em 144 arch/arc/include/asm/entry-compact.h ld \reg, [\mem] em 128 drivers/block/aoe/aoechr.c struct ErrMsg *em; em 136 drivers/block/aoe/aoechr.c em = emsgs + emsgs_tail_idx; em 137 drivers/block/aoe/aoechr.c if ((em->flags & EMFL_VALID)) { em 148 drivers/block/aoe/aoechr.c em->msg = mp; em 149 drivers/block/aoe/aoechr.c em->flags |= EMFL_VALID; em 150 drivers/block/aoe/aoechr.c em->len = n; em 217 drivers/block/aoe/aoechr.c struct ErrMsg *em; em 228 drivers/block/aoe/aoechr.c em = emsgs + emsgs_head_idx; em 229 drivers/block/aoe/aoechr.c if ((em->flags & EMFL_VALID) != 0) em 250 drivers/block/aoe/aoechr.c if (em->len > cnt) { em 254 drivers/block/aoe/aoechr.c mp = em->msg; em 255 drivers/block/aoe/aoechr.c len = em->len; em 256 drivers/block/aoe/aoechr.c em->msg = NULL; em 257 drivers/block/aoe/aoechr.c em->flags &= ~EMFL_VALID; em 567 drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h #define ENCODER_MODE_IS_DP(em) (((em) == ATOM_ENCODER_MODE_DP) || \ em 568 drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h ((em) == ATOM_ENCODER_MODE_DP_MST)) em 1476 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c int em = amdgpu_atombios_encoder_get_encoder_mode(encoder); em 1488 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c if (em == ATOM_ENCODER_MODE_HDMI) { em 1491 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c } else if (ENCODER_MODE_IS_DP(em)) { em 1496 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c if (em == ATOM_ENCODER_MODE_HDMI) { em 1499 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c } else if (ENCODER_MODE_IS_DP(em)) { em 1636 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c int em = amdgpu_atombios_encoder_get_encoder_mode(encoder); em 1673 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c if (em == ATOM_ENCODER_MODE_HDMI) { em 1677 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c } else if (ENCODER_MODE_IS_DP(em)) { em 1684 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c if (em == ATOM_ENCODER_MODE_HDMI) { em 1686 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c } else if (ENCODER_MODE_IS_DP(em)) { em 3105 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c int em = amdgpu_atombios_encoder_get_encoder_mode(encoder); em 3115 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c if (em == ATOM_ENCODER_MODE_HDMI || ENCODER_MODE_IS_DP(em)) { em 3177 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c int em = amdgpu_atombios_encoder_get_encoder_mode(encoder); em 3182 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c if (em == ATOM_ENCODER_MODE_HDMI || ENCODER_MODE_IS_DP(em)) em 576 drivers/gpu/drm/radeon/radeon_mode.h #define ENCODER_MODE_IS_DP(em) (((em) == ATOM_ENCODER_MODE_DP) || \ em 577 drivers/gpu/drm/radeon/radeon_mode.h ((em) == ATOM_ENCODER_MODE_DP_MST)) em 61 drivers/input/misc/yealink.c #define _SEG(t, a, am, b, bm, c, cm, d, dm, e, em, f, fm, g, gm) \ em 64 drivers/input/misc/yealink.c _LOC(d, dm), _LOC(e, em), _LOC(g, gm), \ em 907 drivers/media/radio/radio-wl1273.c u16 em; em 917 drivers/media/radio/radio-wl1273.c em = 1; em 920 drivers/media/radio/radio-wl1273.c em = 0; em 923 drivers/media/radio/radio-wl1273.c em = 2; em 930 drivers/media/radio/radio-wl1273.c r = core->write(core, WL1273_PREMPH_SET, em); em 174 drivers/net/ethernet/freescale/enetc/enetc_pf.c bool em = (f->mac_addr_cnt == 1) && (i == UC); em 186 drivers/net/ethernet/freescale/enetc/enetc_pf.c if (em) { em 218 drivers/net/ethernet/freescale/enetc/enetc_pf.c bool em; em 241 drivers/net/ethernet/freescale/enetc/enetc_pf.c em = (netdev_uc_count(ndev) == 1); em 243 drivers/net/ethernet/freescale/enetc/enetc_pf.c if (em) { em 158 drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000_pcie.c void __iomem *em; em 643 drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000_pcie.c nfp->iomem.em = bar->iomem + NFP_PCIE_EM; em 1512 drivers/rapidio/devices/rio_mport_cdev.c if ((msg->em.comptag & filter->mask) < filter->low || em 1513 drivers/rapidio/devices/rio_mport_cdev.c (msg->em.comptag & filter->mask) > filter->high) em 1544 drivers/rapidio/devices/rio_mport_cdev.c mport->id, msg->em.comptag); em 1190 drivers/rapidio/rio.c rdev = rio_get_comptag((pw_msg->em.comptag & RIO_CTAG_UDEVID), NULL); em 1195 drivers/rapidio/rio.c __func__, pw_msg->em.comptag); em 1223 drivers/rapidio/rio.c portnum = pw_msg->em.is_port & 0xFF; em 315 drivers/scsi/libfc/fc_exch.c mp = ep->em; em 445 drivers/scsi/libfc/fc_exch.c index = (ep->xid - ep->em->min_xid) >> fc_cpu_order; em 873 drivers/scsi/libfc/fc_exch.c ep->em = mp; em 860 fs/btrfs/block-group.c u64 group_start, struct extent_map *em) em 1117 fs/btrfs/block-group.c remove_extent_mapping(em_tree, em); em 1120 fs/btrfs/block-group.c free_extent_map(em); em 1137 fs/btrfs/block-group.c struct extent_map *em; em 1142 fs/btrfs/block-group.c em = lookup_extent_mapping(em_tree, chunk_offset, 1); em 1144 fs/btrfs/block-group.c ASSERT(em && em->start == chunk_offset); em 1165 fs/btrfs/block-group.c map = em->map_lookup; em 1167 fs/btrfs/block-group.c free_extent_map(em); em 1461 fs/btrfs/block-group.c struct extent_map *em; em 1465 fs/btrfs/block-group.c em = lookup_extent_mapping(em_tree, found_key.objectid, em 1468 fs/btrfs/block-group.c if (!em) { em 1473 fs/btrfs/block-group.c } else if (em->start != found_key.objectid || em 1474 fs/btrfs/block-group.c em->len != found_key.offset) { em 1478 fs/btrfs/block-group.c em->start, em->len); em 1487 fs/btrfs/block-group.c if (flags != (em->map_lookup->type & em 1494 fs/btrfs/block-group.c em->map_lookup->type)); em 1500 fs/btrfs/block-group.c free_extent_map(em); em 1645 fs/btrfs/block-group.c struct extent_map *em; em 1657 fs/btrfs/block-group.c em = lookup_extent_mapping(map_tree, start, 1); em 1659 fs/btrfs/block-group.c if (!em) em 1662 fs/btrfs/block-group.c bg = btrfs_lookup_block_group(fs_info, em->start); em 1666 fs/btrfs/block-group.c em->start, em->len); em 1668 fs/btrfs/block-group.c free_extent_map(em); em 1671 fs/btrfs/block-group.c if (bg->key.objectid != em->start || em 1672 fs/btrfs/block-group.c bg->key.offset != em->len || em 1674 fs/btrfs/block-group.c (em->map_lookup->type & BTRFS_BLOCK_GROUP_TYPE_MASK)) { em 1677 fs/btrfs/block-group.c em->start, em->len, em 1678 fs/btrfs/block-group.c em->map_lookup->type & BTRFS_BLOCK_GROUP_TYPE_MASK, em 1682 fs/btrfs/block-group.c free_extent_map(em); em 1686 fs/btrfs/block-group.c start = em->start + em->len; em 1687 fs/btrfs/block-group.c free_extent_map(em); em 201 fs/btrfs/block-group.h u64 group_start, struct extent_map *em); em 439 fs/btrfs/compression.c struct extent_map *em; em 488 fs/btrfs/compression.c em = lookup_extent_mapping(em_tree, last_offset, em 492 fs/btrfs/compression.c if (!em || last_offset < em->start || em 493 fs/btrfs/compression.c (last_offset + PAGE_SIZE > extent_map_end(em)) || em 494 fs/btrfs/compression.c (em->block_start >> 9) != cb->orig_bio->bi_iter.bi_sector) { em 495 fs/btrfs/compression.c free_extent_map(em); em 501 fs/btrfs/compression.c free_extent_map(em); em 561 fs/btrfs/compression.c struct extent_map *em; em 571 fs/btrfs/compression.c em = lookup_extent_mapping(em_tree, em 575 fs/btrfs/compression.c if (!em) em 578 fs/btrfs/compression.c compressed_len = em->block_len; em 589 fs/btrfs/compression.c cb->start = em->orig_start; em 590 fs/btrfs/compression.c em_len = em->len; em 591 fs/btrfs/compression.c em_start = em->start; em 593 fs/btrfs/compression.c free_extent_map(em); em 594 fs/btrfs/compression.c em = NULL; em 714 fs/btrfs/compression.c free_extent_map(em); em 2812 fs/btrfs/ctree.h struct extent_map *em); em 728 fs/btrfs/dev-replace.c struct extent_map *em; em 735 fs/btrfs/dev-replace.c em = lookup_extent_mapping(em_tree, start, (u64)-1); em 736 fs/btrfs/dev-replace.c if (!em) em 738 fs/btrfs/dev-replace.c map = em->map_lookup; em 742 fs/btrfs/dev-replace.c start = em->start + em->len; em 743 fs/btrfs/dev-replace.c free_extent_map(em); em 210 fs/btrfs/disk-io.c struct extent_map *em; em 214 fs/btrfs/disk-io.c em = lookup_extent_mapping(em_tree, start, len); em 215 fs/btrfs/disk-io.c if (em) { em 216 fs/btrfs/disk-io.c em->bdev = fs_info->fs_devices->latest_bdev; em 222 fs/btrfs/disk-io.c em = alloc_extent_map(); em 223 fs/btrfs/disk-io.c if (!em) { em 224 fs/btrfs/disk-io.c em = ERR_PTR(-ENOMEM); em 227 fs/btrfs/disk-io.c em->start = 0; em 228 fs/btrfs/disk-io.c em->len = (u64)-1; em 229 fs/btrfs/disk-io.c em->block_len = (u64)-1; em 230 fs/btrfs/disk-io.c em->block_start = 0; em 231 fs/btrfs/disk-io.c em->bdev = fs_info->fs_devices->latest_bdev; em 234 fs/btrfs/disk-io.c ret = add_extent_mapping(em_tree, em, 0); em 236 fs/btrfs/disk-io.c free_extent_map(em); em 237 fs/btrfs/disk-io.c em = lookup_extent_mapping(em_tree, start, len); em 238 fs/btrfs/disk-io.c if (!em) em 239 fs/btrfs/disk-io.c em = ERR_PTR(-EIO); em 241 fs/btrfs/disk-io.c free_extent_map(em); em 242 fs/btrfs/disk-io.c em = ERR_PTR(ret); em 247 fs/btrfs/disk-io.c return em; em 2382 fs/btrfs/extent_io.c struct extent_map *em; em 2402 fs/btrfs/extent_io.c em = lookup_extent_mapping(em_tree, start, failrec->len); em 2403 fs/btrfs/extent_io.c if (!em) { em 2409 fs/btrfs/extent_io.c if (em->start > start || em->start + em->len <= start) { em 2410 fs/btrfs/extent_io.c free_extent_map(em); em 2411 fs/btrfs/extent_io.c em = NULL; em 2414 fs/btrfs/extent_io.c if (!em) { em 2419 fs/btrfs/extent_io.c logical = start - em->start; em 2420 fs/btrfs/extent_io.c logical = em->block_start + logical; em 2421 fs/btrfs/extent_io.c if (test_bit(EXTENT_FLAG_COMPRESSED, &em->flags)) { em 2422 fs/btrfs/extent_io.c logical = em->block_start; em 2425 fs/btrfs/extent_io.c em->compress_type); em 2433 fs/btrfs/extent_io.c free_extent_map(em); em 3026 fs/btrfs/extent_io.c struct extent_map *em; em 3029 fs/btrfs/extent_io.c em = *em_cached; em 3030 fs/btrfs/extent_io.c if (extent_map_in_tree(em) && start >= em->start && em 3031 fs/btrfs/extent_io.c start < extent_map_end(em)) { em 3032 fs/btrfs/extent_io.c refcount_inc(&em->refs); em 3033 fs/btrfs/extent_io.c return em; em 3036 fs/btrfs/extent_io.c free_extent_map(em); em 3040 fs/btrfs/extent_io.c em = get_extent(BTRFS_I(inode), page, pg_offset, start, len, 0); em 3041 fs/btrfs/extent_io.c if (em_cached && !IS_ERR_OR_NULL(em)) { em 3043 fs/btrfs/extent_io.c refcount_inc(&em->refs); em 3044 fs/btrfs/extent_io.c *em_cached = em; em 3046 fs/btrfs/extent_io.c return em; em 3071 fs/btrfs/extent_io.c struct extent_map *em; em 3122 fs/btrfs/extent_io.c em = __get_extent_map(inode, page, pg_offset, cur, em 3124 fs/btrfs/extent_io.c if (IS_ERR_OR_NULL(em)) { em 3129 fs/btrfs/extent_io.c extent_offset = cur - em->start; em 3130 fs/btrfs/extent_io.c BUG_ON(extent_map_end(em) <= cur); em 3133 fs/btrfs/extent_io.c if (test_bit(EXTENT_FLAG_COMPRESSED, &em->flags)) { em 3136 fs/btrfs/extent_io.c em->compress_type); em 3139 fs/btrfs/extent_io.c iosize = min(extent_map_end(em) - cur, end - cur + 1); em 3140 fs/btrfs/extent_io.c cur_end = min(extent_map_end(em) - 1, end); em 3143 fs/btrfs/extent_io.c disk_io_size = em->block_len; em 3144 fs/btrfs/extent_io.c offset = em->block_start; em 3146 fs/btrfs/extent_io.c offset = em->block_start + extent_offset; em 3149 fs/btrfs/extent_io.c bdev = em->bdev; em 3150 fs/btrfs/extent_io.c block_start = em->block_start; em 3151 fs/btrfs/extent_io.c if (test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) em 3188 fs/btrfs/extent_io.c if (test_bit(EXTENT_FLAG_COMPRESSED, &em->flags) && em 3190 fs/btrfs/extent_io.c *prev_em_start != em->start) em 3194 fs/btrfs/extent_io.c *prev_em_start = em->start; em 3196 fs/btrfs/extent_io.c free_extent_map(em); em 3197 fs/btrfs/extent_io.c em = NULL; em 3426 fs/btrfs/extent_io.c struct extent_map *em; em 3470 fs/btrfs/extent_io.c em = btrfs_get_extent(BTRFS_I(inode), page, pg_offset, cur, em 3472 fs/btrfs/extent_io.c if (IS_ERR_OR_NULL(em)) { em 3474 fs/btrfs/extent_io.c ret = PTR_ERR_OR_ZERO(em); em 3478 fs/btrfs/extent_io.c extent_offset = cur - em->start; em 3479 fs/btrfs/extent_io.c em_end = extent_map_end(em); em 3484 fs/btrfs/extent_io.c offset = em->block_start + extent_offset; em 3485 fs/btrfs/extent_io.c bdev = em->bdev; em 3486 fs/btrfs/extent_io.c block_start = em->block_start; em 3487 fs/btrfs/extent_io.c compressed = test_bit(EXTENT_FLAG_COMPRESSED, &em->flags); em 3488 fs/btrfs/extent_io.c free_extent_map(em); em 3489 fs/btrfs/extent_io.c em = NULL; em 4445 fs/btrfs/extent_io.c struct extent_map *em; em 4458 fs/btrfs/extent_io.c em = lookup_extent_mapping(map, start, len); em 4459 fs/btrfs/extent_io.c if (!em) { em 4463 fs/btrfs/extent_io.c if (test_bit(EXTENT_FLAG_PINNED, &em->flags) || em 4464 fs/btrfs/extent_io.c em->start != start) { em 4466 fs/btrfs/extent_io.c free_extent_map(em); em 4469 fs/btrfs/extent_io.c if (!test_range_bit(tree, em->start, em 4470 fs/btrfs/extent_io.c extent_map_end(em) - 1, em 4474 fs/btrfs/extent_io.c remove_extent_mapping(map, em); em 4476 fs/btrfs/extent_io.c free_extent_map(em); em 4478 fs/btrfs/extent_io.c start = extent_map_end(em); em 4482 fs/btrfs/extent_io.c free_extent_map(em); em 4496 fs/btrfs/extent_io.c struct extent_map *em; em 4507 fs/btrfs/extent_io.c em = btrfs_get_extent_fiemap(BTRFS_I(inode), offset, len); em 4508 fs/btrfs/extent_io.c if (IS_ERR_OR_NULL(em)) em 4509 fs/btrfs/extent_io.c return em; em 4512 fs/btrfs/extent_io.c if (em->block_start != EXTENT_MAP_HOLE) em 4513 fs/btrfs/extent_io.c return em; em 4516 fs/btrfs/extent_io.c offset = extent_map_end(em); em 4517 fs/btrfs/extent_io.c free_extent_map(em); em 4649 fs/btrfs/extent_io.c struct extent_map *em = NULL; em 4727 fs/btrfs/extent_io.c em = get_extent_skip_holes(inode, start, last_for_get_extent); em 4728 fs/btrfs/extent_io.c if (!em) em 4730 fs/btrfs/extent_io.c if (IS_ERR(em)) { em 4731 fs/btrfs/extent_io.c ret = PTR_ERR(em); em 4739 fs/btrfs/extent_io.c if (em->start >= max || extent_map_end(em) < off) em 4748 fs/btrfs/extent_io.c em_start = max(em->start, off); em 4756 fs/btrfs/extent_io.c if (!test_bit(EXTENT_FLAG_COMPRESSED, &em->flags)) em 4757 fs/btrfs/extent_io.c offset_in_extent = em_start - em->start; em 4758 fs/btrfs/extent_io.c em_end = extent_map_end(em); em 4761 fs/btrfs/extent_io.c if (em->block_start < EXTENT_MAP_LAST_BYTE) em 4762 fs/btrfs/extent_io.c disko = em->block_start + offset_in_extent; em 4769 fs/btrfs/extent_io.c off = extent_map_end(em); em 4773 fs/btrfs/extent_io.c if (em->block_start == EXTENT_MAP_LAST_BYTE) { em 4776 fs/btrfs/extent_io.c } else if (em->block_start == EXTENT_MAP_INLINE) { em 4779 fs/btrfs/extent_io.c } else if (em->block_start == EXTENT_MAP_DELALLOC) { em 4783 fs/btrfs/extent_io.c u64 bytenr = em->block_start - em 4784 fs/btrfs/extent_io.c (em->start - em->orig_start); em 4802 fs/btrfs/extent_io.c if (test_bit(EXTENT_FLAG_COMPRESSED, &em->flags)) em 4804 fs/btrfs/extent_io.c if (test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) em 4807 fs/btrfs/extent_io.c free_extent_map(em); em 4808 fs/btrfs/extent_io.c em = NULL; em 4816 fs/btrfs/extent_io.c em = get_extent_skip_holes(inode, off, last_for_get_extent); em 4817 fs/btrfs/extent_io.c if (IS_ERR(em)) { em 4818 fs/btrfs/extent_io.c ret = PTR_ERR(em); em 4821 fs/btrfs/extent_io.c if (!em) { em 4836 fs/btrfs/extent_io.c free_extent_map(em); em 52 fs/btrfs/extent_map.c struct extent_map *em; em 53 fs/btrfs/extent_map.c em = kmem_cache_zalloc(extent_map_cache, GFP_NOFS); em 54 fs/btrfs/extent_map.c if (!em) em 56 fs/btrfs/extent_map.c RB_CLEAR_NODE(&em->rb_node); em 57 fs/btrfs/extent_map.c em->flags = 0; em 58 fs/btrfs/extent_map.c em->compress_type = BTRFS_COMPRESS_NONE; em 59 fs/btrfs/extent_map.c em->generation = 0; em 60 fs/btrfs/extent_map.c refcount_set(&em->refs, 1); em 61 fs/btrfs/extent_map.c INIT_LIST_HEAD(&em->list); em 62 fs/btrfs/extent_map.c return em; em 72 fs/btrfs/extent_map.c void free_extent_map(struct extent_map *em) em 74 fs/btrfs/extent_map.c if (!em) em 76 fs/btrfs/extent_map.c WARN_ON(refcount_read(&em->refs) == 0); em 77 fs/btrfs/extent_map.c if (refcount_dec_and_test(&em->refs)) { em 78 fs/btrfs/extent_map.c WARN_ON(extent_map_in_tree(em)); em 79 fs/btrfs/extent_map.c WARN_ON(!list_empty(&em->list)); em 80 fs/btrfs/extent_map.c if (test_bit(EXTENT_FLAG_FS_MAPPING, &em->flags)) em 81 fs/btrfs/extent_map.c kfree(em->map_lookup); em 82 fs/btrfs/extent_map.c kmem_cache_free(extent_map_cache, em); em 94 fs/btrfs/extent_map.c static int tree_insert(struct rb_root_cached *root, struct extent_map *em) em 100 fs/btrfs/extent_map.c u64 end = range_end(em->start, em->len); em 107 fs/btrfs/extent_map.c if (em->start < entry->start) { em 109 fs/btrfs/extent_map.c } else if (em->start >= extent_map_end(entry)) { em 118 fs/btrfs/extent_map.c while (parent && em->start >= extent_map_end(entry)) { em 123 fs/btrfs/extent_map.c if (end > entry->start && em->start < extent_map_end(entry)) em 128 fs/btrfs/extent_map.c while (parent && em->start < entry->start) { em 133 fs/btrfs/extent_map.c if (end > entry->start && em->start < extent_map_end(entry)) em 136 fs/btrfs/extent_map.c rb_link_node(&em->rb_node, orig_parent, p); em 137 fs/btrfs/extent_map.c rb_insert_color_cached(&em->rb_node, root, leftmost); em 231 fs/btrfs/extent_map.c static void try_merge_map(struct extent_map_tree *tree, struct extent_map *em) em 244 fs/btrfs/extent_map.c if (refcount_read(&em->refs) > 2) em 247 fs/btrfs/extent_map.c if (em->start != 0) { em 248 fs/btrfs/extent_map.c rb = rb_prev(&em->rb_node); em 251 fs/btrfs/extent_map.c if (rb && mergable_maps(merge, em)) { em 252 fs/btrfs/extent_map.c em->start = merge->start; em 253 fs/btrfs/extent_map.c em->orig_start = merge->orig_start; em 254 fs/btrfs/extent_map.c em->len += merge->len; em 255 fs/btrfs/extent_map.c em->block_len += merge->block_len; em 256 fs/btrfs/extent_map.c em->block_start = merge->block_start; em 257 fs/btrfs/extent_map.c em->mod_len = (em->mod_len + em->mod_start) - merge->mod_start; em 258 fs/btrfs/extent_map.c em->mod_start = merge->mod_start; em 259 fs/btrfs/extent_map.c em->generation = max(em->generation, merge->generation); em 267 fs/btrfs/extent_map.c rb = rb_next(&em->rb_node); em 270 fs/btrfs/extent_map.c if (rb && mergable_maps(em, merge)) { em 271 fs/btrfs/extent_map.c em->len += merge->len; em 272 fs/btrfs/extent_map.c em->block_len += merge->block_len; em 275 fs/btrfs/extent_map.c em->mod_len = (merge->mod_start + merge->mod_len) - em->mod_start; em 276 fs/btrfs/extent_map.c em->generation = max(em->generation, merge->generation); em 296 fs/btrfs/extent_map.c struct extent_map *em; em 300 fs/btrfs/extent_map.c em = lookup_extent_mapping(tree, start, len); em 302 fs/btrfs/extent_map.c WARN_ON(!em || em->start != start); em 304 fs/btrfs/extent_map.c if (!em) em 307 fs/btrfs/extent_map.c em->generation = gen; em 308 fs/btrfs/extent_map.c clear_bit(EXTENT_FLAG_PINNED, &em->flags); em 309 fs/btrfs/extent_map.c em->mod_start = em->start; em 310 fs/btrfs/extent_map.c em->mod_len = em->len; em 312 fs/btrfs/extent_map.c if (test_bit(EXTENT_FLAG_FILLING, &em->flags)) { em 314 fs/btrfs/extent_map.c clear_bit(EXTENT_FLAG_FILLING, &em->flags); em 317 fs/btrfs/extent_map.c try_merge_map(tree, em); em 320 fs/btrfs/extent_map.c em->mod_start = em->start; em 321 fs/btrfs/extent_map.c em->mod_len = em->len; em 324 fs/btrfs/extent_map.c free_extent_map(em); em 331 fs/btrfs/extent_map.c void clear_em_logging(struct extent_map_tree *tree, struct extent_map *em) em 333 fs/btrfs/extent_map.c clear_bit(EXTENT_FLAG_LOGGING, &em->flags); em 334 fs/btrfs/extent_map.c if (extent_map_in_tree(em)) em 335 fs/btrfs/extent_map.c try_merge_map(tree, em); em 339 fs/btrfs/extent_map.c struct extent_map *em, em 342 fs/btrfs/extent_map.c refcount_inc(&em->refs); em 343 fs/btrfs/extent_map.c em->mod_start = em->start; em 344 fs/btrfs/extent_map.c em->mod_len = em->len; em 347 fs/btrfs/extent_map.c list_move(&em->list, &tree->modified_extents); em 349 fs/btrfs/extent_map.c try_merge_map(tree, em); em 352 fs/btrfs/extent_map.c static void extent_map_device_set_bits(struct extent_map *em, unsigned bits) em 354 fs/btrfs/extent_map.c struct map_lookup *map = em->map_lookup; em 355 fs/btrfs/extent_map.c u64 stripe_size = em->orig_block_len; em 367 fs/btrfs/extent_map.c static void extent_map_device_clear_bits(struct extent_map *em, unsigned bits) em 369 fs/btrfs/extent_map.c struct map_lookup *map = em->map_lookup; em 370 fs/btrfs/extent_map.c u64 stripe_size = em->orig_block_len; em 394 fs/btrfs/extent_map.c struct extent_map *em, int modified) em 400 fs/btrfs/extent_map.c ret = tree_insert(&tree->map, em); em 404 fs/btrfs/extent_map.c setup_extent_mapping(tree, em, modified); em 405 fs/btrfs/extent_map.c if (test_bit(EXTENT_FLAG_FS_MAPPING, &em->flags)) { em 406 fs/btrfs/extent_map.c extent_map_device_set_bits(em, CHUNK_ALLOCATED); em 407 fs/btrfs/extent_map.c extent_map_device_clear_bits(em, CHUNK_TRIMMED); em 417 fs/btrfs/extent_map.c struct extent_map *em; em 433 fs/btrfs/extent_map.c em = rb_entry(rb_node, struct extent_map, rb_node); em 435 fs/btrfs/extent_map.c if (strict && !(end > em->start && start < extent_map_end(em))) em 438 fs/btrfs/extent_map.c refcount_inc(&em->refs); em 439 fs/btrfs/extent_map.c return em; em 484 fs/btrfs/extent_map.c void remove_extent_mapping(struct extent_map_tree *tree, struct extent_map *em) em 486 fs/btrfs/extent_map.c WARN_ON(test_bit(EXTENT_FLAG_PINNED, &em->flags)); em 487 fs/btrfs/extent_map.c rb_erase_cached(&em->rb_node, &tree->map); em 488 fs/btrfs/extent_map.c if (!test_bit(EXTENT_FLAG_LOGGING, &em->flags)) em 489 fs/btrfs/extent_map.c list_del_init(&em->list); em 490 fs/btrfs/extent_map.c if (test_bit(EXTENT_FLAG_FS_MAPPING, &em->flags)) em 491 fs/btrfs/extent_map.c extent_map_device_clear_bits(em, CHUNK_ALLOCATED); em 492 fs/btrfs/extent_map.c RB_CLEAR_NODE(&em->rb_node); em 510 fs/btrfs/extent_map.c static struct extent_map *next_extent_map(struct extent_map *em) em 514 fs/btrfs/extent_map.c next = rb_next(&em->rb_node); em 520 fs/btrfs/extent_map.c static struct extent_map *prev_extent_map(struct extent_map *em) em 524 fs/btrfs/extent_map.c prev = rb_prev(&em->rb_node); em 538 fs/btrfs/extent_map.c struct extent_map *em, em 547 fs/btrfs/extent_map.c BUG_ON(map_start < em->start || map_start >= extent_map_end(em)); em 557 fs/btrfs/extent_map.c start = prev ? extent_map_end(prev) : em->start; em 558 fs/btrfs/extent_map.c start = max_t(u64, start, em->start); em 559 fs/btrfs/extent_map.c end = next ? next->start : extent_map_end(em); em 560 fs/btrfs/extent_map.c end = min_t(u64, end, extent_map_end(em)); em 561 fs/btrfs/extent_map.c start_diff = start - em->start; em 562 fs/btrfs/extent_map.c em->start = start; em 563 fs/btrfs/extent_map.c em->len = end - start; em 564 fs/btrfs/extent_map.c if (em->block_start < EXTENT_MAP_LAST_BYTE && em 565 fs/btrfs/extent_map.c !test_bit(EXTENT_FLAG_COMPRESSED, &em->flags)) { em 566 fs/btrfs/extent_map.c em->block_start += start_diff; em 567 fs/btrfs/extent_map.c em->block_len = em->len; em 569 fs/btrfs/extent_map.c return add_extent_mapping(em_tree, em, 0); em 597 fs/btrfs/extent_map.c struct extent_map *em = *em_in; em 599 fs/btrfs/extent_map.c ret = add_extent_mapping(em_tree, em, 0); em 611 fs/btrfs/extent_map.c trace_btrfs_handle_em_exist(fs_info, existing, em, start, len); em 619 fs/btrfs/extent_map.c free_extent_map(em); em 623 fs/btrfs/extent_map.c u64 orig_start = em->start; em 624 fs/btrfs/extent_map.c u64 orig_len = em->len; em 631 fs/btrfs/extent_map.c em, start); em 633 fs/btrfs/extent_map.c free_extent_map(em); em 65 fs/btrfs/extent_map.h static inline int extent_map_in_tree(const struct extent_map *em) em 67 fs/btrfs/extent_map.h return !RB_EMPTY_NODE(&em->rb_node); em 70 fs/btrfs/extent_map.h static inline u64 extent_map_end(struct extent_map *em) em 72 fs/btrfs/extent_map.h if (em->start + em->len < em->start) em 74 fs/btrfs/extent_map.h return em->start + em->len; em 77 fs/btrfs/extent_map.h static inline u64 extent_map_block_end(struct extent_map *em) em 79 fs/btrfs/extent_map.h if (em->block_start + em->block_len < em->block_start) em 81 fs/btrfs/extent_map.h return em->block_start + em->block_len; em 88 fs/btrfs/extent_map.h struct extent_map *em, int modified); em 89 fs/btrfs/extent_map.h void remove_extent_mapping(struct extent_map_tree *tree, struct extent_map *em); em 96 fs/btrfs/extent_map.h void free_extent_map(struct extent_map *em); em 100 fs/btrfs/extent_map.h void clear_em_logging(struct extent_map_tree *tree, struct extent_map *em); em 940 fs/btrfs/file-item.c struct extent_map *em) em 952 fs/btrfs/file-item.c em->bdev = fs_info->fs_devices->latest_bdev; em 967 fs/btrfs/file-item.c em->ram_bytes = btrfs_file_extent_ram_bytes(leaf, fi); em 970 fs/btrfs/file-item.c em->start = extent_start; em 971 fs/btrfs/file-item.c em->len = extent_end - extent_start; em 972 fs/btrfs/file-item.c em->orig_start = extent_start - em 974 fs/btrfs/file-item.c em->orig_block_len = btrfs_file_extent_disk_num_bytes(leaf, fi); em 977 fs/btrfs/file-item.c em->block_start = EXTENT_MAP_HOLE; em 981 fs/btrfs/file-item.c set_bit(EXTENT_FLAG_COMPRESSED, &em->flags); em 982 fs/btrfs/file-item.c em->compress_type = compress_type; em 983 fs/btrfs/file-item.c em->block_start = bytenr; em 984 fs/btrfs/file-item.c em->block_len = em->orig_block_len; em 987 fs/btrfs/file-item.c em->block_start = bytenr; em 988 fs/btrfs/file-item.c em->block_len = em->len; em 990 fs/btrfs/file-item.c set_bit(EXTENT_FLAG_PREALLOC, &em->flags); em 993 fs/btrfs/file-item.c em->block_start = EXTENT_MAP_INLINE; em 994 fs/btrfs/file-item.c em->start = extent_start; em 995 fs/btrfs/file-item.c em->len = extent_end - extent_start; em 1000 fs/btrfs/file-item.c em->orig_start = EXTENT_MAP_HOLE; em 1001 fs/btrfs/file-item.c em->block_len = (u64)-1; em 1003 fs/btrfs/file-item.c set_bit(EXTENT_FLAG_COMPRESSED, &em->flags); em 1004 fs/btrfs/file-item.c em->compress_type = compress_type; em 476 fs/btrfs/file.c struct extent_map *em; em 480 fs/btrfs/file.c em = btrfs_get_extent(inode, NULL, 0, search_start, em 482 fs/btrfs/file.c if (IS_ERR(em)) em 483 fs/btrfs/file.c return PTR_ERR(em); em 485 fs/btrfs/file.c if (em->block_start != EXTENT_MAP_HOLE) em 488 fs/btrfs/file.c em_len = em->len; em 489 fs/btrfs/file.c if (em->start < search_start) em 490 fs/btrfs/file.c em_len -= search_start - em->start; em 499 fs/btrfs/file.c search_start = extent_map_end(em); em 500 fs/btrfs/file.c free_extent_map(em); em 590 fs/btrfs/file.c struct extent_map *em; em 619 fs/btrfs/file.c em = lookup_extent_mapping(em_tree, start, len); em 620 fs/btrfs/file.c if (!em) { em 624 fs/btrfs/file.c flags = em->flags; em 625 fs/btrfs/file.c gen = em->generation; em 626 fs/btrfs/file.c if (skip_pinned && test_bit(EXTENT_FLAG_PINNED, &em->flags)) { em 627 fs/btrfs/file.c if (testend && em->start + em->len >= start + len) { em 628 fs/btrfs/file.c free_extent_map(em); em 632 fs/btrfs/file.c start = em->start + em->len; em 634 fs/btrfs/file.c len = start + len - (em->start + em->len); em 635 fs/btrfs/file.c free_extent_map(em); em 639 fs/btrfs/file.c compressed = test_bit(EXTENT_FLAG_COMPRESSED, &em->flags); em 640 fs/btrfs/file.c clear_bit(EXTENT_FLAG_PINNED, &em->flags); em 642 fs/btrfs/file.c modified = !list_empty(&em->list); em 646 fs/btrfs/file.c if (em->start < start) { em 647 fs/btrfs/file.c split->start = em->start; em 648 fs/btrfs/file.c split->len = start - em->start; em 650 fs/btrfs/file.c if (em->block_start < EXTENT_MAP_LAST_BYTE) { em 651 fs/btrfs/file.c split->orig_start = em->orig_start; em 652 fs/btrfs/file.c split->block_start = em->block_start; em 655 fs/btrfs/file.c split->block_len = em->block_len; em 659 fs/btrfs/file.c em->orig_block_len); em 660 fs/btrfs/file.c split->ram_bytes = em->ram_bytes; em 664 fs/btrfs/file.c split->block_start = em->block_start; em 670 fs/btrfs/file.c split->bdev = em->bdev; em 672 fs/btrfs/file.c split->compress_type = em->compress_type; em 673 fs/btrfs/file.c replace_extent_mapping(em_tree, em, split, modified); em 678 fs/btrfs/file.c if (testend && em->start + em->len > start + len) { em 679 fs/btrfs/file.c u64 diff = start + len - em->start; em 682 fs/btrfs/file.c split->len = em->start + em->len - (start + len); em 683 fs/btrfs/file.c split->bdev = em->bdev; em 685 fs/btrfs/file.c split->compress_type = em->compress_type; em 688 fs/btrfs/file.c if (em->block_start < EXTENT_MAP_LAST_BYTE) { em 689 fs/btrfs/file.c split->orig_block_len = max(em->block_len, em 690 fs/btrfs/file.c em->orig_block_len); em 692 fs/btrfs/file.c split->ram_bytes = em->ram_bytes; em 694 fs/btrfs/file.c split->block_len = em->block_len; em 695 fs/btrfs/file.c split->block_start = em->block_start; em 696 fs/btrfs/file.c split->orig_start = em->orig_start; em 699 fs/btrfs/file.c split->block_start = em->block_start em 701 fs/btrfs/file.c split->orig_start = em->orig_start; em 707 fs/btrfs/file.c split->block_start = em->block_start; em 711 fs/btrfs/file.c if (extent_map_in_tree(em)) { em 712 fs/btrfs/file.c replace_extent_mapping(em_tree, em, split, em 723 fs/btrfs/file.c if (extent_map_in_tree(em)) em 724 fs/btrfs/file.c remove_extent_mapping(em_tree, em); em 728 fs/btrfs/file.c free_extent_map(em); em 730 fs/btrfs/file.c free_extent_map(em); em 2402 fs/btrfs/file.c struct extent_map *em; em 2405 fs/btrfs/file.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, em 2408 fs/btrfs/file.c if (IS_ERR(em)) em 2409 fs/btrfs/file.c return PTR_ERR(em); em 2412 fs/btrfs/file.c if (em->block_start == EXTENT_MAP_HOLE) { em 2414 fs/btrfs/file.c *len = em->start + em->len > *start + *len ? em 2415 fs/btrfs/file.c 0 : *start + *len - em->start - em->len; em 2416 fs/btrfs/file.c *start = em->start + em->len; em 2418 fs/btrfs/file.c free_extent_map(em); em 2970 fs/btrfs/file.c struct extent_map *em; em 2974 fs/btrfs/file.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 2975 fs/btrfs/file.c if (IS_ERR(em)) em 2976 fs/btrfs/file.c return PTR_ERR(em); em 2978 fs/btrfs/file.c if (em->block_start == EXTENT_MAP_HOLE) em 2980 fs/btrfs/file.c else if (test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) em 2985 fs/btrfs/file.c free_extent_map(em); em 2995 fs/btrfs/file.c struct extent_map *em; em 3007 fs/btrfs/file.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, em 3009 fs/btrfs/file.c if (IS_ERR(em)) { em 3010 fs/btrfs/file.c ret = PTR_ERR(em); em 3022 fs/btrfs/file.c if (em->start <= alloc_start && em 3023 fs/btrfs/file.c test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) { em 3024 fs/btrfs/file.c const u64 em_end = em->start + em->len; em 3032 fs/btrfs/file.c free_extent_map(em); em 3045 fs/btrfs/file.c alloc_hint = em->block_start + em->len; em 3047 fs/btrfs/file.c free_extent_map(em); em 3051 fs/btrfs/file.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, em 3053 fs/btrfs/file.c if (IS_ERR(em)) { em 3054 fs/btrfs/file.c ret = PTR_ERR(em); em 3058 fs/btrfs/file.c if (test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) { em 3059 fs/btrfs/file.c free_extent_map(em); em 3064 fs/btrfs/file.c if (len < sectorsize && em->block_start != EXTENT_MAP_HOLE) { em 3065 fs/btrfs/file.c free_extent_map(em); em 3073 fs/btrfs/file.c free_extent_map(em); em 3179 fs/btrfs/file.c struct extent_map *em; em 3289 fs/btrfs/file.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, cur_offset, em 3291 fs/btrfs/file.c if (IS_ERR(em)) { em 3292 fs/btrfs/file.c ret = PTR_ERR(em); em 3295 fs/btrfs/file.c last_byte = min(extent_map_end(em), alloc_end); em 3296 fs/btrfs/file.c actual_end = min_t(u64, extent_map_end(em), offset + len); em 3298 fs/btrfs/file.c if (em->block_start == EXTENT_MAP_HOLE || em 3300 fs/btrfs/file.c !test_bit(EXTENT_FLAG_PREALLOC, &em->flags))) { em 3304 fs/btrfs/file.c free_extent_map(em); em 3311 fs/btrfs/file.c free_extent_map(em); em 3323 fs/btrfs/file.c free_extent_map(em); em 3368 fs/btrfs/file.c struct extent_map *em = NULL; em 3397 fs/btrfs/file.c em = btrfs_get_extent_fiemap(BTRFS_I(inode), start, len); em 3398 fs/btrfs/file.c if (IS_ERR(em)) { em 3399 fs/btrfs/file.c ret = PTR_ERR(em); em 3400 fs/btrfs/file.c em = NULL; em 3405 fs/btrfs/file.c (em->block_start == EXTENT_MAP_HOLE || em 3406 fs/btrfs/file.c test_bit(EXTENT_FLAG_PREALLOC, &em->flags))) em 3409 fs/btrfs/file.c (em->block_start != EXTENT_MAP_HOLE && em 3410 fs/btrfs/file.c !test_bit(EXTENT_FLAG_PREALLOC, &em->flags))) em 3413 fs/btrfs/file.c start = em->start + em->len; em 3414 fs/btrfs/file.c free_extent_map(em); em 3415 fs/btrfs/file.c em = NULL; em 3418 fs/btrfs/file.c free_extent_map(em); em 3370 fs/btrfs/free-space-cache.c struct extent_map *em; em 3382 fs/btrfs/free-space-cache.c em = lookup_extent_mapping(em_tree, block_group->key.objectid, em 3384 fs/btrfs/free-space-cache.c BUG_ON(!em); /* logic error, can't happen */ em 3385 fs/btrfs/free-space-cache.c remove_extent_mapping(em_tree, em); em 3390 fs/btrfs/free-space-cache.c free_extent_map(em); em 3391 fs/btrfs/free-space-cache.c free_extent_map(em); em 760 fs/btrfs/inode.c struct extent_map *em; em 838 fs/btrfs/inode.c em = create_io_em(inode, async_extent->start, em 847 fs/btrfs/inode.c if (IS_ERR(em)) em 850 fs/btrfs/inode.c free_extent_map(em); em 925 fs/btrfs/inode.c struct extent_map *em; em 929 fs/btrfs/inode.c em = search_extent_mapping(em_tree, start, num_bytes); em 930 fs/btrfs/inode.c if (em) { em 936 fs/btrfs/inode.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 937 fs/btrfs/inode.c free_extent_map(em); em 938 fs/btrfs/inode.c em = search_extent_mapping(em_tree, 0, 0); em 939 fs/btrfs/inode.c if (em && em->block_start < EXTENT_MAP_LAST_BYTE) em 940 fs/btrfs/inode.c alloc_hint = em->block_start; em 941 fs/btrfs/inode.c if (em) em 942 fs/btrfs/inode.c free_extent_map(em); em 944 fs/btrfs/inode.c alloc_hint = em->block_start; em 945 fs/btrfs/inode.c free_extent_map(em); em 979 fs/btrfs/inode.c struct extent_map *em; em 1038 fs/btrfs/inode.c em = create_io_em(inode, start, ins.offset, /* len */ em 1046 fs/btrfs/inode.c if (IS_ERR(em)) { em 1047 fs/btrfs/inode.c ret = PTR_ERR(em); em 1050 fs/btrfs/inode.c free_extent_map(em); em 1586 fs/btrfs/inode.c struct extent_map *em; em 1588 fs/btrfs/inode.c em = create_io_em(inode, cur_offset, num_bytes, em 1595 fs/btrfs/inode.c if (IS_ERR(em)) { em 1599 fs/btrfs/inode.c ret = PTR_ERR(em); em 1602 fs/btrfs/inode.c free_extent_map(em); em 5206 fs/btrfs/inode.c struct extent_map *em = NULL; em 5232 fs/btrfs/inode.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, cur_offset, em 5234 fs/btrfs/inode.c if (IS_ERR(em)) { em 5235 fs/btrfs/inode.c err = PTR_ERR(em); em 5236 fs/btrfs/inode.c em = NULL; em 5239 fs/btrfs/inode.c last_byte = min(extent_map_end(em), block_end); em 5241 fs/btrfs/inode.c if (!test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) { em 5283 fs/btrfs/inode.c free_extent_map(em); em 5284 fs/btrfs/inode.c em = NULL; em 5289 fs/btrfs/inode.c free_extent_map(em); em 5435 fs/btrfs/inode.c struct extent_map *em; em 5438 fs/btrfs/inode.c em = rb_entry(node, struct extent_map, rb_node); em 5439 fs/btrfs/inode.c clear_bit(EXTENT_FLAG_PINNED, &em->flags); em 5440 fs/btrfs/inode.c clear_bit(EXTENT_FLAG_LOGGING, &em->flags); em 5441 fs/btrfs/inode.c remove_extent_mapping(map_tree, em); em 5442 fs/btrfs/inode.c free_extent_map(em); em 7034 fs/btrfs/inode.c struct extent_map *em = NULL; em 7040 fs/btrfs/inode.c em = lookup_extent_mapping(em_tree, start, len); em 7041 fs/btrfs/inode.c if (em) em 7042 fs/btrfs/inode.c em->bdev = fs_info->fs_devices->latest_bdev; em 7045 fs/btrfs/inode.c if (em) { em 7046 fs/btrfs/inode.c if (em->start > start || em->start + em->len <= start) em 7047 fs/btrfs/inode.c free_extent_map(em); em 7048 fs/btrfs/inode.c else if (em->block_start == EXTENT_MAP_INLINE && page) em 7049 fs/btrfs/inode.c free_extent_map(em); em 7053 fs/btrfs/inode.c em = alloc_extent_map(); em 7054 fs/btrfs/inode.c if (!em) { em 7058 fs/btrfs/inode.c em->bdev = fs_info->fs_devices->latest_bdev; em 7059 fs/btrfs/inode.c em->start = EXTENT_MAP_HOLE; em 7060 fs/btrfs/inode.c em->orig_start = EXTENT_MAP_HOLE; em 7061 fs/btrfs/inode.c em->len = (u64)-1; em 7062 fs/btrfs/inode.c em->block_len = (u64)-1; em 7156 fs/btrfs/inode.c em->start = start; em 7157 fs/btrfs/inode.c em->orig_start = start; em 7158 fs/btrfs/inode.c em->len = found_key.offset - start; em 7159 fs/btrfs/inode.c em->block_start = EXTENT_MAP_HOLE; em 7164 fs/btrfs/inode.c new_inline, em); em 7183 fs/btrfs/inode.c em->start = extent_start + extent_offset; em 7184 fs/btrfs/inode.c em->len = ALIGN(copy_size, fs_info->sectorsize); em 7185 fs/btrfs/inode.c em->orig_block_len = em->len; em 7186 fs/btrfs/inode.c em->orig_start = em->start; em 7212 fs/btrfs/inode.c set_extent_uptodate(io_tree, em->start, em 7213 fs/btrfs/inode.c extent_map_end(em) - 1, NULL, GFP_NOFS); em 7217 fs/btrfs/inode.c em->start = start; em 7218 fs/btrfs/inode.c em->orig_start = start; em 7219 fs/btrfs/inode.c em->len = len; em 7220 fs/btrfs/inode.c em->block_start = EXTENT_MAP_HOLE; em 7223 fs/btrfs/inode.c if (em->start > start || extent_map_end(em) <= start) { em 7226 fs/btrfs/inode.c em->start, em->len, start, len); em 7233 fs/btrfs/inode.c err = btrfs_add_extent_mapping(fs_info, em_tree, &em, start, len); em 7238 fs/btrfs/inode.c trace_btrfs_get_extent(root, inode, em); em 7241 fs/btrfs/inode.c free_extent_map(em); em 7244 fs/btrfs/inode.c BUG_ON(!em); /* Error is always set */ em 7245 fs/btrfs/inode.c return em; em 7251 fs/btrfs/inode.c struct extent_map *em; em 7259 fs/btrfs/inode.c em = btrfs_get_extent(inode, NULL, 0, start, len, 0); em 7260 fs/btrfs/inode.c if (IS_ERR(em)) em 7261 fs/btrfs/inode.c return em; em 7268 fs/btrfs/inode.c if (em->block_start != EXTENT_MAP_HOLE && em 7269 fs/btrfs/inode.c !test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) em 7270 fs/btrfs/inode.c return em; em 7272 fs/btrfs/inode.c hole_em = em; em 7281 fs/btrfs/inode.c em = NULL; em 7295 fs/btrfs/inode.c em = hole_em; em 7312 fs/btrfs/inode.c em = alloc_extent_map(); em 7313 fs/btrfs/inode.c if (!em) { em 7317 fs/btrfs/inode.c em->bdev = NULL; em 7341 fs/btrfs/inode.c em->len = min(hole_len, delalloc_start - hole_start); em 7342 fs/btrfs/inode.c em->start = hole_start; em 7343 fs/btrfs/inode.c em->orig_start = hole_start; em 7348 fs/btrfs/inode.c em->block_start = hole_em->block_start; em 7349 fs/btrfs/inode.c em->block_len = hole_len; em 7351 fs/btrfs/inode.c set_bit(EXTENT_FLAG_PREALLOC, &em->flags); em 7357 fs/btrfs/inode.c em->start = delalloc_start; em 7358 fs/btrfs/inode.c em->len = delalloc_len; em 7359 fs/btrfs/inode.c em->orig_start = delalloc_start; em 7360 fs/btrfs/inode.c em->block_start = EXTENT_MAP_DELALLOC; em 7361 fs/btrfs/inode.c em->block_len = delalloc_len; em 7370 fs/btrfs/inode.c free_extent_map(em); em 7373 fs/btrfs/inode.c return em; em 7386 fs/btrfs/inode.c struct extent_map *em = NULL; em 7390 fs/btrfs/inode.c em = create_io_em(inode, start, len, orig_start, em 7395 fs/btrfs/inode.c if (IS_ERR(em)) em 7401 fs/btrfs/inode.c if (em) { em 7402 fs/btrfs/inode.c free_extent_map(em); em 7406 fs/btrfs/inode.c em = ERR_PTR(ret); em 7410 fs/btrfs/inode.c return em; em 7418 fs/btrfs/inode.c struct extent_map *em; em 7429 fs/btrfs/inode.c em = btrfs_create_dio_extent(inode, start, ins.offset, start, em 7433 fs/btrfs/inode.c if (IS_ERR(em)) em 7437 fs/btrfs/inode.c return em; em 7676 fs/btrfs/inode.c struct extent_map *em; em 7686 fs/btrfs/inode.c em = alloc_extent_map(); em 7687 fs/btrfs/inode.c if (!em) em 7690 fs/btrfs/inode.c em->start = start; em 7691 fs/btrfs/inode.c em->orig_start = orig_start; em 7692 fs/btrfs/inode.c em->len = len; em 7693 fs/btrfs/inode.c em->block_len = block_len; em 7694 fs/btrfs/inode.c em->block_start = block_start; em 7695 fs/btrfs/inode.c em->bdev = root->fs_info->fs_devices->latest_bdev; em 7696 fs/btrfs/inode.c em->orig_block_len = orig_block_len; em 7697 fs/btrfs/inode.c em->ram_bytes = ram_bytes; em 7698 fs/btrfs/inode.c em->generation = -1; em 7699 fs/btrfs/inode.c set_bit(EXTENT_FLAG_PINNED, &em->flags); em 7701 fs/btrfs/inode.c set_bit(EXTENT_FLAG_FILLING, &em->flags); em 7703 fs/btrfs/inode.c set_bit(EXTENT_FLAG_COMPRESSED, &em->flags); em 7704 fs/btrfs/inode.c em->compress_type = compress_type; em 7708 fs/btrfs/inode.c btrfs_drop_extent_cache(BTRFS_I(inode), em->start, em 7709 fs/btrfs/inode.c em->start + em->len - 1, 0); em 7711 fs/btrfs/inode.c ret = add_extent_mapping(em_tree, em, 1); em 7720 fs/btrfs/inode.c free_extent_map(em); em 7725 fs/btrfs/inode.c return em; em 7729 fs/btrfs/inode.c static int btrfs_get_blocks_direct_read(struct extent_map *em, em 7734 fs/btrfs/inode.c if (em->block_start == EXTENT_MAP_HOLE || em 7735 fs/btrfs/inode.c test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) em 7738 fs/btrfs/inode.c len = min(len, em->len - (start - em->start)); em 7740 fs/btrfs/inode.c bh_result->b_blocknr = (em->block_start + (start - em->start)) >> em 7743 fs/btrfs/inode.c bh_result->b_bdev = em->bdev; em 7756 fs/btrfs/inode.c struct extent_map *em = *map; em 7768 fs/btrfs/inode.c if (test_bit(EXTENT_FLAG_PREALLOC, &em->flags) || em 7770 fs/btrfs/inode.c em->block_start != EXTENT_MAP_HOLE)) { em 7774 fs/btrfs/inode.c if (test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) em 7778 fs/btrfs/inode.c len = min(len, em->len - (start - em->start)); em 7779 fs/btrfs/inode.c block_start = em->block_start + (start - em->start); em 7792 fs/btrfs/inode.c free_extent_map(em); em 7793 fs/btrfs/inode.c *map = em = em2; em 7813 fs/btrfs/inode.c free_extent_map(em); em 7814 fs/btrfs/inode.c *map = em = btrfs_new_extent_direct(inode, start, len); em 7815 fs/btrfs/inode.c if (IS_ERR(em)) { em 7816 fs/btrfs/inode.c ret = PTR_ERR(em); em 7820 fs/btrfs/inode.c len = min(len, em->len - (start - em->start)); em 7823 fs/btrfs/inode.c bh_result->b_blocknr = (em->block_start + (start - em->start)) >> em 7826 fs/btrfs/inode.c bh_result->b_bdev = em->bdev; em 7829 fs/btrfs/inode.c if (!test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) em 7851 fs/btrfs/inode.c struct extent_map *em; em 7885 fs/btrfs/inode.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, start, len, 0); em 7886 fs/btrfs/inode.c if (IS_ERR(em)) { em 7887 fs/btrfs/inode.c ret = PTR_ERR(em); em 7905 fs/btrfs/inode.c if (test_bit(EXTENT_FLAG_COMPRESSED, &em->flags) || em 7906 fs/btrfs/inode.c em->block_start == EXTENT_MAP_INLINE) { em 7907 fs/btrfs/inode.c free_extent_map(em); em 7913 fs/btrfs/inode.c ret = btrfs_get_blocks_direct_write(&em, bh_result, inode, em 7921 fs/btrfs/inode.c ret = btrfs_get_blocks_direct_read(em, bh_result, inode, em 7926 fs/btrfs/inode.c free_extent_map(em); em 7942 fs/btrfs/inode.c free_extent_map(em); em 10475 fs/btrfs/inode.c struct extent_map *em; em 10543 fs/btrfs/inode.c em = alloc_extent_map(); em 10544 fs/btrfs/inode.c if (!em) { em 10550 fs/btrfs/inode.c em->start = cur_offset; em 10551 fs/btrfs/inode.c em->orig_start = cur_offset; em 10552 fs/btrfs/inode.c em->len = ins.offset; em 10553 fs/btrfs/inode.c em->block_start = ins.objectid; em 10554 fs/btrfs/inode.c em->block_len = ins.offset; em 10555 fs/btrfs/inode.c em->orig_block_len = ins.offset; em 10556 fs/btrfs/inode.c em->ram_bytes = ins.offset; em 10557 fs/btrfs/inode.c em->bdev = fs_info->fs_devices->latest_bdev; em 10558 fs/btrfs/inode.c set_bit(EXTENT_FLAG_PREALLOC, &em->flags); em 10559 fs/btrfs/inode.c em->generation = trans->transid; em 10563 fs/btrfs/inode.c ret = add_extent_mapping(em_tree, em, 1); em 10571 fs/btrfs/inode.c free_extent_map(em); em 10851 fs/btrfs/inode.c struct extent_map *em = NULL; em 10916 fs/btrfs/inode.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, start, len, 0); em 10917 fs/btrfs/inode.c if (IS_ERR(em)) { em 10918 fs/btrfs/inode.c ret = PTR_ERR(em); em 10922 fs/btrfs/inode.c if (em->block_start == EXTENT_MAP_HOLE) { em 10927 fs/btrfs/inode.c if (em->block_start == EXTENT_MAP_INLINE) { em 10939 fs/btrfs/inode.c if (test_bit(EXTENT_FLAG_COMPRESSED, &em->flags)) { em 10945 fs/btrfs/inode.c logical_block_start = em->block_start + (start - em->start); em 10946 fs/btrfs/inode.c len = min(len, em->len - (start - em->start)); em 10947 fs/btrfs/inode.c free_extent_map(em); em 10948 fs/btrfs/inode.c em = NULL; em 10962 fs/btrfs/inode.c em = btrfs_get_chunk_map(fs_info, logical_block_start, len); em 10963 fs/btrfs/inode.c if (IS_ERR(em)) { em 10964 fs/btrfs/inode.c ret = PTR_ERR(em); em 10968 fs/btrfs/inode.c if (em->map_lookup->type & BTRFS_BLOCK_GROUP_PROFILE_MASK) { em 10976 fs/btrfs/inode.c device = em->map_lookup->stripes[0].dev; em 10982 fs/btrfs/inode.c } else if (device != em->map_lookup->stripes[0].dev) { em 10988 fs/btrfs/inode.c physical_block_start = (em->map_lookup->stripes[0].physical + em 10989 fs/btrfs/inode.c (logical_block_start - em->start)); em 10990 fs/btrfs/inode.c len = min(len, em->len - (logical_block_start - em->start)); em 10991 fs/btrfs/inode.c free_extent_map(em); em 10992 fs/btrfs/inode.c em = NULL; em 11032 fs/btrfs/inode.c if (!IS_ERR_OR_NULL(em)) em 11033 fs/btrfs/inode.c free_extent_map(em); em 1021 fs/btrfs/ioctl.c struct extent_map *em = NULL; em 1026 fs/btrfs/ioctl.c em = lookup_extent_mapping(em_tree, offset, PAGE_SIZE); em 1029 fs/btrfs/ioctl.c if (em) { em 1030 fs/btrfs/ioctl.c end = extent_map_end(em); em 1031 fs/btrfs/ioctl.c free_extent_map(em); em 1115 fs/btrfs/ioctl.c struct extent_map *em; em 1123 fs/btrfs/ioctl.c em = lookup_extent_mapping(em_tree, start, len); em 1126 fs/btrfs/ioctl.c if (!em) { em 1132 fs/btrfs/ioctl.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, start, len, 0); em 1135 fs/btrfs/ioctl.c if (IS_ERR(em)) em 1139 fs/btrfs/ioctl.c return em; em 1142 fs/btrfs/ioctl.c static bool defrag_check_next_extent(struct inode *inode, struct extent_map *em) em 1148 fs/btrfs/ioctl.c if (em->start + em->len >= i_size_read(inode)) em 1151 fs/btrfs/ioctl.c next = defrag_lookup_extent(inode, em->start + em->len); em 1154 fs/btrfs/ioctl.c else if ((em->block_start + em->block_len == next->block_start) && em 1155 fs/btrfs/ioctl.c (em->block_len > SZ_128K && next->block_len > SZ_128K)) em 1166 fs/btrfs/ioctl.c struct extent_map *em; em 1180 fs/btrfs/ioctl.c em = defrag_lookup_extent(inode, start); em 1181 fs/btrfs/ioctl.c if (!em) em 1185 fs/btrfs/ioctl.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 1193 fs/btrfs/ioctl.c next_mergeable = defrag_check_next_extent(inode, em); em 1199 fs/btrfs/ioctl.c (em->len >= thresh || (!next_mergeable && !prev_mergeable))) em 1211 fs/btrfs/ioctl.c *defrag_end = extent_map_end(em); em 1214 fs/btrfs/ioctl.c *skip = extent_map_end(em); em 1218 fs/btrfs/ioctl.c free_extent_map(em); em 3256 fs/btrfs/relocation.c struct extent_map *em; em 3259 fs/btrfs/relocation.c em = alloc_extent_map(); em 3260 fs/btrfs/relocation.c if (!em) em 3263 fs/btrfs/relocation.c em->start = start; em 3264 fs/btrfs/relocation.c em->len = end + 1 - start; em 3265 fs/btrfs/relocation.c em->block_len = em->len; em 3266 fs/btrfs/relocation.c em->block_start = block_start; em 3267 fs/btrfs/relocation.c em->bdev = fs_info->fs_devices->latest_bdev; em 3268 fs/btrfs/relocation.c set_bit(EXTENT_FLAG_PINNED, &em->flags); em 3273 fs/btrfs/relocation.c ret = add_extent_mapping(em_tree, em, 0); em 3276 fs/btrfs/relocation.c free_extent_map(em); em 3425 fs/btrfs/scrub.c struct extent_map *em; em 3430 fs/btrfs/scrub.c em = lookup_extent_mapping(map_tree, chunk_offset, 1); em 3433 fs/btrfs/scrub.c if (!em) { em 3446 fs/btrfs/scrub.c map = em->map_lookup; em 3447 fs/btrfs/scrub.c if (em->start != chunk_offset) em 3450 fs/btrfs/scrub.c if (em->len < length) em 3463 fs/btrfs/scrub.c free_extent_map(em); em 12 fs/btrfs/tests/extent-map-tests.c struct extent_map *em; em 17 fs/btrfs/tests/extent-map-tests.c em = rb_entry(node, struct extent_map, rb_node); em 18 fs/btrfs/tests/extent-map-tests.c remove_extent_mapping(em_tree, em); em 21 fs/btrfs/tests/extent-map-tests.c if (refcount_read(&em->refs) != 1) { em 24 fs/btrfs/tests/extent-map-tests.c em->start, em->len, em->block_start, em 25 fs/btrfs/tests/extent-map-tests.c em->block_len, refcount_read(&em->refs)); em 27 fs/btrfs/tests/extent-map-tests.c refcount_set(&em->refs, 1); em 30 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 53 fs/btrfs/tests/extent-map-tests.c struct extent_map *em; em 58 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 59 fs/btrfs/tests/extent-map-tests.c if (!em) { em 65 fs/btrfs/tests/extent-map-tests.c em->start = 0; em 66 fs/btrfs/tests/extent-map-tests.c em->len = SZ_16K; em 67 fs/btrfs/tests/extent-map-tests.c em->block_start = 0; em 68 fs/btrfs/tests/extent-map-tests.c em->block_len = SZ_16K; em 70 fs/btrfs/tests/extent-map-tests.c ret = add_extent_mapping(em_tree, em, 0); em 76 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 79 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 80 fs/btrfs/tests/extent-map-tests.c if (!em) { em 86 fs/btrfs/tests/extent-map-tests.c em->start = SZ_16K; em 87 fs/btrfs/tests/extent-map-tests.c em->len = SZ_4K; em 88 fs/btrfs/tests/extent-map-tests.c em->block_start = SZ_32K; /* avoid merging */ em 89 fs/btrfs/tests/extent-map-tests.c em->block_len = SZ_4K; em 91 fs/btrfs/tests/extent-map-tests.c ret = add_extent_mapping(em_tree, em, 0); em 97 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 99 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 100 fs/btrfs/tests/extent-map-tests.c if (!em) { em 107 fs/btrfs/tests/extent-map-tests.c em->start = start; em 108 fs/btrfs/tests/extent-map-tests.c em->len = len; em 109 fs/btrfs/tests/extent-map-tests.c em->block_start = start; em 110 fs/btrfs/tests/extent-map-tests.c em->block_len = len; em 112 fs/btrfs/tests/extent-map-tests.c ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, em->start, em->len); em 118 fs/btrfs/tests/extent-map-tests.c if (em && em 119 fs/btrfs/tests/extent-map-tests.c (em->start != 0 || extent_map_end(em) != SZ_16K || em 120 fs/btrfs/tests/extent-map-tests.c em->block_start != 0 || em->block_len != SZ_16K)) { em 123 fs/btrfs/tests/extent-map-tests.c start, start + len, ret, em->start, em->len, em 124 fs/btrfs/tests/extent-map-tests.c em->block_start, em->block_len); em 127 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 143 fs/btrfs/tests/extent-map-tests.c struct extent_map *em; em 146 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 147 fs/btrfs/tests/extent-map-tests.c if (!em) { em 153 fs/btrfs/tests/extent-map-tests.c em->start = 0; em 154 fs/btrfs/tests/extent-map-tests.c em->len = SZ_1K; em 155 fs/btrfs/tests/extent-map-tests.c em->block_start = EXTENT_MAP_INLINE; em 156 fs/btrfs/tests/extent-map-tests.c em->block_len = (u64)-1; em 158 fs/btrfs/tests/extent-map-tests.c ret = add_extent_mapping(em_tree, em, 0); em 164 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 167 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 168 fs/btrfs/tests/extent-map-tests.c if (!em) { em 174 fs/btrfs/tests/extent-map-tests.c em->start = SZ_4K; em 175 fs/btrfs/tests/extent-map-tests.c em->len = SZ_4K; em 176 fs/btrfs/tests/extent-map-tests.c em->block_start = SZ_4K; em 177 fs/btrfs/tests/extent-map-tests.c em->block_len = SZ_4K; em 179 fs/btrfs/tests/extent-map-tests.c ret = add_extent_mapping(em_tree, em, 0); em 185 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 187 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 188 fs/btrfs/tests/extent-map-tests.c if (!em) { em 195 fs/btrfs/tests/extent-map-tests.c em->start = 0; em 196 fs/btrfs/tests/extent-map-tests.c em->len = SZ_1K; em 197 fs/btrfs/tests/extent-map-tests.c em->block_start = EXTENT_MAP_INLINE; em 198 fs/btrfs/tests/extent-map-tests.c em->block_len = (u64)-1; em 200 fs/btrfs/tests/extent-map-tests.c ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, em->start, em->len); em 206 fs/btrfs/tests/extent-map-tests.c if (em && em 207 fs/btrfs/tests/extent-map-tests.c (em->start != 0 || extent_map_end(em) != SZ_1K || em 208 fs/btrfs/tests/extent-map-tests.c em->block_start != EXTENT_MAP_INLINE || em->block_len != (u64)-1)) { em 211 fs/btrfs/tests/extent-map-tests.c ret, em->start, em->len, em->block_start, em 212 fs/btrfs/tests/extent-map-tests.c em->block_len); em 215 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 225 fs/btrfs/tests/extent-map-tests.c struct extent_map *em; em 229 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 230 fs/btrfs/tests/extent-map-tests.c if (!em) { em 236 fs/btrfs/tests/extent-map-tests.c em->start = SZ_4K; em 237 fs/btrfs/tests/extent-map-tests.c em->len = SZ_4K; em 238 fs/btrfs/tests/extent-map-tests.c em->block_start = SZ_4K; em 239 fs/btrfs/tests/extent-map-tests.c em->block_len = SZ_4K; em 241 fs/btrfs/tests/extent-map-tests.c ret = add_extent_mapping(em_tree, em, 0); em 247 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 249 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 250 fs/btrfs/tests/extent-map-tests.c if (!em) { em 257 fs/btrfs/tests/extent-map-tests.c em->start = 0; em 258 fs/btrfs/tests/extent-map-tests.c em->len = SZ_16K; em 259 fs/btrfs/tests/extent-map-tests.c em->block_start = 0; em 260 fs/btrfs/tests/extent-map-tests.c em->block_len = SZ_16K; em 262 fs/btrfs/tests/extent-map-tests.c ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, start, len); em 273 fs/btrfs/tests/extent-map-tests.c if (em && em 274 fs/btrfs/tests/extent-map-tests.c (start < em->start || start + len > extent_map_end(em) || em 275 fs/btrfs/tests/extent-map-tests.c em->start != em->block_start || em->len != em->block_len)) { em 278 fs/btrfs/tests/extent-map-tests.c start, start + len, ret, em->start, em->len, em 279 fs/btrfs/tests/extent-map-tests.c em->block_start, em->block_len); em 282 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 324 fs/btrfs/tests/extent-map-tests.c struct extent_map *em; em 328 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 329 fs/btrfs/tests/extent-map-tests.c if (!em) { em 335 fs/btrfs/tests/extent-map-tests.c em->start = 0; em 336 fs/btrfs/tests/extent-map-tests.c em->len = SZ_8K; em 337 fs/btrfs/tests/extent-map-tests.c em->block_start = 0; em 338 fs/btrfs/tests/extent-map-tests.c em->block_len = SZ_8K; em 340 fs/btrfs/tests/extent-map-tests.c ret = add_extent_mapping(em_tree, em, 0); em 346 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 348 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 349 fs/btrfs/tests/extent-map-tests.c if (!em) { em 356 fs/btrfs/tests/extent-map-tests.c em->start = SZ_8K; em 357 fs/btrfs/tests/extent-map-tests.c em->len = 24 * SZ_1K; em 358 fs/btrfs/tests/extent-map-tests.c em->block_start = SZ_16K; /* avoid merging */ em 359 fs/btrfs/tests/extent-map-tests.c em->block_len = 24 * SZ_1K; em 361 fs/btrfs/tests/extent-map-tests.c ret = add_extent_mapping(em_tree, em, 0); em 367 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 369 fs/btrfs/tests/extent-map-tests.c em = alloc_extent_map(); em 370 fs/btrfs/tests/extent-map-tests.c if (!em) { em 376 fs/btrfs/tests/extent-map-tests.c em->start = 0; em 377 fs/btrfs/tests/extent-map-tests.c em->len = SZ_32K; em 378 fs/btrfs/tests/extent-map-tests.c em->block_start = 0; em 379 fs/btrfs/tests/extent-map-tests.c em->block_len = SZ_32K; em 381 fs/btrfs/tests/extent-map-tests.c ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, start, len); em 388 fs/btrfs/tests/extent-map-tests.c if (em && (start < em->start || start + len > extent_map_end(em))) { em 391 fs/btrfs/tests/extent-map-tests.c start, len, ret, em->start, em->len, em->block_start, em 392 fs/btrfs/tests/extent-map-tests.c em->block_len); em 395 fs/btrfs/tests/extent-map-tests.c free_extent_map(em); em 223 fs/btrfs/tests/inode-tests.c struct extent_map *em = NULL; em 266 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, 0, sectorsize, 0); em 267 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 268 fs/btrfs/tests/inode-tests.c em = NULL; em 272 fs/btrfs/tests/inode-tests.c if (em->block_start != EXTENT_MAP_HOLE) { em 273 fs/btrfs/tests/inode-tests.c test_err("expected a hole, got %llu", em->block_start); em 276 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 286 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, 0, (u64)-1, 0); em 287 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 291 fs/btrfs/tests/inode-tests.c if (em->block_start != EXTENT_MAP_HOLE) { em 292 fs/btrfs/tests/inode-tests.c test_err("expected a hole, got %llu", em->block_start); em 295 fs/btrfs/tests/inode-tests.c if (em->start != 0 || em->len != 5) { em 298 fs/btrfs/tests/inode-tests.c em->start, em->len); em 301 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 302 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 305 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 306 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 308 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 309 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 313 fs/btrfs/tests/inode-tests.c if (em->block_start != EXTENT_MAP_INLINE) { em 314 fs/btrfs/tests/inode-tests.c test_err("expected an inline, got %llu", em->block_start); em 318 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != (sectorsize - 5)) { em 321 fs/btrfs/tests/inode-tests.c offset, em->start, em->len); em 324 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 325 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 333 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 334 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 336 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 337 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 341 fs/btrfs/tests/inode-tests.c if (em->block_start != EXTENT_MAP_HOLE) { em 342 fs/btrfs/tests/inode-tests.c test_err("expected a hole, got %llu", em->block_start); em 345 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != 4) { em 348 fs/btrfs/tests/inode-tests.c offset, em->start, em->len); em 351 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 352 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 355 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 356 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 359 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 360 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 364 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 365 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 368 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize - 1) { em 371 fs/btrfs/tests/inode-tests.c offset, em->start, em->len); em 374 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 375 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 378 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 379 fs/btrfs/tests/inode-tests.c test_err("wrong orig offset, want %llu, have %llu", em->start, em 380 fs/btrfs/tests/inode-tests.c em->orig_start); em 383 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 384 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 387 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 388 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 392 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 393 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 396 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 399 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 402 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 403 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 406 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 407 fs/btrfs/tests/inode-tests.c test_err("wrong orig offset, want %llu, have %llu", em->start, em 408 fs/btrfs/tests/inode-tests.c em->orig_start); em 411 fs/btrfs/tests/inode-tests.c disk_bytenr = em->block_start; em 412 fs/btrfs/tests/inode-tests.c orig_start = em->start; em 413 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 414 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 416 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 417 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 421 fs/btrfs/tests/inode-tests.c if (em->block_start != EXTENT_MAP_HOLE) { em 422 fs/btrfs/tests/inode-tests.c test_err("expected a hole, got %llu", em->block_start); em 425 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 428 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 431 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 432 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 435 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 436 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 438 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 439 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 443 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 444 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 447 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != 2 * sectorsize) { em 450 fs/btrfs/tests/inode-tests.c offset, 2 * sectorsize, em->start, em->len); em 453 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 454 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 457 fs/btrfs/tests/inode-tests.c if (em->orig_start != orig_start) { em 459 fs/btrfs/tests/inode-tests.c orig_start, em->orig_start); em 462 fs/btrfs/tests/inode-tests.c disk_bytenr += (em->start - orig_start); em 463 fs/btrfs/tests/inode-tests.c if (em->block_start != disk_bytenr) { em 465 fs/btrfs/tests/inode-tests.c disk_bytenr, em->block_start); em 468 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 469 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 472 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 473 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 477 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 478 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 481 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 484 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 487 fs/btrfs/tests/inode-tests.c if (em->flags != prealloc_only) { em 489 fs/btrfs/tests/inode-tests.c prealloc_only, em->flags); em 492 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 493 fs/btrfs/tests/inode-tests.c test_err("wrong orig offset, want %llu, have %llu", em->start, em 494 fs/btrfs/tests/inode-tests.c em->orig_start); em 497 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 498 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 501 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 502 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 506 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 507 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 510 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 513 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 516 fs/btrfs/tests/inode-tests.c if (em->flags != prealloc_only) { em 518 fs/btrfs/tests/inode-tests.c prealloc_only, em->flags); em 521 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 522 fs/btrfs/tests/inode-tests.c test_err("wrong orig offset, want %llu, have %llu", em->start, em 523 fs/btrfs/tests/inode-tests.c em->orig_start); em 526 fs/btrfs/tests/inode-tests.c disk_bytenr = em->block_start; em 527 fs/btrfs/tests/inode-tests.c orig_start = em->start; em 528 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 529 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 531 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 532 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 536 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_HOLE) { em 537 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 540 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 543 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 546 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 547 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 550 fs/btrfs/tests/inode-tests.c if (em->orig_start != orig_start) { em 552 fs/btrfs/tests/inode-tests.c orig_start, em->orig_start); em 555 fs/btrfs/tests/inode-tests.c if (em->block_start != (disk_bytenr + (em->start - em->orig_start))) { em 557 fs/btrfs/tests/inode-tests.c disk_bytenr + (em->start - em->orig_start), em 558 fs/btrfs/tests/inode-tests.c em->block_start); em 561 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 562 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 564 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 565 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 569 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 570 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 573 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != 2 * sectorsize) { em 576 fs/btrfs/tests/inode-tests.c offset, 2 * sectorsize, em->start, em->len); em 579 fs/btrfs/tests/inode-tests.c if (em->flags != prealloc_only) { em 581 fs/btrfs/tests/inode-tests.c prealloc_only, em->flags); em 584 fs/btrfs/tests/inode-tests.c if (em->orig_start != orig_start) { em 586 fs/btrfs/tests/inode-tests.c em->orig_start); em 589 fs/btrfs/tests/inode-tests.c if (em->block_start != (disk_bytenr + (em->start - em->orig_start))) { em 591 fs/btrfs/tests/inode-tests.c disk_bytenr + (em->start - em->orig_start), em 592 fs/btrfs/tests/inode-tests.c em->block_start); em 595 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 596 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 599 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 600 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 604 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 605 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 608 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != 2 * sectorsize) { em 611 fs/btrfs/tests/inode-tests.c offset, 2 * sectorsize, em->start, em->len); em 614 fs/btrfs/tests/inode-tests.c if (em->flags != compressed_only) { em 616 fs/btrfs/tests/inode-tests.c compressed_only, em->flags); em 619 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 621 fs/btrfs/tests/inode-tests.c em->start, em->orig_start); em 624 fs/btrfs/tests/inode-tests.c if (em->compress_type != BTRFS_COMPRESS_ZLIB) { em 626 fs/btrfs/tests/inode-tests.c BTRFS_COMPRESS_ZLIB, em->compress_type); em 629 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 630 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 633 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 634 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 638 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 639 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 642 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 645 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 648 fs/btrfs/tests/inode-tests.c if (em->flags != compressed_only) { em 650 fs/btrfs/tests/inode-tests.c compressed_only, em->flags); em 653 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 655 fs/btrfs/tests/inode-tests.c em->start, em->orig_start); em 658 fs/btrfs/tests/inode-tests.c if (em->compress_type != BTRFS_COMPRESS_ZLIB) { em 660 fs/btrfs/tests/inode-tests.c BTRFS_COMPRESS_ZLIB, em->compress_type); em 663 fs/btrfs/tests/inode-tests.c disk_bytenr = em->block_start; em 664 fs/btrfs/tests/inode-tests.c orig_start = em->start; em 665 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 666 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 668 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 669 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 673 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 674 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 677 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 680 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 683 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 684 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 687 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 688 fs/btrfs/tests/inode-tests.c test_err("wrong orig offset, want %llu, have %llu", em->start, em 689 fs/btrfs/tests/inode-tests.c em->orig_start); em 692 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 693 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 695 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 696 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 700 fs/btrfs/tests/inode-tests.c if (em->block_start != disk_bytenr) { em 702 fs/btrfs/tests/inode-tests.c disk_bytenr, em->block_start); em 705 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != 2 * sectorsize) { em 708 fs/btrfs/tests/inode-tests.c offset, 2 * sectorsize, em->start, em->len); em 711 fs/btrfs/tests/inode-tests.c if (em->flags != compressed_only) { em 713 fs/btrfs/tests/inode-tests.c compressed_only, em->flags); em 716 fs/btrfs/tests/inode-tests.c if (em->orig_start != orig_start) { em 718 fs/btrfs/tests/inode-tests.c em->start, orig_start); em 721 fs/btrfs/tests/inode-tests.c if (em->compress_type != BTRFS_COMPRESS_ZLIB) { em 723 fs/btrfs/tests/inode-tests.c BTRFS_COMPRESS_ZLIB, em->compress_type); em 726 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 727 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 730 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset + 6, em 732 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 736 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 737 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 740 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 743 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 746 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 747 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 750 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 751 fs/btrfs/tests/inode-tests.c test_err("wrong orig offset, want %llu, have %llu", em->start, em 752 fs/btrfs/tests/inode-tests.c em->orig_start); em 755 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 756 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 758 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, SZ_4M, 0); em 759 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 763 fs/btrfs/tests/inode-tests.c if (em->block_start != EXTENT_MAP_HOLE) { em 764 fs/btrfs/tests/inode-tests.c test_err("expected a hole extent, got %llu", em->block_start); em 772 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != 3 * sectorsize) { em 775 fs/btrfs/tests/inode-tests.c offset, 3 * sectorsize, em->start, em->len); em 778 fs/btrfs/tests/inode-tests.c if (em->flags != vacancy_only) { em 780 fs/btrfs/tests/inode-tests.c vacancy_only, em->flags); em 783 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 784 fs/btrfs/tests/inode-tests.c test_err("wrong orig offset, want %llu, have %llu", em->start, em 785 fs/btrfs/tests/inode-tests.c em->orig_start); em 788 fs/btrfs/tests/inode-tests.c offset = em->start + em->len; em 789 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 791 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, offset, sectorsize, 0); em 792 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 796 fs/btrfs/tests/inode-tests.c if (em->block_start >= EXTENT_MAP_LAST_BYTE) { em 797 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 800 fs/btrfs/tests/inode-tests.c if (em->start != offset || em->len != sectorsize) { em 803 fs/btrfs/tests/inode-tests.c offset, sectorsize, em->start, em->len); em 806 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 807 fs/btrfs/tests/inode-tests.c test_err("unexpected flags set, want 0 have %lu", em->flags); em 810 fs/btrfs/tests/inode-tests.c if (em->orig_start != em->start) { em 811 fs/btrfs/tests/inode-tests.c test_err("wrong orig offset, want %llu, have %llu", em->start, em 812 fs/btrfs/tests/inode-tests.c em->orig_start); em 817 fs/btrfs/tests/inode-tests.c if (!IS_ERR(em)) em 818 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 830 fs/btrfs/tests/inode-tests.c struct extent_map *em = NULL; em 875 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, 0, 2 * sectorsize, 0); em 876 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 880 fs/btrfs/tests/inode-tests.c if (em->block_start != EXTENT_MAP_HOLE) { em 881 fs/btrfs/tests/inode-tests.c test_err("expected a hole, got %llu", em->block_start); em 884 fs/btrfs/tests/inode-tests.c if (em->start != 0 || em->len != sectorsize) { em 887 fs/btrfs/tests/inode-tests.c sectorsize, em->start, em->len); em 890 fs/btrfs/tests/inode-tests.c if (em->flags != vacancy_only) { em 892 fs/btrfs/tests/inode-tests.c em->flags); em 895 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 897 fs/btrfs/tests/inode-tests.c em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, sectorsize, em 899 fs/btrfs/tests/inode-tests.c if (IS_ERR(em)) { em 903 fs/btrfs/tests/inode-tests.c if (em->block_start != sectorsize) { em 904 fs/btrfs/tests/inode-tests.c test_err("expected a real extent, got %llu", em->block_start); em 907 fs/btrfs/tests/inode-tests.c if (em->start != sectorsize || em->len != sectorsize) { em 910 fs/btrfs/tests/inode-tests.c sectorsize, sectorsize, em->start, em->len); em 913 fs/btrfs/tests/inode-tests.c if (em->flags != 0) { em 915 fs/btrfs/tests/inode-tests.c em->flags); em 920 fs/btrfs/tests/inode-tests.c if (!IS_ERR(em)) em 921 fs/btrfs/tests/inode-tests.c free_extent_map(em); em 4100 fs/btrfs/tree-log.c const struct extent_map *em) em 4108 fs/btrfs/tree-log.c test_bit(EXTENT_FLAG_PREALLOC, &em->flags) || em 4109 fs/btrfs/tree-log.c em->block_start == EXTENT_MAP_HOLE) em 4113 fs/btrfs/tree-log.c if (em->compress_type) { em 4115 fs/btrfs/tree-log.c csum_len = max(em->block_len, em->orig_block_len); em 4117 fs/btrfs/tree-log.c csum_offset = em->mod_start - em->start; em 4118 fs/btrfs/tree-log.c csum_len = em->mod_len; em 4123 fs/btrfs/tree-log.c em->block_start + csum_offset, em 4124 fs/btrfs/tree-log.c em->block_start + csum_offset + em 4144 fs/btrfs/tree-log.c const struct extent_map *em, em 4153 fs/btrfs/tree-log.c u64 extent_offset = em->start - em->orig_start; em 4158 fs/btrfs/tree-log.c ret = log_extent_csums(trans, inode, log, em); em 4162 fs/btrfs/tree-log.c ret = __btrfs_drop_extents(trans, log, &inode->vfs_inode, path, em->start, em 4163 fs/btrfs/tree-log.c em->start + em->len, NULL, 0, 1, em 4171 fs/btrfs/tree-log.c key.offset = em->start; em 4185 fs/btrfs/tree-log.c if (test_bit(EXTENT_FLAG_PREALLOC, &em->flags)) em 4194 fs/btrfs/tree-log.c block_len = max(em->block_len, em->orig_block_len); em 4195 fs/btrfs/tree-log.c if (em->compress_type != BTRFS_COMPRESS_NONE) { em 4197 fs/btrfs/tree-log.c em->block_start, em 4201 fs/btrfs/tree-log.c } else if (em->block_start < EXTENT_MAP_LAST_BYTE) { em 4203 fs/btrfs/tree-log.c em->block_start - em 4214 fs/btrfs/tree-log.c btrfs_set_token_file_extent_num_bytes(leaf, fi, em->len, &token); em 4215 fs/btrfs/tree-log.c btrfs_set_token_file_extent_ram_bytes(leaf, fi, em->ram_bytes, &token); em 4216 fs/btrfs/tree-log.c btrfs_set_token_file_extent_compression(leaf, fi, em->compress_type, em 4375 fs/btrfs/tree-log.c struct extent_map *em, *n; em 4387 fs/btrfs/tree-log.c list_for_each_entry_safe(em, n, &tree->modified_extents, list) { em 4401 fs/btrfs/tree-log.c if ((em->start > end || em->start + em->len <= start) && em 4402 fs/btrfs/tree-log.c em->block_start != EXTENT_MAP_HOLE) em 4405 fs/btrfs/tree-log.c list_del_init(&em->list); em 4418 fs/btrfs/tree-log.c if (em->generation <= test_gen) em 4422 fs/btrfs/tree-log.c if (test_bit(EXTENT_FLAG_PREALLOC, &em->flags) && em 4423 fs/btrfs/tree-log.c em->start >= i_size_read(&inode->vfs_inode)) em 4427 fs/btrfs/tree-log.c refcount_inc(&em->refs); em 4428 fs/btrfs/tree-log.c set_bit(EXTENT_FLAG_LOGGING, &em->flags); em 4429 fs/btrfs/tree-log.c list_add_tail(&em->list, &extents); em 4436 fs/btrfs/tree-log.c em = list_entry(extents.next, struct extent_map, list); em 4438 fs/btrfs/tree-log.c list_del_init(&em->list); em 4445 fs/btrfs/tree-log.c clear_em_logging(tree, em); em 4446 fs/btrfs/tree-log.c free_extent_map(em); em 4452 fs/btrfs/tree-log.c ret = log_one_extent(trans, inode, root, em, path, ctx); em 4454 fs/btrfs/tree-log.c clear_em_logging(tree, em); em 4455 fs/btrfs/tree-log.c free_extent_map(em); em 5340 fs/btrfs/tree-log.c struct extent_map *em, *n; em 5361 fs/btrfs/tree-log.c list_for_each_entry_safe(em, n, &em_tree->modified_extents, em 5363 fs/btrfs/tree-log.c const u64 mod_end = em->mod_start + em->mod_len - 1; em 5365 fs/btrfs/tree-log.c if (em->mod_start >= start && mod_end <= end) em 5366 fs/btrfs/tree-log.c list_del_init(&em->list); em 1865 fs/btrfs/volumes.c struct extent_map *em; em 1873 fs/btrfs/volumes.c em = rb_entry(n, struct extent_map, rb_node); em 1874 fs/btrfs/volumes.c ret = em->start + em->len; em 2987 fs/btrfs/volumes.c struct extent_map *em; em 2991 fs/btrfs/volumes.c em = lookup_extent_mapping(em_tree, logical, length); em 2994 fs/btrfs/volumes.c if (!em) { em 3000 fs/btrfs/volumes.c if (em->start > logical || em->start + em->len < logical) { em 3003 fs/btrfs/volumes.c logical, length, em->start, em->start + em->len); em 3004 fs/btrfs/volumes.c free_extent_map(em); em 3009 fs/btrfs/volumes.c return em; em 3015 fs/btrfs/volumes.c struct extent_map *em; em 3021 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, chunk_offset, 1); em 3022 fs/btrfs/volumes.c if (IS_ERR(em)) { em 3029 fs/btrfs/volumes.c return PTR_ERR(em); em 3031 fs/btrfs/volumes.c map = em->map_lookup; em 3077 fs/btrfs/volumes.c trace_btrfs_chunk_free(fs_info, map, chunk_offset, em->len); em 3087 fs/btrfs/volumes.c ret = btrfs_remove_block_group(trans, chunk_offset, em); em 3095 fs/btrfs/volumes.c free_extent_map(em); em 4962 fs/btrfs/volumes.c struct extent_map *em; em 5176 fs/btrfs/volumes.c em = alloc_extent_map(); em 5177 fs/btrfs/volumes.c if (!em) { em 5182 fs/btrfs/volumes.c set_bit(EXTENT_FLAG_FS_MAPPING, &em->flags); em 5183 fs/btrfs/volumes.c em->map_lookup = map; em 5184 fs/btrfs/volumes.c em->start = start; em 5185 fs/btrfs/volumes.c em->len = chunk_size; em 5186 fs/btrfs/volumes.c em->block_start = 0; em 5187 fs/btrfs/volumes.c em->block_len = em->len; em 5188 fs/btrfs/volumes.c em->orig_block_len = stripe_size; em 5192 fs/btrfs/volumes.c ret = add_extent_mapping(em_tree, em, 0); em 5195 fs/btrfs/volumes.c free_extent_map(em); em 5215 fs/btrfs/volumes.c free_extent_map(em); em 5223 fs/btrfs/volumes.c remove_extent_mapping(em_tree, em); em 5227 fs/btrfs/volumes.c free_extent_map(em); em 5229 fs/btrfs/volumes.c free_extent_map(em); em 5245 fs/btrfs/volumes.c struct extent_map *em; em 5253 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, chunk_offset, chunk_size); em 5254 fs/btrfs/volumes.c if (IS_ERR(em)) em 5255 fs/btrfs/volumes.c return PTR_ERR(em); em 5257 fs/btrfs/volumes.c map = em->map_lookup; em 5259 fs/btrfs/volumes.c stripe_size = em->orig_block_len; em 5329 fs/btrfs/volumes.c free_extent_map(em); em 5378 fs/btrfs/volumes.c struct extent_map *em; em 5384 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, chunk_offset, 1); em 5385 fs/btrfs/volumes.c if (IS_ERR(em)) em 5388 fs/btrfs/volumes.c map = em->map_lookup; em 5410 fs/btrfs/volumes.c free_extent_map(em); em 5416 fs/btrfs/volumes.c struct extent_map *em; em 5420 fs/btrfs/volumes.c em = lookup_extent_mapping(tree, 0, (u64)-1); em 5421 fs/btrfs/volumes.c if (em) em 5422 fs/btrfs/volumes.c remove_extent_mapping(tree, em); em 5424 fs/btrfs/volumes.c if (!em) em 5427 fs/btrfs/volumes.c free_extent_map(em); em 5429 fs/btrfs/volumes.c free_extent_map(em); em 5435 fs/btrfs/volumes.c struct extent_map *em; em 5439 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, logical, len); em 5440 fs/btrfs/volumes.c if (IS_ERR(em)) em 5449 fs/btrfs/volumes.c map = em->map_lookup; em 5467 fs/btrfs/volumes.c free_extent_map(em); em 5481 fs/btrfs/volumes.c struct extent_map *em; em 5485 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, logical, len); em 5487 fs/btrfs/volumes.c if (!WARN_ON(IS_ERR(em))) { em 5488 fs/btrfs/volumes.c map = em->map_lookup; em 5491 fs/btrfs/volumes.c free_extent_map(em); em 5498 fs/btrfs/volumes.c struct extent_map *em; em 5502 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, logical, len); em 5504 fs/btrfs/volumes.c if(!WARN_ON(IS_ERR(em))) { em 5505 fs/btrfs/volumes.c map = em->map_lookup; em 5508 fs/btrfs/volumes.c free_extent_map(em); em 5638 fs/btrfs/volumes.c struct extent_map *em; em 5661 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, logical, length); em 5662 fs/btrfs/volumes.c if (IS_ERR(em)) em 5663 fs/btrfs/volumes.c return PTR_ERR(em); em 5665 fs/btrfs/volumes.c map = em->map_lookup; em 5672 fs/btrfs/volumes.c offset = logical - em->start; em 5673 fs/btrfs/volumes.c length = min_t(u64, em->len - offset, length); em 5777 fs/btrfs/volumes.c free_extent_map(em); em 5974 fs/btrfs/volumes.c struct extent_map *em; em 5986 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, logical, len); em 5987 fs/btrfs/volumes.c if (IS_ERR(em)) em 5988 fs/btrfs/volumes.c return PTR_ERR(em); em 5990 fs/btrfs/volumes.c map = em->map_lookup; em 5992 fs/btrfs/volumes.c offset = logical - em->start; em 6002 fs/btrfs/volumes.c stripe_offset, offset, em->start, logical, stripe_len); em 6039 fs/btrfs/volumes.c len = min_t(u64, em->len - offset, max_len); em 6041 fs/btrfs/volumes.c len = em->len - offset; em 6053 fs/btrfs/volumes.c free_extent_map(em); em 6063 fs/btrfs/volumes.c struct extent_map *em; em 6094 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, logical, *length); em 6095 fs/btrfs/volumes.c ASSERT(!IS_ERR(em)); em 6096 fs/btrfs/volumes.c map = em->map_lookup; em 6256 fs/btrfs/volumes.c em->start + (tmp + i) * map->stripe_len; em 6310 fs/btrfs/volumes.c free_extent_map(em); em 6333 fs/btrfs/volumes.c struct extent_map *em; em 6342 fs/btrfs/volumes.c em = btrfs_get_chunk_map(fs_info, chunk_start, 1); em 6343 fs/btrfs/volumes.c if (IS_ERR(em)) em 6346 fs/btrfs/volumes.c map = em->map_lookup; em 6347 fs/btrfs/volumes.c length = em->len; em 6395 fs/btrfs/volumes.c free_extent_map(em); em 6770 fs/btrfs/volumes.c struct extent_map *em; em 6794 fs/btrfs/volumes.c em = lookup_extent_mapping(map_tree, logical, 1); em 6798 fs/btrfs/volumes.c if (em && em->start <= logical && em->start + em->len > logical) { em 6799 fs/btrfs/volumes.c free_extent_map(em); em 6801 fs/btrfs/volumes.c } else if (em) { em 6802 fs/btrfs/volumes.c free_extent_map(em); em 6805 fs/btrfs/volumes.c em = alloc_extent_map(); em 6806 fs/btrfs/volumes.c if (!em) em 6810 fs/btrfs/volumes.c free_extent_map(em); em 6814 fs/btrfs/volumes.c set_bit(EXTENT_FLAG_FS_MAPPING, &em->flags); em 6815 fs/btrfs/volumes.c em->map_lookup = map; em 6816 fs/btrfs/volumes.c em->start = logical; em 6817 fs/btrfs/volumes.c em->len = length; em 6818 fs/btrfs/volumes.c em->orig_start = 0; em 6819 fs/btrfs/volumes.c em->block_start = 0; em 6820 fs/btrfs/volumes.c em->block_len = em->len; em 6829 fs/btrfs/volumes.c em->orig_block_len = calc_stripe_length(map->type, em->len, em 6842 fs/btrfs/volumes.c free_extent_map(em); em 6851 fs/btrfs/volumes.c free_extent_map(em); em 6865 fs/btrfs/volumes.c ret = add_extent_mapping(map_tree, em, 0); em 6870 fs/btrfs/volumes.c em->start, em->len, ret); em 6872 fs/btrfs/volumes.c free_extent_map(em); em 7185 fs/btrfs/volumes.c struct extent_map *em; em 7190 fs/btrfs/volumes.c em = lookup_extent_mapping(map_tree, 0, (u64)-1); em 7193 fs/btrfs/volumes.c if (!em) { em 7197 fs/btrfs/volumes.c while (em) { em 7203 fs/btrfs/volumes.c map = em->map_lookup; em 7221 fs/btrfs/volumes.c em->start, missing, max_tolerated); em 7222 fs/btrfs/volumes.c free_extent_map(em); em 7226 fs/btrfs/volumes.c next_start = extent_map_end(em); em 7227 fs/btrfs/volumes.c free_extent_map(em); em 7230 fs/btrfs/volumes.c em = lookup_extent_mapping(map_tree, next_start, em 7706 fs/btrfs/volumes.c struct extent_map *em; em 7715 fs/btrfs/volumes.c em = lookup_extent_mapping(em_tree, chunk_offset, 1); em 7718 fs/btrfs/volumes.c if (!em) { em 7726 fs/btrfs/volumes.c map = em->map_lookup; em 7727 fs/btrfs/volumes.c stripe_len = calc_stripe_length(map->type, em->len, map->num_stripes); em 7731 fs/btrfs/volumes.c physical_offset, devid, em->start, physical_len, em 7744 fs/btrfs/volumes.c em->start); em 7788 fs/btrfs/volumes.c free_extent_map(em); em 7795 fs/btrfs/volumes.c struct extent_map *em; em 7801 fs/btrfs/volumes.c em = rb_entry(node, struct extent_map, rb_node); em 7802 fs/btrfs/volumes.c if (em->map_lookup->num_stripes != em 7803 fs/btrfs/volumes.c em->map_lookup->verified_stripes) { em 7806 fs/btrfs/volumes.c em->start, em->map_lookup->verified_stripes, em 7807 fs/btrfs/volumes.c em->map_lookup->num_stripes); em 50 fs/ocfs2/extent_map.c static void __ocfs2_extent_map_lookup(struct ocfs2_extent_map *em, em 59 fs/ocfs2/extent_map.c list_for_each_entry(emi, &em->em_list, ei_list) { em 63 fs/ocfs2/extent_map.c list_move(&emi->ei_list, &em->em_list); em 106 fs/ocfs2/extent_map.c struct ocfs2_extent_map *em = &oi->ip_extent_map; em 111 fs/ocfs2/extent_map.c list_for_each_entry_safe(emi, n, &em->em_list, ei_list) { em 115 fs/ocfs2/extent_map.c BUG_ON(em->em_num_items == 0); em 116 fs/ocfs2/extent_map.c em->em_num_items--; em 219 fs/ocfs2/extent_map.c struct ocfs2_extent_map *em = &oi->ip_extent_map; em 232 fs/ocfs2/extent_map.c list_for_each_entry(emi, &em->em_list, ei_list) { em 234 fs/ocfs2/extent_map.c list_move(&emi->ei_list, &em->em_list); em 247 fs/ocfs2/extent_map.c if (em->em_num_items < OCFS2_MAX_EXTENT_MAP_ITEMS) { em 259 fs/ocfs2/extent_map.c list_add(&new_emi->ei_list, &em->em_list); em 260 fs/ocfs2/extent_map.c em->em_num_items++; em 263 fs/ocfs2/extent_map.c BUG_ON(list_empty(&em->em_list) || em->em_num_items == 0); em 264 fs/ocfs2/extent_map.c emi = list_entry(em->em_list.prev, em 266 fs/ocfs2/extent_map.c list_move(&emi->ei_list, &em->em_list); em 477 include/linux/rio.h } em; em 344 include/net/pkt_cls.h static inline int tcf_em_is_container(struct tcf_ematch *em) em 346 include/net/pkt_cls.h return !em->ops; em 349 include/net/pkt_cls.h static inline int tcf_em_is_simple(struct tcf_ematch *em) em 351 include/net/pkt_cls.h return em->flags & TCF_EM_SIMPLE; em 354 include/net/pkt_cls.h static inline int tcf_em_is_inverted(struct tcf_ematch *em) em 356 include/net/pkt_cls.h return em->flags & TCF_EM_INVERT; em 359 include/net/pkt_cls.h static inline int tcf_em_last_match(struct tcf_ematch *em) em 361 include/net/pkt_cls.h return (em->flags & TCF_EM_REL_MASK) == TCF_EM_REL_END; em 364 include/net/pkt_cls.h static inline int tcf_em_early_end(struct tcf_ematch *em, int result) em 366 include/net/pkt_cls.h if (tcf_em_last_match(em)) em 369 include/net/pkt_cls.h if (result == 0 && em->flags & TCF_EM_REL_AND) em 372 include/net/pkt_cls.h if (result != 0 && em->flags & TCF_EM_REL_OR) em 428 include/scsi/libfc.h struct fc_exch_mgr *em; em 206 net/bridge/netfilter/ebt_among.c const struct ebt_entry_match *em = em 212 net/bridge/netfilter/ebt_among.c if (expected_length > em->match_size) em 215 net/bridge/netfilter/ebt_among.c if (wormhash_offset_invalid(info->wh_dst_ofs, em->match_size) || em 216 net/bridge/netfilter/ebt_among.c wormhash_offset_invalid(info->wh_src_ofs, em->match_size)) em 224 net/bridge/netfilter/ebt_among.c if (expected_length > em->match_size) em 241 net/bridge/netfilter/ebt_among.c if (em->match_size != EBT_ALIGN(expected_length)) { em 243 net/bridge/netfilter/ebt_among.c em->match_size, expected_length, em 21 net/sched/em_cmp.c static int em_cmp_match(struct sk_buff *skb, struct tcf_ematch *em, em 24 net/sched/em_cmp.c struct tcf_em_cmp *cmp = (struct tcf_em_cmp *) em->data; em 20 net/sched/em_ipset.c struct tcf_ematch *em) em 32 net/sched/em_ipset.c em->datalen = sizeof(*set); em 33 net/sched/em_ipset.c em->data = (unsigned long)kmemdup(data, em->datalen, GFP_KERNEL); em 34 net/sched/em_ipset.c if (em->data) em 41 net/sched/em_ipset.c static void em_ipset_destroy(struct tcf_ematch *em) em 43 net/sched/em_ipset.c const struct xt_set_info *set = (const void *) em->data; em 45 net/sched/em_ipset.c ip_set_nfnl_put(em->net, set->index); em 46 net/sched/em_ipset.c kfree((void *) em->data); em 50 net/sched/em_ipset.c static int em_ipset_match(struct sk_buff *skb, struct tcf_ematch *em, em 55 net/sched/em_ipset.c const struct xt_set_info *set = (const void *) em->data; em 58 net/sched/em_ipset.c .net = em->net, em 94 net/sched/em_ipset.c indev = dev_get_by_index_rcu(em->net, skb->skb_iif); em 127 net/sched/em_ipt.c struct tcf_ematch *em) em 175 net/sched/em_ipt.c em->datalen = sizeof(*im) + mdata_len; em 176 net/sched/em_ipt.c em->data = (unsigned long)im; em 185 net/sched/em_ipt.c static void em_ipt_destroy(struct tcf_ematch *em) em 187 net/sched/em_ipt.c struct em_ipt_match *im = (void *)em->data; em 194 net/sched/em_ipt.c .net = em->net, em 205 net/sched/em_ipt.c static int em_ipt_match(struct sk_buff *skb, struct tcf_ematch *em, em 208 net/sched/em_ipt.c const struct em_ipt_match *im = (const void *)em->data; em 235 net/sched/em_ipt.c indev = dev_get_by_index_rcu(em->net, skb->skb_iif); em 238 net/sched/em_ipt.c indev ?: skb->dev, skb->dev, NULL, em->net, NULL); em 250 net/sched/em_ipt.c static int em_ipt_dump(struct sk_buff *skb, struct tcf_ematch *em) em 252 net/sched/em_ipt.c struct em_ipt_match *im = (void *)em->data; em 962 net/sched/em_meta.c static int em_meta_dump(struct sk_buff *skb, struct tcf_ematch *em) em 964 net/sched/em_meta.c struct meta_match *meta = (struct meta_match *) em->data; em 23 net/sched/em_nbyte.c struct tcf_ematch *em) em 31 net/sched/em_nbyte.c em->datalen = sizeof(*nbyte) + nbyte->len; em 32 net/sched/em_nbyte.c em->data = (unsigned long)kmemdup(data, em->datalen, GFP_KERNEL); em 33 net/sched/em_nbyte.c if (em->data == 0UL) em 39 net/sched/em_nbyte.c static int em_nbyte_match(struct sk_buff *skb, struct tcf_ematch *em, em 42 net/sched/em_nbyte.c struct nbyte_data *nbyte = (struct nbyte_data *) em->data; em 17 net/sched/em_u32.c static int em_u32_match(struct sk_buff *skb, struct tcf_ematch *em, em 20 net/sched/em_u32.c struct tc_u32_key *key = (struct tc_u32_key *) em->data; em 171 net/sched/ematch.c struct tcf_ematch *em, struct nlattr *nla, int idx) em 202 net/sched/ematch.c em->data = ref; em 212 net/sched/ematch.c em->ops = tcf_em_lookup(em_hdr->kind); em 214 net/sched/ematch.c if (em->ops == NULL) { em 220 net/sched/ematch.c em->ops = tcf_em_lookup(em_hdr->kind); em 221 net/sched/ematch.c if (em->ops) { em 226 net/sched/ematch.c module_put(em->ops->owner); em 227 net/sched/ematch.c em->ops = NULL; em 237 net/sched/ematch.c if (em->ops->datalen && data_len < em->ops->datalen) em 240 net/sched/ematch.c if (em->ops->change) { em 244 net/sched/ematch.c err = em->ops->change(net, data, data_len, em); em 260 net/sched/ematch.c em->data = *(u32 *) data; em 267 net/sched/ematch.c em->data = (unsigned long) v; em 269 net/sched/ematch.c em->datalen = data_len; em 273 net/sched/ematch.c em->matchid = em_hdr->matchid; em 274 net/sched/ematch.c em->flags = em_hdr->flags; em 275 net/sched/ematch.c em->net = net; em 310 net/sched/ematch.c struct tcf_ematch *em; em 333 net/sched/ematch.c matches_len = tree_hdr->nmatches * sizeof(*em); em 360 net/sched/ematch.c em = tcf_em_get_match(tree, idx); em 362 net/sched/ematch.c err = tcf_em_validate(tp, tree_hdr, em, rt_match, idx); em 407 net/sched/ematch.c struct tcf_ematch *em = tcf_em_get_match(tree, i); em 409 net/sched/ematch.c if (em->ops) { em 410 net/sched/ematch.c if (em->ops->destroy) em 411 net/sched/ematch.c em->ops->destroy(em); em 412 net/sched/ematch.c else if (!tcf_em_is_simple(em)) em 413 net/sched/ematch.c kfree((void *) em->data); em 414 net/sched/ematch.c module_put(em->ops->owner); em 457 net/sched/ematch.c struct tcf_ematch *em = tcf_em_get_match(tree, i); em 459 net/sched/ematch.c .kind = em->ops ? em->ops->kind : TCF_EM_CONTAINER, em 460 net/sched/ematch.c .matchid = em->matchid, em 461 net/sched/ematch.c .flags = em->flags em 467 net/sched/ematch.c if (em->ops && em->ops->dump) { em 468 net/sched/ematch.c if (em->ops->dump(skb, em) < 0) em 470 net/sched/ematch.c } else if (tcf_em_is_container(em) || tcf_em_is_simple(em)) { em 471 net/sched/ematch.c u32 u = em->data; em 473 net/sched/ematch.c } else if (em->datalen > 0) em 474 net/sched/ematch.c nla_put_nohdr(skb, em->datalen, (void *) em->data); em 490 net/sched/ematch.c static inline int tcf_em_match(struct sk_buff *skb, struct tcf_ematch *em, em 493 net/sched/ematch.c int r = em->ops->match(skb, em, info); em 495 net/sched/ematch.c return tcf_em_is_inverted(em) ? !r : r;