| /kernel/linux/linux-6.6/drivers/infiniband/hw/hfi1/ |
| 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() 92 * Make sure the wq delete handler is finished running. It will not 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() [all …]
|
| /kernel/linux/linux-5.10/drivers/infiniband/hw/hfi1/ |
| D | mmu_rb.c | 86 struct mmu_rb_handler **handler) in hfi1_mmu_rb_register() argument 112 *handler = h; in hfi1_mmu_rb_register() 116 void hfi1_mmu_rb_unregister(struct mmu_rb_handler *handler) in hfi1_mmu_rb_unregister() argument 124 mmgrab(handler->mn.mm); in hfi1_mmu_rb_unregister() 127 mmu_notifier_unregister(&handler->mn, handler->mn.mm); in hfi1_mmu_rb_unregister() 130 * Make sure the wq delete handler is finished running. It will not in hfi1_mmu_rb_unregister() 133 flush_work(&handler->del_work); in hfi1_mmu_rb_unregister() 137 spin_lock_irqsave(&handler->lock, flags); in hfi1_mmu_rb_unregister() 138 while ((node = rb_first_cached(&handler->root))) { in hfi1_mmu_rb_unregister() 140 rb_erase_cached(node, &handler->root); in hfi1_mmu_rb_unregister() [all …]
|
| /kernel/linux/linux-6.6/net/ipv4/ |
| 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 …]
|
| D | xfrm4_protocol.c | 40 #define for_each_protocol_rcu(head, handler) \ argument 41 for (handler = rcu_dereference(head); \ 42 handler != NULL; \ 43 handler = rcu_dereference(handler->next)) \ 48 struct xfrm4_protocol *handler; in xfrm4_rcv_cb() local 54 for_each_protocol_rcu(*head, handler) in xfrm4_rcv_cb() 55 if ((ret = handler->cb_handler(skb, err)) <= 0) in xfrm4_rcv_cb() 65 struct xfrm4_protocol *handler; in xfrm4_rcv_encap() local 83 for_each_protocol_rcu(*head, handler) in xfrm4_rcv_encap() 84 if ((ret = handler->input_handler(skb, nexthdr, spi, encap_type)) != -EINVAL) in xfrm4_rcv_encap() [all …]
|
| /kernel/linux/linux-5.10/net/ipv4/ |
| D | xfrm4_protocol.c | 40 #define for_each_protocol_rcu(head, handler) \ argument 41 for (handler = rcu_dereference(head); \ 42 handler != NULL; \ 43 handler = rcu_dereference(handler->next)) \ 48 struct xfrm4_protocol *handler; in xfrm4_rcv_cb() local 54 for_each_protocol_rcu(*head, handler) in xfrm4_rcv_cb() 55 if ((ret = handler->cb_handler(skb, err)) <= 0) in xfrm4_rcv_cb() 65 struct xfrm4_protocol *handler; in xfrm4_rcv_encap() local 83 for_each_protocol_rcu(*head, handler) in xfrm4_rcv_encap() 84 if ((ret = handler->input_handler(skb, nexthdr, spi, encap_type)) != -EINVAL) in xfrm4_rcv_encap() [all …]
|
| 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 …]
|
| /kernel/linux/linux-5.10/net/ipv6/ |
| 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 …]
|
| 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 96 for_each_protocol_rcu(*head, handler) in xfrm6_rcv_encap() 97 if ((ret = handler->input_handler(skb, nexthdr, spi, encap_type)) != -EINVAL) in xfrm6_rcv_encap() [all …]
|
| /kernel/linux/linux-6.6/net/ipv6/ |
| 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 …]
|
| 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 96 for_each_protocol_rcu(*head, handler) in xfrm6_rcv_encap() 97 if ((ret = handler->input_handler(skb, nexthdr, spi, encap_type)) != -EINVAL) in xfrm6_rcv_encap() [all …]
|
| /kernel/linux/linux-5.10/drivers/acpi/acpica/ |
| D | evxface.c | 37 * handler_type - The type of handler: 38 * ACPI_SYSTEM_NOTIFY: System Handler (00-7F) 39 * ACPI_DEVICE_NOTIFY: Device Handler (80-FF) 41 * handler - Address of the handler 42 * context - Value passed to the handler on each GPE 46 * DESCRIPTION: Install a handler for notifications on an ACPI Device, 49 * NOTES: The Root namespace object may have only one handler for each 51 * may have one device notify handler, and multiple system notify 59 acpi_notify_handler handler, void *context) in acpi_install_notify_handler() argument 72 if ((!device) || (!handler) || (!handler_type) || in acpi_install_notify_handler() [all …]
|
| D | evhandler.c | 65 * We install the default PCI config space handler at the root so that in acpi_ev_install_region_handlers() 72 * NOTE: We ignore AE_ALREADY_EXISTS because this means that a handler in acpi_ev_install_region_handlers() 110 * RETURN: TRUE if default handler is installed, FALSE otherwise 112 * DESCRIPTION: Check if the default handler is installed for the requested 128 handler_obj = obj_desc->common_notify.handler; in acpi_ev_has_default_handler() 153 * DESCRIPTION: This routine installs an address handler into objects that are 156 * If the Object is a Device, and the device has a handler of 159 * This is because the existing handler is closer in proximity 214 /* Check if this Device already has a handler for this address space */ in acpi_ev_install_handler() 220 handler); in acpi_ev_install_handler() [all …]
|
| D | evxfregn.c | 27 * handler - Address of the handler 29 * context - Value passed to the handler on each access 33 * DESCRIPTION: Install a handler for all op_regions of a given space_id. 45 acpi_adr_space_handler handler, in acpi_install_address_space_handler() argument 72 /* Install the handler for all Regions for this Space ID */ in acpi_install_address_space_handler() 75 acpi_ev_install_space_handler(node, space_id, handler, setup, in acpi_install_address_space_handler() 98 * handler - Address of the handler in ACPI_EXPORT_SYMBOL() 102 * DESCRIPTION: Remove a previously installed handler. in ACPI_EXPORT_SYMBOL() 108 acpi_adr_space_handler handler) in ACPI_EXPORT_SYMBOL() 150 /* Find the address handler the user requested */ in ACPI_EXPORT_SYMBOL() [all …]
|
| /kernel/linux/linux-6.6/drivers/acpi/acpica/ |
| D | evxface.c | 37 * handler_type - The type of handler: 38 * ACPI_SYSTEM_NOTIFY: System Handler (00-7F) 39 * ACPI_DEVICE_NOTIFY: Device Handler (80-FF) 41 * handler - Address of the handler 42 * context - Value passed to the handler on each GPE 46 * DESCRIPTION: Install a handler for notifications on an ACPI Device, 49 * NOTES: The Root namespace object may have only one handler for each 51 * may have one device notify handler, and multiple system notify 59 acpi_notify_handler handler, void *context) in acpi_install_notify_handler() argument 72 if ((!device) || (!handler) || (!handler_type) || in acpi_install_notify_handler() [all …]
|
| D | evhandler.c | 65 * We install the default PCI config space handler at the root so that in acpi_ev_install_region_handlers() 72 * NOTE: We ignore AE_ALREADY_EXISTS because this means that a handler in acpi_ev_install_region_handlers() 110 * RETURN: TRUE if default handler is installed, FALSE otherwise 112 * DESCRIPTION: Check if the default handler is installed for the requested 128 handler_obj = obj_desc->common_notify.handler; in acpi_ev_has_default_handler() 153 * DESCRIPTION: This routine installs an address handler into objects that are 156 * If the Object is a Device, and the device has a handler of 159 * This is because the existing handler is closer in proximity 214 /* Check if this Device already has a handler for this address space */ in acpi_ev_install_handler() 220 handler); in acpi_ev_install_handler() [all …]
|
| /kernel/linux/linux-6.6/kernel/ |
| D | reboot.c | 157 * @nb: Info about handler function to be called 158 * @nb->priority: Handler priority. Handlers should follow the 160 * 0: Restart handler of last resort, 162 * 128: Default restart handler; use if no other 163 * restart handler is expected to be available, 166 * 255: Highest priority restart handler, will 177 * If more than one function is registered, the restart handler priority 183 * restart handlers may exist; for example, one restart handler might 185 * In such cases, the restart handler which only restarts part of the 200 * restart handler [all …]
|
| /kernel/linux/linux-5.10/drivers/soc/fsl/qbman/ |
| D | qman_test_stash.c | 43 * moves it from one cpu to another. (The use of more than one handler per cpu 49 * each forwarding action. To achieve this, each handler will be assigned a 51 * received by a handler, the mixer of the expected sender is XOR'd into all 54 * the current handler. Apart from validating that the frame is taking the 57 * conditional branching. There is a "special" handler designated to act as the 65 * handlers and link-list them (but do no other handler setup). 68 * hp_cpu's 'iterator' to point to its first handler. With each loop, 69 * allocate rx/tx FQIDs and mixer values to the hp_cpu's iterator handler 71 * which connects the last handler to the first (and which is why phase 2 75 * hp_cpu's 'iterator' to point to its first handler. With each loop, [all …]
|
| /kernel/linux/linux-6.6/drivers/soc/fsl/qbman/ |
| D | qman_test_stash.c | 43 * moves it from one cpu to another. (The use of more than one handler per cpu 49 * each forwarding action. To achieve this, each handler will be assigned a 51 * received by a handler, the mixer of the expected sender is XOR'd into all 54 * the current handler. Apart from validating that the frame is taking the 57 * conditional branching. There is a "special" handler designated to act as the 65 * handlers and link-list them (but do no other handler setup). 68 * hp_cpu's 'iterator' to point to its first handler. With each loop, 69 * allocate rx/tx FQIDs and mixer values to the hp_cpu's iterator handler 71 * which connects the last handler to the first (and which is why phase 2 75 * hp_cpu's 'iterator' to point to its first handler. With each loop, [all …]
|
| /kernel/linux/linux-6.6/drivers/irqchip/ |
| D | irq-sifive-plic.c | 104 static void plic_toggle(struct plic_handler *handler, int hwirq, int enable) in plic_toggle() argument 106 raw_spin_lock(&handler->enable_lock); in plic_toggle() 107 __plic_toggle(handler->enable_base, hwirq, enable); in plic_toggle() 108 raw_spin_unlock(&handler->enable_lock); in plic_toggle() 117 struct plic_handler *handler = per_cpu_ptr(&plic_handlers, cpu); in plic_irq_toggle() local 119 plic_toggle(handler, d->hwirq, enable); in plic_irq_toggle() 150 struct plic_handler *handler = this_cpu_ptr(&plic_handlers); in plic_irq_eoi() local 153 plic_toggle(handler, d->hwirq, 1); in plic_irq_eoi() 154 writel(d->hwirq, handler->hart_base + CONTEXT_CLAIM); in plic_irq_eoi() 155 plic_toggle(handler, d->hwirq, 0); in plic_irq_eoi() [all …]
|
| /kernel/linux/linux-6.6/drivers/acpi/ |
| D | wakeup.c | 102 * acpi_register_wakeup_handler - Register wakeup handler 104 * @wakeup: Wakeup-handler to call when the SCI has triggered a wakeup 105 * @context: Context to pass to the handler when calling it 108 * a handler which returns true when the device they are managing wants 114 struct acpi_wakeup_handler *handler; in acpi_register_wakeup_handler() local 118 * need to register the handler. in acpi_register_wakeup_handler() 123 handler = kmalloc(sizeof(*handler), GFP_KERNEL); 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() [all …]
|
| /kernel/linux/linux-5.10/drivers/acpi/ |
| D | wakeup.c | 102 * acpi_register_wakeup_handler - Register wakeup handler 104 * @wakeup: Wakeup-handler to call when the SCI has triggered a wakeup 105 * @context: Context to pass to the handler when calling it 108 * a handler which returns true when the device they are managing wants 114 struct acpi_wakeup_handler *handler; in acpi_register_wakeup_handler() local 118 * need to register the handler. in acpi_register_wakeup_handler() 123 handler = kmalloc(sizeof(*handler), GFP_KERNEL); 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() [all …]
|
| /kernel/linux/linux-6.6/drivers/scsi/ |
| D | scsi_dh.c | 3 * SCSI device handler infrastructure. 120 * scsi_dh_handler_attach - Attach a device handler to a device 121 * @sdev - SCSI device the device handler should attach to 122 * @scsi_dh - The device handler to attach 154 sdev->handler = scsi_dh; in scsi_dh_handler_attach() 160 * scsi_dh_handler_detach - Detach a device handler from a device 161 * @sdev - SCSI device the device handler should be detached from 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() [all …]
|
| /kernel/linux/linux-5.10/drivers/scsi/ |
| D | scsi_dh.c | 3 * SCSI device handler infrastruture. 120 * scsi_dh_handler_attach - Attach a device handler to a device 121 * @sdev - SCSI device the device handler should attach to 122 * @scsi_dh - The device handler to attach 154 sdev->handler = scsi_dh; in scsi_dh_handler_attach() 160 * scsi_dh_handler_detach - Detach a device handler from a device 161 * @sdev - SCSI device the device handler should be detached from 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() [all …]
|
| /kernel/linux/linux-5.10/arch/s390/include/asm/ |
| D | extable.h | 13 * - Optional address of handler that takes pt_regs * argument and runs in 28 long handler; member 47 if (likely(!x->handler)) in ex_fixup_handler() 49 return (ex_handler_t)((unsigned long)&x->handler + x->handler); in ex_fixup_handler() 55 ex_handler_t handler = ex_fixup_handler(x); in ex_handle() local 57 if (unlikely(handler)) in ex_handle() 58 return handler(x, regs); in ex_handle() 72 a->handler = b->handler; in swap_ex_entry_fixup() 73 if (a->handler) in swap_ex_entry_fixup() 74 a->handler += delta; in swap_ex_entry_fixup() [all …]
|
| /kernel/linux/linux-5.10/drivers/irqchip/ |
| D | irq-sifive-plic.c | 84 static inline void plic_toggle(struct plic_handler *handler, in plic_toggle() argument 87 u32 __iomem *reg = handler->enable_base + (hwirq / 32) * sizeof(u32); in plic_toggle() 90 raw_spin_lock(&handler->enable_lock); in plic_toggle() 95 raw_spin_unlock(&handler->enable_lock); in plic_toggle() 106 struct plic_handler *handler = per_cpu_ptr(&plic_handlers, cpu); in plic_irq_toggle() local 108 if (handler->present && in plic_irq_toggle() 109 cpumask_test_cpu(cpu, &handler->priv->lmask)) in plic_irq_toggle() 110 plic_toggle(handler, d->hwirq, enable); in plic_irq_toggle() 164 struct plic_handler *handler = this_cpu_ptr(&plic_handlers); in plic_irq_eoi() local 168 writel(d->hwirq, handler->hart_base + CONTEXT_CLAIM); in plic_irq_eoi() [all …]
|