| /linux/drivers/infiniband/hw/hfi1/ |
| H A D | mmu_rb.c | 45 struct mmu_rb_handler **handler) in hfi1_mmu_rb_register() argument 74 *handler = h; in hfi1_mmu_rb_register() 78 void hfi1_mmu_rb_unregister(struct mmu_rb_handler *handler) in hfi1_mmu_rb_unregister() argument 86 mmgrab(handler->mn.mm); in hfi1_mmu_rb_unregister() 89 mmu_notifier_unregister(&handler->mn, handler->mn.mm); in hfi1_mmu_rb_unregister() 95 flush_work(&handler->del_work); in hfi1_mmu_rb_unregister() 99 spin_lock_irqsave(&handler->lock, flags); in hfi1_mmu_rb_unregister() 100 while ((node = rb_first_cached(&handler->root))) { in hfi1_mmu_rb_unregister() 102 rb_erase_cached(node, &handler->root); in hfi1_mmu_rb_unregister() 106 spin_unlock_irqrestore(&handler->lock, flags); in hfi1_mmu_rb_unregister() [all …]
|
| H A D | mmu_rb.h | 17 struct mmu_rb_handler *handler; member 56 struct mmu_rb_handler **handler); 57 void hfi1_mmu_rb_unregister(struct mmu_rb_handler *handler); 58 int hfi1_mmu_rb_insert(struct mmu_rb_handler *handler, 62 void hfi1_mmu_rb_evict(struct mmu_rb_handler *handler, void *evict_arg); 63 struct mmu_rb_node *hfi1_mmu_rb_get_first(struct mmu_rb_handler *handler,
|
| /linux/net/ipv4/ |
| H A D | tunnel4.c | 31 int xfrm4_tunnel_register(struct xfrm_tunnel *handler, unsigned short family) in xfrm4_tunnel_register() argument 37 int priority = handler->priority; in xfrm4_tunnel_register() 51 handler->next = *pprev; in xfrm4_tunnel_register() 52 rcu_assign_pointer(*pprev, handler); in xfrm4_tunnel_register() 63 int xfrm4_tunnel_deregister(struct xfrm_tunnel *handler, unsigned short family) in xfrm4_tunnel_deregister() argument 75 if (t == handler) { in xfrm4_tunnel_deregister() 76 *pprev = handler->next; in xfrm4_tunnel_deregister() 90 #define for_each_tunnel_rcu(head, handler) \ argument 91 for (handler = rcu_dereference(head); \ 92 handler != NULL; \ [all …]
|
| /linux/net/ipv6/ |
| H A D | tunnel6.c | 32 int xfrm6_tunnel_register(struct xfrm6_tunnel *handler, unsigned short family) in xfrm6_tunnel_register() argument 37 int priority = handler->priority; in xfrm6_tunnel_register() 64 handler->next = *pprev; in xfrm6_tunnel_register() 65 rcu_assign_pointer(*pprev, handler); in xfrm6_tunnel_register() 76 int xfrm6_tunnel_deregister(struct xfrm6_tunnel *handler, unsigned short family) in xfrm6_tunnel_deregister() argument 101 if (t == handler) { in xfrm6_tunnel_deregister() 102 *pprev = handler->next; in xfrm6_tunnel_deregister() 117 #define for_each_tunnel_rcu(head, handler) \ argument 118 for (handler = rcu_dereference(head); \ 119 handler != NULL; \ [all …]
|
| H A D | xfrm6_protocol.c | 41 #define for_each_protocol_rcu(head, handler) \ argument 42 for (handler = rcu_dereference(head); \ 43 handler != NULL; \ 44 handler = rcu_dereference(handler->next)) \ 49 struct xfrm6_protocol *handler; in xfrm6_rcv_cb() local 55 for_each_protocol_rcu(*proto_handlers(protocol), handler) in xfrm6_rcv_cb() 56 if ((ret = handler->cb_handler(skb, err)) <= 0) in xfrm6_rcv_cb() 66 struct xfrm6_protocol *handler; in xfrm6_rcv_encap() local 98 for_each_protocol_rcu(*head, handler) in xfrm6_rcv_encap() 99 if ((ret = handler->input_handler(skb, nexthdr, spi, encap_type)) != -EINVAL) in xfrm6_rcv_encap() [all …]
|
| /linux/drivers/irqchip/ |
| H A D | irq-sifive-plic.c | 108 static void __plic_toggle(struct plic_handler *handler, int hwirq, int enable) in __plic_toggle() argument 110 u32 __iomem *base = handler->enable_base; in __plic_toggle() 122 handler->enable_save[group] = value; in __plic_toggle() 126 static void plic_toggle(struct plic_handler *handler, int hwirq, int enable) in plic_toggle() argument 130 raw_spin_lock_irqsave(&handler->enable_lock, flags); in plic_toggle() 131 __plic_toggle(handler, hwirq, enable); in plic_toggle() 132 raw_spin_unlock_irqrestore(&handler->enable_lock, flags); in plic_toggle() 141 struct plic_handler *handler = per_cpu_ptr(&plic_handlers, cpu); in plic_irq_toggle() local 143 plic_toggle(handler, d->hwirq, enable); in plic_irq_toggle() 174 struct plic_handler *handler = this_cpu_ptr(&plic_handlers); in plic_irq_eoi() local [all …]
|
| /linux/drivers/soc/fsl/qbman/ |
| H A D | qman_test_stash.c | 250 static inline int process_frame_data(struct hp_handler *handler, in process_frame_data() argument 253 u32 *p = handler->frame_ptr; in process_frame_data() 257 if (qm_fd_addr_get64(fd) != handler->addr) { in process_frame_data() 259 qm_fd_addr_get64(fd), handler->addr); in process_frame_data() 263 *p ^= handler->rx_mixer; in process_frame_data() 268 *p ^= handler->tx_mixer; in process_frame_data() 279 struct hp_handler *handler = (struct hp_handler *)fq; in normal_dqrr() local 281 if (process_frame_data(handler, &dqrr->fd)) { in normal_dqrr() 285 if (qman_enqueue(&handler->tx, &dqrr->fd)) { in normal_dqrr() 298 struct hp_handler *handler = (struct hp_handler *)fq; in special_dqrr() local [all …]
|
| /linux/kernel/ |
| H A D | reboot.c | 345 struct sys_off_handler *handler; in sys_off_notify() local 348 handler = container_of(nb, struct sys_off_handler, nb); in sys_off_notify() 349 data.cb_data = handler->cb_data; in sys_off_notify() 352 data.dev = handler->dev; in sys_off_notify() 354 return handler->sys_off_cb(&data); in sys_off_notify() 361 struct sys_off_handler *handler; in alloc_sys_off_handler() local 369 handler = &platform_sys_off_handler; in alloc_sys_off_handler() 370 if (handler->cb_data) in alloc_sys_off_handler() 378 handler = kzalloc_obj(*handler, flags); in alloc_sys_off_handler() 379 if (!handler) in alloc_sys_off_handler() [all …]
|
| /linux/drivers/acpi/ |
| H A D | wakeup.c | 114 struct acpi_wakeup_handler *handler; in acpi_register_wakeup_handler() local 123 handler = kmalloc_obj(*handler); in acpi_register_wakeup_handler() 124 if (!handler) in acpi_register_wakeup_handler() 127 handler->wakeup = wakeup; in acpi_register_wakeup_handler() 128 handler->context = context; in acpi_register_wakeup_handler() 131 list_add(&handler->list_node, &acpi_wakeup_handler_head); in acpi_register_wakeup_handler() 146 struct acpi_wakeup_handler *handler; in acpi_unregister_wakeup_handler() local 149 list_for_each_entry(handler, &acpi_wakeup_handler_head, list_node) { in acpi_unregister_wakeup_handler() 150 if (handler->wakeup == wakeup && handler->context == context) { in acpi_unregister_wakeup_handler() 151 list_del(&handler->list_node); in acpi_unregister_wakeup_handler() [all …]
|
| H A D | platform_profile.c | 78 struct platform_profile_handler *handler; in _store_class_profile() local 82 handler = to_pprof_handler(dev); in _store_class_profile() 83 if (!test_bit(*bit, handler->choices) && !test_bit(*bit, handler->hidden_choices)) in _store_class_profile() 86 return handler->ops->profile_set(dev, *bit); in _store_class_profile() 98 struct platform_profile_handler *handler = to_pprof_handler(dev); in _notify_class_profile() local 101 sysfs_notify(&handler->dev.kobj, NULL, "profile"); in _notify_class_profile() 102 kobject_uevent(&handler->dev.kobj, KOBJ_CHANGE); in _notify_class_profile() 117 struct platform_profile_handler *handler; in get_class_profile() local 122 handler = to_pprof_handler(dev); in get_class_profile() 123 err = handler->ops->profile_get(dev, &val); in get_class_profile() [all …]
|
| /linux/arch/arm/probes/uprobes/ |
| H A D | actions-arm.c | 195 [PROBES_PRELOAD_IMM] = {.handler = probes_simulate_nop}, 196 [PROBES_PRELOAD_REG] = {.handler = probes_simulate_nop}, 197 [PROBES_BRANCH_IMM] = {.handler = simulate_blx1}, 198 [PROBES_MRS] = {.handler = simulate_mrs}, 199 [PROBES_BRANCH_REG] = {.handler = simulate_blx2bx}, 200 [PROBES_CLZ] = {.handler = probes_simulate_nop}, 201 [PROBES_SATURATING_ARITHMETIC] = {.handler = probes_simulate_nop}, 202 [PROBES_MUL1] = {.handler = probes_simulate_nop}, 203 [PROBES_MUL2] = {.handler = probes_simulate_nop}, 204 [PROBES_SWP] = {.handler = probes_simulate_nop}, [all …]
|
| /linux/arch/arm/probes/kprobes/ |
| H A D | actions-arm.c | 298 [PROBES_PRELOAD_IMM] = {.handler = probes_simulate_nop}, 299 [PROBES_PRELOAD_REG] = {.handler = probes_simulate_nop}, 300 [PROBES_BRANCH_IMM] = {.handler = simulate_blx1}, 301 [PROBES_MRS] = {.handler = simulate_mrs}, 302 [PROBES_BRANCH_REG] = {.handler = simulate_blx2bx}, 303 [PROBES_CLZ] = {.handler = emulate_rd12rm0_noflags_nopc}, 305 .handler = emulate_rd12rn16rm0_rwflags_nopc}, 306 [PROBES_MUL1] = {.handler = emulate_rdlo12rdhi16rn0rm8_rwflags_nopc}, 307 [PROBES_MUL2] = {.handler = emulate_rd16rn12rm0rs8_rwflags_nopc}, 308 [PROBES_SWP] = {.handler = emulate_rd12rn16rm0_rwflags_nopc}, [all …]
|
| H A D | actions-thumb.c | 621 [PROBES_T16_ADD_SP] = {.handler = t16_simulate_add_sp_imm}, 622 [PROBES_T16_CBZ] = {.handler = t16_simulate_cbz}, 623 [PROBES_T16_SIGN_EXTEND] = {.handler = t16_emulate_loregs_rwflags}, 626 [PROBES_T16_SEV] = {.handler = probes_emulate_none}, 627 [PROBES_T16_WFE] = {.handler = probes_simulate_nop}, 629 [PROBES_T16_CMP] = {.handler = t16_emulate_loregs_rwflags}, 630 [PROBES_T16_ADDSUB] = {.handler = t16_emulate_loregs_noitrwflags}, 631 [PROBES_T16_LOGICAL] = {.handler = t16_emulate_loregs_noitrwflags}, 632 [PROBES_T16_LDR_LIT] = {.handler = t16_simulate_ldr_literal}, 633 [PROBES_T16_BLX] = {.handler = t16_simulate_bxblx}, [all …]
|
| H A D | actions-common.c | 130 probes_insn_handler_t *handler = 0; in kprobe_decode_ldmstm() local 137 handler = emulate_generic_r0_12_noflags; in kprobe_decode_ldmstm() 143 handler = emulate_generic_r2_14_noflags; in kprobe_decode_ldmstm() 150 handler = emulate_ldm_r3_15; in kprobe_decode_ldmstm() 154 if (handler) { in kprobe_decode_ldmstm() 158 asi->insn_handler = handler; in kprobe_decode_ldmstm() 164 handler = is_ldm ? simulate_ldm1_pc : simulate_stm1_pc; in kprobe_decode_ldmstm() 166 handler = simulate_ldm1stm1; in kprobe_decode_ldmstm() 167 asi->insn_handler = handler; in kprobe_decode_ldmstm()
|
| /linux/fs/btrfs/ |
| H A D | props.c | 70 const struct prop_handler *handler; in btrfs_validate_prop() local 75 handler = find_prop_handler(name, NULL); in btrfs_validate_prop() 76 if (!handler) in btrfs_validate_prop() 82 return handler->validate(inode, value, value_len); in btrfs_validate_prop() 99 const struct prop_handler *handler; in btrfs_ignore_prop() local 101 handler = find_prop_handler(name, NULL); in btrfs_ignore_prop() 102 ASSERT(handler != NULL); in btrfs_ignore_prop() 104 return handler->ignore(inode); in btrfs_ignore_prop() 111 const struct prop_handler *handler; in btrfs_set_prop() local 114 handler = find_prop_handler(name, NULL); in btrfs_set_prop() [all …]
|
| /linux/kernel/trace/ |
| H A D | rethook.c | 51 rcu_assign_pointer(rh->handler, NULL); in rethook_stop() 87 return (rethook_handler_t)rcu_dereference_check(rh->handler, in rethook_get_handler() 103 struct rethook *rethook_alloc(void *data, rethook_handler_t handler, in rethook_alloc() argument 108 if (!handler || num <= 0 || size < sizeof(struct rethook_node)) in rethook_alloc() 116 rcu_assign_pointer(rh->handler, handler); in rethook_alloc() 144 rethook_handler_t handler; in rethook_recycle() local 146 handler = rethook_get_handler(node->rethook); in rethook_recycle() 147 if (likely(handler)) in rethook_recycle() 163 rethook_handler_t handler = rethook_get_handler(rh); in rethook_try_get() local 166 if (unlikely(!handler)) in rethook_try_get() [all …]
|
| /linux/drivers/scsi/ |
| H A D | scsi_dh.c | 154 sdev->handler = scsi_dh; in scsi_dh_handler_attach() 165 sdev->handler->detach(sdev); in scsi_dh_handler_detach() 166 sdev_printk(KERN_NOTICE, sdev, "%s: Detached\n", sdev->handler->name); in scsi_dh_handler_detach() 167 module_put(sdev->handler->module); in scsi_dh_handler_detach() 188 if (sdev->handler) in scsi_dh_release_device() 263 if (!sdev->handler) in scsi_dh_activate() 274 if (sdev->handler->activate) in scsi_dh_activate() 275 err = sdev->handler->activate(sdev, fn, data); in scsi_dh_activate() 307 if (sdev->handler && sdev->handler->set_params) in scsi_dh_set_params() 308 err = sdev->handler->set_params(sdev, params); in scsi_dh_set_params() [all …]
|
| /linux/arch/arm64/kernel/probes/ |
| H A D | decode-insn.c | 86 api->handler = simulate_nop; in arm_probe_decode_insn() 98 api->handler = simulate_b_cond; in arm_probe_decode_insn() 101 api->handler = simulate_cbz_cbnz; in arm_probe_decode_insn() 104 api->handler = simulate_tbz_tbnz; in arm_probe_decode_insn() 106 api->handler = simulate_adr_adrp; in arm_probe_decode_insn() 109 api->handler = simulate_b_bl; in arm_probe_decode_insn() 112 api->handler = simulate_br_blr; in arm_probe_decode_insn() 114 api->handler = simulate_ret; in arm_probe_decode_insn() 155 api->handler = simulate_ldr_literal; in arm_kprobe_decode_insn() 158 api->handler = simulate_ldrsw_literal; in arm_kprobe_decode_insn()
|
| /linux/drivers/firewire/ |
| H A D | core-transaction.c | 561 struct fw_address_handler *handler; in lookup_overlapping_address_handler() local 563 list_for_each_entry_rcu(handler, list, link) { in lookup_overlapping_address_handler() 564 if (handler->offset < offset + length && in lookup_overlapping_address_handler() 565 offset < handler->offset + handler->length) in lookup_overlapping_address_handler() 566 return handler; in lookup_overlapping_address_handler() 572 static bool is_enclosing_handler(struct fw_address_handler *handler, in is_enclosing_handler() argument 575 return handler->offset <= offset && in is_enclosing_handler() 576 offset + length <= handler->offset + handler->length; in is_enclosing_handler() 582 struct fw_address_handler *handler; in lookup_enclosing_address_handler() local 584 list_for_each_entry_rcu(handler, list, link) { in lookup_enclosing_address_handler() [all …]
|
| /linux/rust/kernel/irq/ |
| H A D | request.rs | 34 /// Callbacks for an IRQ handler. 36 /// The hard IRQ handler. 42 /// interrupt context, should be deferred to a threaded handler. 81 /// A registration of an IRQ handler for a given IRQ line. in drop() 87 /// handler and process context. [`Completion`] uses interior mutability, so the in drop() 88 /// handler can signal with [`Completion::complete_all()`] and the process 126 /// // Registers an IRQ handler for the given IrqRequest. 146 /// registration.handler().completion.wait_for_completion(); 155 /// * We own an irq handler registered via `request_irq` whose cookie is a pointer to `Self`. 161 handler 189 handler: T, global() field 239 pub fn handler(&self) -> &T { handler() method 409 handler: T, global() field 460 pub fn handler(&self) -> &T { handler() method [all...] |
| /linux/drivers/s390/crypto/ |
| H A D | pkey_base.c | 36 int pkey_handler_register(struct pkey_handler *handler) in pkey_handler_register() argument 40 if (!handler || in pkey_handler_register() 41 !handler->is_supported_key || in pkey_handler_register() 42 !handler->is_supported_keytype) in pkey_handler_register() 45 if (!try_module_get(handler->module)) in pkey_handler_register() 52 if (h == handler) { in pkey_handler_register() 55 module_put(handler->module); in pkey_handler_register() 61 list_add_rcu(&handler->list, &handler_list); in pkey_handler_register() 72 module_put(handler->module); in pkey_handler_register() 75 handler->name ?: "<no name>"); in pkey_handler_register() [all …]
|
| /linux/kernel/irq/ |
| H A D | devres.c | 34 irq_handler_t handler, irq_handler_t thread_fn, in devm_request_result() argument 41 irq, handler, thread_fn, devname ? : ""); in devm_request_result() 45 irq_handler_t handler, in __devm_request_threaded_irq() argument 61 rc = request_threaded_irq(irq, handler, thread_fn, irqflags, devname, in __devm_request_threaded_irq() 101 irq_handler_t handler, irq_handler_t thread_fn, in devm_request_threaded_irq() argument 105 int rc = __devm_request_threaded_irq(dev, irq, handler, thread_fn, in devm_request_threaded_irq() 108 return devm_request_result(dev, rc, irq, handler, thread_fn, devname); in devm_request_threaded_irq() 113 irq_handler_t handler, in __devm_request_any_context_irq() argument 128 rc = request_any_context_irq(irq, handler, irqflags, devname, dev_id); in __devm_request_any_context_irq() 166 irq_handler_t handler, unsigned long irqflags, in devm_request_any_context_irq() argument [all …]
|
| /linux/include/trace/events/ |
| H A D | nmi.h | 13 TP_PROTO(void *handler, s64 delta_ns, int handled), 15 TP_ARGS(handler, delta_ns, handled), 18 __field( void *, handler ) 24 __entry->handler = handler; 30 __entry->handler,
|
| /linux/arch/sh/drivers/dma/ |
| H A D | dmabrg.c | 69 void (*handler)(void *); member 75 dmabrg_handlers[i].handler(dmabrg_handlers[i].data); in dmabrg_call_handler() 125 int dmabrg_request_irq(unsigned int dmairq, void(*handler)(void*), in dmabrg_request_irq() 128 if ((dmairq > 9) || !handler) in dmabrg_request_irq() 130 if (dmabrg_handlers[dmairq].handler) in dmabrg_request_irq() 133 dmabrg_handlers[dmairq].handler = handler; in dmabrg_request_irq() 145 dmabrg_handlers[dmairq].handler = NULL; in dmabrg_free_irq()
|
| /linux/drivers/input/rmi4/ |
| H A D | rmi_bus.c | 150 const struct rmi_function_handler *handler = to_rmi_function_handler(drv); in rmi_function_match() local 153 return fn->fd.function_number == handler->func; in rmi_function_match() 176 struct rmi_function_handler *handler) in rmi_create_function_irq() argument 193 handler->attention, IRQF_ONESHOT, in rmi_create_function_irq() 207 struct rmi_function_handler *handler = in rmi_function_probe() local 213 if (handler->probe) { in rmi_function_probe() 214 error = handler->probe(fn); in rmi_function_probe() 219 if (fn->num_of_irqs && handler->attention) { in rmi_function_probe() 220 error = rmi_create_function_irq(fn, handler); in rmi_function_probe() 231 struct rmi_function_handler *handler = in rmi_function_remove() local [all …]
|