| /linux/Documentation/translations/zh_CN/filesystems/ |
| H A D | gfs2-glocks.rst | 19 本文档阐述 glock 状态机内部运作的基本原理。每个 glock(即 29 gl_holders 列表包含与该 glock 关联的所有排队锁请求(不 33 glock 层用户可请求三种锁状态:共享(SH)、延迟(DF)和 58 这些规则通过为每种 glock 定义的操作函数实现。并非所有 59 glock 类型都使用全部的模式,例如仅 inode glock 使用 DF 模 62 glock 操作函数及类型常量说明表: 70 go_instantiate 获取 glock 时调用 71 go_held 每次获取 glock 持有者时调用 72 go_dump 为 debugfs 文件打印对象内容,或出错时将 glock 转储至日志 74 go_unlocked 当 glock 解锁时调用(dlm_unlock()) [all …]
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | rbtree_fail.c | 16 private(A) struct bpf_spin_lock glock; variable 55 bpf_spin_lock(&glock); in rbtree_api_nolock_remove() 57 bpf_spin_unlock(&glock); in rbtree_api_nolock_remove() 88 bpf_spin_lock(&glock); in rbtree_api_remove_unadded_node() 94 bpf_spin_unlock(&glock); in rbtree_api_remove_unadded_node() 115 bpf_spin_lock(&glock); in rbtree_api_remove_no_drop() 126 bpf_spin_unlock(&glock); in rbtree_api_remove_no_drop() 132 bpf_spin_unlock(&glock); in rbtree_api_remove_no_drop() 146 bpf_spin_lock(&glock); in rbtree_api_add_to_multiple_trees() 151 bpf_spin_unlock(&glock); in rbtree_api_add_to_multiple_trees() [all...] |
| H A D | linked_list_peek.c | 15 private(A) struct bpf_spin_lock glock; variable 31 bpf_spin_lock(&glock); in list_peek() 33 bpf_spin_unlock(&glock); in list_peek() 37 bpf_spin_lock(&glock); in list_peek() 39 bpf_spin_unlock(&glock); in list_peek() 48 bpf_spin_lock(&glock); in list_peek() 50 bpf_spin_unlock(&glock); in list_peek() 53 bpf_spin_lock(&glock); in list_peek() 80 bpf_spin_unlock(&glock); in list_peek() 93 bpf_spin_lock(&glock); \ [all …]
|
| H A D | linked_list_fail.c | 112 CHECK(global_kptr, op, &glock, &f1->head); \ 113 CHECK(global_map, op, &glock, &v->head); \ 114 CHECK(global_inner_map, op, &glock, &iv->head); \ 149 CHECK(global_kptr, op, &glock, &f1->head, &b->node); \ 150 CHECK(global_map, op, &glock, &v->head, &f->node2); \ 151 CHECK(global_inner_map, op, &glock, &iv->head, &f->node2); \ 363 bpf_spin_lock(&glock); in use_after_unlock() 369 bpf_spin_unlock(&glock); in use_after_unlock() 394 bpf_spin_lock(&glock); in list_double_add() 402 bpf_spin_unlock(&glock); in list_double_add() [all …]
|
| H A D | rbtree.c | 17 struct bpf_spin_lock glock; member 30 private(A) struct bpf_spin_lock glock; variable 83 return __add_three(&groot, &glock); in rbtree_add_nodes() 89 return __add_three(&groot_nested.inner.root, &groot_nested.inner.glock); in rbtree_add_nodes_nested() 108 bpf_spin_lock(&glock); in rbtree_add_and_remove() 112 bpf_spin_unlock(&glock); in rbtree_add_and_remove() 148 bpf_spin_lock(&glock); in rbtree_add_and_remove_array() 157 bpf_spin_unlock(&glock); in rbtree_add_and_remove_array() 213 bpf_spin_lock(&glock); in rbtree_first_and_remove() 220 bpf_spin_unlock(&glock); in rbtree_first_and_remove() [all …]
|
| H A D | refcounted_kptr_fail.c | 20 private(A) struct bpf_spin_lock glock; variable 44 bpf_spin_lock(&glock); in rbtree_refcounted_node_ref_escapes() 48 bpf_spin_unlock(&glock); in rbtree_refcounted_node_ref_escapes() 89 bpf_spin_lock(&glock); in rbtree_refcounted_node_ref_escapes_owning_input() 91 bpf_spin_unlock(&glock); in rbtree_refcounted_node_ref_escapes_owning_input() 110 bpf_spin_lock(&glock); in BPF_PROG() 115 bpf_spin_unlock(&glock); in BPF_PROG()
|
| H A D | rbtree_btf_fail__wrong_node_type.c | 20 private(A) struct bpf_spin_lock glock; variable 32 bpf_spin_lock(&glock); in rbtree_api_add__wrong_node_type() 34 bpf_spin_unlock(&glock); in rbtree_api_add__wrong_node_type()
|
| H A D | rbtree_btf_fail__add_wrong_type.c | 34 private(A) struct bpf_spin_lock glock; variable 46 bpf_spin_lock(&glock); in rbtree_api_add__add_wrong_type() 48 bpf_spin_unlock(&glock); in rbtree_api_add__add_wrong_type()
|
| H A D | linked_list.c | 322 return test_list_push_pop(&glock, &ghead); in global_list_push_pop() 382 ret = list_push_pop_multiple(&glock, &ghead, false); in global_list_push_pop_multiple() 385 return list_push_pop_multiple(&glock, &ghead, true); in global_list_push_pop_multiple() 417 return test_list_in_list(&glock, &ghead); in global_list_in_list()
|
| H A D | linked_list.h | 52 private(A) struct bpf_spin_lock glock; variable
|
| /linux/Documentation/filesystems/gfs2/ |
| H A D | glocks.rst | 7 This documents the basic principles of the glock state machine 8 internals. Each glock (struct gfs2_glock in fs/gfs2/incore.h) 20 just the holders) associated with the glock. If there are any 25 There are three lock states that users of the glock layer can request, 32 UN IV/NL Unlocked (no DLM lock associated with glock) or NL 52 These rules are implemented using the various glock operations which 53 are defined for each type of glock. Not all types of glocks use 56 Table of glock operations and per type constants: 64 go_instantiate Called when a glock has been acquired 65 go_held Called every time a glock holder is acquired [all …]
|
| /linux/fs/9p/ |
| H A D | vfs_file.c | 230 struct p9_getlock glock; in v9fs_file_getlock() local 246 memset(&glock, 0, sizeof(glock)); in v9fs_file_getlock() 247 glock.type = P9_LOCK_TYPE_UNLCK; in v9fs_file_getlock() 248 glock.start = fl->fl_start; in v9fs_file_getlock() 250 glock.length = 0; in v9fs_file_getlock() 252 glock.length = fl->fl_end - fl->fl_start + 1; in v9fs_file_getlock() 253 glock.proc_id = fl->c.flc_pid; in v9fs_file_getlock() 254 glock.client_id = fid->clnt->name; in v9fs_file_getlock() 256 res = p9_client_getlock_dotl(fid, &glock); in v9fs_file_getlock() 260 switch (glock.type) { in v9fs_file_getlock() [all …]
|
| /linux/net/9p/ |
| H A D | client.c | 2139 int p9_client_getlock_dotl(struct p9_fid *fid, struct p9_getlock *glock) in p9_client_getlock_dotl() argument 2148 fid->fid, glock->type, glock->start, glock->length, in p9_client_getlock_dotl() 2149 glock->proc_id, glock->client_id); in p9_client_getlock_dotl() 2152 glock->type, glock->start, glock->length, in p9_client_getlock_dotl() 2153 glock->proc_id, glock->client_id); in p9_client_getlock_dotl() 2158 err = p9pdu_readf(&req->rc, clnt->proto_version, "bqqds", &glock->type, in p9_client_getlock_dotl() 2159 &glock->start, &glock->length, &glock->proc_id, in p9_client_getlock_dotl() 2160 &glock->client_id); in p9_client_getlock_dotl() 2167 glock->type, glock->start, glock->length, in p9_client_getlock_dotl() 2168 glock->proc_id, glock->client_id); in p9_client_getlock_dotl()
|
| /linux/fs/gfs2/ |
| H A D | glock.h | 149 struct gfs2_glock glock; member 178 container_of(gl, struct gfs2_glock_aspace, glock); in gfs2_glock2aspace()
|
| H A D | Makefile | 4 gfs2-y := acl.o bmap.o dir.o xattr.o glock.o \
|
| H A D | meta_io.h | 46 return glock_sbd(&gla->glock); in gfs2_mapping2sbd()
|
| H A D | main.c | 65 gfs2_init_glock_once(&gla->glock); in gfs2_init_gl_aspace_once()
|
| H A D | glock.c | 135 container_of(gl, struct gfs2_glock_aspace, glock); in gfs2_glock_dealloc() 1101 gl = &gla->glock; in gfs2_glock_get()
|
| /linux/Documentation/bpf/ |
| H A D | graph_ds_impl.rst | 70 struct bpf_spin_lock glock;
|