/kernel/linux/linux-6.6/fs/ceph/ |
H A D | snap.c | 527 struct ceph_cap_snap *capsnap = *pcapsnap; in ceph_queue_cap_snap() local 541 * up this capsnap it will be. in ceph_queue_cap_snap() 574 capsnap->need_flush = true; in ceph_queue_cap_snap() 585 __func__, inode, ceph_vinop(inode), capsnap, old_snapc, in ceph_queue_cap_snap() 586 ceph_cap_string(dirty), capsnap->need_flush ? "" : "no_flush"); in ceph_queue_cap_snap() 589 capsnap->follows = old_snapc->seq; in ceph_queue_cap_snap() 590 capsnap->issued = __ceph_caps_issued(ci, NULL); in ceph_queue_cap_snap() 591 capsnap->dirty = dirty; in ceph_queue_cap_snap() 593 capsnap->mode = inode->i_mode; in ceph_queue_cap_snap() 594 capsnap in ceph_queue_cap_snap() 653 __ceph_finish_cap_snap(struct ceph_inode_info *ci, struct ceph_cap_snap *capsnap) __ceph_finish_cap_snap() argument 715 struct ceph_cap_snap *capsnap = NULL; queue_realm_cap_snaps() local [all...] |
H A D | caps.c | 1447 struct ceph_cap_snap *capsnap; in __prep_cap() local 1448 list_for_each_entry_reverse(capsnap, &ci->i_cap_snaps, ci_item) { in __prep_cap() 1449 if (capsnap->cap_flush.tid) in __prep_cap() 1451 if (capsnap->need_flush) { in __prep_cap() 1523 struct ceph_cap_snap *capsnap, in __send_flush_snap() 1532 arg.follows = capsnap->follows; in __send_flush_snap() 1533 arg.flush_tid = capsnap->cap_flush.tid; in __send_flush_snap() 1536 arg.size = capsnap->size; in __send_flush_snap() 1538 arg.xattr_version = capsnap->xattr_version; in __send_flush_snap() 1539 arg.xattr_buf = capsnap in __send_flush_snap() 1521 __send_flush_snap(struct inode *inode, struct ceph_mds_session *session, struct ceph_cap_snap *capsnap, u32 mseq, u64 oldest_flush_tid) __send_flush_snap() argument 1596 struct ceph_cap_snap *capsnap; global() variable 1680 ceph_put_cap_snap(capsnap); global() variable 2562 struct ceph_cap_snap *capsnap = global() variable 2582 ceph_put_cap_snap(capsnap); global() variable 3116 ceph_try_drop_cap_snap(struct ceph_inode_info *ci, struct ceph_cap_snap *capsnap) ceph_try_drop_cap_snap() argument 3202 struct ceph_cap_snap *capsnap = __ceph_put_cap_refs() local 3268 struct ceph_cap_snap *capsnap = NULL, *iter; ceph_put_wrbuffer_cap_refs() local 3833 __ceph_remove_capsnap(struct inode *inode, struct ceph_cap_snap *capsnap, bool *wake_ci, bool *wake_mdsc) __ceph_remove_capsnap() argument 3859 ceph_remove_capsnap(struct inode *inode, struct ceph_cap_snap *capsnap, bool *wake_ci, bool *wake_mdsc) ceph_remove_capsnap() argument 3883 struct ceph_cap_snap *capsnap = NULL, *iter; handle_cap_flushsnap_ack() local 4834 struct ceph_cap_snap *capsnap; remove_capsnaps() local [all...] |
H A D | addr.c | 44 * moved to capsnap->dirty. (Unless a sync write is currently in 45 * progress. In that case, the capsnap is said to be "pending", new 46 * writes cannot start, and the capsnap isn't "finalized" until the 51 * we look for the first capsnap in i_cap_snaps and write out pages in 52 * that snap context _only_. Then we move on to the next capsnap, 100 struct ceph_cap_snap *capsnap = in ceph_dirty_folio() local 104 snapc = ceph_get_snap_context(capsnap->context); in ceph_dirty_folio() 105 capsnap->dirty_pages++; in ceph_dirty_folio() 567 struct ceph_cap_snap *capsnap = NULL; in get_oldest_context() local 570 list_for_each_entry(capsnap, in get_oldest_context() 623 struct ceph_cap_snap *capsnap = NULL; get_writepages_data_length() local [all...] |
H A D | super.h | 210 bool is_capsnap; /* true means capsnap */ 249 static inline void ceph_put_cap_snap(struct ceph_cap_snap *capsnap) in ceph_put_cap_snap() argument 251 if (refcount_dec_and_test(&capsnap->nref)) { in ceph_put_cap_snap() 252 if (capsnap->xattr_blob) in ceph_put_cap_snap() 253 ceph_buffer_put(capsnap->xattr_blob); in ceph_put_cap_snap() 254 kmem_cache_free(ceph_cap_snap_cachep, capsnap); in ceph_put_cap_snap() 992 struct ceph_cap_snap *capsnap); 1255 struct ceph_cap_snap *capsnap, 1258 struct ceph_cap_snap *capsnap,
|
H A D | file.c | 1332 struct ceph_cap_snap *capsnap = in ceph_aio_retry_work() local 1336 snapc = ceph_get_snap_context(capsnap->context); in ceph_aio_retry_work() 2330 struct ceph_cap_snap *capsnap = in ceph_write_iter() local 2334 snapc = ceph_get_snap_context(capsnap->context); in ceph_write_iter()
|
H A D | mds_client.c | 4369 struct ceph_cap_snap *capsnap = in reconnect_caps_cb() local 4372 snap_follows = capsnap->follows; in reconnect_caps_cb()
|
/kernel/linux/linux-5.10/fs/ceph/ |
H A D | snap.c | 480 struct ceph_cap_snap *capsnap; in ceph_queue_cap_snap() local 485 capsnap = kzalloc(sizeof(*capsnap), GFP_NOFS); in ceph_queue_cap_snap() 486 if (!capsnap) { in ceph_queue_cap_snap() 490 capsnap->cap_flush.is_capsnap = true; in ceph_queue_cap_snap() 491 INIT_LIST_HEAD(&capsnap->cap_flush.i_list); in ceph_queue_cap_snap() 492 INIT_LIST_HEAD(&capsnap->cap_flush.g_list); in ceph_queue_cap_snap() 504 * up this capsnap it will be. in ceph_queue_cap_snap() 535 capsnap->need_flush = true; in ceph_queue_cap_snap() 546 inode, capsnap, old_snap in ceph_queue_cap_snap() 618 __ceph_finish_cap_snap(struct ceph_inode_info *ci, struct ceph_cap_snap *capsnap) __ceph_finish_cap_snap() argument [all...] |
H A D | caps.c | 1434 struct ceph_cap_snap *capsnap; in __prep_cap() local 1435 list_for_each_entry_reverse(capsnap, &ci->i_cap_snaps, ci_item) { in __prep_cap() 1436 if (capsnap->cap_flush.tid) in __prep_cap() 1438 if (capsnap->need_flush) { in __prep_cap() 1478 struct ceph_cap_snap *capsnap, in __send_flush_snap() 1491 arg.follows = capsnap->follows; in __send_flush_snap() 1492 arg.flush_tid = capsnap->cap_flush.tid; in __send_flush_snap() 1495 arg.size = capsnap->size; in __send_flush_snap() 1497 arg.xattr_version = capsnap->xattr_version; in __send_flush_snap() 1498 arg.xattr_buf = capsnap in __send_flush_snap() 1476 __send_flush_snap(struct inode *inode, struct ceph_mds_session *session, struct ceph_cap_snap *capsnap, u32 mseq, u64 oldest_flush_tid) __send_flush_snap() argument 1546 struct ceph_cap_snap *capsnap; global() variable 1629 ceph_put_cap_snap(capsnap); global() variable 2544 struct ceph_cap_snap *capsnap = global() variable 2564 ceph_put_cap_snap(capsnap); global() variable 3096 ceph_try_drop_cap_snap(struct ceph_inode_info *ci, struct ceph_cap_snap *capsnap) ceph_try_drop_cap_snap() argument 3154 struct ceph_cap_snap *capsnap = __ceph_put_cap_refs() local 3214 struct ceph_cap_snap *capsnap = NULL; ceph_put_wrbuffer_cap_refs() local 3756 __ceph_remove_capsnap(struct inode *inode, struct ceph_cap_snap *capsnap, bool *wake_ci, bool *wake_mdsc) __ceph_remove_capsnap() argument 3782 ceph_remove_capsnap(struct inode *inode, struct ceph_cap_snap *capsnap, bool *wake_ci, bool *wake_mdsc) ceph_remove_capsnap() argument 3806 struct ceph_cap_snap *capsnap; handle_cap_flushsnap_ack() local [all...] |
H A D | addr.c | 42 * moved to capsnap->dirty. (Unless a sync write is currently in 43 * progress. In that case, the capsnap is said to be "pending", new 44 * writes cannot start, and the capsnap isn't "finalized" until the 49 * we look for the first capsnap in i_cap_snaps and write out pages in 50 * that snap context _only_. Then we move on to the next capsnap, 96 struct ceph_cap_snap *capsnap = in ceph_set_page_dirty() local 100 snapc = ceph_get_snap_context(capsnap->context); in ceph_set_page_dirty() 101 capsnap->dirty_pages++; in ceph_set_page_dirty() 507 struct ceph_cap_snap *capsnap = NULL; in get_oldest_context() local 510 list_for_each_entry(capsnap, in get_oldest_context() 563 struct ceph_cap_snap *capsnap = NULL; get_writepages_data_length() local [all...] |
H A D | super.h | 186 bool is_capsnap; /* true means capsnap */ 225 static inline void ceph_put_cap_snap(struct ceph_cap_snap *capsnap) in ceph_put_cap_snap() argument 227 if (refcount_dec_and_test(&capsnap->nref)) { in ceph_put_cap_snap() 228 if (capsnap->xattr_blob) in ceph_put_cap_snap() 229 ceph_buffer_put(capsnap->xattr_blob); in ceph_put_cap_snap() 230 kfree(capsnap); in ceph_put_cap_snap() 931 struct ceph_cap_snap *capsnap); 1134 struct ceph_cap_snap *capsnap, 1137 struct ceph_cap_snap *capsnap,
|
H A D | file.c | 1151 struct ceph_cap_snap *capsnap = in ceph_aio_retry_work() local 1155 snapc = ceph_get_snap_context(capsnap->context); in ceph_aio_retry_work() 1809 struct ceph_cap_snap *capsnap = in ceph_write_iter() local 1813 snapc = ceph_get_snap_context(capsnap->context); in ceph_write_iter()
|
H A D | mds_client.c | 1617 struct ceph_cap_snap *capsnap; in remove_capsnaps() local 1625 capsnap = list_first_entry(&ci->i_cap_snaps, in remove_capsnaps() 1627 __ceph_remove_capsnap(inode, capsnap, NULL, NULL); in remove_capsnaps() 1628 ceph_put_snap_context(capsnap->context); in remove_capsnaps() 1629 ceph_put_cap_snap(capsnap); in remove_capsnaps() 3797 struct ceph_cap_snap *capsnap = in reconnect_caps_cb() local 3800 snap_follows = capsnap->follows; in reconnect_caps_cb()
|