Home
last modified time | relevance | path

Searched full:watch (Results 1 – 25 of 294) sorted by relevance

12345678910>>...12

/linux-6.14.4/kernel/
Dwatch_queue.c2 /* Watch queue and general notification mechanism, built on pipes
30 MODULE_DESCRIPTION("Watch queue");
91 * Post a notification to a watch queue.
183 * @wlist: The watch list to post the event to.
186 * @id: The ID to match on the watch.
188 * Post a notification of an event into a set of watch queues and let the users
201 struct watch *watch; in __post_watch_notification() local
210 hlist_for_each_entry_rcu(watch, &wlist->watchers, list_node) { in __post_watch_notification()
211 if (watch->id != id) in __post_watch_notification()
214 n->info |= watch->info_id; in __post_watch_notification()
[all …]
Daudit_watch.c33 * audit_krule holds a reference to its associated watch.
100 void audit_get_watch(struct audit_watch *watch) in audit_get_watch() argument
102 refcount_inc(&watch->count); in audit_get_watch()
105 void audit_put_watch(struct audit_watch *watch) in audit_put_watch() argument
107 if (refcount_dec_and_test(&watch->count)) { in audit_put_watch()
108 WARN_ON(watch->parent); in audit_put_watch()
109 WARN_ON(!list_empty(&watch->rules)); in audit_put_watch()
110 kfree(watch->path); in audit_put_watch()
111 kfree(watch); in audit_put_watch()
115 static void audit_remove_watch(struct audit_watch *watch) in audit_remove_watch() argument
[all …]
Dauditfilter.c89 if (erule->watch) in audit_free_rule()
90 audit_put_watch(erule->watch); in audit_free_rule()
158 krule->inode_f || krule->watch || krule->tree || in audit_to_inode()
672 audit_watch_path(krule->watch)); in audit_krule_to_data()
737 if (strcmp(audit_watch_path(a->watch), in audit_compare_rule()
738 audit_watch_path(b->watch))) in audit_compare_rule()
816 * of the watch - that pointer is carried over. The LSM specific fields
891 if (old->watch) { in audit_dupe_rule()
892 audit_get_watch(old->watch); in audit_dupe_rule()
893 new->watch = old->watch; in audit_dupe_rule()
[all …]
/linux-6.14.4/Documentation/core-api/
Dwatch_queue.rst33 watch through that pipe. Only sources that have been connected to a pipe will
63 the type of record from that source (see the Watch Sources section below). The
65 internally by the watch queue itself. There are two subtypes:
70 The first indicates that an object on which a watch was installed was removed
79 * The watch ID (mask with WATCH_INFO_ID and shift by WATCH_INFO_ID__SHIFT).
80 This indicates that caller's ID of the watch, which may be between 0
94 Watch List (Notification Source) API
97 A "watch list" is a list of watchers that are subscribed to a source of
100 non-global watch list is typically referred to by reference to the object it
102 watch that specific key).
[all …]
/linux-6.14.4/tools/counter/
Dcounter_watch_events.c3 * Counter Watch Events - Test various counter watch events in a userspace application
58 static void print_watch(struct counter_watch *watch, int nwatch) in print_watch() argument
62 /* prints the watch array in C-like structure */ in print_watch()
63 printf("watch[%d] = {\n", nwatch); in print_watch()
74 counter_component_type_name[watch[i].component.type], in print_watch()
75 counter_scope_name[watch[i].component.scope], in print_watch()
76 watch[i].component.parent, in print_watch()
77 watch[i].component.id, in print_watch()
78 counter_event_type_name[watch[i].event], in print_watch()
79 watch[i].channel); in print_watch()
[all …]
/linux-6.14.4/drivers/xen/xenbus/
Dxenbus_dev_frontend.c97 * alone during a watch callback.
228 struct xenbus_watch watch; member
233 static void free_watch_adapter(struct watch_adapter *watch) in free_watch_adapter() argument
235 kfree(watch->watch.node); in free_watch_adapter()
236 kfree(watch->token); in free_watch_adapter()
237 kfree(watch); in free_watch_adapter()
243 struct watch_adapter *watch; in alloc_watch_adapter() local
245 watch = kzalloc(sizeof(*watch), GFP_KERNEL); in alloc_watch_adapter()
246 if (watch == NULL) in alloc_watch_adapter()
249 watch->watch.node = kstrdup(path, GFP_KERNEL); in alloc_watch_adapter()
[all …]
Dxenbus_xs.c59 * New watch events happening in this time can be ignored by firing all watches
81 /* List of pending watch callback events, and a lock to protect it. */
85 /* Protect watch (de)register against save/restore. */
763 /* Register callback to watch this node. */
764 int register_xenbus_watch(struct xenbus_watch *watch) in register_xenbus_watch() argument
767 char token[sizeof(watch) * 2 + 1]; in register_xenbus_watch()
770 sprintf(token, "%lX", (long)watch); in register_xenbus_watch()
772 watch->nr_pending = 0; in register_xenbus_watch()
778 list_add(&watch->list, &watches); in register_xenbus_watch()
781 err = xs_watch(watch->node, token); in register_xenbus_watch()
[all …]
Dxenbus_client.c115 * xenbus_watch_path - register a watch
117 * @path: path to watch
118 * @watch: watch to register
122 * Register a @watch on the given path, using the given xenbus_watch structure
125 * On success, the given @path will be saved as @watch->node, and remains the
126 * caller's to free. On error, @watch->node will be NULL, the device will
132 struct xenbus_watch *watch, in xenbus_watch_path() argument
140 watch->node = path; in xenbus_watch_path()
141 watch->will_handle = will_handle; in xenbus_watch_path()
142 watch->callback = callback; in xenbus_watch_path()
[all …]
Dxenbus_probe_backend.c183 static bool frontend_will_handle(struct xenbus_watch *watch, in frontend_will_handle() argument
186 return watch->nr_pending == 0; in frontend_will_handle()
189 static void frontend_changed(struct xenbus_watch *watch, in frontend_changed() argument
192 xenbus_otherend_changed(watch, path, token, 0); in frontend_changed()
212 static void backend_changed(struct xenbus_watch *watch, in backend_changed() argument
250 /* Enumerate devices in xenstore and watch for changes. */ in backend_probe_and_watch()
/linux-6.14.4/drivers/gpu/drm/v3d/
Dv3d_perfmon.c49 {"AXI", "AXI-writes-seen-watch-0", "[AXI] Writes seen by watch 0"},
50 {"AXI", "AXI-reads-seen-watch-0", "[AXI] Reads seen by watch 0"},
51 {"AXI", "AXI-writes-stalled-seen-watch-0", "[AXI] Write stalls seen by watch 0"},
52 {"AXI", "AXI-reads-stalled-seen-watch-0", "[AXI] Read stalls seen by watch 0"},
53 {"AXI", "AXI-write-bytes-seen-watch-0", "[AXI] Total bytes written seen by watch 0"},
54 {"AXI", "AXI-read-bytes-seen-watch-0", "[AXI] Total bytes read seen by watch 0"},
55 {"AXI", "AXI-writes-seen-watch-1", "[AXI] Writes seen by watch 1"},
56 {"AXI", "AXI-reads-seen-watch-1", "[AXI] Reads seen by watch 1"},
57 {"AXI", "AXI-writes-stalled-seen-watch-1", "[AXI] Write stalls seen by watch 1"},
58 {"AXI", "AXI-reads-stalled-seen-watch-1", "[AXI] Read stalls seen by watch 1"},
[all …]
/linux-6.14.4/drivers/counter/
Dcounter-chrdev.c139 struct counter_watch *const watch, in counter_set_event_node() argument
148 if (event_node->event == watch->event && in counter_set_event_node()
149 event_node->channel == watch->channel) in counter_set_event_node()
160 event_node->event = watch->event; in counter_set_event_node()
161 event_node->channel = watch->channel; in counter_set_event_node()
166 /* Check if component watch has already been set before */ in counter_set_event_node()
268 struct counter_watch watch; in counter_add_watch() local
276 if (copy_from_user(&watch, uwatch, sizeof(watch))) in counter_add_watch()
279 if (watch.component.type == COUNTER_COMPONENT_NONE) in counter_add_watch()
282 parent = watch.component.parent; in counter_add_watch()
[all …]
/linux-6.14.4/include/linux/
Dwatch_queue.h2 /* User-mappable watch queue
52 * Representation of a watch on an object.
54 struct watch { struct
63 const struct cred *cred; /* Creds of the owner of the watch */ argument
75 void (*release_watch)(struct watch *); argument
85 extern void init_watch(struct watch *, struct watch_queue *);
86 extern int add_watch_to_object(struct watch *, struct watch_list *);
95 void (*release_watch)(struct watch *)) in init_watch_list() argument
120 * watch_sizeof - Calculate the information part of the size of a watch record,
/linux-6.14.4/include/uapi/linux/
Dinotify.h22 __s32 wd; /* watch descriptor */
23 __u32 mask; /* watch mask */
29 /* the following are legal, implemented events that user-space can watch for */
43 /* the following are legal events. they are sent as needed to any watch */
53 #define IN_ONLYDIR 0x01000000 /* only watch the path if it is a directory */
57 #define IN_MASK_ADD 0x20000000 /* add to the mask of an already existing watch */
80 * watch descriptor.
Dcounter.h71 * struct counter_watch - Counter component watch configuration
72 * @component: component to watch when event triggers
84 * Queues a Counter watch for the specified event.
108 * @watch: component watch configuration
114 struct counter_watch watch; member
Dwatch_queue.h67 * Extended watch removal notification. This is used optionally if the type
75 struct watch_notification watch; member
95 * - watch.type = WATCH_TYPE_KEY_NOTIFY
96 * - watch.subtype = enum key_notification_type
99 struct watch_notification watch; member
/linux-6.14.4/Documentation/userspace-api/gpio/
Dgpio-get-lineinfo-watch-ioctl.rst11 gpio-v2-get-lineinfo-watch-ioctl.rst.
34 the ``offset`` set to indicate the line to watch
55 Multiple lines may be watched simultaneously by adding a watch for each.
57 Once a watch is set, any changes to line info will generate events which can be
61 Adding a watch to a line that is already watched is an error (**EBUSY**).
Dgpio-v2-get-lineinfo-watch-ioctl.rst30 the ``offset`` set to indicate the line to watch
50 Multiple lines may be watched simultaneously by adding a watch for each.
52 Once a watch is set, any changes to line info will generate events which can be
56 Adding a watch to a line that is already watched is an error (**EBUSY**).
Dgpio-get-lineinfo-unwatch-ioctl.rst29 The offset of the line to no longer watch.
36 This is the reverse of gpio-v2-get-lineinfo-watch-ioctl.rst (v2) and
37 gpio-get-lineinfo-watch-ioctl.rst (v1).
/linux-6.14.4/Documentation/translations/zh_CN/core-api/
Dwatch_queue.rst105 void (*release_watch)(struct watch *wlist));
138 struct watch {
159 * ``void init_watch(struct watch *watch, struct watch_queue *wqueue);``
163 * ``int add_watch_to_object(struct watch *watch, struct watch_list *wlist);``
251 (watch.info & info_mask) == info_filter
/linux-6.14.4/arch/mips/kernel/
Dwatch.c12 #include <asm/watch.h>
15 * Install the watch registers for the current thread. A maximum of
20 struct mips3264_watch_reg_state *watches = &t->thread.watch.mips3264; in mips_install_watch_registers()
53 &current->thread.watch.mips3264; in mips_read_watch_registers()
75 * since we got here, the watch condition was met and in mips_read_watch_registers()
83 * Disable all watch registers. Although only four registers are
85 * looping in the watch handler.
/linux-6.14.4/Documentation/filesystems/
Dinotify.rst18 What is the design decision behind not tying the watch to the open fd of
30 an fd-per-watch?
33 An fd-per-watch quickly consumes more file descriptors than are allowed,
37 A watch consumes less memory than an open file, separating the number
47 fd returns all watch events and also any potential out-of-band data. If
48 every fd was a separate watch,
/linux-6.14.4/tools/gpio/
DMakefile21 ALL_TARGETS := lsgpio gpio-hammer gpio-event-mon gpio-watch
70 # gpio-watch
72 GPIO_WATCH_IN := $(OUTPUT)gpio-watch-in.o
74 $(Q)$(MAKE) $(build)=gpio-watch
75 $(OUTPUT)gpio-watch: $(GPIO_WATCH_IN)
DBuild5 gpio-watch-y += gpio-watch.o
/linux-6.14.4/drivers/watchdog/
Dacquirewdt.c23 * The Watch-Dog Timer is provided to ensure that standalone
31 * The Watch-Dog Timer is controlled by two I/O Ports.
32 * 443 hex - Read - Enable or refresh the Watch-Dog Timer
33 * 043 hex - Read - Disable the Watch-Dog Timer
35 * To enable the Watch-Dog Timer, a read from I/O port 443h must
39 * reset condition does not occur, the Watch-Dog Timer must be
41 * The Watch-Dog Timer is disabled by reading I/O port 043h.
43 * The Watch-Dog Timer Time-Out Period is set via jumpers.
/linux-6.14.4/Documentation/gpu/
Dintroduction.rst155 * `An Overview of the Linux and Userspace Graphics Stack <https://www.youtube.com/watch?v=wjAJmqwg4…
156 …en on Linux: introduction to Kernel Mode Setting <https://www.youtube.com/watch?v=haes4_Xnc5Q>`_ -…
157 * `Everything Great about Upstream Graphics <https://www.youtube.com/watch?v=kVzHOgt6WGE>`_ - Simon…
158 * `An introduction to the Linux DRM subsystem <https://www.youtube.com/watch?v=LbDOCJcDRoo>`_ - Max…
159 * `Embrace the Atomic (Display) Age <https://www.youtube.com/watch?v=LjiB_JeDn2M>`_ - Simona Vetter…
160 * `Anatomy of an Atomic KMS Driver <https://www.youtube.com/watch?v=lihqR9sENpc>`_ - Laurent Pincha…
161 * `Atomic Modesetting for Drivers <https://www.youtube.com/watch?v=kl9suFgbTc8>`_ - Simona Vetter (…
162 * `Anatomy of an Embedded KMS Driver <https://www.youtube.com/watch?v=Ja8fM7rTae4>`_ - Laurent Pinc…

12345678910>>...12