Searched refs:errseq_t (Results 1 – 15 of 15) sorted by relevance
/Linux-v6.6/Documentation/translations/zh_CN/core-api/ |
D | errseq.rst | 16 errseq_t数据类型 19 ``errseq_t`` 是一种在一个地方记录错误的方法,并允许任意数量的 ``订阅者`` 判断自上 41 总体思路是让 ``观察者`` 对errseq_t值进行采样,并将其保留为运行游标。该值稍后可用 45 新的errseq_t应始终清零。全零的errseq_t值是从未出现错误的特殊(但常见)情况。因此, 65 errseq_t wd_err; /* 用来记录错误 */ 72 wd.wd_err = (errseq_t)0; 78 errseq_t s_wd_err; /* wd_err的私有“游标” */ 110 他只需对员工当前的errseq_t进行采样,然后用它来判断后来是否发生了错误:: 112 errseq_t since = errseq_sample(&wd.wd_err); 119 序列化更新errseq_t游标 [all …]
|
/Linux-v6.6/lib/ |
D | errseq.c | 59 errseq_t errseq_set(errseq_t *eseq, int err) in errseq_set() 61 errseq_t cur, old; in errseq_set() 79 errseq_t new; in errseq_set() 123 errseq_t errseq_sample(errseq_t *eseq) in errseq_sample() 125 errseq_t old = READ_ONCE(*eseq); in errseq_sample() 145 int errseq_check(errseq_t *eseq, errseq_t since) in errseq_check() 147 errseq_t cur = READ_ONCE(*eseq); in errseq_check() 175 int errseq_check_and_advance(errseq_t *eseq, errseq_t *since) in errseq_check_and_advance() 178 errseq_t old, new; in errseq_check_and_advance()
|
/Linux-v6.6/include/linux/ |
D | errseq.h | 8 typedef u32 errseq_t; typedef 10 errseq_t errseq_set(errseq_t *eseq, int err); 11 errseq_t errseq_sample(errseq_t *eseq); 12 int errseq_check(errseq_t *eseq, errseq_t since); 13 int errseq_check_and_advance(errseq_t *eseq, errseq_t *since);
|
D | pagemap.h | 99 errseq_t since) in filemap_check_wb_err() 111 static inline errseq_t filemap_sample_wb_err(struct address_space *mapping) in filemap_sample_wb_err() 123 static inline errseq_t file_sample_sb_err(struct file *file) in file_sample_sb_err()
|
D | fs.h | 486 errseq_t wb_err; 1028 errseq_t f_wb_err; 1029 errseq_t f_sb_err; /* for syncfs */ 1283 errseq_t s_wb_err;
|
/Linux-v6.6/Documentation/core-api/ |
D | errseq.rst | 2 The errseq_t datatype 5 An errseq_t is a way of recording errors in one place, and allowing any 34 The general idea is for "watchers" to sample an errseq_t value and keep 41 A new errseq_t should always be zeroed out. An errseq_t value of all zeroes 66 errseq_t wd_err; /* for recording errors */ 73 wd.wd_err = (errseq_t)0; 79 errseq_t s_wd_err; /* private "cursor" for wd_err */ 119 He can just sample the current errseq_t in the worker, and then use that 122 errseq_t since = errseq_sample(&wd.wd_err); 130 Serializing errseq_t cursor updates [all …]
|
/Linux-v6.6/include/trace/events/ |
D | filemap.h | 60 TP_PROTO(struct address_space *mapping, errseq_t eseq), 67 __field(errseq_t, errseq) 85 TP_PROTO(struct file *file, errseq_t old), 93 __field(errseq_t, old) 94 __field(errseq_t, new)
|
/Linux-v6.6/fs/overlayfs/ |
D | ovl_entry.h | 93 errseq_t errseq;
|
/Linux-v6.6/fs/nfs/ |
D | file.c | 142 errseq_t since; in nfs_file_flush() 643 errseq_t since; in nfs_file_write()
|
D | nfs4file.c | 113 errseq_t since; in nfs4_file_flush()
|
/Linux-v6.6/fs/nfsd/ |
D | vfs.c | 618 errseq_t since; in nfsd4_clone_file_range() 1130 errseq_t since; in nfsd_vfs_write() 1319 errseq_t since = READ_ONCE(nf->nf_file->f_wb_err); in nfsd_commit()
|
D | nfs4proc.c | 1633 errseq_t since; in _nfsd_copy_file_range()
|
/Linux-v6.6/fs/gfs2/ |
D | lops.c | 526 errseq_t since; in gfs2_find_jhead()
|
/Linux-v6.6/mm/ |
D | filemap.c | 698 errseq_t eseq = errseq_set(&mapping->wb_err, err); in __filemap_set_wb_err() 731 errseq_t old = READ_ONCE(file->f_wb_err); in file_check_and_advance_wb_err()
|
/Linux-v6.6/fs/ext4/ |
D | ext4.h | 1688 errseq_t s_bdev_wb_err;
|