/linux/kernel/ |
A D | audit_watch.c | 111 kfree(watch); in audit_put_watch() 125 return watch->path; in audit_watch_path() 164 watch = kzalloc(sizeof(*watch), GFP_KERNEL); in audit_init_watch() 170 watch->path = path; in audit_init_watch() 174 return watch; in audit_init_watch() 193 if (IS_ERR(watch)) in audit_to_watch() 196 krule->watch = watch; in audit_to_watch() 368 struct audit_watch *w, *watch = krule->watch; in audit_add_to_parent() local 383 krule->watch = watch = w; in audit_add_to_parent() 402 struct audit_watch *watch = krule->watch; in audit_add_watch() local [all …]
|
A D | watch_queue.c | 182 struct watch *watch; in __post_watch_notification() local 393 struct watch *watch = container_of(rcu, struct watch, rcu); in free_watch() local 402 struct watch *watch = container_of(kref, struct watch, usage); in __put_watch() local 410 static void put_watch(struct watch *watch) in put_watch() argument 422 void init_watch(struct watch *watch, struct watch_queue *wqueue) in init_watch() argument 445 struct watch *w; in add_watch_to_object() 489 struct watch *watch; in remove_watch_from_object() local 498 (watch->id == id && rcu_access_pointer(watch->queue) == wq)) in remove_watch_from_object() 514 n.watch.info = watch->info_id | watch_sizeof(n.watch); in remove_watch_from_object() 517 n.watch.info = watch->info_id | watch_sizeof(n); in remove_watch_from_object() [all …]
|
A D | auditfilter.c | 89 if (erule->watch) in audit_free_rule() 90 audit_put_watch(erule->watch); in audit_free_rule() 889 if (old->watch) { in audit_dupe_rule() 890 audit_get_watch(old->watch); in audit_dupe_rule() 891 new->watch = old->watch; in audit_dupe_rule() 909 } else if (entry->rule.watch) { in audit_find_rule() 941 struct audit_watch *watch = entry->rule.watch; in audit_add_rule() local 968 if (watch) { in audit_add_rule() 1047 if (e->rule.watch) in audit_del_rule() 1418 if (r->watch) in update_lsm_rule() [all …]
|
A D | audit.h | 265 extern void audit_put_watch(struct audit_watch *watch); 266 extern void audit_get_watch(struct audit_watch *watch); 271 extern char *audit_watch_path(struct audit_watch *watch); 272 extern int audit_watch_compare(struct audit_watch *watch, unsigned long ino,
|
/linux/drivers/xen/xenbus/ |
A D | xenbus_dev_frontend.c | 235 kfree(watch->watch.node); in free_watch_adapter() 237 kfree(watch); in free_watch_adapter() 245 watch = kzalloc(sizeof(*watch), GFP_KERNEL); in alloc_watch_adapter() 249 watch->watch.node = kstrdup(path, GFP_KERNEL); in alloc_watch_adapter() 250 if (watch->watch.node == NULL) in alloc_watch_adapter() 277 adap = container_of(watch, struct watch_adapter, watch); in watch_fired() 327 unregister_xenbus_watch(&watch->watch); in xenbus_worker() 521 watch->watch.callback = watch_fired; in xenbus_write_watch() 524 err = register_xenbus_watch(&watch->watch); in xenbus_write_watch() 534 !strcmp(watch->watch.node, path)) { in xenbus_write_watch() [all …]
|
A D | xenbus_xs.c | 767 char token[sizeof(watch) * 2 + 1]; in register_xenbus_watch() 772 watch->nr_pending = 0; in register_xenbus_watch() 778 list_add(&watch->list, &watches); in register_xenbus_watch() 785 list_del(&watch->list); in register_xenbus_watch() 798 char token[sizeof(watch) * 2 + 1]; in unregister_xenbus_watch() 807 list_del(&watch->list); in unregister_xenbus_watch() 823 if (watch->nr_pending) { in unregister_xenbus_watch() 825 if (event->handle != watch) in unregister_xenbus_watch() 830 watch->nr_pending = 0; in unregister_xenbus_watch() 849 struct xenbus_watch *watch; in xs_resume() local [all …]
|
A D | xenbus_probe_backend.c | 183 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
|
A D | xenbus_client.c | 129 struct xenbus_watch *watch, in xenbus_watch_path() argument 137 watch->node = path; in xenbus_watch_path() 138 watch->will_handle = will_handle; in xenbus_watch_path() 139 watch->callback = callback; in xenbus_watch_path() 141 err = register_xenbus_watch(watch); in xenbus_watch_path() 144 watch->node = NULL; in xenbus_watch_path() 145 watch->will_handle = NULL; in xenbus_watch_path() 146 watch->callback = NULL; in xenbus_watch_path() 171 struct xenbus_watch *watch, in xenbus_watch_pathfmt() argument 190 err = xenbus_watch_path(dev, path, watch, will_handle, callback); in xenbus_watch_pathfmt()
|
A D | xenbus.h | 47 bool (*otherend_will_handle)(struct xenbus_watch *watch, 49 void (*otherend_changed)(struct xenbus_watch *watch, const char *path, 125 void xenbus_otherend_changed(struct xenbus_watch *watch,
|
A D | xenbus_comms.c | 212 struct xs_watch_event *watch; in process_msg() member 262 len += sizeof(*state.watch); in process_msg() 269 state.body = state.watch->body; in process_msg() 287 state.watch->len = state.msg.len; in process_msg() 288 err = xs_watch_msg(state.watch); in process_msg()
|
A D | xenbus_probe_frontend.c | 88 static void backend_changed(struct xenbus_watch *watch, in backend_changed() argument 91 xenbus_otherend_changed(watch, path, token, 1); in backend_changed() 177 static void frontend_changed(struct xenbus_watch *watch, in frontend_changed() argument
|
/linux/Documentation/ |
A D | watch_queue.rst | 102 watch that specific key). 128 a watch. These can be managed with: 145 A "watch" is a subscription on a watch list, indicating the watch queue, and 150 struct watch { 163 the associated watch queue buffer. 173 * ``void init_watch(struct watch *watch, struct watch_queue *wqueue);`` 175 Initialise a watch object, setting its pointer to the watch queue, using 178 * ``int add_watch_to_object(struct watch *watch, struct watch_list *wlist);`` 180 Subscribe a watch to a watch list (notification source). The 190 Remove a watch from a watch list, where the watch must match the specified [all …]
|
/linux/drivers/counter/ |
A D | counter-chrdev.c | 131 struct counter_watch *const watch, in counter_set_event_node() argument 152 event_node->event = watch->event; in counter_set_event_node() 153 event_node->channel = watch->channel; in counter_set_event_node() 235 struct counter_watch watch; in counter_add_watch() local 242 if (copy_from_user(&watch, uwatch, sizeof(watch))) in counter_add_watch() 248 parent = watch.component.parent; in counter_add_watch() 251 switch (watch.component.scope) { in counter_add_watch() 280 id = watch.component.id; in counter_add_watch() 283 switch (watch.component.type) { in counter_add_watch() 542 ev.watch.event = event; in counter_push_event() [all …]
|
A D | 104-quad-8.c | 443 const struct counter_watch *watch) in quad8_watch_validate() argument 447 if (watch->channel > QUAD8_NUM_COUNTERS - 1) in quad8_watch_validate() 450 switch (watch->event) { in quad8_watch_validate() 452 if (priv->next_irq_trigger[watch->channel] == QUAD8_EVENT_NONE) in quad8_watch_validate() 453 priv->next_irq_trigger[watch->channel] = QUAD8_EVENT_CARRY; in quad8_watch_validate() 458 if (priv->next_irq_trigger[watch->channel] == QUAD8_EVENT_NONE) in quad8_watch_validate() 459 priv->next_irq_trigger[watch->channel] = QUAD8_EVENT_COMPARE; in quad8_watch_validate() 464 if (priv->next_irq_trigger[watch->channel] == QUAD8_EVENT_NONE) in quad8_watch_validate() 465 priv->next_irq_trigger[watch->channel] = QUAD8_EVENT_CARRY_BORROW; in quad8_watch_validate() 470 if (priv->next_irq_trigger[watch->channel] == QUAD8_EVENT_NONE) in quad8_watch_validate() [all …]
|
/linux/include/linux/ |
A D | watch_queue.h | 54 struct watch { struct 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
|
/linux/tools/gpio/ |
A D | Makefile | 21 ALL_TARGETS := lsgpio gpio-hammer gpio-event-mon gpio-watch 72 GPIO_WATCH_IN := $(OUTPUT)gpio-watch-in.o 74 $(Q)$(MAKE) $(build)=gpio-watch 75 $(OUTPUT)gpio-watch: $(GPIO_WATCH_IN)
|
A D | Build | 5 gpio-watch-y += gpio-watch.o
|
A D | .gitignore | 4 gpio-watch
|
/linux/include/xen/ |
A D | xenbus.h | 194 int register_xenbus_watch(struct xenbus_watch *watch); 195 void unregister_xenbus_watch(struct xenbus_watch *watch); 213 struct xenbus_watch *watch, 219 int xenbus_watch_pathfmt(struct xenbus_device *dev, struct xenbus_watch *watch,
|
/linux/Documentation/filesystems/ |
A D | inotify.rst | 18 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/include/uapi/linux/ |
A D | watch_queue.h | 75 struct watch_notification watch; member 99 struct watch_notification watch; member
|
/linux/security/keys/ |
A D | internal.h | 192 .watch.type = WATCH_TYPE_KEY_NOTIFY, in notify_key() 193 .watch.subtype = subtype, in notify_key() 194 .watch.info = watch_sizeof(n), in notify_key() 199 post_watch_notification(key->watchers, &n.watch, current_cred(), in notify_key()
|
A D | keyctl.c | 1772 struct watch *watch = NULL; in keyctl_watch_key() local 1800 watch = kzalloc(sizeof(*watch), GFP_KERNEL); in keyctl_watch_key() 1801 if (!watch) in keyctl_watch_key() 1804 init_watch(watch, wqueue); in keyctl_watch_key() 1805 watch->id = key->serial; in keyctl_watch_key() 1806 watch->info_id = (u32)watch_id << WATCH_INFO_ID__SHIFT; in keyctl_watch_key() 1818 ret = add_watch_to_object(watch, key->watchers); in keyctl_watch_key() 1822 watch = NULL; in keyctl_watch_key() 1835 kfree(watch); in keyctl_watch_key()
|
/linux/arch/mips/kernel/ |
A D | watch.c | 20 struct mips3264_watch_reg_state *watches = &t->thread.watch.mips3264; in mips_install_watch_registers() 53 ¤t->thread.watch.mips3264; in mips_read_watch_registers()
|
/linux/arch/mips/include/asm/ |
A D | processor.h | 257 union mips_watch_reg_state watch; member 331 .watch = {{{0,},},}, \
|