/linux-6.12.1/fs/xfs/scrub/ |
D | xfblob.c | 37 struct xfile *xfile; in xfblob_create() local 40 error = xfile_create(description, 0, &xfile); in xfblob_create() 50 blob->xfile = xfile; in xfblob_create() 57 xfile_destroy(xfile); in xfblob_create() 66 xfile_destroy(blob->xfile); in xfblob_destroy() 81 error = xfile_load(blob->xfile, &key, sizeof(key), cookie); in xfblob_load() 94 return xfile_load(blob->xfile, ptr, key.xb_size, in xfblob_load() 114 error = xfile_store(blob->xfile, &key, sizeof(key), pos); in xfblob_store() 119 error = xfile_store(blob->xfile, ptr, size, pos); in xfblob_store() 127 xfile_discard(blob->xfile, blob->last_offset, sizeof(key)); in xfblob_store() [all …]
|
D | xfile.h | 9 struct xfile { struct 13 int xfile_create(const char *description, loff_t isize, struct xfile **xfilep); argument 14 void xfile_destroy(struct xfile *xf); 16 int xfile_load(struct xfile *xf, void *buf, size_t count, loff_t pos); 17 int xfile_store(struct xfile *xf, const void *buf, size_t count, 20 void xfile_discard(struct xfile *xf, loff_t pos, u64 count); 21 loff_t xfile_seek_data(struct xfile *xf, loff_t pos); 26 struct folio *xfile_get_folio(struct xfile *xf, loff_t offset, size_t len, 28 void xfile_put_folio(struct xfile *xf, struct folio *folio); 30 static inline unsigned long long xfile_bytes(struct xfile *xf) in xfile_bytes()
|
D | xfile.c | 54 struct xfile **xfilep) in xfile_create() 57 struct xfile *xf; in xfile_create() 60 xf = kmalloc(sizeof(struct xfile), XCHK_GFP_FLAGS); in xfile_create() 91 struct xfile *xf) in xfile_destroy() 108 struct xfile *xf, in xfile_load() 171 struct xfile *xf, in xfile_store() 230 struct xfile *xf, in xfile_seek_data() 247 struct xfile *xf, in xfile_get_folio() 305 struct xfile *xf, in xfile_put_folio() 317 struct xfile *xf, in xfile_discard()
|
D | xfarray.c | 77 struct xfile *xfile; in xfarray_create() local 82 error = xfile_create(description, 0, &xfile); in xfarray_create() 91 array->xfile = xfile; in xfarray_create() 116 xfile_destroy(xfile); in xfarray_create() 125 xfile_destroy(array->xfile); in xfarray_destroy() 139 return xfile_load(array->xfile, ptr, array->obj_size, in xfarray_load() 155 error = xfile_load(array->xfile, temp, array->obj_size, pos); in xfarray_is_unset() 187 error = xfile_store(array->xfile, temp, array->obj_size, pos); in xfarray_unset() 212 ret = xfile_store(array->xfile, ptr, array->obj_size, in xfarray_store() 248 error = xfile_load(array->xfile, temp, array->obj_size, in xfarray_store_anywhere() [all …]
|
D | xfblob.h | 10 struct xfile *xfile; member
|
D | rtsummary.c | 67 &sc->xfile); in xchk_setup_rtsummary() 119 return xfile_load(sc->xfile, rawinfo, in xfsum_load() 130 return xfile_store(sc->xfile, &rawinfo, in xfsum_store() 142 return xfile_load(sc->xfile, rawinfo, nr_words << XFS_WORDLOG, in xfsum_copyout()
|
D | xfarray.h | 22 struct xfile *xfile; member
|
D | scrub.c | 204 if (sub->sc.xfile) in xchk_scrub_free_subord() 205 xfile_destroy(sub->sc.xfile); in xchk_scrub_free_subord() 242 if (sc->xfile) { in xchk_teardown() 243 xfile_destroy(sc->xfile); in xchk_teardown() 244 sc->xfile = NULL; in xchk_teardown() 573 sub->sc.xfile = NULL; in xchk_scrub_create_subord()
|
D | scrub.h | 150 struct xfile *xfile; member
|
D | trace.h | 21 struct xfile; 957 TP_PROTO(struct xfile *xf), 979 TP_PROTO(struct xfile *xf), 1000 TP_PROTO(struct xfile *xf, loff_t pos, unsigned long long bytecount), 1027 TP_PROTO(struct xfile *xf, loff_t pos, unsigned long long bytecount), \ 1050 __entry->ino = file_inode(xfa->xfile->file)->i_ino; 1070 __entry->ino = file_inode(si->array->xfile->file)->i_ino; 1090 __entry->ino = file_inode(si->array->xfile->file)->i_ino; 1112 __entry->ino = file_inode(si->array->xfile->file)->i_ino; 1140 __entry->ino = file_inode(si->array->xfile->file)->i_ino; [all …]
|
/linux-6.12.1/fs/xfs/ |
D | Makefile | 183 xfile.o \
|
/linux-6.12.1/Documentation/filesystems/xfs/ |
D | xfs-online-fsck-design.rst | 1878 Hence, the ``xfile`` was born! 1894 xfile Access Models 1911 To support the first four use cases, high level data structures wrap the xfile 1913 The rest of this section discusses the interfaces that the xfile presents to 1921 functions are provided to read and persist objects into an xfile that treat any 1933 pinned nor locked, which means the xfile must not pin too many folios. 1935 Short term direct access to xfile contents is done by locking the pagecache 1938 long term direct access to xfile contents is done by bumping the folio refcount, 1944 retrieve the (locked) folio that backs part of an xfile and to release it. 1949 xfile Access Coordination [all …]
|