Symbol: cursor
crypto/openssh/sftp.c
1962
if (lastarg || *(lf->cursor) != ' ')
crypto/openssh/sftp.c
2112
if (*(lf->cursor - 1) != '/' &&
crypto/openssh/sftp.c
2113
(lastarg || *(lf->cursor) != ' '))
crypto/openssh/sftp.c
2132
u_int cursor, len, terminated, ret = CC_ERROR;
crypto/openssh/sftp.c
2141
cursor = lf->cursor - lf->buffer;
crypto/openssh/sftp.c
2142
line = xmalloc(cursor + 1);
crypto/openssh/sftp.c
2143
memcpy(line, lf->buffer, cursor);
crypto/openssh/sftp.c
2144
line[cursor] = '\0';
crypto/openssh/sftp.c
2156
if (line[cursor] != ' ' && line[cursor] != '\0' &&
crypto/openssh/sftp.c
2157
line[cursor] != '\n') {
crypto/openssh/sftp.c
2166
} else if (carg == 1 && cursor > 0 && line[cursor - 1] != ' ') {
crypto/openssh/sftp.c
2177
if (carg > 1 && line[cursor-1] != ' ')
crypto/openssh/sftp.c
2190
if (line[cursor - 1] == ' ')
games/larn/display.c
103
cursor(59, 18);
games/larn/display.c
122
cursor(59, 19);
games/larn/display.c
201
cursor(70, i + 1);
games/larn/display.c
205
cursor(70, i + 1);
games/larn/display.c
223
cursor(x, y);
games/larn/display.c
259
cursor(70, i + 1);
games/larn/display.c
284
cursor(1, 1);
games/larn/display.c
313
cursor(j + 1, i + 1);
games/larn/display.c
325
cursor(j + 1, i + 1);
games/larn/display.c
340
cursor(lastx = j + 1, lasty = i + 1);
games/larn/display.c
394
cursor(n + 1, j + 1);
games/larn/display.c
433
cursor(x + 1, y + 1);
games/larn/display.c
464
cursor(playerx + 1, playery + 1);
games/larn/display.c
553
cursor(1, 1);
games/larn/display.c
62
cursor(1, 18);
games/larn/header.h
451
void cursor(int, int);
games/larn/help.c
93
cursor(1, 24);
games/larn/io.c
660
cursor(1, 24);
games/larn/io.c
740
cursor(x, y);
games/larn/io.c
743
cursor(1, y);
games/larn/io.c
745
cursor(x, y);
games/larn/io.c
756
cursor(x, y);
games/larn/io.c
760
cursor(1, 1);
games/larn/io.c
765
cursor(x, y);
games/larn/io.c
776
cursor(x, y);
games/larn/io.c
780
cursor(1, y);
games/larn/io.c
788
cursor(x, y);
games/larn/io.c
791
cursor(x, y);
games/larn/main.c
334
cursor(1, 1);
games/larn/monster.c
806
cursor(x + 1, y + 1);
games/larn/moreobj.c
56
cursor(1, 24);
games/larn/moreobj.c
58
cursor(1, 23);
games/larn/signal.c
29
cursor(1, 24);
games/larn/store.c
188
cursor(50, 18);
games/larn/store.c
244
cursor(59, 18);
games/larn/store.c
307
cursor((j = (i & 1) * 40 + 1), (k = ((i % 26) >> 1) + 5));
games/larn/store.c
321
cursor(j + 31, k);
games/larn/store.c
366
cursor(30, 18);
games/larn/store.c
378
cursor(57, 18);
games/larn/store.c
580
cursor((k % 2) * 40 + 1, (k >> 1) + 4);
games/larn/store.c
582
cursor((k % 2) * 40 + 33, (k >> 1) + 4);
games/larn/store.c
586
cursor(31, 17);
games/larn/store.c
588
cursor(40, 18);
games/larn/store.c
644
cursor((k % 2) * 40 + 1, (k >> 1) + 4);
games/larn/store.c
658
cursor((k % 2) * 40 + 1, (k >> 1) + 4);
games/larn/store.c
666
cursor(40, 17);
games/larn/store.c
668
cursor(49, 18);
games/larn/store.c
786
cursor(1, 4);
games/larn/store.c
820
nxt: cursor(1, 6);
games/larn/store.c
825
cursor(1, 8);
games/larn/tok.c
62
cursor(1, 19);
lib/libc/db/test/btree.tests/main.c
59
void cursor(DB *, char **);
lib/libc/db/test/btree.tests/main.c
86
"c", 1, 1, cursor, "cursor word", "move cursor to word",
lib/libtelnet/kerberos5.c
138
krb5_kt_cursor cursor;
lib/libtelnet/kerberos5.c
144
ret = krb5_kt_start_seq_get (context, kt, &cursor);
lib/libtelnet/kerberos5.c
149
krb5_kt_end_seq_get (context, kt, &cursor);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1012
pt->parent = amdgpu_bo_ref(cursor.parent->base.bo);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1036
struct amdgpu_vm_pt_cursor cursor;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1039
for_each_amdgpu_vm_pt_dfs_safe(adev, vm, cursor, entry) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1468
struct amdgpu_vm_pt_cursor cursor;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1471
for_each_amdgpu_vm_pt_dfs_safe(adev, vm, cursor, entry)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1675
struct amdgpu_vm_pt_cursor cursor;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1683
amdgpu_vm_pt_start(adev, params->vm, start, &cursor);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1684
while (cursor.pfn < end) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1685
struct amdgpu_bo *pt = cursor.entry->base.bo;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1693
if (cursor.level == adev->vm_manager.root_level) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1694
if (!amdgpu_vm_pt_descendant(adev, &cursor))
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1700
if (cursor.entry->huge) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1702
cursor.entry->huge = false;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1703
amdgpu_vm_bo_relocated(&cursor.entry->base);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1706
shift = amdgpu_vm_level_shift(adev, cursor.level);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1707
parent_shift = amdgpu_vm_level_shift(adev, cursor.level - 1);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1710
if (cursor.level != AMDGPU_VM_PTB) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1711
if (!amdgpu_vm_pt_descendant(adev, &cursor))
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1720
if (!amdgpu_vm_pt_descendant(adev, &cursor))
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1724
cursor.level - 1 != adev->vm_manager.root_level) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1729
if (!amdgpu_vm_pt_ancestor(&cursor))
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1736
mask = amdgpu_vm_entries_mask(adev, cursor.level);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1737
pe_start = ((cursor.pfn >> shift) & mask) * 8;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1739
entry_end += cursor.pfn & ~(entry_end - 1);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1746
amdgpu_vm_update_huge(params, pt, cursor.level,
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1763
if (amdgpu_vm_pt_descendant(adev, &cursor)) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1765
while (cursor.pfn < frag_start) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1766
cursor.entry->huge = true;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1767
amdgpu_vm_pt_next(adev, &cursor);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
1772
amdgpu_vm_pt_next(adev, &cursor);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
466
struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
468
cursor->pfn = start;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
469
cursor->parent = NULL;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
470
cursor->entry = &vm->root;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
471
cursor->level = adev->vm_manager.root_level;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
485
struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
489
if (!cursor->entry->entries)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
492
BUG_ON(!cursor->entry->base.bo);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
493
mask = amdgpu_vm_entries_mask(adev, cursor->level);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
494
shift = amdgpu_vm_level_shift(adev, cursor->level);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
496
++cursor->level;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
497
idx = (cursor->pfn >> shift) & mask;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
498
cursor->parent = cursor->entry;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
499
cursor->entry = &cursor->entry->entries[idx];
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
514
struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
519
if (!cursor->parent)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
523
shift = amdgpu_vm_level_shift(adev, cursor->level - 1);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
524
num_entries = amdgpu_vm_num_entries(adev, cursor->level - 1);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
526
if (cursor->entry == &cursor->parent->entries[num_entries - 1])
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
529
cursor->pfn += 1ULL << shift;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
530
cursor->pfn &= ~((1ULL << shift) - 1);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
531
++cursor->entry;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
544
static bool amdgpu_vm_pt_ancestor(struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
546
if (!cursor->parent)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
549
--cursor->level;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
550
cursor->entry = cursor->parent;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
551
cursor->parent = amdgpu_vm_pt_parent(cursor->parent);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
564
struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
567
if (amdgpu_vm_pt_descendant(adev, cursor))
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
571
while (!amdgpu_vm_pt_sibling(adev, cursor)) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
573
if (!amdgpu_vm_pt_ancestor(cursor)) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
574
cursor->pfn = ~0ll;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
592
struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
594
amdgpu_vm_pt_start(adev, vm, start, cursor);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
595
while (amdgpu_vm_pt_descendant(adev, cursor));
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
607
struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
609
amdgpu_vm_pt_next(adev, cursor);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
610
if (cursor->pfn != ~0ll)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
611
while (amdgpu_vm_pt_descendant(adev, cursor));
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
617
#define for_each_amdgpu_vm_pt_leaf(adev, vm, start, end, cursor) \
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
618
for (amdgpu_vm_pt_first_leaf((adev), (vm), (start), &(cursor)); \
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
619
(cursor).pfn <= end; amdgpu_vm_pt_next_leaf((adev), &(cursor)))
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
632
struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
634
amdgpu_vm_pt_start(adev, vm, 0, cursor);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
635
while (amdgpu_vm_pt_descendant(adev, cursor));
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
647
struct amdgpu_vm_pt_cursor *cursor)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
649
if (!cursor->entry)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
652
if (!cursor->parent)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
653
cursor->entry = NULL;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
654
else if (amdgpu_vm_pt_sibling(adev, cursor))
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
655
while (amdgpu_vm_pt_descendant(adev, cursor));
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
657
amdgpu_vm_pt_ancestor(cursor);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
663
#define for_each_amdgpu_vm_pt_dfs_safe(adev, vm, cursor, entry) \
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
664
for (amdgpu_vm_pt_first_dfs((adev), (vm), &(cursor)), \
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
665
(entry) = (cursor).entry, amdgpu_vm_pt_next_dfs((adev), &(cursor));\
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
666
(entry); (entry) = (cursor).entry, \
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
667
amdgpu_vm_pt_next_dfs((adev), &(cursor)))
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
949
struct amdgpu_vm_pt_cursor cursor;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
973
for_each_amdgpu_vm_pt_leaf(adev, vm, saddr, eaddr, cursor) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
974
struct amdgpu_vm_pt *entry = cursor.entry;
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
977
if (cursor.level < AMDGPU_VM_PTB) {
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
980
num_entries = amdgpu_vm_num_entries(adev, cursor.level);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
993
amdgpu_vm_bo_param(adev, vm, cursor.level, &bp);
sys/dev/drm/amd/amdgpu/amdgpu_vm.c
999
r = amdgpu_vm_clear_bo(adev, vm, pt, cursor.level, ats);
sys/dev/drm/drm_atomic_helper.c
2765
if (plane == crtc->cursor)
sys/dev/drm/drm_atomic_helper.c
2803
if (plane_state->crtc && plane_state->crtc->cursor == plane)
sys/dev/drm/drm_crtc.c
271
struct drm_plane *cursor,
sys/dev/drm/drm_crtc.c
279
WARN_ON(cursor && cursor->type != DRM_PLANE_TYPE_CURSOR);
sys/dev/drm/drm_crtc.c
326
crtc->cursor = cursor;
sys/dev/drm/drm_crtc.c
329
if (cursor && !cursor->possible_crtcs)
sys/dev/drm/drm_crtc.c
330
cursor->possible_crtcs = drm_crtc_mask(crtc);
sys/dev/drm/drm_plane.c
832
struct drm_plane *plane = crtc->cursor;
sys/dev/drm/drm_plane.c
942
if (crtc->cursor) {
sys/dev/drm/drm_plane.c
943
ret = drm_modeset_lock(&crtc->cursor->mutex, &ctx);
sys/dev/drm/drm_plane_helper.c
407
if (crtc[i]->cursor == plane)
sys/dev/drm/i915/i915_drv.h
1187
uint16_t cursor;
sys/dev/drm/i915/intel_display.c
10188
if (plane->cursor.base != base ||
sys/dev/drm/i915/intel_display.c
10189
plane->cursor.size != fbc_ctl ||
sys/dev/drm/i915/intel_display.c
10190
plane->cursor.cntl != cntl) {
sys/dev/drm/i915/intel_display.c
10197
plane->cursor.base = base;
sys/dev/drm/i915/intel_display.c
10198
plane->cursor.size = fbc_ctl;
sys/dev/drm/i915/intel_display.c
10199
plane->cursor.cntl = cntl;
sys/dev/drm/i915/intel_display.c
13974
struct intel_plane *cursor = NULL;
sys/dev/drm/i915/intel_display.c
13978
cursor = kzalloc(sizeof(*cursor), GFP_KERNEL);
sys/dev/drm/i915/intel_display.c
13979
if (!cursor) {
sys/dev/drm/i915/intel_display.c
13984
state = intel_create_plane_state(&cursor->base);
sys/dev/drm/i915/intel_display.c
13990
cursor->base.state = &state->base;
sys/dev/drm/i915/intel_display.c
13992
cursor->pipe = pipe;
sys/dev/drm/i915/intel_display.c
13993
cursor->i9xx_plane = (enum i9xx_plane_id) pipe;
sys/dev/drm/i915/intel_display.c
13994
cursor->id = PLANE_CURSOR;
sys/dev/drm/i915/intel_display.c
13995
cursor->frontbuffer_bit = INTEL_FRONTBUFFER(pipe, cursor->id);
sys/dev/drm/i915/intel_display.c
13998
cursor->max_stride = i845_cursor_max_stride;
sys/dev/drm/i915/intel_display.c
13999
cursor->update_plane = i845_update_cursor;
sys/dev/drm/i915/intel_display.c
14000
cursor->disable_plane = i845_disable_cursor;
sys/dev/drm/i915/intel_display.c
14001
cursor->get_hw_state = i845_cursor_get_hw_state;
sys/dev/drm/i915/intel_display.c
14002
cursor->check_plane = i845_check_cursor;
sys/dev/drm/i915/intel_display.c
14004
cursor->max_stride = i9xx_cursor_max_stride;
sys/dev/drm/i915/intel_display.c
14005
cursor->update_plane = i9xx_update_cursor;
sys/dev/drm/i915/intel_display.c
14006
cursor->disable_plane = i9xx_disable_cursor;
sys/dev/drm/i915/intel_display.c
14007
cursor->get_hw_state = i9xx_cursor_get_hw_state;
sys/dev/drm/i915/intel_display.c
14008
cursor->check_plane = i9xx_check_cursor;
sys/dev/drm/i915/intel_display.c
14011
cursor->cursor.base = ~0;
sys/dev/drm/i915/intel_display.c
14012
cursor->cursor.cntl = ~0;
sys/dev/drm/i915/intel_display.c
14015
cursor->cursor.size = ~0;
sys/dev/drm/i915/intel_display.c
14017
ret = drm_universal_plane_init(&dev_priv->drm, &cursor->base,
sys/dev/drm/i915/intel_display.c
14028
drm_plane_create_rotation_property(&cursor->base,
sys/dev/drm/i915/intel_display.c
14036
drm_plane_helper_add(&cursor->base, &intel_plane_helper_funcs);
sys/dev/drm/i915/intel_display.c
14038
return cursor;
sys/dev/drm/i915/intel_display.c
14042
kfree(cursor);
sys/dev/drm/i915/intel_display.c
14074
struct intel_plane *cursor = NULL;
sys/dev/drm/i915/intel_display.c
14108
cursor = intel_cursor_plane_create(dev_priv, pipe);
sys/dev/drm/i915/intel_display.c
14109
if (IS_ERR(cursor)) {
sys/dev/drm/i915/intel_display.c
14110
ret = PTR_ERR(cursor);
sys/dev/drm/i915/intel_display.c
14113
intel_crtc->plane_ids_mask |= BIT(cursor->id);
sys/dev/drm/i915/intel_display.c
14116
&primary->base, &cursor->base,
sys/dev/drm/i915/intel_display.c
16273
} cursor[I915_MAX_PIPES];
sys/dev/drm/i915/intel_display.c
16335
error->cursor[i].control = I915_READ(CURCNTR(i));
sys/dev/drm/i915/intel_display.c
16336
error->cursor[i].position = I915_READ(CURPOS(i));
sys/dev/drm/i915/intel_display.c
16337
error->cursor[i].base = I915_READ(CURBASE(i));
sys/dev/drm/i915/intel_display.c
16424
err_printf(m, " CNTR: %08x\n", error->cursor[i].control);
sys/dev/drm/i915/intel_display.c
16425
err_printf(m, " POS: %08x\n", error->cursor[i].position);
sys/dev/drm/i915/intel_display.c
16426
err_printf(m, " BASE: %08x\n", error->cursor[i].base);
sys/dev/drm/i915/intel_display.c
9959
if (plane->cursor.base != base ||
sys/dev/drm/i915/intel_display.c
9960
plane->cursor.size != size ||
sys/dev/drm/i915/intel_display.c
9961
plane->cursor.cntl != cntl) {
sys/dev/drm/i915/intel_display.c
9968
plane->cursor.base = base;
sys/dev/drm/i915/intel_display.c
9969
plane->cursor.size = size;
sys/dev/drm/i915/intel_display.c
9970
plane->cursor.cntl = cntl;
sys/dev/drm/i915/intel_drv.h
975
} cursor;
sys/dev/drm/i915/intel_pm.c
1298
wm_state->sr.cursor = USHRT_MAX;
sys/dev/drm/i915/intel_pm.c
1305
wm_state->hpll.cursor = USHRT_MAX;
sys/dev/drm/i915/intel_pm.c
1356
wm_state->sr.cursor = raw->plane[PLANE_CURSOR];
sys/dev/drm/i915/intel_pm.c
1368
wm_state->hpll.cursor = raw->plane[PLANE_CURSOR];
sys/dev/drm/i915/intel_pm.c
1438
intermediate->sr.cursor = max(optimal->sr.cursor,
sys/dev/drm/i915/intel_pm.c
1439
active->sr.cursor);
sys/dev/drm/i915/intel_pm.c
1445
intermediate->hpll.cursor = max(optimal->hpll.cursor,
sys/dev/drm/i915/intel_pm.c
1446
active->hpll.cursor);
sys/dev/drm/i915/intel_pm.c
1452
intermediate->sr.cursor >
sys/dev/drm/i915/intel_pm.c
1457
intermediate->sr.cursor >
sys/dev/drm/i915/intel_pm.c
1737
wm_state->sr[level].cursor = USHRT_MAX;
sys/dev/drm/i915/intel_pm.c
1917
wm_state->sr[level].cursor =
sys/dev/drm/i915/intel_pm.c
2068
intermediate->sr[level].cursor = min(optimal->sr[level].cursor,
sys/dev/drm/i915/intel_pm.c
2069
active->sr[level].cursor);
sys/dev/drm/i915/intel_pm.c
2222
crtc->base.cursor->state->crtc_w, 4,
sys/dev/drm/i915/intel_pm.c
5694
wm->sr.cursor = _FW_WM(tmp, CURSOR_SR);
sys/dev/drm/i915/intel_pm.c
5695
wm->hpll.cursor = _FW_WM(tmp, HPLL_CURSOR);
sys/dev/drm/i915/intel_pm.c
5730
wm->sr.cursor = _FW_WM(tmp, CURSOR_SR);
sys/dev/drm/i915/intel_pm.c
5823
raw->plane[PLANE_CURSOR] = active->sr.cursor;
sys/dev/drm/i915/intel_pm.c
5832
raw->plane[PLANE_CURSOR] = active->hpll.cursor;
sys/dev/drm/i915/intel_pm.c
5853
wm->sr.plane, wm->sr.cursor, wm->sr.fbc);
sys/dev/drm/i915/intel_pm.c
5855
wm->hpll.plane, wm->hpll.cursor, wm->hpll.fbc);
sys/dev/drm/i915/intel_pm.c
5982
active->sr[level].cursor = wm->sr.cursor;
sys/dev/drm/i915/intel_pm.c
6011
wm->sr.plane, wm->sr.cursor, wm->level, wm->cxsr);
sys/dev/drm/i915/intel_pm.c
950
FW_WM(wm->sr.cursor, CURSOR_SR) |
sys/dev/drm/i915/intel_pm.c
951
FW_WM(wm->hpll.cursor, HPLL_CURSOR) |
sys/dev/drm/i915/intel_pm.c
996
FW_WM(wm->sr.cursor, CURSOR_SR));
sys/dev/drm/include/drm/drm_crtc.h
1114
struct drm_plane *cursor,
sys/dev/drm/include/drm/drm_crtc.h
901
struct drm_plane *cursor;
sys/dev/misc/psm/psm.c
4160
int cursor, peer, window;
sys/dev/misc/psm/psm.c
4242
cursor = smoother->queue_cursor;
sys/dev/misc/psm/psm.c
4243
dx = x0 - smoother->queue[cursor].x;
sys/dev/misc/psm/psm.c
4244
dy = y0 - smoother->queue[cursor].y;
sys/dev/misc/psm/psm.c
4251
cursor = SYNAPTICS_QUEUE_CURSOR(smoother->queue_cursor - 1);
sys/dev/misc/psm/psm.c
4252
smoother->queue[cursor].x = x0;
sys/dev/misc/psm/psm.c
4253
smoother->queue[cursor].y = y0;
sys/dev/misc/psm/psm.c
4254
smoother->queue_cursor = cursor;
sys/dev/misc/psm/psm.c
4259
smoother_id, cursor, x0, y0, dx, dy));
sys/dev/misc/psm/psm.c
4297
peer = SYNAPTICS_QUEUE_CURSOR(cursor + window - 1);
sys/dev/misc/syscons/scvgarndr.c
333
u_short cursor[32];
sys/dev/misc/syscons/scvgarndr.c
353
cursor[i] = (font_buf[i]<<8) | font_buf[i+32];
sys/dev/misc/syscons/scvgarndr.c
354
cursor[i + scp->font_height] = (font_buf[i+64]<<8) |
sys/dev/misc/syscons/scvgarndr.c
362
cursor[i + yoffset] =
sys/dev/misc/syscons/scvgarndr.c
363
(cursor[i + yoffset] & ~(mouse_and_mask[i] >> xoffset))
sys/dev/misc/syscons/scvgarndr.c
367
font_buf[i] = (cursor[i] & 0xff00) >> 8;
sys/dev/misc/syscons/scvgarndr.c
368
font_buf[i + 32] = cursor[i] & 0xff;
sys/dev/misc/syscons/scvgarndr.c
369
font_buf[i + 64] = (cursor[i + scp->font_height] & 0xff00) >> 8;
sys/dev/misc/syscons/scvgarndr.c
370
font_buf[i + 96] = cursor[i + scp->font_height] & 0xff;
sys/vfs/hammer/hammer.h
1006
int hammer_ip_lookup(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1007
int hammer_ip_first(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1008
int hammer_ip_next(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1009
int hammer_ip_resolve_data(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1010
int hammer_ip_delete_record(hammer_cursor_t cursor, hammer_inode_t ip,
sys/vfs/hammer/hammer.h
1012
int hammer_create_at_cursor(hammer_cursor_t cursor,
sys/vfs/hammer/hammer.h
1014
int hammer_delete_at_cursor(hammer_cursor_t cursor, int delete_flags,
sys/vfs/hammer/hammer.h
1028
int hammer_cursor_up(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1029
int hammer_cursor_up_locked(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1030
int hammer_cursor_down(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1031
int hammer_cursor_upgrade(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1032
int hammer_cursor_upgrade_node(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1033
void hammer_cursor_downgrade(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1036
int hammer_cursor_seek(hammer_cursor_t cursor, hammer_node_t node,
sys/vfs/hammer/hammer.h
1083
int hammer_init_cursor(hammer_transaction_t trans, hammer_cursor_t cursor,
sys/vfs/hammer/hammer.h
1085
void hammer_normalize_cursor(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1086
void hammer_done_cursor(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1087
int hammer_recover_cursor(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1088
void hammer_unlock_cursor(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1089
int hammer_lock_cursor(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1105
void hammer_cursor_invalidate_cache(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1107
int hammer_btree_lookup(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1108
int hammer_btree_first(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1109
int hammer_btree_last(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1110
int hammer_btree_extract(hammer_cursor_t cursor, int flags);
sys/vfs/hammer/hammer.h
1111
int hammer_btree_iterate(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1112
int hammer_btree_iterate_reverse(hammer_cursor_t cursor);
sys/vfs/hammer/hammer.h
1113
int hammer_btree_insert(hammer_cursor_t cursor,
sys/vfs/hammer/hammer.h
1115
int hammer_btree_delete(hammer_cursor_t cursor, int *ndelete);
sys/vfs/hammer/hammer.h
1116
void hammer_btree_do_propagation(hammer_cursor_t cursor,
sys/vfs/hammer/hammer.h
1120
int hammer_btree_correct_rhb(hammer_cursor_t cursor, hammer_tid_t tid);
sys/vfs/hammer/hammer.h
1121
int hammer_btree_correct_lhb(hammer_cursor_t cursor, hammer_tid_t tid);
sys/vfs/hammer/hammer.h
1130
int hammer_btree_lock_children(hammer_cursor_t cursor, int depth,
sys/vfs/hammer/hammer.h
1133
void hammer_btree_lock_copy(hammer_cursor_t cursor,
sys/vfs/hammer/hammer.h
1135
int hammer_btree_sync_copy(hammer_cursor_t cursor,
sys/vfs/hammer/hammer.h
1276
hammer_cursor_t cursor, hammer_inode_t dip,
sys/vfs/hammer/hammer.h
1284
int hammer_ip_delete_range(hammer_cursor_t cursor, hammer_inode_t ip,
sys/vfs/hammer/hammer.h
1286
int hammer_ip_delete_clean(hammer_cursor_t cursor, hammer_inode_t ip,
sys/vfs/hammer/hammer.h
1288
int hammer_ip_sync_data(hammer_cursor_t cursor, hammer_inode_t ip,
sys/vfs/hammer/hammer.h
1290
int hammer_ip_sync_record_cursor(hammer_cursor_t cursor, hammer_record_t rec);
sys/vfs/hammer/hammer.h
1493
hammer_btree_extract_leaf(hammer_cursor_t cursor)
sys/vfs/hammer/hammer.h
1495
return(hammer_btree_extract(cursor, 0));
sys/vfs/hammer/hammer.h
1499
hammer_btree_extract_data(hammer_cursor_t cursor)
sys/vfs/hammer/hammer.h
1501
return(hammer_btree_extract(cursor, HAMMER_CURSOR_GET_DATA));
sys/vfs/hammer/hammer_btree.c
1009
r = hammer_btree_cmp(&cursor->key_beg, cursor->left_bound);
sys/vfs/hammer/hammer_btree.c
1010
s = hammer_btree_cmp(&cursor->key_beg, cursor->right_bound);
sys/vfs/hammer/hammer_btree.c
1013
KKASSERT(cursor->parent);
sys/vfs/hammer/hammer_btree.c
1015
error = hammer_cursor_up(cursor);
sys/vfs/hammer/hammer_btree.c
1025
KKASSERT(cursor->left_bound->create_tid != 1);
sys/vfs/hammer/hammer_btree.c
1026
cursor->create_check = cursor->left_bound->create_tid - 1;
sys/vfs/hammer/hammer_btree.c
1027
cursor->flags |= HAMMER_CURSOR_CREATE_CHECK;
sys/vfs/hammer/hammer_btree.c
1033
KKASSERT(cursor->node != NULL);
sys/vfs/hammer/hammer_btree.c
1045
if (btree_node_is_full(cursor->node->ondisk) == 0)
sys/vfs/hammer/hammer_btree.c
1047
if (cursor->node->ondisk->parent == 0 ||
sys/vfs/hammer/hammer_btree.c
1048
cursor->parent->ondisk->count != HAMMER_BTREE_INT_ELMS) {
sys/vfs/hammer/hammer_btree.c
1052
error = hammer_cursor_up(cursor);
sys/vfs/hammer/hammer_btree.c
1061
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
1081
(intmax_t)cursor->node->node_offset,
sys/vfs/hammer/hammer_btree.c
1089
i = hammer_btree_search_node(&cursor->key_beg, node);
sys/vfs/hammer/hammer_btree.c
1093
r = hammer_btree_cmp(&cursor->key_beg, &elm->base);
sys/vfs/hammer/hammer_btree.c
1102
cursor->create_check = elm->base.create_tid - 1;
sys/vfs/hammer/hammer_btree.c
1103
cursor->flags |= HAMMER_CURSOR_CREATE_CHECK;
sys/vfs/hammer/hammer_btree.c
1139
cursor->index = 0;
sys/vfs/hammer/hammer_btree.c
1153
if ((error = hammer_cursor_upgrade(cursor)) != 0)
sys/vfs/hammer/hammer_btree.c
1155
KKASSERT(cursor->flags & HAMMER_CURSOR_BACKEND);
sys/vfs/hammer/hammer_btree.c
1156
hammer_modify_node_field(cursor->trans, cursor->node,
sys/vfs/hammer/hammer_btree.c
1159
node->elms[0].base = *cursor->left_bound;
sys/vfs/hammer/hammer_btree.c
1161
hammer_modify_node_done(cursor->node);
sys/vfs/hammer/hammer_btree.c
1175
cursor->index = i;
sys/vfs/hammer/hammer_btree.c
1191
if ((error = hammer_cursor_upgrade(cursor)) != 0)
sys/vfs/hammer/hammer_btree.c
1194
KKASSERT(cursor->flags & HAMMER_CURSOR_BACKEND);
sys/vfs/hammer/hammer_btree.c
1195
hammer_modify_node(cursor->trans, cursor->node,
sys/vfs/hammer/hammer_btree.c
1197
elm->base = *cursor->right_bound;
sys/vfs/hammer/hammer_btree.c
1198
hammer_modify_node_done(cursor->node);
sys/vfs/hammer/hammer_btree.c
1208
cursor->index = i;
sys/vfs/hammer/hammer_btree.c
1212
hammer_debug_btree_elm(cursor, elm, "RESULT-I", 0xffff);
sys/vfs/hammer/hammer_btree.c
1237
error = btree_split_internal(cursor);
sys/vfs/hammer/hammer_btree.c
124
hammer_btree_iterate(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_btree.c
1246
i = cursor->index;
sys/vfs/hammer/hammer_btree.c
1247
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
1255
error = hammer_cursor_down(cursor);
sys/vfs/hammer/hammer_btree.c
1259
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
1281
(intmax_t)cursor->node->node_offset,
sys/vfs/hammer/hammer_btree.c
1289
i = hammer_btree_search_node(&cursor->key_beg, node);
sys/vfs/hammer/hammer_btree.c
1294
r = hammer_btree_cmp(&cursor->key_beg, &elm->leaf.base);
sys/vfs/hammer/hammer_btree.c
1318
if (hammer_btree_chkts(cursor->asof,
sys/vfs/hammer/hammer_btree.c
1331
cursor->index = i;
sys/vfs/hammer/hammer_btree.c
1335
(intmax_t)cursor->node->node_offset, i);
sys/vfs/hammer/hammer_btree.c
1346
(intmax_t)cursor->node->node_offset, i);
sys/vfs/hammer/hammer_btree.c
1356
cursor->index = i;
sys/vfs/hammer/hammer_btree.c
1359
error = btree_split_leaf(cursor);
sys/vfs/hammer/hammer_btree.c
136
hmp = cursor->trans->hmp;
sys/vfs/hammer/hammer_btree.c
137
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
140
if (cursor->index < node->count &&
sys/vfs/hammer/hammer_btree.c
141
(cursor->flags & HAMMER_CURSOR_ATEDISK)) {
sys/vfs/hammer/hammer_btree.c
142
++cursor->index;
sys/vfs/hammer/hammer_btree.c
1437
btree_split_internal(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_btree.c
1446
hammer_mount_t hmp = cursor->trans->hmp;
sys/vfs/hammer/hammer_btree.c
1454
hammer_node_lock_init(&lockroot, cursor->node);
sys/vfs/hammer/hammer_btree.c
1455
error = hammer_btree_lock_children(cursor, 1, &lockroot, NULL);
sys/vfs/hammer/hammer_btree.c
1458
if ((error = hammer_cursor_upgrade(cursor)) != 0)
sys/vfs/hammer/hammer_btree.c
1469
node = cursor->node;
sys/vfs/hammer/hammer_btree.c
1472
if (cursor->index == ondisk->count &&
sys/vfs/hammer/hammer_btree.c
1485
if (cursor->index <= split)
sys/vfs/hammer/hammer_btree.c
1495
parent = hammer_alloc_btree(cursor->trans, 0, &error);
sys/vfs/hammer/hammer_btree.c
1499
hammer_modify_node_noundo(cursor->trans, parent);
sys/vfs/hammer/hammer_btree.c
1515
parent = cursor->parent;
sys/vfs/hammer/hammer_btree.c
1516
parent_index = cursor->parent_index;
sys/vfs/hammer/hammer_btree.c
1531
new_node = hammer_alloc_btree(cursor->trans, 0, &error);
sys/vfs/hammer/hammer_btree.c
1535
hammer_delete_node(cursor->trans, parent);
sys/vfs/hammer/hammer_btree.c
1548
hammer_modify_node_noundo(cursor->trans, new_node);
sys/vfs/hammer/hammer_btree.c
1549
hammer_modify_node_all(cursor->trans, node);
sys/vfs/hammer/hammer_btree.c
1577
hammer_modify_node_all(cursor->trans, parent);
sys/vfs/hammer/hammer_btree.c
1602
error = btree_set_parent_of_child(cursor->trans, new_node, elm);
sys/vfs/hammer/hammer_btree.c
1618
hammer_modify_volume_field(cursor->trans, volume,
sys/vfs/hammer/hammer_btree.c
1623
if (cursor->parent) {
sys/vfs/hammer/hammer_btree.c
1624
hammer_unlock(&cursor->parent->lock);
sys/vfs/hammer/hammer_btree.c
1625
hammer_rel_node(cursor->parent);
sys/vfs/hammer/hammer_btree.c
1627
cursor->parent = parent; /* lock'd and ref'd */
sys/vfs/hammer/hammer_btree.c
1645
if (cursor->index >= split) {
sys/vfs/hammer/hammer_btree.c
1646
cursor->parent_index = parent_index + 1;
sys/vfs/hammer/hammer_btree.c
1647
cursor->index -= split;
sys/vfs/hammer/hammer_btree.c
1648
hammer_unlock(&cursor->node->lock);
sys/vfs/hammer/hammer_btree.c
1649
hammer_rel_node(cursor->node);
sys/vfs/hammer/hammer_btree.c
1650
cursor->node = new_node; /* locked and ref'd */
sys/vfs/hammer/hammer_btree.c
1652
cursor->parent_index = parent_index;
sys/vfs/hammer/hammer_btree.c
1660
parent_elm = &parent->ondisk->elms[cursor->parent_index];
sys/vfs/hammer/hammer_btree.c
1661
cursor->left_bound = &parent_elm[0].internal.base;
sys/vfs/hammer/hammer_btree.c
1662
cursor->right_bound = &parent_elm[1].internal.base;
sys/vfs/hammer/hammer_btree.c
1663
KKASSERT(hammer_btree_cmp(cursor->left_bound,
sys/vfs/hammer/hammer_btree.c
1664
&cursor->node->ondisk->elms[0].internal.base) <= 0);
sys/vfs/hammer/hammer_btree.c
1665
KKASSERT(hammer_btree_cmp(cursor->right_bound,
sys/vfs/hammer/hammer_btree.c
1666
&cursor->node->ondisk->elms[cursor->node->ondisk->count].internal.base) >= 0);
sys/vfs/hammer/hammer_btree.c
1669
hammer_btree_unlock_children(cursor->trans->hmp, &lockroot, NULL);
sys/vfs/hammer/hammer_btree.c
1670
hammer_cursor_downgrade(cursor);
sys/vfs/hammer/hammer_btree.c
1679
btree_split_leaf(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_btree.c
1695
if ((error = hammer_cursor_upgrade(cursor)) != 0)
sys/vfs/hammer/hammer_btree.c
1699
KKASSERT(hammer_btree_cmp(cursor->left_bound,
sys/vfs/hammer/hammer_btree.c
1700
&cursor->node->ondisk->elms[0].leaf.base) <= 0);
sys/vfs/hammer/hammer_btree.c
1701
KKASSERT(hammer_btree_cmp(cursor->right_bound,
sys/vfs/hammer/hammer_btree.c
1702
&cursor->node->ondisk->elms[cursor->node->ondisk->count-1].leaf.base) > 0);
sys/vfs/hammer/hammer_btree.c
1711
leaf = cursor->node;
sys/vfs/hammer/hammer_btree.c
1714
if (cursor->index == ondisk->count &&
sys/vfs/hammer/hammer_btree.c
1727
if (cursor->index == split)
sys/vfs/hammer/hammer_btree.c
1737
KKASSERT(hammer_btree_cmp(cursor->left_bound, &elm[-1].leaf.base) <= 0);
sys/vfs/hammer/hammer_btree.c
1738
KKASSERT(hammer_btree_cmp(cursor->left_bound, &elm->leaf.base) <= 0);
sys/vfs/hammer/hammer_btree.c
1739
KKASSERT(hammer_btree_cmp(cursor->right_bound, &elm->leaf.base) > 0);
sys/vfs/hammer/hammer_btree.c
174
if (cursor->index == node->count) {
sys/vfs/hammer/hammer_btree.c
1740
KKASSERT(hammer_btree_cmp(cursor->right_bound, &elm[1].leaf.base) > 0);
sys/vfs/hammer/hammer_btree.c
1748
parent = hammer_alloc_btree(cursor->trans, 0, &error);
sys/vfs/hammer/hammer_btree.c
1752
hammer_modify_node_noundo(cursor->trans, parent);
sys/vfs/hammer/hammer_btree.c
1768
parent = cursor->parent;
sys/vfs/hammer/hammer_btree.c
1769
parent_index = cursor->parent_index;
sys/vfs/hammer/hammer_btree.c
177
(intmax_t)cursor->node->node_offset,
sys/vfs/hammer/hammer_btree.c
178
cursor->index,
sys/vfs/hammer/hammer_btree.c
1784
new_leaf = hammer_alloc_btree(cursor->trans, 0, &error);
sys/vfs/hammer/hammer_btree.c
1788
hammer_delete_node(cursor->trans, parent);
sys/vfs/hammer/hammer_btree.c
179
(intmax_t)(cursor->parent ? cursor->parent->node_offset : -1),
sys/vfs/hammer/hammer_btree.c
1799
hammer_modify_node_all(cursor->trans, leaf);
sys/vfs/hammer/hammer_btree.c
180
cursor->parent_index,
sys/vfs/hammer/hammer_btree.c
1800
hammer_modify_node_noundo(cursor->trans, new_leaf);
sys/vfs/hammer/hammer_btree.c
1828
hammer_modify_node_all(cursor->trans, parent);
sys/vfs/hammer/hammer_btree.c
183
KKASSERT(cursor->parent == NULL ||
sys/vfs/hammer/hammer_btree.c
184
cursor->parent->ondisk->elms[cursor->parent_index].internal.subtree_offset == cursor->node->node_offset);
sys/vfs/hammer/hammer_btree.c
185
error = hammer_cursor_up(cursor);
sys/vfs/hammer/hammer_btree.c
1860
hammer_modify_volume_field(cursor->trans, volume,
sys/vfs/hammer/hammer_btree.c
1865
if (cursor->parent) {
sys/vfs/hammer/hammer_btree.c
1866
hammer_unlock(&cursor->parent->lock);
sys/vfs/hammer/hammer_btree.c
1867
hammer_rel_node(cursor->parent);
sys/vfs/hammer/hammer_btree.c
1869
cursor->parent = parent; /* lock'd and ref'd */
sys/vfs/hammer/hammer_btree.c
1884
if (cursor->index > split ||
sys/vfs/hammer/hammer_btree.c
1885
(cursor->index == split &&
sys/vfs/hammer/hammer_btree.c
1886
hammer_btree_cmp(&cursor->key_beg, mid_boundary) >= 0)) {
sys/vfs/hammer/hammer_btree.c
1887
cursor->parent_index = parent_index + 1;
sys/vfs/hammer/hammer_btree.c
1888
cursor->index -= split;
sys/vfs/hammer/hammer_btree.c
1889
hammer_unlock(&cursor->node->lock);
sys/vfs/hammer/hammer_btree.c
189
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
1890
hammer_rel_node(cursor->node);
sys/vfs/hammer/hammer_btree.c
1891
cursor->node = new_leaf;
sys/vfs/hammer/hammer_btree.c
1893
cursor->parent_index = parent_index;
sys/vfs/hammer/hammer_btree.c
190
KKASSERT(cursor->index != node->count);
sys/vfs/hammer/hammer_btree.c
1901
parent_elm = &parent->ondisk->elms[cursor->parent_index];
sys/vfs/hammer/hammer_btree.c
1902
cursor->left_bound = &parent_elm[0].internal.base;
sys/vfs/hammer/hammer_btree.c
1903
cursor->right_bound = &parent_elm[1].internal.base;
sys/vfs/hammer/hammer_btree.c
1908
KKASSERT(hammer_btree_cmp(cursor->left_bound,
sys/vfs/hammer/hammer_btree.c
1909
&cursor->node->ondisk->elms[0].leaf.base) <= 0);
sys/vfs/hammer/hammer_btree.c
1910
KKASSERT(hammer_btree_cmp(cursor->right_bound,
sys/vfs/hammer/hammer_btree.c
1911
&cursor->node->ondisk->elms[cursor->node->ondisk->count-1].leaf.base) > 0);
sys/vfs/hammer/hammer_btree.c
1912
KKASSERT(hammer_btree_cmp(cursor->left_bound, &cursor->key_beg) <= 0);
sys/vfs/hammer/hammer_btree.c
1913
KKASSERT(hammer_btree_cmp(cursor->right_bound, &cursor->key_beg) > 0);
sys/vfs/hammer/hammer_btree.c
1916
hammer_cursor_downgrade(cursor);
sys/vfs/hammer/hammer_btree.c
1938
btree_remove(hammer_cursor_t cursor, int *ndelete)
sys/vfs/hammer/hammer_btree.c
1947
node = cursor->node;
sys/vfs/hammer/hammer_btree.c
1955
KKASSERT(cursor->parent == NULL);
sys/vfs/hammer/hammer_btree.c
1956
hammer_modify_node_all(cursor->trans, node);
sys/vfs/hammer/hammer_btree.c
1961
cursor->index = 0;
sys/vfs/hammer/hammer_btree.c
1965
parent = cursor->parent;
sys/vfs/hammer/hammer_btree.c
199
if (cursor->flags & HAMMER_CURSOR_REBLOCKING) {
sys/vfs/hammer/hammer_btree.c
200
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_btree.c
2002
error = hammer_cursor_up_locked(cursor);
sys/vfs/hammer/hammer_btree.c
2006
hammer_cursor_deleted_element(cursor->node, 0);
sys/vfs/hammer/hammer_btree.c
2007
error = btree_remove(cursor, ndelete);
sys/vfs/hammer/hammer_btree.c
2009
KKASSERT(node != cursor->node);
sys/vfs/hammer/hammer_btree.c
2011
node, cursor->node, cursor->index);
sys/vfs/hammer/hammer_btree.c
2012
hammer_modify_node_all(cursor->trans, node);
sys/vfs/hammer/hammer_btree.c
2018
hammer_delete_node(cursor->trans, node);
sys/vfs/hammer/hammer_btree.c
203
++cursor->index;
sys/vfs/hammer/hammer_btree.c
2046
hammer_modify_node_all(cursor->trans, parent);
sys/vfs/hammer/hammer_btree.c
2050
elm = &ondisk->elms[cursor->parent_index];
sys/vfs/hammer/hammer_btree.c
2066
if (cursor->parent_index) {
sys/vfs/hammer/hammer_btree.c
2085
(ondisk->count - cursor->parent_index) * esize);
sys/vfs/hammer/hammer_btree.c
2088
hammer_cursor_removed_node(node, parent, cursor->parent_index);
sys/vfs/hammer/hammer_btree.c
2089
hammer_cursor_deleted_element(parent, cursor->parent_index);
sys/vfs/hammer/hammer_btree.c
2091
hammer_delete_node(cursor->trans, node);
sys/vfs/hammer/hammer_btree.c
2099
cursor->flags |= HAMMER_CURSOR_ITERATE_CHECK;
sys/vfs/hammer/hammer_btree.c
2100
error = hammer_cursor_up(cursor);
sys/vfs/hammer/hammer_btree.c
2116
hammer_btree_do_propagation(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_btree.c
2127
if (cursor->trans->hmp->master_id < 0)
sys/vfs/hammer/hammer_btree.c
214
elm = &node->elms[cursor->index];
sys/vfs/hammer/hammer_btree.c
2144
mirror_tid = cursor->node->ondisk->mirror_tid;
sys/vfs/hammer/hammer_btree.c
2146
ncursor = hammer_push_cursor(cursor);
sys/vfs/hammer/hammer_btree.c
2149
hammer_pop_cursor(cursor, ncursor);
sys/vfs/hammer/hammer_btree.c
216
r = hammer_btree_cmp(&cursor->key_end, &elm[0].base);
sys/vfs/hammer/hammer_btree.c
2164
hammer_btree_mirror_propagate(hammer_cursor_t cursor, hammer_tid_t mirror_tid)
sys/vfs/hammer/hammer_btree.c
217
s = hammer_btree_cmp(&cursor->key_beg, &elm[1].base);
sys/vfs/hammer/hammer_btree.c
2171
error = hammer_cursor_up(cursor);
sys/vfs/hammer/hammer_btree.c
2173
error = hammer_cursor_upgrade(cursor);
sys/vfs/hammer/hammer_btree.c
2181
hammer_recover_cursor(cursor);
sys/vfs/hammer/hammer_btree.c
2182
error = hammer_cursor_upgrade(cursor);
sys/vfs/hammer/hammer_btree.c
219
hammer_debug_btree_elm(cursor, elm, "BRACKETL", r);
sys/vfs/hammer/hammer_btree.c
2191
node = cursor->node;
sys/vfs/hammer/hammer_btree.c
2198
elm = &node->ondisk->elms[cursor->index].internal;
sys/vfs/hammer/hammer_btree.c
220
hammer_debug_btree_elm(cursor, elm + 1, "BRACKETR", s);
sys/vfs/hammer/hammer_btree.c
2201
hammer_modify_node(cursor->trans, node, &elm->mirror_tid,
sys/vfs/hammer/hammer_btree.c
2209
cursor->index);
sys/vfs/hammer/hammer_btree.c
2218
hammer_modify_node_field(cursor->trans, node, mirror_tid);
sys/vfs/hammer/hammer_btree.c
227
if (r == 0 && (cursor->flags &
sys/vfs/hammer/hammer_btree.c
2401
hammer_btree_lock_children(hammer_cursor_t cursor, int depth,
sys/vfs/hammer/hammer_btree.c
2417
hmp = cursor->trans->hmp;
sys/vfs/hammer/hammer_btree.c
2430
child = hammer_get_node(cursor->trans,
sys/vfs/hammer/hammer_btree.c
2445
child = hammer_get_node(cursor->trans,
sys/vfs/hammer/hammer_btree.c
2450
if (cursor->deadlk_node == NULL) {
sys/vfs/hammer/hammer_btree.c
2451
cursor->deadlk_node = child;
sys/vfs/hammer/hammer_btree.c
2452
hammer_ref_node(cursor->deadlk_node);
sys/vfs/hammer/hammer_btree.c
246
if (cursor->flags &
sys/vfs/hammer/hammer_btree.c
2480
cursor,
sys/vfs/hammer/hammer_btree.c
249
cursor->cmirror->mirror_tid) {
sys/vfs/hammer/hammer_btree.c
2498
hammer_btree_lock_copy(hammer_cursor_t cursor, hammer_node_lock_t parent)
sys/vfs/hammer/hammer_btree.c
250
hammer_cursor_mirror_filter(cursor);
sys/vfs/hammer/hammer_btree.c
2500
hammer_mount_t hmp = cursor->trans->hmp;
sys/vfs/hammer/hammer_btree.c
2511
hammer_btree_lock_copy(cursor, item);
sys/vfs/hammer/hammer_btree.c
2519
hammer_btree_sync_copy(hammer_cursor_t cursor, hammer_node_lock_t parent)
sys/vfs/hammer/hammer_btree.c
2526
hammer_modify_node_all(cursor->trans, parent->node);
sys/vfs/hammer/hammer_btree.c
2531
hammer_delete_node(cursor->trans, parent->node);
sys/vfs/hammer/hammer_btree.c
2535
count += hammer_btree_sync_copy(cursor, item);
sys/vfs/hammer/hammer_btree.c
262
KKASSERT(cursor->flags &
sys/vfs/hammer/hammer_btree.c
268
error = hammer_cursor_down(cursor);
sys/vfs/hammer/hammer_btree.c
271
KKASSERT(cursor->index == 0);
sys/vfs/hammer/hammer_btree.c
273
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
276
elm = &node->elms[cursor->index];
sys/vfs/hammer/hammer_btree.c
277
r = hammer_btree_cmp(&cursor->key_end, &elm->base);
sys/vfs/hammer/hammer_btree.c
2781
hammer_debug_btree_elm(hammer_cursor_t cursor, hammer_btree_elm_t elm,
sys/vfs/hammer/hammer_btree.c
2788
(intmax_t)cursor->node->node_offset,
sys/vfs/hammer/hammer_btree.c
2789
cursor->index,
sys/vfs/hammer/hammer_btree.c
279
hammer_debug_btree_elm(cursor, elm, "ELEMENT", r);
sys/vfs/hammer/hammer_btree.c
2802
hammer_debug_btree_parent(hammer_cursor_t cursor, const char *s)
sys/vfs/hammer/hammer_btree.c
2805
&cursor->parent->ondisk->elms[cursor->parent_index];
sys/vfs/hammer/hammer_btree.c
2810
(intmax_t)cursor->parent->node_offset,
sys/vfs/hammer/hammer_btree.c
2811
cursor->parent_index,
sys/vfs/hammer/hammer_btree.c
2813
(intmax_t)cursor->left_bound->obj_id,
sys/vfs/hammer/hammer_btree.c
2815
(intmax_t)cursor->right_bound->obj_id,
sys/vfs/hammer/hammer_btree.c
2817
cursor->left_bound,
sys/vfs/hammer/hammer_btree.c
2819
cursor->right_bound,
sys/vfs/hammer/hammer_btree.c
291
(cursor->flags & HAMMER_CURSOR_END_INCLUSIVE) == 0) {
sys/vfs/hammer/hammer_btree.c
302
if (cursor->flags & HAMMER_CURSOR_ITERATE_CHECK) {
sys/vfs/hammer/hammer_btree.c
303
s = hammer_btree_cmp(&cursor->key_beg,
sys/vfs/hammer/hammer_btree.c
308
++cursor->index;
sys/vfs/hammer/hammer_btree.c
312
cursor->flags &= ~HAMMER_CURSOR_ITERATE_CHECK;
sys/vfs/hammer/hammer_btree.c
319
if ((cursor->flags & HAMMER_CURSOR_ASOF) &&
sys/vfs/hammer/hammer_btree.c
320
hammer_btree_chkts(cursor->asof, &elm->base)) {
sys/vfs/hammer/hammer_btree.c
321
++cursor->index;
sys/vfs/hammer/hammer_btree.c
338
elm = &cursor->node->ondisk->elms[cursor->index];
sys/vfs/hammer/hammer_btree.c
339
hammer_debug_btree_elm(cursor, elm, "ITERATE", 0xffff);
sys/vfs/hammer/hammer_btree.c
354
hammer_cursor_mirror_filter(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_btree.c
360
ondisk = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
361
cmirror = cursor->cmirror;
sys/vfs/hammer/hammer_btree.c
366
elm = &ondisk->elms[cursor->index];
sys/vfs/hammer/hammer_btree.c
367
if (cursor->index == 0)
sys/vfs/hammer/hammer_btree.c
368
cmirror->skip_beg = *cursor->left_bound;
sys/vfs/hammer/hammer_btree.c
371
while (cursor->index < ondisk->count) {
sys/vfs/hammer/hammer_btree.c
374
++cursor->index;
sys/vfs/hammer/hammer_btree.c
377
if (cursor->index == ondisk->count)
sys/vfs/hammer/hammer_btree.c
378
cmirror->skip_end = *cursor->right_bound;
sys/vfs/hammer/hammer_btree.c
385
if (hammer_btree_cmp(&cmirror->skip_beg, &cursor->key_beg) < 0)
sys/vfs/hammer/hammer_btree.c
386
cmirror->skip_beg = cursor->key_beg;
sys/vfs/hammer/hammer_btree.c
387
if (hammer_btree_cmp(&cmirror->skip_end, &cursor->key_end) > 0)
sys/vfs/hammer/hammer_btree.c
388
cmirror->skip_end = cursor->key_end;
sys/vfs/hammer/hammer_btree.c
396
hammer_btree_iterate_reverse(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_btree.c
406
KKASSERT ((cursor->flags & HAMMER_CURSOR_MIRROR_FILTERED) == 0);
sys/vfs/hammer/hammer_btree.c
413
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
416
if (cursor->index != -1 &&
sys/vfs/hammer/hammer_btree.c
417
(cursor->flags & HAMMER_CURSOR_ATEDISK)) {
sys/vfs/hammer/hammer_btree.c
418
--cursor->index;
sys/vfs/hammer/hammer_btree.c
420
if (cursor->index == cursor->node->ondisk->count)
sys/vfs/hammer/hammer_btree.c
421
--cursor->index;
sys/vfs/hammer/hammer_btree.c
426
hmp = cursor->trans->hmp;
sys/vfs/hammer/hammer_btree.c
443
if (cursor->index == -1) {
sys/vfs/hammer/hammer_btree.c
444
error = hammer_cursor_up(cursor);
sys/vfs/hammer/hammer_btree.c
446
cursor->index = 0; /* sanity */
sys/vfs/hammer/hammer_btree.c
450
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
451
KKASSERT(cursor->index != node->count);
sys/vfs/hammer/hammer_btree.c
452
--cursor->index;
sys/vfs/hammer/hammer_btree.c
462
KKASSERT(cursor->index != node->count);
sys/vfs/hammer/hammer_btree.c
464
elm = &node->elms[cursor->index];
sys/vfs/hammer/hammer_btree.c
466
r = hammer_btree_cmp(&cursor->key_end, &elm[0].base);
sys/vfs/hammer/hammer_btree.c
467
s = hammer_btree_cmp(&cursor->key_beg, &elm[1].base);
sys/vfs/hammer/hammer_btree.c
469
hammer_debug_btree_elm(cursor, elm, "BRACKETL", r);
sys/vfs/hammer/hammer_btree.c
470
hammer_debug_btree_elm(cursor, elm + 1, "BRACKETR", s);
sys/vfs/hammer/hammer_btree.c
489
error = hammer_cursor_down(cursor);
sys/vfs/hammer/hammer_btree.c
492
KKASSERT(cursor->index == 0);
sys/vfs/hammer/hammer_btree.c
494
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
497
cursor->index = node->count - 1;
sys/vfs/hammer/hammer_btree.c
500
elm = &node->elms[cursor->index];
sys/vfs/hammer/hammer_btree.c
501
s = hammer_btree_cmp(&cursor->key_beg, &elm->base);
sys/vfs/hammer/hammer_btree.c
503
hammer_debug_btree_elm(cursor, elm, "ELEMENTR", s);
sys/vfs/hammer/hammer_btree.c
514
cursor->flags &= ~HAMMER_CURSOR_ITERATE_CHECK;
sys/vfs/hammer/hammer_btree.c
521
if ((cursor->flags & HAMMER_CURSOR_ASOF) &&
sys/vfs/hammer/hammer_btree.c
522
hammer_btree_chkts(cursor->asof, &elm->base)) {
sys/vfs/hammer/hammer_btree.c
523
--cursor->index;
sys/vfs/hammer/hammer_btree.c
540
elm = &cursor->node->ondisk->elms[cursor->index];
sys/vfs/hammer/hammer_btree.c
541
hammer_debug_btree_elm(cursor, elm, "ITERATER", 0xffff);
sys/vfs/hammer/hammer_btree.c
584
hammer_btree_lookup(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_btree.c
588
cursor->flags &= ~HAMMER_CURSOR_ITERATE_CHECK;
sys/vfs/hammer/hammer_btree.c
589
KKASSERT ((cursor->flags & HAMMER_CURSOR_INSERT) == 0 ||
sys/vfs/hammer/hammer_btree.c
590
cursor->trans->sync_lock_refs > 0);
sys/vfs/hammer/hammer_btree.c
592
if (cursor->flags & HAMMER_CURSOR_ASOF) {
sys/vfs/hammer/hammer_btree.c
593
KKASSERT((cursor->flags & HAMMER_CURSOR_INSERT) == 0);
sys/vfs/hammer/hammer_btree.c
594
cursor->key_beg.create_tid = cursor->asof;
sys/vfs/hammer/hammer_btree.c
596
cursor->flags &= ~HAMMER_CURSOR_CREATE_CHECK;
sys/vfs/hammer/hammer_btree.c
597
error = btree_search(cursor, 0);
sys/vfs/hammer/hammer_btree.c
599
(cursor->flags & HAMMER_CURSOR_CREATE_CHECK) == 0) {
sys/vfs/hammer/hammer_btree.c
609
(intmax_t)cursor->create_check);
sys/vfs/hammer/hammer_btree.c
611
cursor->key_beg.create_tid = cursor->create_check;
sys/vfs/hammer/hammer_btree.c
615
error = btree_search(cursor, 0);
sys/vfs/hammer/hammer_btree.c
618
error = hammer_btree_extract(cursor, cursor->flags);
sys/vfs/hammer/hammer_btree.c
632
hammer_btree_first(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_btree.c
636
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_btree.c
638
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_btree.c
639
error = hammer_btree_iterate(cursor);
sys/vfs/hammer/hammer_btree.c
641
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_btree.c
656
hammer_btree_last(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_btree.c
661
save = cursor->key_beg;
sys/vfs/hammer/hammer_btree.c
662
cursor->key_beg = cursor->key_end;
sys/vfs/hammer/hammer_btree.c
663
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_btree.c
664
cursor->key_beg = save;
sys/vfs/hammer/hammer_btree.c
666
(cursor->flags & HAMMER_CURSOR_END_INCLUSIVE) == 0) {
sys/vfs/hammer/hammer_btree.c
667
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_btree.c
668
error = hammer_btree_iterate_reverse(cursor);
sys/vfs/hammer/hammer_btree.c
670
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_btree.c
681
hammer_btree_extract(hammer_cursor_t cursor, int flags)
sys/vfs/hammer/hammer_btree.c
693
if (cursor->node == NULL) {
sys/vfs/hammer/hammer_btree.c
703
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
704
elm = &node->elms[cursor->index];
sys/vfs/hammer/hammer_btree.c
705
cursor->data = NULL;
sys/vfs/hammer/hammer_btree.c
706
hmp = cursor->node->hmp;
sys/vfs/hammer/hammer_btree.c
718
cursor->leaf = &elm->leaf;
sys/vfs/hammer/hammer_btree.c
737
cursor->data = hammer_bread_ext(hmp, data_off, data_len,
sys/vfs/hammer/hammer_btree.c
738
&error, &cursor->data_buffer);
sys/vfs/hammer/hammer_btree.c
752
(cursor->flags & HAMMER_CURSOR_NOSWAPCACHE)) {
sys/vfs/hammer/hammer_btree.c
753
hammer_io_notmeta(cursor->data_buffer);
sys/vfs/hammer/hammer_btree.c
765
hammer_crc_test_leaf(hmp->version, cursor->data, &elm->leaf) == 0) {
sys/vfs/hammer/hammer_btree.c
770
if (cursor->trans->flags & HAMMER_TRANSF_CRCDOM)
sys/vfs/hammer/hammer_btree.c
792
hammer_btree_insert(hammer_cursor_t cursor, hammer_btree_leaf_elm_t elm,
sys/vfs/hammer/hammer_btree.c
800
if ((error = hammer_cursor_upgrade_node(cursor)) != 0)
sys/vfs/hammer/hammer_btree.c
813
hammer_modify_node_all(cursor->trans, cursor->node);
sys/vfs/hammer/hammer_btree.c
814
node = cursor->node->ondisk;
sys/vfs/hammer/hammer_btree.c
815
i = cursor->index;
sys/vfs/hammer/hammer_btree.c
825
hammer_cursor_inserted_element(cursor->node, i);
sys/vfs/hammer/hammer_btree.c
83
static int btree_search(hammer_cursor_t cursor, int flags);
sys/vfs/hammer/hammer_btree.c
839
hammer_modify_node_done(cursor->node);
sys/vfs/hammer/hammer_btree.c
84
static int btree_split_internal(hammer_cursor_t cursor);
sys/vfs/hammer/hammer_btree.c
844
KKASSERT(hammer_btree_cmp(cursor->left_bound, &elm->base) <= 0);
sys/vfs/hammer/hammer_btree.c
845
KKASSERT(hammer_btree_cmp(cursor->right_bound, &elm->base) > 0);
sys/vfs/hammer/hammer_btree.c
85
static int btree_split_leaf(hammer_cursor_t cursor);
sys/vfs/hammer/hammer_btree.c
86
static int btree_remove(hammer_cursor_t cursor, int *ndelete);
sys/vfs/hammer/hammer_btree.c
876
hammer_btree_delete(hammer_cursor_t cursor, int *ndelete)
sys/vfs/hammer/hammer_btree.c
88
static int hammer_btree_mirror_propagate(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_btree.c
884
KKASSERT (cursor->trans->sync_lock_refs > 0);
sys/vfs/hammer/hammer_btree.c
887
if ((error = hammer_cursor_upgrade(cursor)) != 0)
sys/vfs/hammer/hammer_btree.c
896
node = cursor->node;
sys/vfs/hammer/hammer_btree.c
898
i = cursor->index;
sys/vfs/hammer/hammer_btree.c
902
hammer_modify_node_all(cursor->trans, node);
sys/vfs/hammer/hammer_btree.c
915
parent = cursor->parent;
sys/vfs/hammer/hammer_btree.c
92
static void hammer_cursor_mirror_filter(hammer_cursor_t cursor);
sys/vfs/hammer/hammer_btree.c
93
static __inline void hammer_debug_btree_elm(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_btree.c
931
KKASSERT(cursor->index <= ondisk->count);
sys/vfs/hammer/hammer_btree.c
933
error = btree_remove(cursor, ndelete);
sys/vfs/hammer/hammer_btree.c
939
KKASSERT(cursor->parent == NULL ||
sys/vfs/hammer/hammer_btree.c
940
cursor->parent_index < cursor->parent->ondisk->count);
sys/vfs/hammer/hammer_btree.c
95
static __inline void hammer_debug_btree_parent(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_btree.c
980
btree_search(hammer_cursor_t cursor, int flags)
sys/vfs/hammer/hammer_btree.c
990
flags |= cursor->flags;
sys/vfs/hammer/hammer_btree.c
994
hammer_debug_btree_elm(cursor,
sys/vfs/hammer/hammer_btree.c
995
(hammer_btree_elm_t)&cursor->key_beg,
sys/vfs/hammer/hammer_btree.c
997
if (cursor->parent)
sys/vfs/hammer/hammer_btree.c
998
hammer_debug_btree_parent(cursor, "SEARCHP");
sys/vfs/hammer/hammer_cursor.c
1018
hammer_cursor_t cursor;
sys/vfs/hammer/hammer_cursor.c
1028
TAILQ_FOREACH(cursor, &onode->cursor_list, deadlk_entry) {
sys/vfs/hammer/hammer_cursor.c
1029
KKASSERT(cursor->node == onode);
sys/vfs/hammer/hammer_cursor.c
1030
if (cursor->index != oindex)
sys/vfs/hammer/hammer_cursor.c
1032
TAILQ_REMOVE(&onode->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
1033
TAILQ_INSERT_TAIL(&nnode->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
1034
if (cursor->leaf == &ondisk->elms[oindex].leaf)
sys/vfs/hammer/hammer_cursor.c
1035
cursor->leaf = &nndisk->elms[nindex].leaf;
sys/vfs/hammer/hammer_cursor.c
1036
cursor->node = nnode;
sys/vfs/hammer/hammer_cursor.c
1037
cursor->index = nindex;
sys/vfs/hammer/hammer_cursor.c
1058
TAILQ_FOREACH(cursor, &oparent->cursor_list, deadlk_entry) {
sys/vfs/hammer/hammer_cursor.c
1059
KKASSERT(cursor->node == oparent);
sys/vfs/hammer/hammer_cursor.c
1060
if (cursor->index != pindex)
sys/vfs/hammer/hammer_cursor.c
1067
TAILQ_REMOVE(&oparent->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
1068
TAILQ_INSERT_TAIL(&nnode->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
1069
if (cursor->leaf == &ondisk->elms[oindex].leaf)
sys/vfs/hammer/hammer_cursor.c
1070
cursor->leaf = &nndisk->elms[nindex].leaf;
sys/vfs/hammer/hammer_cursor.c
1071
cursor->node = nnode;
sys/vfs/hammer/hammer_cursor.c
1072
cursor->index = nindex;
sys/vfs/hammer/hammer_cursor.c
1073
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_cursor.c
1092
hammer_cursor_t cursor;
sys/vfs/hammer/hammer_cursor.c
1095
TAILQ_FOREACH(cursor, &node->cursor_list, deadlk_entry) {
sys/vfs/hammer/hammer_cursor.c
1096
KKASSERT(cursor->node == node);
sys/vfs/hammer/hammer_cursor.c
1097
if (cursor->parent == oparent) {
sys/vfs/hammer/hammer_cursor.c
1098
cursor->parent = nparent;
sys/vfs/hammer/hammer_cursor.c
1099
cursor->parent_index = nindex;
sys/vfs/hammer/hammer_cursor.c
1115
hammer_cursor_t cursor;
sys/vfs/hammer/hammer_cursor.c
1120
TAILQ_FOREACH(cursor, &node->cursor_list, deadlk_entry) {
sys/vfs/hammer/hammer_cursor.c
1121
KKASSERT(cursor->node == node);
sys/vfs/hammer/hammer_cursor.c
1122
if (cursor->index == index) {
sys/vfs/hammer/hammer_cursor.c
1123
cursor->flags |= HAMMER_CURSOR_TRACKED_RIPOUT;
sys/vfs/hammer/hammer_cursor.c
1124
if (cursor->leaf == &ondisk->elms[cursor->index].leaf)
sys/vfs/hammer/hammer_cursor.c
1125
cursor->leaf = NULL;
sys/vfs/hammer/hammer_cursor.c
1126
} else if (cursor->index > index) {
sys/vfs/hammer/hammer_cursor.c
1127
if (cursor->leaf == &ondisk->elms[cursor->index].leaf)
sys/vfs/hammer/hammer_cursor.c
1128
cursor->leaf = &ondisk->elms[cursor->index - 1].leaf;
sys/vfs/hammer/hammer_cursor.c
1129
--cursor->index;
sys/vfs/hammer/hammer_cursor.c
1142
hammer_cursor_t cursor;
sys/vfs/hammer/hammer_cursor.c
1147
TAILQ_FOREACH(cursor, &node->cursor_list, deadlk_entry) {
sys/vfs/hammer/hammer_cursor.c
1148
KKASSERT(cursor->node == node);
sys/vfs/hammer/hammer_cursor.c
1149
if (cursor->index >= index) {
sys/vfs/hammer/hammer_cursor.c
1150
if (cursor->leaf == &ondisk->elms[cursor->index].leaf)
sys/vfs/hammer/hammer_cursor.c
1151
cursor->leaf = &ondisk->elms[cursor->index + 1].leaf;
sys/vfs/hammer/hammer_cursor.c
1152
++cursor->index;
sys/vfs/hammer/hammer_cursor.c
1165
hammer_cursor_invalidate_cache(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
1167
if (cursor->data_buffer) {
sys/vfs/hammer/hammer_cursor.c
1168
hammer_rel_buffer(cursor->data_buffer, 0);
sys/vfs/hammer/hammer_cursor.c
1169
cursor->data_buffer = NULL;
sys/vfs/hammer/hammer_cursor.c
117
if ((cursor->ip = ip) != NULL) {
sys/vfs/hammer/hammer_cursor.c
1170
cursor->data = NULL;
sys/vfs/hammer/hammer_cursor.c
172
cursor->trans->type != HAMMER_TRANS_FLS) {
sys/vfs/hammer/hammer_cursor.c
199
cursor->node = node;
sys/vfs/hammer/hammer_cursor.c
201
error = hammer_load_cursor_parent(cursor, 0);
sys/vfs/hammer/hammer_cursor.c
212
hammer_normalize_cursor(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
214
if (cursor->node == NULL) {
sys/vfs/hammer/hammer_cursor.c
215
KKASSERT(cursor->parent != NULL);
sys/vfs/hammer/hammer_cursor.c
216
hammer_cursor_up(cursor);
sys/vfs/hammer/hammer_cursor.c
226
hammer_done_cursor(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
230
KKASSERT((cursor->flags & HAMMER_CURSOR_TRACKED) == 0);
sys/vfs/hammer/hammer_cursor.c
231
if (cursor->parent) {
sys/vfs/hammer/hammer_cursor.c
232
hammer_unlock(&cursor->parent->lock);
sys/vfs/hammer/hammer_cursor.c
233
hammer_rel_node(cursor->parent);
sys/vfs/hammer/hammer_cursor.c
234
cursor->parent = NULL;
sys/vfs/hammer/hammer_cursor.c
236
if (cursor->node) {
sys/vfs/hammer/hammer_cursor.c
237
hammer_unlock(&cursor->node->lock);
sys/vfs/hammer/hammer_cursor.c
238
hammer_rel_node(cursor->node);
sys/vfs/hammer/hammer_cursor.c
239
cursor->node = NULL;
sys/vfs/hammer/hammer_cursor.c
241
if (cursor->data_buffer) {
sys/vfs/hammer/hammer_cursor.c
242
hammer_rel_buffer(cursor->data_buffer, 0);
sys/vfs/hammer/hammer_cursor.c
243
cursor->data_buffer = NULL;
sys/vfs/hammer/hammer_cursor.c
245
if ((ip = cursor->ip) != NULL) {
sys/vfs/hammer/hammer_cursor.c
249
cursor->ip = NULL;
sys/vfs/hammer/hammer_cursor.c
251
if (cursor->iprec) {
sys/vfs/hammer/hammer_cursor.c
252
hammer_rel_mem_record(cursor->iprec);
sys/vfs/hammer/hammer_cursor.c
253
cursor->iprec = NULL;
sys/vfs/hammer/hammer_cursor.c
265
if (cursor->deadlk_node) {
sys/vfs/hammer/hammer_cursor.c
267
if (ip && cursor->trans->type == HAMMER_TRANS_FLS)
sys/vfs/hammer/hammer_cursor.c
269
++cursor->deadlk_node->cursor_exclreq_count;
sys/vfs/hammer/hammer_cursor.c
271
hammer_lock_ex_ident(&cursor->deadlk_node->lock, "hmrdlk");
sys/vfs/hammer/hammer_cursor.c
272
hammer_unlock(&cursor->deadlk_node->lock);
sys/vfs/hammer/hammer_cursor.c
274
if (--cursor->deadlk_node->cursor_exclreq_count == 0)
sys/vfs/hammer/hammer_cursor.c
275
wakeup(&cursor->deadlk_node->cursor_exclreq_count);
sys/vfs/hammer/hammer_cursor.c
276
if (ip && cursor->trans->type == HAMMER_TRANS_FLS) {
sys/vfs/hammer/hammer_cursor.c
281
hammer_rel_node(cursor->deadlk_node);
sys/vfs/hammer/hammer_cursor.c
282
cursor->deadlk_node = NULL;
sys/vfs/hammer/hammer_cursor.c
284
if (cursor->deadlk_rec) {
sys/vfs/hammer/hammer_cursor.c
285
hammer_wait_mem_record_ident(cursor->deadlk_rec, "hmmdlr");
sys/vfs/hammer/hammer_cursor.c
286
hammer_rel_mem_record(cursor->deadlk_rec);
sys/vfs/hammer/hammer_cursor.c
287
cursor->deadlk_rec = NULL;
sys/vfs/hammer/hammer_cursor.c
290
cursor->data = NULL;
sys/vfs/hammer/hammer_cursor.c
291
cursor->leaf = NULL;
sys/vfs/hammer/hammer_cursor.c
292
cursor->left_bound = NULL;
sys/vfs/hammer/hammer_cursor.c
293
cursor->right_bound = NULL;
sys/vfs/hammer/hammer_cursor.c
294
cursor->trans = NULL;
sys/vfs/hammer/hammer_cursor.c
312
hammer_cursor_upgrade(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
316
if (cursor->parent) {
sys/vfs/hammer/hammer_cursor.c
317
error = hammer_lock_upgrade(&cursor->parent->lock, 1);
sys/vfs/hammer/hammer_cursor.c
318
if (error && cursor->deadlk_node == NULL) {
sys/vfs/hammer/hammer_cursor.c
319
cursor->deadlk_node = cursor->parent;
sys/vfs/hammer/hammer_cursor.c
320
hammer_ref_node(cursor->deadlk_node);
sys/vfs/hammer/hammer_cursor.c
326
error = hammer_lock_upgrade(&cursor->node->lock, 1);
sys/vfs/hammer/hammer_cursor.c
327
if (error && cursor->deadlk_node == NULL) {
sys/vfs/hammer/hammer_cursor.c
328
cursor->deadlk_node = cursor->node;
sys/vfs/hammer/hammer_cursor.c
329
hammer_ref_node(cursor->deadlk_node);
sys/vfs/hammer/hammer_cursor.c
333
error = hammer_lock_upgrade(&cursor->node->lock, 1);
sys/vfs/hammer/hammer_cursor.c
334
if (error && cursor->deadlk_node == NULL) {
sys/vfs/hammer/hammer_cursor.c
335
cursor->deadlk_node = cursor->node;
sys/vfs/hammer/hammer_cursor.c
336
hammer_ref_node(cursor->deadlk_node);
sys/vfs/hammer/hammer_cursor.c
337
} else if (error == 0 && cursor->parent) {
sys/vfs/hammer/hammer_cursor.c
338
error = hammer_lock_upgrade(&cursor->parent->lock, 1);
sys/vfs/hammer/hammer_cursor.c
339
if (error && cursor->deadlk_node == NULL) {
sys/vfs/hammer/hammer_cursor.c
340
cursor->deadlk_node = cursor->parent;
sys/vfs/hammer/hammer_cursor.c
341
hammer_ref_node(cursor->deadlk_node);
sys/vfs/hammer/hammer_cursor.c
349
hammer_cursor_upgrade_node(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
353
error = hammer_lock_upgrade(&cursor->node->lock, 1);
sys/vfs/hammer/hammer_cursor.c
354
if (error && cursor->deadlk_node == NULL) {
sys/vfs/hammer/hammer_cursor.c
355
cursor->deadlk_node = cursor->node;
sys/vfs/hammer/hammer_cursor.c
356
hammer_ref_node(cursor->deadlk_node);
sys/vfs/hammer/hammer_cursor.c
365
hammer_cursor_downgrade(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
367
if (hammer_lock_excl_owned(&cursor->node->lock, curthread))
sys/vfs/hammer/hammer_cursor.c
368
hammer_lock_downgrade(&cursor->node->lock, 1);
sys/vfs/hammer/hammer_cursor.c
369
if (cursor->parent &&
sys/vfs/hammer/hammer_cursor.c
370
hammer_lock_excl_owned(&cursor->parent->lock, curthread)) {
sys/vfs/hammer/hammer_cursor.c
371
hammer_lock_downgrade(&cursor->parent->lock, 1);
sys/vfs/hammer/hammer_cursor.c
40
static int hammer_load_cursor_parent(hammer_cursor_t cursor, int try_exclusive);
sys/vfs/hammer/hammer_cursor.c
458
hammer_cursor_seek(hammer_cursor_t cursor, hammer_node_t node, int index)
sys/vfs/hammer/hammer_cursor.c
462
hammer_cursor_downgrade(cursor);
sys/vfs/hammer/hammer_cursor.c
465
if (cursor->node != node) {
sys/vfs/hammer/hammer_cursor.c
466
hammer_unlock(&cursor->node->lock);
sys/vfs/hammer/hammer_cursor.c
467
hammer_rel_node(cursor->node);
sys/vfs/hammer/hammer_cursor.c
468
cursor->node = node;
sys/vfs/hammer/hammer_cursor.c
47
hammer_init_cursor(hammer_transaction_t trans, hammer_cursor_t cursor,
sys/vfs/hammer/hammer_cursor.c
473
if (cursor->parent) {
sys/vfs/hammer/hammer_cursor.c
474
hammer_unlock(&cursor->parent->lock);
sys/vfs/hammer/hammer_cursor.c
475
hammer_rel_node(cursor->parent);
sys/vfs/hammer/hammer_cursor.c
476
cursor->parent = NULL;
sys/vfs/hammer/hammer_cursor.c
477
cursor->parent_index = 0;
sys/vfs/hammer/hammer_cursor.c
479
error = hammer_load_cursor_parent(cursor, 0);
sys/vfs/hammer/hammer_cursor.c
481
cursor->index = index;
sys/vfs/hammer/hammer_cursor.c
490
hammer_load_cursor_parent(hammer_cursor_t cursor, int try_exclusive)
sys/vfs/hammer/hammer_cursor.c
499
hmp = cursor->trans->hmp;
sys/vfs/hammer/hammer_cursor.c
501
if (cursor->node->ondisk->parent) {
sys/vfs/hammer/hammer_cursor.c
502
node = cursor->node;
sys/vfs/hammer/hammer_cursor.c
503
parent = hammer_btree_get_parent(cursor->trans, node,
sys/vfs/hammer/hammer_cursor.c
508
cursor->parent = parent;
sys/vfs/hammer/hammer_cursor.c
509
cursor->parent_index = parent_index;
sys/vfs/hammer/hammer_cursor.c
510
cursor->left_bound = &elm[0].internal.base;
sys/vfs/hammer/hammer_cursor.c
511
cursor->right_bound = &elm[1].internal.base;
sys/vfs/hammer/hammer_cursor.c
514
cursor->parent = NULL;
sys/vfs/hammer/hammer_cursor.c
515
cursor->parent_index = 0;
sys/vfs/hammer/hammer_cursor.c
516
cursor->left_bound = &hmp->root_btree_beg;
sys/vfs/hammer/hammer_cursor.c
517
cursor->right_bound = &hmp->root_btree_end;
sys/vfs/hammer/hammer_cursor.c
528
hammer_cursor_up(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
532
hammer_cursor_downgrade(cursor);
sys/vfs/hammer/hammer_cursor.c
538
if (cursor->parent == NULL)
sys/vfs/hammer/hammer_cursor.c
544
hammer_unlock(&cursor->node->lock);
sys/vfs/hammer/hammer_cursor.c
545
hammer_rel_node(cursor->node);
sys/vfs/hammer/hammer_cursor.c
546
cursor->node = cursor->parent;
sys/vfs/hammer/hammer_cursor.c
547
cursor->index = cursor->parent_index;
sys/vfs/hammer/hammer_cursor.c
548
cursor->parent = NULL;
sys/vfs/hammer/hammer_cursor.c
549
cursor->parent_index = 0;
sys/vfs/hammer/hammer_cursor.c
551
error = hammer_load_cursor_parent(cursor, 0);
sys/vfs/hammer/hammer_cursor.c
56
bzero(cursor, sizeof(*cursor));
sys/vfs/hammer/hammer_cursor.c
565
hammer_cursor_up_locked(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
575
if (cursor->parent == NULL)
sys/vfs/hammer/hammer_cursor.c
578
save = cursor->node;
sys/vfs/hammer/hammer_cursor.c
579
save_index = cursor->index;
sys/vfs/hammer/hammer_cursor.c
58
cursor->trans = trans;
sys/vfs/hammer/hammer_cursor.c
584
cursor->node = cursor->parent;
sys/vfs/hammer/hammer_cursor.c
585
cursor->index = cursor->parent_index;
sys/vfs/hammer/hammer_cursor.c
586
cursor->parent = NULL;
sys/vfs/hammer/hammer_cursor.c
587
cursor->parent_index = 0;
sys/vfs/hammer/hammer_cursor.c
598
error = hammer_load_cursor_parent(cursor, 1);
sys/vfs/hammer/hammer_cursor.c
600
cursor->parent = cursor->node;
sys/vfs/hammer/hammer_cursor.c
601
cursor->parent_index = cursor->index;
sys/vfs/hammer/hammer_cursor.c
602
cursor->node = save;
sys/vfs/hammer/hammer_cursor.c
603
cursor->index = save_index;
sys/vfs/hammer/hammer_cursor.c
615
hammer_cursor_down(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
624
hammer_cursor_downgrade(cursor);
sys/vfs/hammer/hammer_cursor.c
625
node = cursor->node;
sys/vfs/hammer/hammer_cursor.c
626
KKASSERT(cursor->index >= 0 && cursor->index < node->ondisk->count);
sys/vfs/hammer/hammer_cursor.c
627
if (cursor->parent) {
sys/vfs/hammer/hammer_cursor.c
628
hammer_unlock(&cursor->parent->lock);
sys/vfs/hammer/hammer_cursor.c
629
hammer_rel_node(cursor->parent);
sys/vfs/hammer/hammer_cursor.c
631
cursor->parent = node;
sys/vfs/hammer/hammer_cursor.c
632
cursor->parent_index = cursor->index;
sys/vfs/hammer/hammer_cursor.c
633
cursor->node = NULL;
sys/vfs/hammer/hammer_cursor.c
634
cursor->index = 0;
sys/vfs/hammer/hammer_cursor.c
639
elm = &node->ondisk->elms[cursor->parent_index];
sys/vfs/hammer/hammer_cursor.c
646
cursor->left_bound = &elm[0].internal.base;
sys/vfs/hammer/hammer_cursor.c
647
cursor->right_bound = &elm[1].internal.base;
sys/vfs/hammer/hammer_cursor.c
648
node = hammer_get_node(cursor->trans,
sys/vfs/hammer/hammer_cursor.c
654
if (node->ondisk->parent != cursor->parent->node_offset)
sys/vfs/hammer/hammer_cursor.c
658
(intmax_t)cursor->parent->node_offset);
sys/vfs/hammer/hammer_cursor.c
659
KKASSERT(node->ondisk->parent == cursor->parent->node_offset);
sys/vfs/hammer/hammer_cursor.c
677
cursor->trans->type != HAMMER_TRANS_FLS) {
sys/vfs/hammer/hammer_cursor.c
684
cursor->node = node;
sys/vfs/hammer/hammer_cursor.c
685
cursor->index = 0;
sys/vfs/hammer/hammer_cursor.c
709
hammer_unlock_cursor(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
713
KKASSERT((cursor->flags & HAMMER_CURSOR_TRACKED) == 0);
sys/vfs/hammer/hammer_cursor.c
714
KKASSERT(cursor->node);
sys/vfs/hammer/hammer_cursor.c
721
if (cursor->parent) {
sys/vfs/hammer/hammer_cursor.c
722
hammer_unlock(&cursor->parent->lock);
sys/vfs/hammer/hammer_cursor.c
723
hammer_rel_node(cursor->parent);
sys/vfs/hammer/hammer_cursor.c
724
cursor->parent = NULL;
sys/vfs/hammer/hammer_cursor.c
726
node = cursor->node;
sys/vfs/hammer/hammer_cursor.c
727
cursor->flags |= HAMMER_CURSOR_TRACKED;
sys/vfs/hammer/hammer_cursor.c
728
TAILQ_INSERT_TAIL(&node->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
741
hammer_lock_cursor(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
746
KKASSERT(cursor->flags & HAMMER_CURSOR_TRACKED);
sys/vfs/hammer/hammer_cursor.c
752
node = cursor->node;
sys/vfs/hammer/hammer_cursor.c
755
if (cursor->node == node) {
sys/vfs/hammer/hammer_cursor.c
766
TAILQ_REMOVE(&node->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
767
cursor->flags &= ~HAMMER_CURSOR_TRACKED;
sys/vfs/hammer/hammer_cursor.c
774
if (cursor->flags & HAMMER_CURSOR_TRACKED_RIPOUT) {
sys/vfs/hammer/hammer_cursor.c
775
cursor->flags &= ~HAMMER_CURSOR_TRACKED_RIPOUT;
sys/vfs/hammer/hammer_cursor.c
776
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_cursor.c
777
cursor->flags |= HAMMER_CURSOR_RETEST;
sys/vfs/hammer/hammer_cursor.c
779
error = hammer_load_cursor_parent(cursor, 0);
sys/vfs/hammer/hammer_cursor.c
793
hammer_recover_cursor(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_cursor.c
801
hammer_unlock_cursor(cursor);
sys/vfs/hammer/hammer_cursor.c
804
ip = cursor->ip;
sys/vfs/hammer/hammer_cursor.c
806
trans = cursor->trans;
sys/vfs/hammer/hammer_cursor.c
817
if (cursor->deadlk_node) {
sys/vfs/hammer/hammer_cursor.c
821
++cursor->deadlk_node->cursor_exclreq_count;
sys/vfs/hammer/hammer_cursor.c
823
hammer_lock_ex_ident(&cursor->deadlk_node->lock, "hmrdlk");
sys/vfs/hammer/hammer_cursor.c
824
hammer_unlock(&cursor->deadlk_node->lock);
sys/vfs/hammer/hammer_cursor.c
826
if (--cursor->deadlk_node->cursor_exclreq_count == 0)
sys/vfs/hammer/hammer_cursor.c
827
wakeup(&cursor->deadlk_node->cursor_exclreq_count);
sys/vfs/hammer/hammer_cursor.c
833
hammer_rel_node(cursor->deadlk_node);
sys/vfs/hammer/hammer_cursor.c
834
cursor->deadlk_node = NULL;
sys/vfs/hammer/hammer_cursor.c
836
if (cursor->deadlk_rec) {
sys/vfs/hammer/hammer_cursor.c
837
hammer_wait_mem_record_ident(cursor->deadlk_rec, "hmmdlr");
sys/vfs/hammer/hammer_cursor.c
838
hammer_rel_mem_record(cursor->deadlk_rec);
sys/vfs/hammer/hammer_cursor.c
839
cursor->deadlk_rec = NULL;
sys/vfs/hammer/hammer_cursor.c
841
error = hammer_lock_cursor(cursor);
sys/vfs/hammer/hammer_cursor.c
916
hammer_cursor_t cursor;
sys/vfs/hammer/hammer_cursor.c
923
while ((cursor = TAILQ_FIRST(&onode->cursor_list)) != NULL) {
sys/vfs/hammer/hammer_cursor.c
924
TAILQ_REMOVE(&onode->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
925
TAILQ_INSERT_TAIL(&nnode->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
926
KKASSERT(cursor->node == onode);
sys/vfs/hammer/hammer_cursor.c
927
if (cursor->leaf == &ondisk->elms[cursor->index].leaf)
sys/vfs/hammer/hammer_cursor.c
928
cursor->leaf = &nndisk->elms[cursor->index].leaf;
sys/vfs/hammer/hammer_cursor.c
929
cursor->node = nnode;
sys/vfs/hammer/hammer_cursor.c
951
hammer_cursor_t cursor;
sys/vfs/hammer/hammer_cursor.c
957
while ((cursor = TAILQ_FIRST(&node->cursor_list)) != NULL) {
sys/vfs/hammer/hammer_cursor.c
958
KKASSERT(cursor->node == node);
sys/vfs/hammer/hammer_cursor.c
959
KKASSERT(cursor->index == 0);
sys/vfs/hammer/hammer_cursor.c
960
TAILQ_REMOVE(&node->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
961
TAILQ_INSERT_TAIL(&parent->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
962
if (cursor->leaf == &ondisk->elms[cursor->index].leaf)
sys/vfs/hammer/hammer_cursor.c
963
cursor->leaf = NULL;
sys/vfs/hammer/hammer_cursor.c
964
cursor->flags |= HAMMER_CURSOR_TRACKED_RIPOUT;
sys/vfs/hammer/hammer_cursor.c
965
cursor->flags |= HAMMER_CURSOR_ITERATE_CHECK;
sys/vfs/hammer/hammer_cursor.c
966
cursor->node = parent;
sys/vfs/hammer/hammer_cursor.c
967
cursor->index = index;
sys/vfs/hammer/hammer_cursor.c
979
hammer_cursor_t cursor;
sys/vfs/hammer/hammer_cursor.c
987
TAILQ_FOREACH(cursor, &onode->cursor_list, deadlk_entry) {
sys/vfs/hammer/hammer_cursor.c
988
KKASSERT(cursor->node == onode);
sys/vfs/hammer/hammer_cursor.c
989
if (cursor->index < index)
sys/vfs/hammer/hammer_cursor.c
991
TAILQ_REMOVE(&onode->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
992
TAILQ_INSERT_TAIL(&nnode->cursor_list, cursor, deadlk_entry);
sys/vfs/hammer/hammer_cursor.c
993
if (cursor->leaf == &ondisk->elms[cursor->index].leaf)
sys/vfs/hammer/hammer_cursor.c
994
cursor->leaf = &nndisk->elms[cursor->index - index].leaf;
sys/vfs/hammer/hammer_cursor.c
995
cursor->node = nnode;
sys/vfs/hammer/hammer_cursor.c
996
cursor->index -= index;
sys/vfs/hammer/hammer_cursor.h
169
#define hammer_cursor_inmem(cursor) \
sys/vfs/hammer/hammer_cursor.h
170
((cursor)->leaf == &(cursor)->iprec->leaf)
sys/vfs/hammer/hammer_cursor.h
171
#define hammer_cursor_ondisk(cursor) \
sys/vfs/hammer/hammer_cursor.h
172
((cursor)->leaf != &(cursor)->iprec->leaf)
sys/vfs/hammer/hammer_inode.c
1008
hammer_init_cursor(trans, &cursor, (ip ? &ip->cache[1] : NULL), ip);
sys/vfs/hammer/hammer_inode.c
1009
cursor.key_beg.localization = HAMMER_DEF_LOCALIZATION |
sys/vfs/hammer/hammer_inode.c
1011
cursor.key_beg.obj_id = HAMMER_OBJID_ROOT;
sys/vfs/hammer/hammer_inode.c
1012
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_inode.c
1013
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_inode.c
1014
cursor.key_beg.rec_type = HAMMER_RECTYPE_PFS;
sys/vfs/hammer/hammer_inode.c
1015
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_inode.c
1016
cursor.key_beg.key = localization;
sys/vfs/hammer/hammer_inode.c
1017
cursor.asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_inode.c
1018
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_inode.c
1021
*errorp = hammer_ip_lookup(&cursor);
sys/vfs/hammer/hammer_inode.c
1023
*errorp = hammer_btree_lookup(&cursor);
sys/vfs/hammer/hammer_inode.c
1025
*errorp = hammer_ip_resolve_data(&cursor);
sys/vfs/hammer/hammer_inode.c
1027
if (hammer_is_pfs_deleted(&cursor.data->pfsd)) {
sys/vfs/hammer/hammer_inode.c
1030
bytes = cursor.leaf->data_len;
sys/vfs/hammer/hammer_inode.c
1033
bcopy(cursor.data, &pfsm->pfsd, bytes);
sys/vfs/hammer/hammer_inode.c
1037
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_inode.c
1057
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_inode.c
1070
hammer_init_cursor(trans, &cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_inode.c
1071
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_inode.c
1073
cursor.key_beg.obj_id = HAMMER_OBJID_ROOT;
sys/vfs/hammer/hammer_inode.c
1074
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_inode.c
1075
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_inode.c
1076
cursor.key_beg.rec_type = HAMMER_RECTYPE_PFS;
sys/vfs/hammer/hammer_inode.c
1077
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_inode.c
1078
cursor.key_beg.key = pfsm->localization;
sys/vfs/hammer/hammer_inode.c
1079
cursor.asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_inode.c
1080
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_inode.c
1085
error = hammer_ip_lookup(&cursor);
sys/vfs/hammer/hammer_inode.c
1086
if (error == 0 && hammer_cursor_inmem(&cursor)) {
sys/vfs/hammer/hammer_inode.c
1087
record = cursor.iprec;
sys/vfs/hammer/hammer_inode.c
1089
KKASSERT(cursor.deadlk_rec == NULL);
sys/vfs/hammer/hammer_inode.c
1091
cursor.deadlk_rec = record;
sys/vfs/hammer/hammer_inode.c
1115
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_inode.c
1233
hammer_update_inode(hammer_cursor_t cursor, hammer_inode_t ip)
sys/vfs/hammer/hammer_inode.c
1235
hammer_transaction_t trans = cursor->trans;
sys/vfs/hammer/hammer_inode.c
1252
hammer_normalize_cursor(cursor);
sys/vfs/hammer/hammer_inode.c
1253
cursor->key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_inode.c
1255
cursor->key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_inode.c
1256
cursor->key_beg.key = 0;
sys/vfs/hammer/hammer_inode.c
1257
cursor->key_beg.create_tid = 0;
sys/vfs/hammer/hammer_inode.c
1258
cursor->key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_inode.c
1259
cursor->key_beg.rec_type = HAMMER_RECTYPE_INODE;
sys/vfs/hammer/hammer_inode.c
1260
cursor->key_beg.obj_type = 0;
sys/vfs/hammer/hammer_inode.c
1261
cursor->asof = ip->obj_asof;
sys/vfs/hammer/hammer_inode.c
1262
cursor->flags &= ~HAMMER_CURSOR_INITMASK;
sys/vfs/hammer/hammer_inode.c
1263
cursor->flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_inode.c
1264
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_inode.c
1266
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_inode.c
1271
error = hammer_ip_delete_record(cursor, ip, trans->tid);
sys/vfs/hammer/hammer_inode.c
1277
if (cursor->node)
sys/vfs/hammer/hammer_inode.c
1278
hammer_cache_node(&ip->cache[0], cursor->node);
sys/vfs/hammer/hammer_inode.c
1281
hammer_done_cursor(cursor);
sys/vfs/hammer/hammer_inode.c
1282
error = hammer_init_cursor(trans, cursor,
sys/vfs/hammer/hammer_inode.c
1330
error = hammer_ip_sync_record_cursor(cursor, record);
sys/vfs/hammer/hammer_inode.c
1336
hammer_done_cursor(cursor);
sys/vfs/hammer/hammer_inode.c
1337
error = hammer_init_cursor(trans, cursor,
sys/vfs/hammer/hammer_inode.c
1411
hammer_update_itimes(hammer_cursor_t cursor, hammer_inode_t ip)
sys/vfs/hammer/hammer_inode.c
1413
hammer_transaction_t trans = cursor->trans;
sys/vfs/hammer/hammer_inode.c
1422
hammer_normalize_cursor(cursor);
sys/vfs/hammer/hammer_inode.c
1423
cursor->key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_inode.c
1425
cursor->key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_inode.c
1426
cursor->key_beg.key = 0;
sys/vfs/hammer/hammer_inode.c
1427
cursor->key_beg.create_tid = 0;
sys/vfs/hammer/hammer_inode.c
1428
cursor->key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_inode.c
1429
cursor->key_beg.rec_type = HAMMER_RECTYPE_INODE;
sys/vfs/hammer/hammer_inode.c
1430
cursor->key_beg.obj_type = 0;
sys/vfs/hammer/hammer_inode.c
1431
cursor->asof = ip->obj_asof;
sys/vfs/hammer/hammer_inode.c
1432
cursor->flags &= ~HAMMER_CURSOR_INITMASK;
sys/vfs/hammer/hammer_inode.c
1433
cursor->flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_inode.c
1434
cursor->flags |= HAMMER_CURSOR_GET_DATA;
sys/vfs/hammer/hammer_inode.c
1435
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_inode.c
1437
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_inode.c
1439
hammer_cache_node(&ip->cache[0], cursor->node);
sys/vfs/hammer/hammer_inode.c
1446
hammer_modify_buffer(trans, cursor->data_buffer,
sys/vfs/hammer/hammer_inode.c
1447
&cursor->data->inode.mtime,
sys/vfs/hammer/hammer_inode.c
1448
sizeof(cursor->data->inode.atime) +
sys/vfs/hammer/hammer_inode.c
1449
sizeof(cursor->data->inode.mtime));
sys/vfs/hammer/hammer_inode.c
1450
cursor->data->inode.atime = ip->sync_ino_data.atime;
sys/vfs/hammer/hammer_inode.c
1451
cursor->data->inode.mtime = ip->sync_ino_data.mtime;
sys/vfs/hammer/hammer_inode.c
1452
hammer_modify_buffer_done(cursor->data_buffer);
sys/vfs/hammer/hammer_inode.c
1460
hammer_modify_buffer_noundo(trans, cursor->data_buffer);
sys/vfs/hammer/hammer_inode.c
1461
cursor->data->inode.atime = ip->sync_ino_data.atime;
sys/vfs/hammer/hammer_inode.c
1462
hammer_modify_buffer_done(cursor->data_buffer);
sys/vfs/hammer/hammer_inode.c
1468
hammer_done_cursor(cursor);
sys/vfs/hammer/hammer_inode.c
1469
error = hammer_init_cursor(trans, cursor, &ip->cache[0], ip);
sys/vfs/hammer/hammer_inode.c
2710
hammer_cursor_t cursor = data;
sys/vfs/hammer/hammer_inode.c
2711
hammer_transaction_t trans = cursor->trans;
sys/vfs/hammer/hammer_inode.c
2865
error = hammer_ip_sync_record_cursor(cursor, record);
sys/vfs/hammer/hammer_inode.c
2868
hammer_done_cursor(cursor);
sys/vfs/hammer/hammer_inode.c
2869
error = hammer_init_cursor(trans, cursor, &record->ip->cache[0],
sys/vfs/hammer/hammer_inode.c
2893
hammer_unlock_cursor(cursor);
sys/vfs/hammer/hammer_inode.c
2895
hammer_lock_cursor(cursor);
sys/vfs/hammer/hammer_inode.c
2906
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_inode.c
2916
error = hammer_init_cursor(trans, &cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_inode.c
3016
error = hammer_ip_delete_range(&cursor, ip,
sys/vfs/hammer/hammer_inode.c
3068
hammer_sync_record_callback, &cursor);
sys/vfs/hammer/hammer_inode.c
3074
hammer_cache_node(&ip->cache[1], cursor.node);
sys/vfs/hammer/hammer_inode.c
3083
hammer_cursor_downgrade(&cursor);
sys/vfs/hammer/hammer_inode.c
3086
hammer_cursor_seek(&cursor, tmp_node, 0);
sys/vfs/hammer/hammer_inode.c
3107
error = hammer_ip_delete_clean(&cursor, ip, &count1);
sys/vfs/hammer/hammer_inode.c
3216
error = hammer_update_inode(&cursor, ip);
sys/vfs/hammer/hammer_inode.c
3220
error = hammer_update_itimes(&cursor, ip);
sys/vfs/hammer/hammer_inode.c
3224
error = hammer_update_inode(&cursor, ip);
sys/vfs/hammer/hammer_inode.c
3233
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_inode.c
426
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_inode.c
499
hammer_init_cursor(trans, &cursor, cachep, NULL);
sys/vfs/hammer/hammer_inode.c
500
cursor.key_beg.localization = localization | HAMMER_LOCALIZE_INODE;
sys/vfs/hammer/hammer_inode.c
501
cursor.key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_inode.c
502
cursor.key_beg.key = 0;
sys/vfs/hammer/hammer_inode.c
503
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_inode.c
504
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_inode.c
505
cursor.key_beg.rec_type = HAMMER_RECTYPE_INODE;
sys/vfs/hammer/hammer_inode.c
506
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_inode.c
508
cursor.asof = asof;
sys/vfs/hammer/hammer_inode.c
509
cursor.flags = HAMMER_CURSOR_GET_DATA | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_inode.c
511
*errorp = hammer_btree_lookup(&cursor);
sys/vfs/hammer/hammer_inode.c
513
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_inode.c
524
ip->ino_leaf = cursor.node->ondisk->elms[cursor.index].leaf;
sys/vfs/hammer/hammer_inode.c
525
ip->ino_data = cursor.data->inode;
sys/vfs/hammer/hammer_inode.c
539
hammer_cache_node(&ip->cache[0], cursor.node);
sys/vfs/hammer/hammer_inode.c
545
hammer_cache_node(&dip->cache[2], cursor.node);
sys/vfs/hammer/hammer_inode.c
580
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_inode.c
593
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_inode.c
979
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
1000
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
1005
error = hammer_init_cursor(trans, &cursor, &ip->cache[0], NULL);
sys/vfs/hammer/hammer_ioctl.c
1007
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
1020
cursor.key_beg = leaf.base;
sys/vfs/hammer/hammer_ioctl.c
1022
cursor.asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_ioctl.c
1023
cursor.flags |= HAMMER_CURSOR_BACKEND | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_ioctl.c
1025
error = hammer_btree_lookup(&cursor);
sys/vfs/hammer/hammer_ioctl.c
1027
error = hammer_btree_extract_data(&cursor);
sys/vfs/hammer/hammer_ioctl.c
1028
error = hammer_delete_at_cursor(&cursor, HAMMER_DELETE_DESTROY,
sys/vfs/hammer/hammer_ioctl.c
1031
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
1043
cursor.flags &= ~HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_ioctl.c
1044
cursor.key_beg = leaf.base;
sys/vfs/hammer/hammer_ioctl.c
1045
error = hammer_create_at_cursor(&cursor, &leaf,
sys/vfs/hammer/hammer_ioctl.c
1049
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
1054
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
1063
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
1068
error = hammer_init_cursor(trans, &cursor, NULL, NULL);
sys/vfs/hammer/hammer_ioctl.c
1072
cursor.key_beg = data->elm;
sys/vfs/hammer/hammer_ioctl.c
1073
cursor.flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_ioctl.c
1075
error = hammer_btree_lookup(&cursor);
sys/vfs/hammer/hammer_ioctl.c
1077
error = hammer_btree_extract_data(&cursor);
sys/vfs/hammer/hammer_ioctl.c
1079
data->leaf = *cursor.leaf;
sys/vfs/hammer/hammer_ioctl.c
1080
bytes = cursor.leaf->data_len;
sys/vfs/hammer/hammer_ioctl.c
1083
error = copyout(cursor.data, data->ubuf, bytes);
sys/vfs/hammer/hammer_ioctl.c
1088
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
287
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
318
error = hammer_init_cursor(trans, &cursor, &ip->cache[0], NULL);
sys/vfs/hammer/hammer_ioctl.c
320
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
324
cursor.key_beg.obj_id = hist->obj_id;
sys/vfs/hammer/hammer_ioctl.c
325
cursor.key_beg.create_tid = hist->beg_tid;
sys/vfs/hammer/hammer_ioctl.c
326
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_ioctl.c
327
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_ioctl.c
328
if (cursor.key_beg.create_tid == HAMMER_MIN_TID)
sys/vfs/hammer/hammer_ioctl.c
329
cursor.key_beg.create_tid = 1;
sys/vfs/hammer/hammer_ioctl.c
331
cursor.key_end.obj_id = hist->obj_id;
sys/vfs/hammer/hammer_ioctl.c
332
cursor.key_end.create_tid = hist->end_tid;
sys/vfs/hammer/hammer_ioctl.c
333
cursor.key_end.delete_tid = 0;
sys/vfs/hammer/hammer_ioctl.c
334
cursor.key_end.obj_type = 0;
sys/vfs/hammer/hammer_ioctl.c
336
cursor.flags |= HAMMER_CURSOR_END_EXCLUSIVE;
sys/vfs/hammer/hammer_ioctl.c
345
cursor.key_beg.key = hist->key;
sys/vfs/hammer/hammer_ioctl.c
346
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_ioctl.c
347
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_ioctl.c
349
cursor.key_end.localization = ip->obj_localization |
sys/vfs/hammer/hammer_ioctl.c
354
++cursor.key_beg.key;
sys/vfs/hammer/hammer_ioctl.c
355
cursor.key_beg.rec_type = HAMMER_RECTYPE_DATA;
sys/vfs/hammer/hammer_ioctl.c
358
cursor.key_beg.rec_type = HAMMER_RECTYPE_DIRENTRY;
sys/vfs/hammer/hammer_ioctl.c
359
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_ioctl.c
361
cursor.key_end.localization = ip->obj_localization |
sys/vfs/hammer/hammer_ioctl.c
365
cursor.key_beg.rec_type = HAMMER_RECTYPE_DB;
sys/vfs/hammer/hammer_ioctl.c
371
cursor.key_end.rec_type = cursor.key_beg.rec_type;
sys/vfs/hammer/hammer_ioctl.c
376
cursor.key_beg.key = 0;
sys/vfs/hammer/hammer_ioctl.c
377
cursor.key_end.key = 0;
sys/vfs/hammer/hammer_ioctl.c
378
cursor.key_beg.rec_type = HAMMER_RECTYPE_INODE;
sys/vfs/hammer/hammer_ioctl.c
379
cursor.key_end.rec_type = HAMMER_RECTYPE_INODE;
sys/vfs/hammer/hammer_ioctl.c
380
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_ioctl.c
382
cursor.key_end.localization = ip->obj_localization |
sys/vfs/hammer/hammer_ioctl.c
386
error = hammer_btree_first(&cursor);
sys/vfs/hammer/hammer_ioctl.c
388
elm = &cursor.node->ondisk->elms[cursor.index];
sys/vfs/hammer/hammer_ioctl.c
396
error = hammer_btree_iterate(&cursor);
sys/vfs/hammer/hammer_ioctl.c
402
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
611
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
635
error = hammer_init_cursor(trans, &cursor, NULL, NULL);
sys/vfs/hammer/hammer_ioctl.c
659
hammer_modify_volume_field(cursor.trans, volume, vol_version);
sys/vfs/hammer/hammer_ioctl.c
668
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
716
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
733
error = hammer_init_cursor(trans, &cursor, &ip->cache[0], NULL);
sys/vfs/hammer/hammer_ioctl.c
735
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
739
cursor.asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_ioctl.c
740
cursor.flags |= HAMMER_CURSOR_BACKEND | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_ioctl.c
752
cursor.key_beg = leaf.base;
sys/vfs/hammer/hammer_ioctl.c
753
error = hammer_btree_lookup(&cursor);
sys/vfs/hammer/hammer_ioctl.c
764
cursor.flags &= ~HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_ioctl.c
765
cursor.key_beg = leaf.base;
sys/vfs/hammer/hammer_ioctl.c
766
error = hammer_create_at_cursor(&cursor, &leaf,
sys/vfs/hammer/hammer_ioctl.c
770
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
773
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_ioctl.c
779
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
793
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
810
error = hammer_init_cursor(trans, &cursor, &ip->cache[0], NULL);
sys/vfs/hammer/hammer_ioctl.c
812
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
816
cursor.key_beg.obj_id = HAMMER_OBJID_ROOT;
sys/vfs/hammer/hammer_ioctl.c
817
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_ioctl.c
818
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_ioctl.c
819
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_ioctl.c
820
cursor.key_beg.rec_type = HAMMER_RECTYPE_SNAPSHOT;
sys/vfs/hammer/hammer_ioctl.c
821
cursor.key_beg.localization = ip->obj_localization | HAMMER_LOCALIZE_INODE;
sys/vfs/hammer/hammer_ioctl.c
822
cursor.asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_ioctl.c
823
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_ioctl.c
826
cursor.key_beg.key = (int64_t)snap->snaps[snap->index].tid;
sys/vfs/hammer/hammer_ioctl.c
827
error = hammer_btree_lookup(&cursor);
sys/vfs/hammer/hammer_ioctl.c
830
error = hammer_btree_extract_leaf(&cursor);
sys/vfs/hammer/hammer_ioctl.c
833
error = hammer_delete_at_cursor(&cursor, HAMMER_DELETE_DESTROY,
sys/vfs/hammer/hammer_ioctl.c
836
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
844
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
864
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
879
error = hammer_init_cursor(trans, &cursor, &ip->cache[0], NULL);
sys/vfs/hammer/hammer_ioctl.c
881
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
885
cursor.key_beg.obj_id = HAMMER_OBJID_ROOT;
sys/vfs/hammer/hammer_ioctl.c
886
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_ioctl.c
887
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_ioctl.c
888
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_ioctl.c
889
cursor.key_beg.rec_type = HAMMER_RECTYPE_SNAPSHOT;
sys/vfs/hammer/hammer_ioctl.c
890
cursor.key_beg.localization = ip->obj_localization | HAMMER_LOCALIZE_INODE;
sys/vfs/hammer/hammer_ioctl.c
892
cursor.key_beg.key = HAMMER_MIN_KEY;
sys/vfs/hammer/hammer_ioctl.c
894
cursor.key_beg.key = (int64_t)snap->snaps[snap->count - 1].tid + 1;
sys/vfs/hammer/hammer_ioctl.c
896
cursor.key_end = cursor.key_beg;
sys/vfs/hammer/hammer_ioctl.c
897
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_ioctl.c
898
cursor.asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_ioctl.c
899
cursor.flags |= HAMMER_CURSOR_END_EXCLUSIVE | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_ioctl.c
903
error = hammer_btree_first(&cursor);
sys/vfs/hammer/hammer_ioctl.c
905
error = hammer_btree_extract_leaf(&cursor);
sys/vfs/hammer/hammer_ioctl.c
908
if (cursor.leaf->base.rec_type == HAMMER_RECTYPE_SNAPSHOT) {
sys/vfs/hammer/hammer_ioctl.c
909
error = hammer_btree_extract_data(&cursor);
sys/vfs/hammer/hammer_ioctl.c
910
snap->snaps[snap->count] = cursor.data->snap;
sys/vfs/hammer/hammer_ioctl.c
920
if (cursor.data->snap.tid !=
sys/vfs/hammer/hammer_ioctl.c
921
(hammer_tid_t)cursor.leaf->base.key) {
sys/vfs/hammer/hammer_ioctl.c
924
cursor.key_beg.localization,
sys/vfs/hammer/hammer_ioctl.c
925
(uintmax_t)cursor.data->snap.tid,
sys/vfs/hammer/hammer_ioctl.c
926
cursor.leaf->base.key);
sys/vfs/hammer/hammer_ioctl.c
931
cursor.leaf->base.key;
sys/vfs/hammer/hammer_ioctl.c
935
error = hammer_btree_iterate(&cursor);
sys/vfs/hammer/hammer_ioctl.c
943
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
956
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_ioctl.c
959
error = hammer_init_cursor(trans, &cursor, &ip->cache[0], NULL);
sys/vfs/hammer/hammer_ioctl.c
961
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_ioctl.c
965
cursor.key_beg.obj_id = HAMMER_OBJID_ROOT;
sys/vfs/hammer/hammer_ioctl.c
966
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_ioctl.c
967
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_ioctl.c
968
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_ioctl.c
969
cursor.key_beg.rec_type = HAMMER_RECTYPE_CONFIG;
sys/vfs/hammer/hammer_ioctl.c
970
cursor.key_beg.localization = ip->obj_localization | HAMMER_LOCALIZE_INODE;
sys/vfs/hammer/hammer_ioctl.c
971
cursor.key_beg.key = 0; /* config space page 0 */
sys/vfs/hammer/hammer_ioctl.c
973
cursor.asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_ioctl.c
974
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_ioctl.c
976
error = hammer_btree_lookup(&cursor);
sys/vfs/hammer/hammer_ioctl.c
978
error = hammer_btree_extract_data(&cursor);
sys/vfs/hammer/hammer_ioctl.c
980
config->config = cursor.data->config;
sys/vfs/hammer/hammer_ioctl.c
984
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
111
error = hammer_init_cursor(trans, &cursor, NULL, NULL);
sys/vfs/hammer/hammer_mirror.c
113
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
116
cursor.key_beg = mirror->key_cur;
sys/vfs/hammer/hammer_mirror.c
117
cursor.key_end = mirror->key_end;
sys/vfs/hammer/hammer_mirror.c
118
cursor.key_end.localization &= HAMMER_LOCALIZE_MASK;
sys/vfs/hammer/hammer_mirror.c
119
cursor.key_end.localization |= localization;
sys/vfs/hammer/hammer_mirror.c
121
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_mirror.c
122
cursor.flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_mirror.c
129
cursor.flags |= HAMMER_CURSOR_MIRROR_FILTERED;
sys/vfs/hammer/hammer_mirror.c
130
cursor.cmirror = &cmirror;
sys/vfs/hammer/hammer_mirror.c
133
error = hammer_btree_first(&cursor);
sys/vfs/hammer/hammer_mirror.c
150
if (cursor.node->ondisk->type == HAMMER_BTREE_TYPE_INTERNAL) {
sys/vfs/hammer/hammer_mirror.c
184
KKASSERT(cursor.node->ondisk->type == HAMMER_BTREE_TYPE_LEAF);
sys/vfs/hammer/hammer_mirror.c
185
elm = &cursor.node->ondisk->elms[cursor.index].leaf;
sys/vfs/hammer/hammer_mirror.c
250
error = hammer_btree_extract_data(&cursor);
sys/vfs/hammer/hammer_mirror.c
280
rec_crc = crc32_ext(cursor.data, data_len, rec_crc);
sys/vfs/hammer/hammer_mirror.c
284
error = copyout(cursor.data, uptr + sizeof(mrec.rec),
sys/vfs/hammer/hammer_mirror.c
299
cursor.flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_mirror.c
301
cursor.flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_mirror.c
302
error = hammer_btree_iterate(&cursor);
sys/vfs/hammer/hammer_mirror.c
309
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
334
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_mirror.c
362
error = hammer_init_cursor(trans, &cursor, NULL, NULL);
sys/vfs/hammer/hammer_mirror.c
364
cursor.key_beg = mirror->key_cur;
sys/vfs/hammer/hammer_mirror.c
365
cursor.key_end = mirror->key_end;
sys/vfs/hammer/hammer_mirror.c
366
cursor.flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_mirror.c
367
error = hammer_btree_first(&cursor);
sys/vfs/hammer/hammer_mirror.c
369
cursor.flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_mirror.c
387
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
389
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
402
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
404
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
41
static int hammer_mirror_check(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
43
static int hammer_mirror_update(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
434
error = hammer_ioc_mirror_write_skip(&cursor, &mrec.skip, mirror, localization);
sys/vfs/hammer/hammer_mirror.c
440
error = hammer_ioc_mirror_write_rec(&cursor, &mrec.rec, mirror, localization, uptr + sizeof(mrec.rec));
sys/vfs/hammer/hammer_mirror.c
45
static int hammer_ioc_mirror_write_rec(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
457
error = hammer_ioc_mirror_write_pass(&cursor, &mrec.rec, mirror, localization);
sys/vfs/hammer/hammer_mirror.c
471
hammer_recover_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
472
error = hammer_cursor_upgrade(&cursor);
sys/vfs/hammer/hammer_mirror.c
484
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_mirror.c
50
static int hammer_ioc_mirror_write_pass(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
511
hammer_ioc_mirror_write_skip(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
531
cursor->key_end = mrec->skip_beg;
sys/vfs/hammer/hammer_mirror.c
532
cursor->flags &= ~HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_mirror.c
533
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_mirror.c
534
error = hammer_mirror_delete_to(cursor, mirror);
sys/vfs/hammer/hammer_mirror.c
54
static int hammer_ioc_mirror_write_skip(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
547
cursor->key_beg = mrec->skip_end;
sys/vfs/hammer/hammer_mirror.c
548
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_mirror.c
549
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_mirror.c
567
hammer_ioc_mirror_write_rec(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
58
static int hammer_mirror_delete_to(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
592
cursor->key_end = mrec->leaf.base;
sys/vfs/hammer/hammer_mirror.c
593
cursor->flags &= ~HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_mirror.c
594
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_mirror.c
595
error = hammer_mirror_delete_to(cursor, mirror);
sys/vfs/hammer/hammer_mirror.c
619
cursor->key_beg = mrec->leaf.base;
sys/vfs/hammer/hammer_mirror.c
620
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_mirror.c
621
cursor->flags &= ~HAMMER_CURSOR_INSERT;
sys/vfs/hammer/hammer_mirror.c
622
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_mirror.c
625
if (error == 0 && hammer_mirror_check(cursor, mrec)) {
sys/vfs/hammer/hammer_mirror.c
626
error = hammer_mirror_update(cursor, mrec);
sys/vfs/hammer/hammer_mirror.c
630
cursor, &mrec->leaf,
sys/vfs/hammer/hammer_mirror.c
655
hammer_ioc_mirror_write_pass(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
673
cursor->key_end = mrec->leaf.base;
sys/vfs/hammer/hammer_mirror.c
674
cursor->flags &= ~HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_mirror.c
675
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_mirror.c
676
error = hammer_mirror_delete_to(cursor, mirror);
sys/vfs/hammer/hammer_mirror.c
691
cursor->key_beg = mrec->leaf.base;
sys/vfs/hammer/hammer_mirror.c
692
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_mirror.c
693
cursor->flags &= ~HAMMER_CURSOR_INSERT;
sys/vfs/hammer/hammer_mirror.c
694
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_mirror.c
696
if (hammer_mirror_check(cursor, mrec))
sys/vfs/hammer/hammer_mirror.c
697
error = hammer_mirror_update(cursor, mrec);
sys/vfs/hammer/hammer_mirror.c
698
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_mirror.c
700
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_mirror.c
728
hammer_mirror_delete_to(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
734
error = hammer_btree_iterate(cursor);
sys/vfs/hammer/hammer_mirror.c
736
elm = &cursor->node->ondisk->elms[cursor->index].leaf;
sys/vfs/hammer/hammer_mirror.c
738
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_mirror.c
744
error = hammer_btree_iterate(cursor);
sys/vfs/hammer/hammer_mirror.c
754
error = hammer_delete_at_cursor(cursor,
sys/vfs/hammer/hammer_mirror.c
761
error = hammer_btree_iterate(cursor);
sys/vfs/hammer/hammer_mirror.c
77
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_mirror.c
777
hammer_mirror_check(hammer_cursor_t cursor, struct hammer_ioc_mrecord_rec *mrec)
sys/vfs/hammer/hammer_mirror.c
779
hammer_btree_leaf_elm_t leaf = cursor->leaf;
sys/vfs/hammer/hammer_mirror.c
814
hammer_mirror_update(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_mirror.c
828
error = hammer_delete_at_cursor(cursor, HAMMER_DELETE_ADJUST,
sys/vfs/hammer/hammer_mirror.c
832
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1120
hammer_ip_sync_record_cursor(hammer_cursor_t cursor, hammer_record_t record)
sys/vfs/hammer/hammer_object.c
1122
hammer_transaction_t trans = cursor->trans;
sys/vfs/hammer/hammer_object.c
1167
cursor, record->ip,
sys/vfs/hammer/hammer_object.c
1179
error = hammer_delete_general(cursor, record->ip, &record->leaf);
sys/vfs/hammer/hammer_object.c
1187
hammer_normalize_cursor(cursor);
sys/vfs/hammer/hammer_object.c
1188
cursor->key_beg = record->leaf.base;
sys/vfs/hammer/hammer_object.c
1189
cursor->flags &= ~HAMMER_CURSOR_INITMASK;
sys/vfs/hammer/hammer_object.c
1190
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_object.c
1191
cursor->flags &= ~HAMMER_CURSOR_INSERT;
sys/vfs/hammer/hammer_object.c
1204
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_object.c
1206
KKASSERT(cursor->iprec == NULL);
sys/vfs/hammer/hammer_object.c
1207
error = hammer_ip_delete_record(cursor, record->ip,
sys/vfs/hammer/hammer_object.c
1227
cursor->flags |= HAMMER_CURSOR_INSERT;
sys/vfs/hammer/hammer_object.c
1228
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_object.c
1267
&cursor->data_buffer,
sys/vfs/hammer/hammer_object.c
1272
hammer_modify_buffer_noundo(trans, cursor->data_buffer);
sys/vfs/hammer/hammer_object.c
1274
hammer_modify_buffer_done(cursor->data_buffer);
sys/vfs/hammer/hammer_object.c
1283
error = hammer_btree_insert(cursor, &record->leaf, &doprop);
sys/vfs/hammer/hammer_object.c
1287
(intmax_t)cursor->node->node_offset,
sys/vfs/hammer/hammer_object.c
1288
cursor->index,
sys/vfs/hammer/hammer_object.c
1306
hammer_btree_do_propagation(cursor, &record->leaf);
sys/vfs/hammer/hammer_object.c
1399
hammer_ip_lookup(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_object.c
1407
KKASSERT(cursor->ip);
sys/vfs/hammer/hammer_object.c
1408
error = hammer_mem_lookup(cursor);
sys/vfs/hammer/hammer_object.c
1410
cursor->leaf = &cursor->iprec->leaf;
sys/vfs/hammer/hammer_object.c
1419
if ((cursor->ip->flags & (HAMMER_INODE_ONDISK|HAMMER_INODE_DONDISK)) == 0)
sys/vfs/hammer/hammer_object.c
1421
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_object.c
1423
error = hammer_btree_extract_leaf(cursor);
sys/vfs/hammer/hammer_object.c
1436
_hammer_ip_seek_btree(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_object.c
1438
hammer_inode_t ip = cursor->ip;
sys/vfs/hammer/hammer_object.c
1442
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_object.c
1446
error, cursor->node,
sys/vfs/hammer/hammer_object.c
1447
(intmax_t)cursor->node->node_offset,
sys/vfs/hammer/hammer_object.c
1448
cursor->index);
sys/vfs/hammer/hammer_object.c
1450
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1451
error = hammer_btree_iterate(cursor);
sys/vfs/hammer/hammer_object.c
1454
cursor->flags &= ~(HAMMER_CURSOR_DISKEOF |
sys/vfs/hammer/hammer_object.c
1457
cursor->flags |= HAMMER_CURSOR_DISKEOF |
sys/vfs/hammer/hammer_object.c
1463
cursor->flags |= HAMMER_CURSOR_DISKEOF | HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1477
_hammer_ip_reseek(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_object.c
1489
(intmax_t)cursor->ip->obj_id);
sys/vfs/hammer/hammer_object.c
1490
save = cursor->key_beg;
sys/vfs/hammer/hammer_object.c
1491
cursor->key_beg = cursor->iprec->leaf.base;
sys/vfs/hammer/hammer_object.c
1492
error = _hammer_ip_seek_btree(cursor);
sys/vfs/hammer/hammer_object.c
1494
cursor->key_beg = save;
sys/vfs/hammer/hammer_object.c
1502
if ((cursor->flags & HAMMER_CURSOR_ATEDISK) == 0 &&
sys/vfs/hammer/hammer_object.c
1503
(cursor->flags & HAMMER_CURSOR_LASTWASMEM)) {
sys/vfs/hammer/hammer_object.c
1504
elm = &cursor->node->ondisk->elms[cursor->index];
sys/vfs/hammer/hammer_object.c
1505
r = hammer_btree_cmp(&elm->base, &cursor->iprec->leaf.base);
sys/vfs/hammer/hammer_object.c
1506
if (cursor->flags & HAMMER_CURSOR_ASOF) {
sys/vfs/hammer/hammer_object.c
1510
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1517
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1538
hammer_ip_first(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_object.c
1540
hammer_inode_t ip __debugvar = cursor->ip;
sys/vfs/hammer/hammer_object.c
1548
cursor->flags &= ~HAMMER_CURSOR_RETEST;
sys/vfs/hammer/hammer_object.c
1557
hammer_mem_first(cursor);
sys/vfs/hammer/hammer_object.c
1563
cursor->rec_generation = cursor->ip->rec_generation;
sys/vfs/hammer/hammer_object.c
1568
error = _hammer_ip_seek_btree(cursor);
sys/vfs/hammer/hammer_object.c
1570
error = hammer_ip_next(cursor);
sys/vfs/hammer/hammer_object.c
1587
hammer_ip_next(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_object.c
1606
if ((cursor->flags & HAMMER_CURSOR_DISKEOF) == 0) {
sys/vfs/hammer/hammer_object.c
1607
if (cursor->flags & (HAMMER_CURSOR_ATEDISK |
sys/vfs/hammer/hammer_object.c
1609
error = hammer_btree_iterate(cursor);
sys/vfs/hammer/hammer_object.c
1610
cursor->flags &= ~HAMMER_CURSOR_RETEST;
sys/vfs/hammer/hammer_object.c
1612
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1613
hammer_cache_node(&cursor->ip->cache[1],
sys/vfs/hammer/hammer_object.c
1614
cursor->node);
sys/vfs/hammer/hammer_object.c
1616
cursor->flags |= HAMMER_CURSOR_DISKEOF |
sys/vfs/hammer/hammer_object.c
1638
while (cursor->rec_generation != cursor->ip->rec_generation &&
sys/vfs/hammer/hammer_object.c
1641
(intmax_t)cursor->ip->obj_id);
sys/vfs/hammer/hammer_object.c
1642
cursor->rec_generation = cursor->ip->rec_generation;
sys/vfs/hammer/hammer_object.c
1643
if (cursor->flags & HAMMER_CURSOR_MEMEOF)
sys/vfs/hammer/hammer_object.c
1645
if (cursor->flags & HAMMER_CURSOR_DISKEOF) {
sys/vfs/hammer/hammer_object.c
1648
KKASSERT((cursor->flags & HAMMER_CURSOR_ATEDISK) == 0);
sys/vfs/hammer/hammer_object.c
1649
elm = &cursor->node->ondisk->elms[cursor->index];
sys/vfs/hammer/hammer_object.c
1651
&cursor->iprec->leaf.base);
sys/vfs/hammer/hammer_object.c
1658
if (_hammer_ip_reseek(cursor))
sys/vfs/hammer/hammer_object.c
1672
if ((cursor->flags & HAMMER_CURSOR_MEMEOF) == 0) {
sys/vfs/hammer/hammer_object.c
1677
if (cursor->flags & HAMMER_CURSOR_ATEMEM) {
sys/vfs/hammer/hammer_object.c
1678
tmprec = cursor->iprec;
sys/vfs/hammer/hammer_object.c
1679
cursor->iprec = NULL;
sys/vfs/hammer/hammer_object.c
1682
if (hammer_rec_scan_cmp(rec, cursor) != 0)
sys/vfs/hammer/hammer_object.c
1684
if (hammer_rec_scan_callback(rec, cursor) != 0)
sys/vfs/hammer/hammer_object.c
1688
if (cursor->iprec) {
sys/vfs/hammer/hammer_object.c
1689
KKASSERT(cursor->iprec == rec);
sys/vfs/hammer/hammer_object.c
1690
cursor->flags &= ~HAMMER_CURSOR_ATEMEM;
sys/vfs/hammer/hammer_object.c
1692
cursor->flags |= HAMMER_CURSOR_MEMEOF;
sys/vfs/hammer/hammer_object.c
1694
cursor->flags &= ~HAMMER_CURSOR_LASTWASMEM;
sys/vfs/hammer/hammer_object.c
1709
if (error == 0 && (cursor->flags & HAMMER_CURSOR_MEMEOF) == 0) {
sys/vfs/hammer/hammer_object.c
1710
KKASSERT(cursor->iprec);
sys/vfs/hammer/hammer_object.c
1711
KKASSERT((cursor->flags & HAMMER_CURSOR_ATEMEM) == 0);
sys/vfs/hammer/hammer_object.c
1712
if (!hammer_ip_iterate_mem_good(cursor, cursor->iprec)) {
sys/vfs/hammer/hammer_object.c
1713
cursor->flags |= HAMMER_CURSOR_ATEMEM;
sys/vfs/hammer/hammer_object.c
1727
switch(cursor->flags & (HAMMER_CURSOR_ATEDISK | HAMMER_CURSOR_ATEMEM)) {
sys/vfs/hammer/hammer_object.c
1734
elm = &cursor->node->ondisk->elms[cursor->index];
sys/vfs/hammer/hammer_object.c
1735
r = hammer_btree_cmp(&elm->base, &cursor->iprec->leaf.base);
sys/vfs/hammer/hammer_object.c
1744
cursor->ip->ino_data.obj_type == HAMMER_OBJTYPE_REGFILE &&
sys/vfs/hammer/hammer_object.c
1745
cursor->iprec->type == HAMMER_MEM_RECORD_DATA) {
sys/vfs/hammer/hammer_object.c
1747
int64_t base2 = cursor->iprec->leaf.base.key -
sys/vfs/hammer/hammer_object.c
1748
cursor->iprec->leaf.data_len;
sys/vfs/hammer/hammer_object.c
1754
error = hammer_btree_extract_leaf(cursor);
sys/vfs/hammer/hammer_object.c
1755
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1756
cursor->flags &= ~HAMMER_CURSOR_LASTWASMEM;
sys/vfs/hammer/hammer_object.c
1779
if (cursor->iprec->type == HAMMER_MEM_RECORD_DEL) {
sys/vfs/hammer/hammer_object.c
1780
if ((cursor->flags & HAMMER_CURSOR_DELETE_VISIBILITY) == 0) {
sys/vfs/hammer/hammer_object.c
1781
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1782
cursor->flags |= HAMMER_CURSOR_ATEMEM;
sys/vfs/hammer/hammer_object.c
1785
} else if (cursor->iprec->type == HAMMER_MEM_RECORD_DATA) {
sys/vfs/hammer/hammer_object.c
1786
if ((cursor->flags & HAMMER_CURSOR_DELETE_VISIBILITY) == 0) {
sys/vfs/hammer/hammer_object.c
1787
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1792
cursor->iprec,
sys/vfs/hammer/hammer_object.c
1793
cursor->iprec->type,
sys/vfs/hammer/hammer_object.c
1794
cursor->iprec->flags);
sys/vfs/hammer/hammer_object.c
1795
cursor->flags |= HAMMER_CURSOR_ATEMEM;
sys/vfs/hammer/hammer_object.c
1804
cursor->leaf = &cursor->iprec->leaf;
sys/vfs/hammer/hammer_object.c
1805
cursor->flags |= HAMMER_CURSOR_ATEMEM;
sys/vfs/hammer/hammer_object.c
1806
cursor->flags |= HAMMER_CURSOR_LASTWASMEM;
sys/vfs/hammer/hammer_object.c
1814
if (cursor->iprec->type == HAMMER_MEM_RECORD_DEL &&
sys/vfs/hammer/hammer_object.c
1815
(cursor->flags & HAMMER_CURSOR_DELETE_VISIBILITY) == 0) {
sys/vfs/hammer/hammer_object.c
1817
cursor->iprec,
sys/vfs/hammer/hammer_object.c
1818
cursor->iprec->flags);
sys/vfs/hammer/hammer_object.c
1825
error = hammer_btree_extract_leaf(cursor);
sys/vfs/hammer/hammer_object.c
1826
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
1827
cursor->flags &= ~HAMMER_CURSOR_LASTWASMEM;
sys/vfs/hammer/hammer_object.c
1835
cursor->flags &= ~HAMMER_CURSOR_LASTWASMEM;
sys/vfs/hammer/hammer_object.c
1836
cursor->leaf = NULL;
sys/vfs/hammer/hammer_object.c
184
hammer_cursor_t cursor = data;
sys/vfs/hammer/hammer_object.c
1848
hammer_ip_resolve_data(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_object.c
1853
if (hammer_cursor_inmem(cursor)) {
sys/vfs/hammer/hammer_object.c
187
r = hammer_rec_cmp(&cursor->key_beg, rec);
sys/vfs/hammer/hammer_object.c
1870
record = cursor->iprec;
sys/vfs/hammer/hammer_object.c
1871
cursor->data = record->data;
sys/vfs/hammer/hammer_object.c
1873
if (cursor->data == NULL) {
sys/vfs/hammer/hammer_object.c
1877
cursor->data = hammer_bread_ext(cursor->trans->hmp,
sys/vfs/hammer/hammer_object.c
1881
&cursor->data_buffer);
sys/vfs/hammer/hammer_object.c
1889
cursor->leaf = &cursor->node->ondisk->elms[cursor->index].leaf;
sys/vfs/hammer/hammer_object.c
1890
error = hammer_btree_extract_data(cursor);
sys/vfs/hammer/hammer_object.c
190
r = hammer_rec_cmp(&cursor->key_end, rec);
sys/vfs/hammer/hammer_object.c
1923
hammer_ip_delete_range(hammer_cursor_t cursor, hammer_inode_t ip,
sys/vfs/hammer/hammer_object.c
1926
hammer_transaction_t trans = cursor->trans;
sys/vfs/hammer/hammer_object.c
1934
hammer_normalize_cursor(cursor);
sys/vfs/hammer/hammer_object.c
1935
cursor->key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_object.c
1937
cursor->key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_object.c
1938
cursor->key_beg.create_tid = 0;
sys/vfs/hammer/hammer_object.c
1939
cursor->key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_object.c
1940
cursor->key_beg.obj_type = 0;
sys/vfs/hammer/hammer_object.c
1943
cursor->key_beg.key = ran_beg;
sys/vfs/hammer/hammer_object.c
1944
cursor->key_beg.rec_type = HAMMER_RECTYPE_DB;
sys/vfs/hammer/hammer_object.c
1950
cursor->key_beg.key = ran_beg + 1;
sys/vfs/hammer/hammer_object.c
1951
cursor->key_beg.rec_type = HAMMER_RECTYPE_DATA;
sys/vfs/hammer/hammer_object.c
1954
cursor->key_end = cursor->key_beg;
sys/vfs/hammer/hammer_object.c
1956
cursor->key_end.key = ran_end;
sys/vfs/hammer/hammer_object.c
1960
cursor->key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_object.c
1962
cursor->key_end.key = ran_end + MAXPHYS + 1;
sys/vfs/hammer/hammer_object.c
1965
cursor->asof = ip->obj_asof;
sys/vfs/hammer/hammer_object.c
1966
cursor->flags &= ~HAMMER_CURSOR_INITMASK;
sys/vfs/hammer/hammer_object.c
1967
cursor->flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_object.c
1968
cursor->flags |= HAMMER_CURSOR_DELETE_VISIBILITY;
sys/vfs/hammer/hammer_object.c
1969
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_object.c
1970
cursor->flags |= HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_object.c
1972
error = hammer_ip_first(cursor);
sys/vfs/hammer/hammer_object.c
1978
leaf = cursor->leaf;
sys/vfs/hammer/hammer_object.c
203
hammer_cursor_t cursor = data;
sys/vfs/hammer/hammer_object.c
2035
if (truncating == 0 || hammer_cursor_ondisk(cursor)) {
sys/vfs/hammer/hammer_object.c
2036
error = hammer_ip_delete_record(cursor, ip, trans->tid);
sys/vfs/hammer/hammer_object.c
2055
error = hammer_ip_next(cursor);
sys/vfs/hammer/hammer_object.c
2057
if (cursor->node)
sys/vfs/hammer/hammer_object.c
2058
hammer_cache_node(&ip->cache[1], cursor->node);
sys/vfs/hammer/hammer_object.c
206
r = hammer_rec_cmp(&cursor->key_beg, rec);
sys/vfs/hammer/hammer_object.c
2061
hammer_done_cursor(cursor);
sys/vfs/hammer/hammer_object.c
2062
error = hammer_init_cursor(trans, cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_object.c
2081
hammer_delete_general(hammer_cursor_t cursor, hammer_inode_t ip,
sys/vfs/hammer/hammer_object.c
2084
hammer_transaction_t trans = cursor->trans;
sys/vfs/hammer/hammer_object.c
2089
hammer_normalize_cursor(cursor);
sys/vfs/hammer/hammer_object.c
2090
cursor->key_beg = leaf->base;
sys/vfs/hammer/hammer_object.c
2091
cursor->asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_object.c
2092
cursor->flags &= ~HAMMER_CURSOR_INITMASK;
sys/vfs/hammer/hammer_object.c
2093
cursor->flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_object.c
2094
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_object.c
2095
cursor->flags &= ~HAMMER_CURSOR_INSERT;
sys/vfs/hammer/hammer_object.c
2097
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_object.c
2099
error = hammer_ip_delete_record(cursor, ip, trans->tid);
sys/vfs/hammer/hammer_object.c
2102
hammer_done_cursor(cursor);
sys/vfs/hammer/hammer_object.c
2103
error = hammer_init_cursor(trans, cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_object.c
2117
hammer_ip_delete_clean(hammer_cursor_t cursor, hammer_inode_t ip, int *countp)
sys/vfs/hammer/hammer_object.c
2119
hammer_transaction_t trans = cursor->trans;
sys/vfs/hammer/hammer_object.c
2125
hammer_normalize_cursor(cursor);
sys/vfs/hammer/hammer_object.c
2126
cursor->key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_object.c
2128
cursor->key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_object.c
2129
cursor->key_beg.create_tid = 0;
sys/vfs/hammer/hammer_object.c
2130
cursor->key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_object.c
2131
cursor->key_beg.obj_type = 0;
sys/vfs/hammer/hammer_object.c
2132
cursor->key_beg.rec_type = HAMMER_RECTYPE_CLEAN_START;
sys/vfs/hammer/hammer_object.c
2133
cursor->key_beg.key = HAMMER_MIN_KEY;
sys/vfs/hammer/hammer_object.c
2135
cursor->key_end = cursor->key_beg;
sys/vfs/hammer/hammer_object.c
2136
cursor->key_end.rec_type = HAMMER_RECTYPE_MAX;
sys/vfs/hammer/hammer_object.c
2137
cursor->key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_object.c
2139
cursor->asof = ip->obj_asof;
sys/vfs/hammer/hammer_object.c
2140
cursor->flags &= ~HAMMER_CURSOR_INITMASK;
sys/vfs/hammer/hammer_object.c
2141
cursor->flags |= HAMMER_CURSOR_END_INCLUSIVE | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_object.c
2142
cursor->flags |= HAMMER_CURSOR_DELETE_VISIBILITY;
sys/vfs/hammer/hammer_object.c
2143
cursor->flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_object.c
2145
error = hammer_ip_first(cursor);
sys/vfs/hammer/hammer_object.c
2151
leaf = cursor->leaf;
sys/vfs/hammer/hammer_object.c
2165
error = hammer_ip_delete_record(cursor, ip, trans->tid);
sys/vfs/hammer/hammer_object.c
2169
error = hammer_ip_next(cursor);
sys/vfs/hammer/hammer_object.c
2171
if (cursor->node)
sys/vfs/hammer/hammer_object.c
2172
hammer_cache_node(&ip->cache[1], cursor->node);
sys/vfs/hammer/hammer_object.c
2174
hammer_done_cursor(cursor);
sys/vfs/hammer/hammer_object.c
2175
error = hammer_init_cursor(trans, cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_object.c
2195
hammer_ip_delete_record(hammer_cursor_t cursor, hammer_inode_t ip,
sys/vfs/hammer/hammer_object.c
2201
KKASSERT(cursor->flags & HAMMER_CURSOR_BACKEND);
sys/vfs/hammer/hammer_object.c
2214
if (hammer_cursor_inmem(cursor)) {
sys/vfs/hammer/hammer_object.c
2215
iprec = cursor->iprec;
sys/vfs/hammer/hammer_object.c
2232
error = hammer_btree_extract_leaf(cursor);
sys/vfs/hammer/hammer_object.c
2235
cursor,
sys/vfs/hammer/hammer_object.c
2237
cursor->trans->tid,
sys/vfs/hammer/hammer_object.c
2238
cursor->trans->time32,
sys/vfs/hammer/hammer_object.c
2274
hammer_create_at_cursor(hammer_cursor_t cursor, hammer_btree_leaf_elm_t leaf,
sys/vfs/hammer/hammer_object.c
2286
trans = cursor->trans;
sys/vfs/hammer/hammer_object.c
2292
KKASSERT((cursor->flags &
sys/vfs/hammer/hammer_object.c
2346
cursor->flags |= HAMMER_CURSOR_INSERT;
sys/vfs/hammer/hammer_object.c
2347
error = hammer_btree_lookup(cursor);
sys/vfs/hammer/hammer_object.c
2353
error = hammer_btree_insert(cursor, leaf, &doprop);
sys/vfs/hammer/hammer_object.c
2359
cursor->flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
2360
cursor->flags &= ~HAMMER_CURSOR_INSERT;
sys/vfs/hammer/hammer_object.c
2393
hammer_btree_do_propagation(cursor, leaf);
sys/vfs/hammer/hammer_object.c
2423
hammer_delete_at_cursor(hammer_cursor_t cursor, int delete_flags,
sys/vfs/hammer/hammer_object.c
2440
error = hammer_cursor_upgrade(cursor);
sys/vfs/hammer/hammer_object.c
2444
trans = cursor->trans;
sys/vfs/hammer/hammer_object.c
2445
node = cursor->node;
sys/vfs/hammer/hammer_object.c
2446
elm = &node->ondisk->elms[cursor->index];
sys/vfs/hammer/hammer_object.c
2491
if ((cursor->flags & HAMMER_CURSOR_DISKEOF) == 0) {
sys/vfs/hammer/hammer_object.c
2492
cursor->flags |= HAMMER_CURSOR_RETEST;
sys/vfs/hammer/hammer_object.c
2493
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
2523
error = hammer_btree_delete(cursor, &ndelete);
sys/vfs/hammer/hammer_object.c
2532
if ((cursor->flags & HAMMER_CURSOR_DISKEOF) == 0) {
sys/vfs/hammer/hammer_object.c
2533
cursor->flags |= HAMMER_CURSOR_RETEST;
sys/vfs/hammer/hammer_object.c
2534
cursor->flags &= ~HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_object.c
2585
if (cursor->ip)
sys/vfs/hammer/hammer_object.c
2586
hammer_btree_do_propagation(cursor, leaf);
sys/vfs/hammer/hammer_object.c
2588
hammer_btree_do_propagation(cursor, leaf);
sys/vfs/hammer/hammer_object.c
2608
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_object.c
2614
hammer_init_cursor(trans, &cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_object.c
2616
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_object.c
2618
cursor.key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_object.c
2619
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_object.c
2620
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_object.c
2621
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_object.c
2622
cursor.key_beg.rec_type = HAMMER_RECTYPE_ENTRY_START;
sys/vfs/hammer/hammer_object.c
2623
cursor.key_beg.key = HAMMER_MIN_KEY;
sys/vfs/hammer/hammer_object.c
2625
cursor.key_end = cursor.key_beg;
sys/vfs/hammer/hammer_object.c
2626
cursor.key_end.rec_type = HAMMER_RECTYPE_MAX;
sys/vfs/hammer/hammer_object.c
2627
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_object.c
2629
cursor.asof = ip->obj_asof;
sys/vfs/hammer/hammer_object.c
2630
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_object.c
2632
error = hammer_ip_first(&cursor);
sys/vfs/hammer/hammer_object.c
2637
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_object.c
37
static int hammer_mem_lookup(hammer_cursor_t cursor);
sys/vfs/hammer/hammer_object.c
38
static int hammer_mem_first(hammer_cursor_t cursor);
sys/vfs/hammer/hammer_object.c
43
static int hammer_delete_general(hammer_cursor_t cursor, hammer_inode_t ip,
sys/vfs/hammer/hammer_object.c
508
hammer_ip_iterate_mem_good(hammer_cursor_t cursor, hammer_record_t record)
sys/vfs/hammer/hammer_object.c
510
if (cursor->flags & HAMMER_CURSOR_DELETE_VISIBILITY)
sys/vfs/hammer/hammer_object.c
512
if (cursor->flags & HAMMER_CURSOR_BACKEND) {
sys/vfs/hammer/hammer_object.c
540
hammer_cursor_t cursor = data;
sys/vfs/hammer/hammer_object.c
545
KKASSERT(cursor->iprec == NULL);
sys/vfs/hammer/hammer_object.c
550
if (hammer_ip_iterate_mem_good(cursor, rec) == 0)
sys/vfs/hammer/hammer_object.c
556
if (cursor->flags & HAMMER_CURSOR_ASOF) {
sys/vfs/hammer/hammer_object.c
557
if (cursor->asof < rec->leaf.base.create_tid)
sys/vfs/hammer/hammer_object.c
560
cursor->asof >= rec->leaf.base.delete_tid) {
sys/vfs/hammer/hammer_object.c
575
if (hammer_ip_iterate_mem_good(cursor, rec) == 0) {
sys/vfs/hammer/hammer_object.c
583
cursor->iprec = rec;
sys/vfs/hammer/hammer_object.c
599
hammer_mem_lookup(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_object.c
601
KKASSERT(cursor->ip != NULL);
sys/vfs/hammer/hammer_object.c
602
if (cursor->iprec) {
sys/vfs/hammer/hammer_object.c
603
hammer_rel_mem_record(cursor->iprec);
sys/vfs/hammer/hammer_object.c
604
cursor->iprec = NULL;
sys/vfs/hammer/hammer_object.c
606
hammer_rec_rb_tree_RB_SCAN(&cursor->ip->rec_tree, hammer_rec_find_cmp,
sys/vfs/hammer/hammer_object.c
607
hammer_rec_scan_callback, cursor);
sys/vfs/hammer/hammer_object.c
609
return (cursor->iprec ? 0 : ENOENT);
sys/vfs/hammer/hammer_object.c
621
hammer_mem_first(hammer_cursor_t cursor)
sys/vfs/hammer/hammer_object.c
623
KKASSERT(cursor->ip != NULL);
sys/vfs/hammer/hammer_object.c
624
if (cursor->iprec) {
sys/vfs/hammer/hammer_object.c
625
hammer_rel_mem_record(cursor->iprec);
sys/vfs/hammer/hammer_object.c
626
cursor->iprec = NULL;
sys/vfs/hammer/hammer_object.c
628
hammer_rec_rb_tree_RB_SCAN(&cursor->ip->rec_tree, hammer_rec_scan_cmp,
sys/vfs/hammer/hammer_object.c
629
hammer_rec_scan_callback, cursor);
sys/vfs/hammer/hammer_object.c
631
if (cursor->iprec)
sys/vfs/hammer/hammer_object.c
632
cursor->flags &= ~(HAMMER_CURSOR_MEMEOF | HAMMER_CURSOR_ATEMEM);
sys/vfs/hammer/hammer_object.c
634
cursor->flags |= HAMMER_CURSOR_MEMEOF | HAMMER_CURSOR_ATEMEM;
sys/vfs/hammer/hammer_object.c
636
return (cursor->iprec ? 0 : ENOENT);
sys/vfs/hammer/hammer_object.c
663
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_object.c
701
hammer_init_cursor(trans, &cursor, &dip->cache[1], dip);
sys/vfs/hammer/hammer_object.c
702
cursor.key_beg = record->leaf.base;
sys/vfs/hammer/hammer_object.c
703
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_object.c
704
cursor.flags |= HAMMER_CURSOR_DELETE_VISIBILITY;
sys/vfs/hammer/hammer_object.c
705
cursor.asof = ip->obj_asof;
sys/vfs/hammer/hammer_object.c
707
while (hammer_ip_lookup(&cursor) == 0) {
sys/vfs/hammer/hammer_object.c
710
cursor.key_beg.key = record->leaf.base.key;
sys/vfs/hammer/hammer_object.c
747
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_object.c
764
hammer_cursor_t cursor, hammer_inode_t dip,
sys/vfs/hammer/hammer_object.c
770
if (hammer_cursor_inmem(cursor)) {
sys/vfs/hammer/hammer_object.c
781
record = cursor->iprec;
sys/vfs/hammer/hammer_object.c
785
KKASSERT(cursor->deadlk_rec == NULL);
sys/vfs/hammer/hammer_object.c
787
cursor->deadlk_rec = record;
sys/vfs/hammer/hammer_object.c
805
record->leaf.base = cursor->leaf->base;
sys/vfs/hammer/hammer_object.c
864
hammer_done_cursor(cursor);
sys/vfs/hammer/hammer_pfs.c
328
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_pfs.c
342
error = hammer_init_cursor(trans, &cursor,
sys/vfs/hammer/hammer_pfs.c
347
cursor.key_beg.localization = HAMMER_DEF_LOCALIZATION |
sys/vfs/hammer/hammer_pfs.c
349
cursor.key_beg.obj_id = HAMMER_OBJID_ROOT;
sys/vfs/hammer/hammer_pfs.c
350
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_pfs.c
351
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_pfs.c
352
cursor.key_beg.rec_type = HAMMER_RECTYPE_PFS;
sys/vfs/hammer/hammer_pfs.c
353
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_pfs.c
354
cursor.key_beg.key = localization;
sys/vfs/hammer/hammer_pfs.c
355
cursor.asof = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_pfs.c
356
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_pfs.c
358
error = hammer_ip_lookup(&cursor);
sys/vfs/hammer/hammer_pfs.c
360
error = hammer_ip_resolve_data(&cursor);
sys/vfs/hammer/hammer_pfs.c
363
copyout(cursor.data, pfs->ondisk, cursor.leaf->data_len);
sys/vfs/hammer/hammer_pfs.c
364
localization = cursor.leaf->base.key;
sys/vfs/hammer/hammer_pfs.c
368
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_pfs.c
414
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_pfs.c
430
error = hammer_init_cursor(trans, &cursor, NULL, NULL);
sys/vfs/hammer/hammer_pfs.c
432
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_pfs.c
435
cursor.key_beg = key_cur;
sys/vfs/hammer/hammer_pfs.c
436
cursor.key_end.localization = HAMMER_MAX_LOCALIZATION |
sys/vfs/hammer/hammer_pfs.c
438
cursor.key_end.obj_id = HAMMER_MAX_OBJID;
sys/vfs/hammer/hammer_pfs.c
439
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_pfs.c
440
cursor.key_end.create_tid = HAMMER_MAX_TID;
sys/vfs/hammer/hammer_pfs.c
441
cursor.key_end.rec_type = HAMMER_MAX_RECTYPE;
sys/vfs/hammer/hammer_pfs.c
443
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_pfs.c
444
cursor.flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_pfs.c
45
static int hammer_pfs_delete_at_cursor(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_pfs.c
452
cursor.flags |= HAMMER_CURSOR_MIRROR_FILTERED;
sys/vfs/hammer/hammer_pfs.c
453
cursor.cmirror = &cmirror;
sys/vfs/hammer/hammer_pfs.c
456
error = hammer_btree_first(&cursor);
sys/vfs/hammer/hammer_pfs.c
474
cursor.flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_pfs.c
475
if (cursor.node->ondisk->type == HAMMER_BTREE_TYPE_LEAF) {
sys/vfs/hammer/hammer_pfs.c
476
key_cur = cursor.node->ondisk->elms[cursor.index].base;
sys/vfs/hammer/hammer_pfs.c
477
error = hammer_pfs_delete_at_cursor(&cursor, trunc_tid);
sys/vfs/hammer/hammer_pfs.c
482
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_pfs.c
484
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_pfs.c
489
error = hammer_btree_iterate(&cursor);
sys/vfs/hammer/hammer_pfs.c
493
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_pfs.c
508
hammer_pfs_delete_at_cursor(hammer_cursor_t cursor, hammer_tid_t trunc_tid)
sys/vfs/hammer/hammer_pfs.c
513
elm = &cursor->node->ondisk->elms[cursor->index].leaf;
sys/vfs/hammer/hammer_pfs.c
521
cursor, HAMMER_DELETE_DESTROY,
sys/vfs/hammer/hammer_pfs.c
522
cursor->trans->tid, cursor->trans->time32,
sys/vfs/hammer/hammer_pfs.c
526
cursor, HAMMER_DELETE_ADJUST,
sys/vfs/hammer/hammer_prune.c
114
error = hammer_init_cursor(trans, &cursor, NULL, NULL);
sys/vfs/hammer/hammer_prune.c
116
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_prune.c
119
cursor.key_beg.localization = key_beg_localization;
sys/vfs/hammer/hammer_prune.c
120
cursor.key_beg.obj_id = prune->key_beg.obj_id;
sys/vfs/hammer/hammer_prune.c
121
cursor.key_beg.key = HAMMER_MIN_KEY;
sys/vfs/hammer/hammer_prune.c
122
cursor.key_beg.create_tid = 1;
sys/vfs/hammer/hammer_prune.c
123
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_prune.c
124
cursor.key_beg.rec_type = HAMMER_MIN_RECTYPE;
sys/vfs/hammer/hammer_prune.c
125
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_prune.c
127
cursor.key_end.localization = prune->key_cur.localization;
sys/vfs/hammer/hammer_prune.c
128
cursor.key_end.obj_id = prune->key_cur.obj_id;
sys/vfs/hammer/hammer_prune.c
129
cursor.key_end.key = prune->key_cur.key;
sys/vfs/hammer/hammer_prune.c
130
cursor.key_end.create_tid = HAMMER_MAX_TID - 1;
sys/vfs/hammer/hammer_prune.c
131
cursor.key_end.delete_tid = 0;
sys/vfs/hammer/hammer_prune.c
132
cursor.key_end.rec_type = HAMMER_MAX_RECTYPE;
sys/vfs/hammer/hammer_prune.c
133
cursor.key_end.obj_type = 0;
sys/vfs/hammer/hammer_prune.c
135
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_prune.c
136
cursor.flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_prune.c
143
cursor.flags |= HAMMER_CURSOR_PRUNING;
sys/vfs/hammer/hammer_prune.c
146
error = hammer_btree_last(&cursor);
sys/vfs/hammer/hammer_prune.c
153
elm = &cursor.node->ondisk->elms[cursor.index].leaf;
sys/vfs/hammer/hammer_prune.c
201
error = hammer_delete_at_cursor(&cursor,
sys/vfs/hammer/hammer_prune.c
203
cursor.trans->tid,
sys/vfs/hammer/hammer_prune.c
204
cursor.trans->time32,
sys/vfs/hammer/hammer_prune.c
221
cursor.flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_prune.c
227
prune_check_nlinks(&cursor, elm);
sys/vfs/hammer/hammer_prune.c
228
cursor.flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_prune.c
242
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_prune.c
244
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_prune.c
248
error = hammer_btree_iterate_reverse(&cursor);
sys/vfs/hammer/hammer_prune.c
253
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_prune.c
321
prune_check_nlinks(hammer_cursor_t cursor, hammer_btree_leaf_elm_t elm)
sys/vfs/hammer/hammer_prune.c
330
if (hammer_btree_extract_data(cursor))
sys/vfs/hammer/hammer_prune.c
332
if (cursor->data->inode.nlinks)
sys/vfs/hammer/hammer_prune.c
334
hammer_cursor_downgrade(cursor);
sys/vfs/hammer/hammer_prune.c
335
ip = hammer_get_inode(cursor->trans, NULL, elm->base.obj_id,
sys/vfs/hammer/hammer_prune.c
345
hammer_inode_waitreclaims(cursor->trans);
sys/vfs/hammer/hammer_prune.c
49
static void prune_check_nlinks(hammer_cursor_t cursor,
sys/vfs/hammer/hammer_prune.c
56
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_rebalance.c
104
error = hammer_init_cursor(trans, &cursor, NULL, NULL);
sys/vfs/hammer/hammer_rebalance.c
106
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_rebalance.c
109
cursor.key_beg = rebal->key_cur;
sys/vfs/hammer/hammer_rebalance.c
110
cursor.key_end = rebal->key_end;
sys/vfs/hammer/hammer_rebalance.c
111
cursor.key_end.localization = key_end_localization;
sys/vfs/hammer/hammer_rebalance.c
112
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_rebalance.c
113
cursor.flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_rebalance.c
125
cursor.flags |= HAMMER_CURSOR_REBLOCKING;
sys/vfs/hammer/hammer_rebalance.c
127
error = hammer_btree_first(&cursor);
sys/vfs/hammer/hammer_rebalance.c
135
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_rebalance.c
137
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_rebalance.c
154
if (cursor.node->ondisk->type == HAMMER_BTREE_TYPE_INTERNAL) {
sys/vfs/hammer/hammer_rebalance.c
163
if (cursor.index == cursor.node->ondisk->count - 1) {
sys/vfs/hammer/hammer_rebalance.c
165
error = rebalance_node(rebal, &cursor, &lcache);
sys/vfs/hammer/hammer_rebalance.c
174
cursor.index = cursor.node->ondisk->count - 1;
sys/vfs/hammer/hammer_rebalance.c
194
elm = &cursor.node->ondisk->elms[cursor.index].leaf;
sys/vfs/hammer/hammer_rebalance.c
200
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_rebalance.c
202
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_rebalance.c
213
if (hammer_btree_cmp(&rebal->key_cur, &cursor.key_end) > 0) {
sys/vfs/hammer/hammer_rebalance.c
214
rebal->key_cur = cursor.key_end;
sys/vfs/hammer/hammer_rebalance.c
223
error = hammer_btree_iterate(&cursor);
sys/vfs/hammer/hammer_rebalance.c
227
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_rebalance.c
267
rebalance_node(struct hammer_ioc_rebalance *rebal, hammer_cursor_t cursor,
sys/vfs/hammer/hammer_rebalance.c
292
hammer_node_lock_init(&lockroot, cursor->node);
sys/vfs/hammer/hammer_rebalance.c
293
error = hammer_cursor_upgrade(cursor);
sys/vfs/hammer/hammer_rebalance.c
296
error = hammer_btree_lock_children(cursor, 2, &lockroot, lcache);
sys/vfs/hammer/hammer_rebalance.c
305
hammer_btree_lock_copy(cursor, &lockroot);
sys/vfs/hammer/hammer_rebalance.c
38
hammer_cursor_t cursor, hammer_node_lock_t lcache);
sys/vfs/hammer/hammer_rebalance.c
501
if (cursor->index > lockroot.copy->count)
sys/vfs/hammer/hammer_rebalance.c
502
--cursor->index;
sys/vfs/hammer/hammer_rebalance.c
510
rebal->stat_nrebal += hammer_btree_sync_copy(cursor, &lockroot);
sys/vfs/hammer/hammer_rebalance.c
512
hammer_btree_unlock_children(cursor->trans->hmp, &lockroot, lcache);
sys/vfs/hammer/hammer_rebalance.c
513
hammer_cursor_downgrade(cursor);
sys/vfs/hammer/hammer_rebalance.c
57
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_reblock.c
108
error = hammer_init_cursor(trans, &cursor, NULL, NULL);
sys/vfs/hammer/hammer_reblock.c
110
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_reblock.c
113
cursor.key_beg.localization = reblock->key_cur.localization;
sys/vfs/hammer/hammer_reblock.c
114
cursor.key_beg.obj_id = reblock->key_cur.obj_id;
sys/vfs/hammer/hammer_reblock.c
115
cursor.key_beg.key = HAMMER_MIN_KEY;
sys/vfs/hammer/hammer_reblock.c
116
cursor.key_beg.create_tid = 1;
sys/vfs/hammer/hammer_reblock.c
117
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_reblock.c
118
cursor.key_beg.rec_type = HAMMER_MIN_RECTYPE;
sys/vfs/hammer/hammer_reblock.c
119
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_reblock.c
121
cursor.key_end.localization = key_end_localization;
sys/vfs/hammer/hammer_reblock.c
122
cursor.key_end.obj_id = reblock->key_end.obj_id;
sys/vfs/hammer/hammer_reblock.c
123
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_reblock.c
124
cursor.key_end.create_tid = HAMMER_MAX_TID - 1;
sys/vfs/hammer/hammer_reblock.c
125
cursor.key_end.delete_tid = 0;
sys/vfs/hammer/hammer_reblock.c
126
cursor.key_end.rec_type = HAMMER_MAX_RECTYPE;
sys/vfs/hammer/hammer_reblock.c
127
cursor.key_end.obj_type = 0;
sys/vfs/hammer/hammer_reblock.c
129
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_reblock.c
130
cursor.flags |= HAMMER_CURSOR_BACKEND;
sys/vfs/hammer/hammer_reblock.c
131
cursor.flags |= HAMMER_CURSOR_NOSWAPCACHE;
sys/vfs/hammer/hammer_reblock.c
139
cursor.flags |= HAMMER_CURSOR_REBLOCKING;
sys/vfs/hammer/hammer_reblock.c
141
error = hammer_btree_first(&cursor);
sys/vfs/hammer/hammer_reblock.c
146
KKASSERT(cursor.index < cursor.node->ondisk->count);
sys/vfs/hammer/hammer_reblock.c
147
elm = &cursor.node->ondisk->elms[cursor.index];
sys/vfs/hammer/hammer_reblock.c
180
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_reblock.c
181
cursor.flags |= HAMMER_CURSOR_RETEST;
sys/vfs/hammer/hammer_reblock.c
183
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_reblock.c
197
error = hammer_reblock_helper(reblock, &cursor, elm);
sys/vfs/hammer/hammer_reblock.c
202
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_reblock.c
204
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_reblock.c
212
cursor.flags |= HAMMER_CURSOR_ATEDISK;
sys/vfs/hammer/hammer_reblock.c
224
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_reblock.c
226
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_reblock.c
231
error = hammer_btree_iterate(&cursor);
sys/vfs/hammer/hammer_reblock.c
236
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_reblock.c
260
hammer_cursor_t cursor, hammer_btree_elm_t elm)
sys/vfs/hammer/hammer_reblock.c
272
hmp = cursor->trans->hmp;
sys/vfs/hammer/hammer_reblock.c
279
if (cursor->node->ondisk->type != HAMMER_BTREE_TYPE_LEAF)
sys/vfs/hammer/hammer_reblock.c
345
hammer_unlock_cursor(cursor);
sys/vfs/hammer/hammer_reblock.c
347
hammer_lock_cursor(cursor);
sys/vfs/hammer/hammer_reblock.c
355
ondisk = cursor->node->ondisk;
sys/vfs/hammer/hammer_reblock.c
356
elm = &ondisk->elms[cursor->index];
sys/vfs/hammer/hammer_reblock.c
357
if (cursor->flags & HAMMER_CURSOR_RETEST) {
sys/vfs/hammer/hammer_reblock.c
361
cursor->index >= ondisk->count) {
sys/vfs/hammer/hammer_reblock.c
369
error = hammer_cursor_upgrade(cursor);
sys/vfs/hammer/hammer_reblock.c
371
KKASSERT(cursor->index < ondisk->count);
sys/vfs/hammer/hammer_reblock.c
373
cursor, elm);
sys/vfs/hammer/hammer_reblock.c
390
tmp_offset = cursor->node->node_offset;
sys/vfs/hammer/hammer_reblock.c
400
if (cursor->index == 0 &&
sys/vfs/hammer/hammer_reblock.c
417
error = hammer_cursor_upgrade(cursor);
sys/vfs/hammer/hammer_reblock.c
419
if (cursor->parent) {
sys/vfs/hammer/hammer_reblock.c
420
KKASSERT(cursor->parent_index <
sys/vfs/hammer/hammer_reblock.c
421
cursor->parent->ondisk->count);
sys/vfs/hammer/hammer_reblock.c
422
elm = &cursor->parent->ondisk->elms[cursor->parent_index];
sys/vfs/hammer/hammer_reblock.c
426
switch(cursor->node->ondisk->type) {
sys/vfs/hammer/hammer_reblock.c
429
reblock, cursor, elm);
sys/vfs/hammer/hammer_reblock.c
433
reblock, cursor, elm);
sys/vfs/hammer/hammer_reblock.c
445
hammer_cursor_downgrade(cursor);
sys/vfs/hammer/hammer_reblock.c
455
hammer_cursor_t cursor, hammer_btree_elm_t elm)
sys/vfs/hammer/hammer_reblock.c
464
error = hammer_btree_extract_data(cursor);
sys/vfs/hammer/hammer_reblock.c
467
ndata = hammer_alloc_data(cursor->trans, elm->leaf.data_len,
sys/vfs/hammer/hammer_reblock.c
47
hammer_cursor_t cursor,
sys/vfs/hammer/hammer_reblock.c
486
hammer_modify_buffer_noundo(cursor->trans, data_buffer);
sys/vfs/hammer/hammer_reblock.c
487
bcopy(cursor->data, ndata, elm->leaf.data_len);
sys/vfs/hammer/hammer_reblock.c
488
ncrc = hammer_crc_get_leaf(cursor->trans->hmp->version, ndata,
sys/vfs/hammer/hammer_reblock.c
491
hammer_cursor_invalidate_cache(cursor);
sys/vfs/hammer/hammer_reblock.c
493
hammer_blockmap_free(cursor->trans,
sys/vfs/hammer/hammer_reblock.c
496
hammer_modify_node(cursor->trans, cursor->node,
sys/vfs/hammer/hammer_reblock.c
50
hammer_cursor_t cursor, hammer_btree_elm_t elm);
sys/vfs/hammer/hammer_reblock.c
501
hammer_modify_node_done(cursor->node);
sys/vfs/hammer/hammer_reblock.c
52
hammer_cursor_t cursor, hammer_btree_elm_t elm);
sys/vfs/hammer/hammer_reblock.c
523
hammer_cursor_t cursor, hammer_btree_elm_t elm)
sys/vfs/hammer/hammer_reblock.c
533
onode = cursor->node;
sys/vfs/hammer/hammer_reblock.c
534
nnode = hammer_alloc_btree(cursor->trans, 0, &error);
sys/vfs/hammer/hammer_reblock.c
54
hammer_cursor_t cursor, hammer_btree_elm_t elm);
sys/vfs/hammer/hammer_reblock.c
540
hammer_modify_node_noundo(cursor->trans, nnode);
sys/vfs/hammer/hammer_reblock.c
542
hammer_move_node(cursor, elm, onode, nnode);
sys/vfs/hammer/hammer_reblock.c
55
static void hammer_move_node(hammer_cursor_t cursor, hammer_btree_elm_t elm,
sys/vfs/hammer/hammer_reblock.c
551
hammer_delete_node(cursor->trans, onode);
sys/vfs/hammer/hammer_reblock.c
560
cursor->node = nnode;
sys/vfs/hammer/hammer_reblock.c
577
hammer_cursor_t cursor, hammer_btree_elm_t elm)
sys/vfs/hammer/hammer_reblock.c
584
hammer_node_lock_init(&lockroot, cursor->node);
sys/vfs/hammer/hammer_reblock.c
585
error = hammer_btree_lock_children(cursor, 1, &lockroot, NULL);
sys/vfs/hammer/hammer_reblock.c
593
onode = cursor->node;
sys/vfs/hammer/hammer_reblock.c
594
nnode = hammer_alloc_btree(cursor->trans, 0, &error);
sys/vfs/hammer/hammer_reblock.c
600
hammer_modify_node_noundo(cursor->trans, nnode);
sys/vfs/hammer/hammer_reblock.c
602
hammer_move_node(cursor, elm, onode, nnode);
sys/vfs/hammer/hammer_reblock.c
611
hammer_delete_node(cursor->trans, onode);
sys/vfs/hammer/hammer_reblock.c
62
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_reblock.c
620
cursor->node = nnode;
sys/vfs/hammer/hammer_reblock.c
626
hammer_btree_unlock_children(cursor->trans->hmp, &lockroot, NULL);
sys/vfs/hammer/hammer_reblock.c
636
hammer_move_node(hammer_cursor_t cursor, hammer_btree_elm_t elm,
sys/vfs/hammer/hammer_reblock.c
651
hammer_modify_node(cursor->trans, cursor->parent,
sys/vfs/hammer/hammer_reblock.c
655
hammer_modify_node_done(cursor->parent);
sys/vfs/hammer/hammer_reblock.c
661
volume = hammer_get_root_volume(cursor->trans->hmp, &error);
sys/vfs/hammer/hammer_reblock.c
664
hammer_modify_volume_field(cursor->trans, volume,
sys/vfs/hammer/hammer_reblock.c
677
error = btree_set_parent_of_child(cursor->trans, nnode,
sys/vfs/hammer/hammer_vnops.c
1120
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_vnops.c
1223
error = hammer_init_cursor(&trans, &cursor, &dip->cache[1], dip);
sys/vfs/hammer/hammer_vnops.c
1224
cursor.key_beg.localization = dip->obj_localization |
sys/vfs/hammer/hammer_vnops.c
1226
cursor.key_beg.obj_id = dip->obj_id;
sys/vfs/hammer/hammer_vnops.c
1227
cursor.key_beg.key = namekey;
sys/vfs/hammer/hammer_vnops.c
1228
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_vnops.c
1229
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_vnops.c
1230
cursor.key_beg.rec_type = HAMMER_RECTYPE_DIRENTRY;
sys/vfs/hammer/hammer_vnops.c
1231
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_vnops.c
1233
cursor.key_end = cursor.key_beg;
sys/vfs/hammer/hammer_vnops.c
1234
cursor.key_end.key += max_iterations;
sys/vfs/hammer/hammer_vnops.c
1235
cursor.asof = asof;
sys/vfs/hammer/hammer_vnops.c
1236
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_vnops.c
1249
error = hammer_ip_first(&cursor);
sys/vfs/hammer/hammer_vnops.c
1251
error = hammer_ip_resolve_data(&cursor);
sys/vfs/hammer/hammer_vnops.c
1254
if (nlen == cursor.leaf->data_len - HAMMER_ENTRY_NAME_OFF &&
sys/vfs/hammer/hammer_vnops.c
1255
bcmp(ncp->nc_name, cursor.data->entry.name, nlen) == 0) {
sys/vfs/hammer/hammer_vnops.c
1256
obj_id = cursor.data->entry.obj_id;
sys/vfs/hammer/hammer_vnops.c
1257
localization = cursor.data->entry.localization;
sys/vfs/hammer/hammer_vnops.c
1260
error = hammer_ip_next(&cursor);
sys/vfs/hammer/hammer_vnops.c
1263
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
1630
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_vnops.c
1705
hammer_init_cursor(&trans, &cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_vnops.c
1706
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_vnops.c
1708
cursor.key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_vnops.c
1709
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_vnops.c
1710
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_vnops.c
1711
cursor.key_beg.rec_type = HAMMER_RECTYPE_DIRENTRY;
sys/vfs/hammer/hammer_vnops.c
1712
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_vnops.c
1713
cursor.key_beg.key = saveoff;
sys/vfs/hammer/hammer_vnops.c
1715
cursor.key_end = cursor.key_beg;
sys/vfs/hammer/hammer_vnops.c
1716
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_vnops.c
1717
cursor.asof = ip->obj_asof;
sys/vfs/hammer/hammer_vnops.c
1718
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_vnops.c
1720
error = hammer_ip_first(&cursor);
sys/vfs/hammer/hammer_vnops.c
1723
error = hammer_ip_resolve_data(&cursor);
sys/vfs/hammer/hammer_vnops.c
1726
base = &cursor.leaf->base;
sys/vfs/hammer/hammer_vnops.c
1728
KKASSERT(cursor.leaf->data_len > HAMMER_ENTRY_NAME_OFF);
sys/vfs/hammer/hammer_vnops.c
1731
hpanic("bad record at %p", cursor.node);
sys/vfs/hammer/hammer_vnops.c
1733
dtype = hammer_get_dtype(cursor.leaf->base.obj_type);
sys/vfs/hammer/hammer_vnops.c
1735
&error, uio, cursor.data->entry.obj_id,
sys/vfs/hammer/hammer_vnops.c
1737
cursor.leaf->data_len - HAMMER_ENTRY_NAME_OFF ,
sys/vfs/hammer/hammer_vnops.c
1738
(void *)cursor.data->entry.name);
sys/vfs/hammer/hammer_vnops.c
1747
error = hammer_ip_next(&cursor);
sys/vfs/hammer/hammer_vnops.c
1749
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
1785
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_vnops.c
1854
hammer_init_cursor(&trans, &cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_vnops.c
1860
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_vnops.c
1862
cursor.key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_vnops.c
1863
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_vnops.c
1864
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_vnops.c
1865
cursor.key_beg.rec_type = HAMMER_RECTYPE_FIX;
sys/vfs/hammer/hammer_vnops.c
1866
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_vnops.c
1867
cursor.key_beg.key = HAMMER_FIXKEY_SYMLINK;
sys/vfs/hammer/hammer_vnops.c
1868
cursor.asof = ip->obj_asof;
sys/vfs/hammer/hammer_vnops.c
1869
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_vnops.c
1871
error = hammer_ip_lookup(&cursor);
sys/vfs/hammer/hammer_vnops.c
1873
error = hammer_ip_resolve_data(&cursor);
sys/vfs/hammer/hammer_vnops.c
1875
KKASSERT(cursor.leaf->data_len >=
sys/vfs/hammer/hammer_vnops.c
1877
error = uiomove(cursor.data->symlink.name,
sys/vfs/hammer/hammer_vnops.c
1878
cursor.leaf->data_len -
sys/vfs/hammer/hammer_vnops.c
1883
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
1933
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_vnops.c
2003
hammer_init_cursor(&trans, &cursor, &fdip->cache[1], fdip);
sys/vfs/hammer/hammer_vnops.c
2004
cursor.key_beg.localization = fdip->obj_localization |
sys/vfs/hammer/hammer_vnops.c
2006
cursor.key_beg.obj_id = fdip->obj_id;
sys/vfs/hammer/hammer_vnops.c
2007
cursor.key_beg.key = namekey;
sys/vfs/hammer/hammer_vnops.c
2008
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_vnops.c
2009
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_vnops.c
2010
cursor.key_beg.rec_type = HAMMER_RECTYPE_DIRENTRY;
sys/vfs/hammer/hammer_vnops.c
2011
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_vnops.c
2013
cursor.key_end = cursor.key_beg;
sys/vfs/hammer/hammer_vnops.c
2014
cursor.key_end.key += max_iterations;
sys/vfs/hammer/hammer_vnops.c
2015
cursor.asof = fdip->obj_asof;
sys/vfs/hammer/hammer_vnops.c
2016
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_vnops.c
2025
error = hammer_ip_first(&cursor);
sys/vfs/hammer/hammer_vnops.c
2027
if (hammer_ip_resolve_data(&cursor) != 0)
sys/vfs/hammer/hammer_vnops.c
2029
nlen = cursor.leaf->data_len - HAMMER_ENTRY_NAME_OFF;
sys/vfs/hammer/hammer_vnops.c
2032
bcmp(fncp->nc_name, cursor.data->entry.name, nlen) == 0) {
sys/vfs/hammer/hammer_vnops.c
2035
error = hammer_ip_next(&cursor);
sys/vfs/hammer/hammer_vnops.c
2046
error = hammer_ip_del_direntry(&trans, &cursor, fdip, ip);
sys/vfs/hammer/hammer_vnops.c
2053
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
2065
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
2644
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_vnops.c
2703
hammer_init_cursor(&trans, &cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_vnops.c
2710
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_vnops.c
2712
cursor.key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_vnops.c
2713
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_vnops.c
2714
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_vnops.c
2715
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_vnops.c
2716
cursor.key_beg.key = bio->bio_offset + 1;
sys/vfs/hammer/hammer_vnops.c
2717
cursor.asof = ip->obj_asof;
sys/vfs/hammer/hammer_vnops.c
2718
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_vnops.c
2720
cursor.key_end = cursor.key_beg;
sys/vfs/hammer/hammer_vnops.c
2724
cursor.key_beg.rec_type = HAMMER_RECTYPE_DB;
sys/vfs/hammer/hammer_vnops.c
2725
cursor.key_end.rec_type = HAMMER_RECTYPE_DB;
sys/vfs/hammer/hammer_vnops.c
2726
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_vnops.c
2731
cursor.key_beg.rec_type = HAMMER_RECTYPE_DATA;
sys/vfs/hammer/hammer_vnops.c
2732
cursor.key_end.rec_type = HAMMER_RECTYPE_DATA;
sys/vfs/hammer/hammer_vnops.c
2735
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_vnops.c
2737
cursor.key_end.key = ran_end + MAXPHYS + 1;
sys/vfs/hammer/hammer_vnops.c
2739
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_vnops.c
2749
cursor.flags |= HAMMER_CURSOR_NOSWAPCACHE;
sys/vfs/hammer/hammer_vnops.c
2752
error = hammer_ip_first(&cursor);
sys/vfs/hammer/hammer_vnops.c
2760
base = &cursor.leaf->base;
sys/vfs/hammer/hammer_vnops.c
2761
rec_offset = base->key - cursor.leaf->data_len;
sys/vfs/hammer/hammer_vnops.c
2788
n = cursor.leaf->data_len - roff;
sys/vfs/hammer/hammer_vnops.c
2814
if (hammer_cursor_ondisk(&cursor)/* ||
sys/vfs/hammer/hammer_vnops.c
2823
if (hammer_cursor_ondisk(&cursor)) {
sys/vfs/hammer/hammer_vnops.c
2843
disk_offset = cursor.leaf->data_offset + roff;
sys/vfs/hammer/hammer_vnops.c
2845
hammer_cursor_ondisk(&cursor) &&
sys/vfs/hammer/hammer_vnops.c
2854
error = hammer_io_direct_read(hmp, nbio, cursor.leaf);
sys/vfs/hammer/hammer_vnops.c
2863
error = hammer_io_indirect_read(hmp, nbio, cursor.leaf);
sys/vfs/hammer/hammer_vnops.c
2866
error = hammer_ip_resolve_data(&cursor);
sys/vfs/hammer/hammer_vnops.c
2868
bcopy((char *)cursor.data + roff,
sys/vfs/hammer/hammer_vnops.c
2881
error = hammer_ip_next(&cursor);
sys/vfs/hammer/hammer_vnops.c
2924
if (cursor.node)
sys/vfs/hammer/hammer_vnops.c
2925
hammer_cache_node(&ip->cache[1], cursor.node);
sys/vfs/hammer/hammer_vnops.c
2930
hammer_cache_node(&dip->cache[3], cursor.node);
sys/vfs/hammer/hammer_vnops.c
2934
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
2962
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_vnops.c
3000
hammer_init_cursor(&trans, &cursor, &ip->cache[1], ip);
sys/vfs/hammer/hammer_vnops.c
3007
cursor.key_beg.localization = ip->obj_localization |
sys/vfs/hammer/hammer_vnops.c
3009
cursor.key_beg.obj_id = ip->obj_id;
sys/vfs/hammer/hammer_vnops.c
3010
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_vnops.c
3011
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_vnops.c
3012
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_vnops.c
3014
cursor.key_beg.key = ap->a_loffset - MAXPHYS + 1;
sys/vfs/hammer/hammer_vnops.c
3016
cursor.key_beg.key = ap->a_loffset + 1;
sys/vfs/hammer/hammer_vnops.c
3017
if (cursor.key_beg.key < 0)
sys/vfs/hammer/hammer_vnops.c
3018
cursor.key_beg.key = 0;
sys/vfs/hammer/hammer_vnops.c
3019
cursor.asof = ip->obj_asof;
sys/vfs/hammer/hammer_vnops.c
3020
cursor.flags |= HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_vnops.c
3022
cursor.key_end = cursor.key_beg;
sys/vfs/hammer/hammer_vnops.c
3026
cursor.key_beg.rec_type = HAMMER_RECTYPE_DATA;
sys/vfs/hammer/hammer_vnops.c
3027
cursor.key_end.rec_type = HAMMER_RECTYPE_DATA;
sys/vfs/hammer/hammer_vnops.c
3030
cursor.key_end.key = HAMMER_MAX_KEY;
sys/vfs/hammer/hammer_vnops.c
3032
cursor.key_end.key = ran_end + MAXPHYS + 1;
sys/vfs/hammer/hammer_vnops.c
3034
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE;
sys/vfs/hammer/hammer_vnops.c
3036
error = hammer_ip_first(&cursor);
sys/vfs/hammer/hammer_vnops.c
3049
base = &cursor.leaf->base;
sys/vfs/hammer/hammer_vnops.c
3050
rec_offset = base->key - cursor.leaf->data_len;
sys/vfs/hammer/hammer_vnops.c
3051
rec_len = cursor.leaf->data_len;
sys/vfs/hammer/hammer_vnops.c
3062
if (hammer_cursor_ondisk(&cursor) ||
sys/vfs/hammer/hammer_vnops.c
3063
cursor.iprec->flush_state == HAMMER_FST_FLUSH) {
sys/vfs/hammer/hammer_vnops.c
3071
if (hammer_cursor_ondisk(&cursor)) {
sys/vfs/hammer/hammer_vnops.c
3086
if (hammer_cursor_ondisk(&cursor)) {
sys/vfs/hammer/hammer_vnops.c
3087
disk_offset = cursor.leaf->data_offset;
sys/vfs/hammer/hammer_vnops.c
3098
error = hammer_ip_next(&cursor);
sys/vfs/hammer/hammer_vnops.c
3101
if (cursor.node)
sys/vfs/hammer/hammer_vnops.c
3102
hammer_cache_node(&ip->cache[1], cursor.node);
sys/vfs/hammer/hammer_vnops.c
3104
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
3291
struct hammer_cursor cursor;
sys/vfs/hammer/hammer_vnops.c
3313
hammer_init_cursor(trans, &cursor, &dip->cache[1], dip);
sys/vfs/hammer/hammer_vnops.c
3314
cursor.key_beg.localization = dip->obj_localization |
sys/vfs/hammer/hammer_vnops.c
3316
cursor.key_beg.obj_id = dip->obj_id;
sys/vfs/hammer/hammer_vnops.c
3317
cursor.key_beg.key = namekey;
sys/vfs/hammer/hammer_vnops.c
3318
cursor.key_beg.create_tid = 0;
sys/vfs/hammer/hammer_vnops.c
3319
cursor.key_beg.delete_tid = 0;
sys/vfs/hammer/hammer_vnops.c
3320
cursor.key_beg.rec_type = HAMMER_RECTYPE_DIRENTRY;
sys/vfs/hammer/hammer_vnops.c
3321
cursor.key_beg.obj_type = 0;
sys/vfs/hammer/hammer_vnops.c
3323
cursor.key_end = cursor.key_beg;
sys/vfs/hammer/hammer_vnops.c
3324
cursor.key_end.key += max_iterations;
sys/vfs/hammer/hammer_vnops.c
3325
cursor.asof = dip->obj_asof;
sys/vfs/hammer/hammer_vnops.c
3326
cursor.flags |= HAMMER_CURSOR_END_INCLUSIVE | HAMMER_CURSOR_ASOF;
sys/vfs/hammer/hammer_vnops.c
3337
error = hammer_ip_first(&cursor);
sys/vfs/hammer/hammer_vnops.c
3340
error = hammer_ip_resolve_data(&cursor);
sys/vfs/hammer/hammer_vnops.c
3343
nlen = cursor.leaf->data_len - HAMMER_ENTRY_NAME_OFF;
sys/vfs/hammer/hammer_vnops.c
3346
bcmp(ncp->nc_name, cursor.data->entry.name, nlen) == 0) {
sys/vfs/hammer/hammer_vnops.c
3349
error = hammer_ip_next(&cursor);
sys/vfs/hammer/hammer_vnops.c
3360
hammer_unlock(&cursor.ip->lock);
sys/vfs/hammer/hammer_vnops.c
3361
ip = hammer_get_inode(trans, dip, cursor.data->entry.obj_id,
sys/vfs/hammer/hammer_vnops.c
3363
cursor.data->entry.localization,
sys/vfs/hammer/hammer_vnops.c
3365
hammer_lock_sh(&cursor.ip->lock);
sys/vfs/hammer/hammer_vnops.c
3371
(intmax_t)cursor.data->entry.obj_id);
sys/vfs/hammer/hammer_vnops.c
3406
hammer_unlock_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
3408
hammer_lock_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
3409
if (cursor.flags & HAMMER_CURSOR_RETEST) {
sys/vfs/hammer/hammer_vnops.c
3425
error = hammer_ip_del_direntry(trans, &cursor,
sys/vfs/hammer/hammer_vnops.c
3428
hammer_done_cursor(&cursor);
sys/vfs/hammer/hammer_vnops.c
3470
hammer_done_cursor(&cursor);
test/stress/fsstress/fsstress.c
1424
attrlist_cursor_t cursor;
test/stress/fsstress/fsstress.c
1436
bzero(&cursor, sizeof(cursor));
test/stress/fsstress/fsstress.c
1439
&cursor);
test/stress/fsstress/fsstress.c
1454
bzero(&cursor, sizeof(cursor));
test/stress/fsstress/fsstress.c
1459
&cursor);
test/stress/fsstress/fsstress.c
519
attrlist_cursor_t *cursor)
test/stress/fsstress/fsstress.c
525
rval = attr_list(name->path, buffer, buffersize, flags, cursor);
test/stress/fsstress/fsstress.c
531
cursor);
usr.sbin/installer/libaura/dict.c
105
d->cursor = NULL;
usr.sbin/installer/libaura/dict.c
402
while (d->cursor == NULL) {
usr.sbin/installer/libaura/dict.c
408
d->cursor = d->b[d->cur_bucket];
usr.sbin/installer/libaura/dict.c
417
d->cursor = d->b[d->cur_bucket];
usr.sbin/installer/libaura/dict.c
424
return(d->cursor == NULL);
usr.sbin/installer/libaura/dict.c
430
if (d->cursor == NULL) {
usr.sbin/installer/libaura/dict.c
433
*key = d->cursor->key;
usr.sbin/installer/libaura/dict.c
434
*key_size = d->cursor->key_size;
usr.sbin/installer/libaura/dict.c
441
if (d->cursor != NULL)
usr.sbin/installer/libaura/dict.c
442
d->cursor = d->cursor->next;
usr.sbin/installer/libaura/dict.h
55
struct aura_bucket *cursor;