| /linux/drivers/media/v4l2-core/ |
| H A D | v4l2-async.c | 66 static bool match_i2c(struct v4l2_async_notifier *notifier, in match_i2c() argument 81 static struct device *notifier_dev(struct v4l2_async_notifier *notifier) in notifier_dev() argument 83 if (notifier->sd) in notifier_dev() 84 return notifier->sd->dev; in notifier_dev() 86 if (notifier->v4l2_dev) in notifier_dev() 87 return notifier->v4l2_dev->dev; in notifier_dev() 93 match_fwnode_one(struct v4l2_async_notifier *notifier, in match_fwnode_one() argument 100 dev_dbg(notifier_dev(notifier), in match_fwnode_one() 105 dev_dbg(notifier_dev(notifier), in match_fwnode_one() 111 dev_dbg(notifier_dev(notifier), in match_fwnode_one() [all …]
|
| /linux/drivers/gpu/drm/ |
| H A D | drm_gpusvm.c | 305 drm_gpusvm_range_find(struct drm_gpusvm_notifier *notifier, unsigned long start, in drm_gpusvm_range_find() argument 310 itree = interval_tree_iter_first(¬ifier->root, start, end - 1); in drm_gpusvm_range_find() 336 struct drm_gpusvm_notifier *notifier = in drm_gpusvm_notifier_invalidate() local 337 container_of(mni, typeof(*notifier), notifier); in drm_gpusvm_notifier_invalidate() 338 struct drm_gpusvm *gpusvm = notifier->gpusvm; in drm_gpusvm_notifier_invalidate() 345 gpusvm->ops->invalidate(gpusvm, notifier, mmu_range); in drm_gpusvm_notifier_invalidate() 447 struct drm_gpusvm_notifier *notifier) in drm_gpusvm_notifier_insert() argument 452 interval_tree_insert(¬ifier->itree, &gpusvm->root); in drm_gpusvm_notifier_insert() 454 node = rb_prev(¬ifier->itree.rb); in drm_gpusvm_notifier_insert() 460 list_add(¬ifier->entry, head); in drm_gpusvm_notifier_insert() [all …]
|
| /linux/Documentation/fault-injection/ |
| H A D | notifier-error-inject.rst | 5 specified notifier chain callbacks. It is useful to test the error handling of 6 notifier call chain failures which is rarely executed. There are kernel 9 * PM notifier 10 * Memory hotplug notifier 11 * powerpc pSeries reconfig notifier 12 * Netdevice notifier 14 PM notifier error injection module 18 /sys/kernel/debug/notifier-error-inject/pm/actions/<notifier event>/error 20 Possible PM notifier events to be failed are: 28 # cd /sys/kernel/debug/notifier-error-inject/pm/ [all …]
|
| /linux/include/media/ |
| H A D | v4l2-async.h | 81 struct v4l2_async_notifier *notifier; member 96 int (*bound)(struct v4l2_async_notifier *notifier, 99 int (*complete)(struct v4l2_async_notifier *notifier); 100 void (*unbind)(struct v4l2_async_notifier *notifier, 159 void v4l2_async_nf_init(struct v4l2_async_notifier *notifier, 173 void v4l2_async_subdev_nf_init(struct v4l2_async_notifier *notifier, 177 __v4l2_async_nf_add_fwnode(struct v4l2_async_notifier *notifier, 195 #define v4l2_async_nf_add_fwnode(notifier, fwnode, type) \ argument 196 ((type *)__v4l2_async_nf_add_fwnode(notifier, fwnode, sizeof(type))) 222 #define v4l2_async_nf_add_fwnode_remote(notifier, ep, type) \ argument [all …]
|
| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_hmm.c | 70 struct amdgpu_bo *bo = container_of(mni, struct amdgpu_bo, notifier); in amdgpu_hmm_invalidate_gfx() 107 struct amdgpu_bo *bo = container_of(mni, struct amdgpu_bo, notifier); in amdgpu_hmm_invalidate_hsa() 135 r = mmu_interval_notifier_insert(&bo->notifier, current->mm, in amdgpu_hmm_register() 139 r = mmu_interval_notifier_insert(&bo->notifier, current->mm, addr, in amdgpu_hmm_register() 148 bo->notifier.mm = NULL; in amdgpu_hmm_register() 162 if (!bo->notifier.mm) in amdgpu_hmm_unregister() 164 mmu_interval_notifier_remove(&bo->notifier); in amdgpu_hmm_unregister() 165 bo->notifier.mm = NULL; in amdgpu_hmm_unregister() 168 int amdgpu_hmm_range_get_pages(struct mmu_interval_notifier *notifier, in amdgpu_hmm_range_get_pages() argument 185 hmm_range->notifier = notifier; in amdgpu_hmm_range_get_pages() [all …]
|
| /linux/drivers/staging/media/sunxi/sun6i-isp/ |
| H A D | sun6i_isp_proc.c | 399 static int sun6i_isp_proc_notifier_bound(struct v4l2_async_notifier *notifier, in sun6i_isp_proc_notifier_bound() argument 404 container_of(notifier, struct sun6i_isp_device, proc.notifier); in sun6i_isp_proc_notifier_bound() 432 sun6i_isp_proc_notifier_complete(struct v4l2_async_notifier *notifier) in sun6i_isp_proc_notifier_complete() argument 435 container_of(notifier, struct sun6i_isp_device, proc.notifier); in sun6i_isp_proc_notifier_complete() 459 struct v4l2_async_notifier *notifier = &isp_dev->proc.notifier; in sun6i_isp_proc_source_setup() local 474 v4l2_async_nf_add_fwnode_remote(notifier, handle, in sun6i_isp_proc_source_setup() 497 struct v4l2_async_notifier *notifier = &proc->notifier; in sun6i_isp_proc_setup() local 543 v4l2_async_nf_init(notifier, v4l2_dev); in sun6i_isp_proc_setup() 544 notifier->ops = &sun6i_isp_proc_notifier_ops; in sun6i_isp_proc_setup() 551 ret = v4l2_async_nf_register(notifier); in sun6i_isp_proc_setup() [all …]
|
| /linux/drivers/gpu/drm/nouveau/ |
| H A D | nouveau_svm.c | 256 container_of(mn, struct nouveau_svmm, notifier); in nouveau_svmm_invalidate_range_start() 294 kfree(container_of(mn, struct nouveau_svmm, notifier)); in nouveau_svmm_free_notifier() 310 mmu_notifier_put(&svmm->notifier); in nouveau_svmm_fini() 359 svmm->notifier.ops = &nouveau_mn_ops; in nouveau_svmm_init() 360 ret = __mmu_notifier_register(&svmm->notifier, current->mm); in nouveau_svmm_init() 502 struct mmu_interval_notifier notifier; member 511 container_of(mni, struct svm_notifier, notifier); in nouveau_svm_range_invalidate() 588 struct svm_notifier *notifier) in nouveau_atomic_range_fault() argument 592 struct mm_struct *mm = svmm->notifier.mm; in nouveau_atomic_range_fault() 599 ret = mmu_interval_notifier_insert(¬ifier->notifier, mm, in nouveau_atomic_range_fault() [all …]
|
| /linux/drivers/gpu/drm/radeon/ |
| H A D | radeon_mn.c | 53 struct radeon_bo *bo = container_of(mn, struct radeon_bo, notifier); in radeon_mn_invalidate() 100 ret = mmu_interval_notifier_insert(&bo->notifier, current->mm, addr, in radeon_mn_register() 111 mmu_interval_read_begin(&bo->notifier); in radeon_mn_register() 124 if (!bo->notifier.mm) in radeon_mn_unregister() 126 mmu_interval_notifier_remove(&bo->notifier); in radeon_mn_unregister() 127 bo->notifier.mm = NULL; in radeon_mn_unregister()
|
| /linux/drivers/media/platform/sunxi/sun4i-csi/ |
| H A D | sun4i_csi.c | 53 static int sun4i_csi_notify_bound(struct v4l2_async_notifier *notifier, in sun4i_csi_notify_bound() argument 57 struct sun4i_csi *csi = container_of(notifier, struct sun4i_csi, in sun4i_csi_notify_bound() 58 notifier); in sun4i_csi_notify_bound() 74 static int sun4i_csi_notify_complete(struct v4l2_async_notifier *notifier) in sun4i_csi_notify_complete() argument 76 struct sun4i_csi *csi = container_of(notifier, struct sun4i_csi, in sun4i_csi_notify_complete() 77 notifier); in sun4i_csi_notify_complete() 135 v4l2_async_nf_init(&csi->notifier, &csi->v4l); in sun4i_csi_notifier_init() 148 asd = v4l2_async_nf_add_fwnode_remote(&csi->notifier, ep, in sun4i_csi_notifier_init() 155 csi->notifier.ops = &sun4i_csi_notify_ops; in sun4i_csi_notifier_init() 255 ret = v4l2_async_nf_register(&csi->notifier); in sun4i_csi_probe() [all …]
|
| /linux/drivers/media/platform/sunxi/sun6i-csi/ |
| H A D | sun6i_csi_bridge.c | 646 sun6i_csi_bridge_notifier_bound(struct v4l2_async_notifier *notifier, in sun6i_csi_bridge_notifier_bound() argument 651 container_of(notifier, struct sun6i_csi_device, in sun6i_csi_bridge_notifier_bound() 652 bridge.notifier); in sun6i_csi_bridge_notifier_bound() 689 sun6i_csi_bridge_notifier_complete(struct v4l2_async_notifier *notifier) in sun6i_csi_bridge_notifier_complete() argument 692 container_of(notifier, struct sun6i_csi_device, in sun6i_csi_bridge_notifier_complete() 693 bridge.notifier); in sun6i_csi_bridge_notifier_complete() 716 struct v4l2_async_notifier *notifier = &csi_dev->bridge.notifier; in sun6i_csi_bridge_source_setup() local 750 v4l2_async_nf_add_fwnode_remote(notifier, handle, in sun6i_csi_bridge_source_setup() 774 struct v4l2_async_notifier *notifier = &bridge->notifier; in sun6i_csi_bridge_setup() local 827 v4l2_async_subdev_nf_init(notifier, subdev); in sun6i_csi_bridge_setup() [all …]
|
| /linux/drivers/pwm/ |
| H A D | pwm-iqs620a.c | 38 struct notifier_block notifier; member 139 static int iqs620_pwm_notifier(struct notifier_block *notifier, in iqs620_pwm_notifier() argument 148 iqs620_pwm = container_of(notifier, struct iqs620_pwm_private, in iqs620_pwm_notifier() 149 notifier); in iqs620_pwm_notifier() 182 &iqs620_pwm->notifier); in iqs620_pwm_notifier_unregister() 220 iqs620_pwm->notifier.notifier_call = iqs620_pwm_notifier; in iqs620_pwm_probe() 222 &iqs620_pwm->notifier); in iqs620_pwm_probe()
|
| /linux/drivers/edac/ |
| H A D | sifive_edac.c | 18 struct notifier_block notifier; member 33 p = container_of(this, struct sifive_edac_priv, notifier); in ecc_err_event() 51 p->notifier.notifier_call = ecc_err_event; in ecc_register() 69 register_sifive_ccache_error_notifier(&p->notifier); in ecc_register() 83 unregister_sifive_ccache_error_notifier(&p->notifier); in ecc_unregister()
|
| H A D | octeon_edac-pc.c | 29 struct notifier_block notifier; member 42 notifier); in co_cache_error_event() 91 p->notifier.notifier_call = co_cache_error_event; in co_cache_error_probe() 112 register_co_cache_error_notifier(&p->notifier); in co_cache_error_probe() 126 unregister_co_cache_error_notifier(&p->notifier); in co_cache_error_remove()
|
| /linux/drivers/misc/vmw_vmci/ |
| H A D | vmci_context.c | 409 struct vmci_handle_list *notifier, *tmp; in ctx_free_ctx() local 451 list_for_each_entry_safe(notifier, tmp, in ctx_free_ctx() 453 list_del(¬ifier->node); in ctx_free_ctx() 454 kfree(notifier); in ctx_free_ctx() 581 struct vmci_handle_list *notifier, *n; in vmci_ctx_add_notification() local 601 notifier = kmalloc_obj(struct vmci_handle_list); in vmci_ctx_add_notification() 602 if (!notifier) { in vmci_ctx_add_notification() 607 INIT_LIST_HEAD(¬ifier->node); in vmci_ctx_add_notification() 608 notifier->handle = vmci_make_handle(remote_cid, VMCI_EVENT_HANDLER); in vmci_ctx_add_notification() 614 if (vmci_handle_is_equal(n->handle, notifier->handle)) { in vmci_ctx_add_notification() [all …]
|
| /linux/drivers/iommu/intel/ |
| H A D | svm.c | 55 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_arch_invalidate_secondary_tlbs() 72 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_mm_release() 101 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_mm_free_notifier() 199 mmu_notifier_put(&dmar_domain->notifier); in intel_svm_domain_free() 227 domain->notifier.ops = &intel_mmuops; in intel_svm_domain_alloc() 228 ret = mmu_notifier_register(&domain->notifier, mm); in intel_svm_domain_alloc()
|
| /linux/drivers/staging/media/atomisp/pci/ |
| H A D | atomisp_csi2_bridge.c | 450 #define notifier_to_atomisp(n) container_of(n, struct atomisp_device, notifier) 453 static int atomisp_notifier_bound(struct v4l2_async_notifier *notifier, in atomisp_notifier_bound() argument 457 struct atomisp_device *isp = notifier_to_atomisp(notifier); in atomisp_notifier_bound() 480 static void atomisp_notifier_unbind(struct v4l2_async_notifier *notifier, in atomisp_notifier_unbind() argument 484 struct atomisp_device *isp = notifier_to_atomisp(notifier); in atomisp_notifier_unbind() 491 static int atomisp_notifier_complete(struct v4l2_async_notifier *notifier) in atomisp_notifier_complete() argument 493 struct atomisp_device *isp = notifier_to_atomisp(notifier); in atomisp_notifier_complete() 508 v4l2_async_nf_init(&isp->notifier, &isp->v4l2_dev); in atomisp_csi2_bridge_parse_firmware() 509 isp->notifier.ops = &atomisp_async_ops; in atomisp_csi2_bridge_parse_firmware() 536 s_asd = v4l2_async_nf_add_fwnode_remote(&isp->notifier, ep, in atomisp_csi2_bridge_parse_firmware()
|
| /linux/drivers/gpu/drm/i915/gem/ |
| H A D | i915_gem_userptr.c | 75 return mmu_interval_notifier_insert(&obj->userptr.notifier, current->mm, in i915_gem_userptr_init__mmu_notifier() 242 if (obj->userptr.notifier.mm != current->mm) in i915_gem_object_userptr_submit_init() 245 notifier_seq = mmu_interval_read_begin(&obj->userptr.notifier); in i915_gem_object_userptr_submit_init() 283 if (mmu_interval_read_retry(&obj->userptr.notifier, in i915_gem_object_userptr_submit_init() 313 if (mmu_interval_read_retry(&obj->userptr.notifier, in i915_gem_object_userptr_submit_done() 353 if (!obj->userptr.notifier.mm) in i915_gem_userptr_release() 356 mmu_interval_notifier_remove(&obj->userptr.notifier); in i915_gem_userptr_release() 357 obj->userptr.notifier.mm = NULL; in i915_gem_userptr_release()
|
| /linux/drivers/input/keyboard/ |
| H A D | iqs62x-keys.c | 38 struct notifier_block notifier; member 184 static int iqs62x_keys_notifier(struct notifier_block *notifier, in iqs62x_keys_notifier() argument 191 iqs62x_keys = container_of(notifier, struct iqs62x_keys_private, in iqs62x_keys_notifier() 192 notifier); in iqs62x_keys_notifier() 301 iqs62x_keys->notifier.notifier_call = iqs62x_keys_notifier; in iqs62x_keys_probe() 303 &iqs62x_keys->notifier); in iqs62x_keys_probe() 316 &iqs62x_keys->notifier); in iqs62x_keys_remove()
|
| H A D | adp5520-keys.c | 18 struct notifier_block notifier; member 42 dev = container_of(nb, struct adp5520_keys, notifier); in adp5520_keys_notifier() 159 dev->notifier.notifier_call = adp5520_keys_notifier; in adp5520_keys_probe() 160 ret = adp5520_register_notifier(dev->master, &dev->notifier, in adp5520_keys_probe() 175 adp5520_unregister_notifier(dev->master, &dev->notifier, in adp5520_keys_remove()
|
| /linux/drivers/media/platform/renesas/rzg2l-cru/ |
| H A D | rzg2l-csi2.c | 120 struct v4l2_async_notifier notifier; member 264 return container_of(n, struct rzg2l_csi2, notifier); in notifier_to_csi2() 771 static int rzg2l_csi2_notify_bound(struct v4l2_async_notifier *notifier, in rzg2l_csi2_notify_bound() argument 775 struct rzg2l_csi2 *csi2 = notifier_to_csi2(notifier); in rzg2l_csi2_notify_bound() 787 static void rzg2l_csi2_notify_unbind(struct v4l2_async_notifier *notifier, in rzg2l_csi2_notify_unbind() argument 791 struct rzg2l_csi2 *csi2 = notifier_to_csi2(notifier); in rzg2l_csi2_notify_unbind() 847 v4l2_async_subdev_nf_init(&csi2->notifier, &csi2->subdev); in rzg2l_csi2_parse_dt() 848 csi2->notifier.ops = &rzg2l_csi2_notify_ops; in rzg2l_csi2_parse_dt() 850 asd = v4l2_async_nf_add_fwnode(&csi2->notifier, fwnode, in rzg2l_csi2_parse_dt() 856 ret = v4l2_async_nf_register(&csi2->notifier); in rzg2l_csi2_parse_dt() [all …]
|
| /linux/drivers/staging/nvec/ |
| H A D | nvec_power.c | 24 struct notifier_block notifier; member 88 container_of(nb, struct nvec_power, notifier); in nvec_power_notifier() 124 container_of(nb, struct nvec_power, notifier); in nvec_power_bat_notifier() 394 power->notifier.notifier_call = nvec_power_notifier; in nvec_power_probe() 403 power->notifier.notifier_call = nvec_power_bat_notifier; in nvec_power_probe() 409 nvec_register_notifier(nvec, &power->notifier, NVEC_SYS); in nvec_power_probe() 424 nvec_unregister_notifier(power->nvec, &power->notifier); in nvec_power_remove()
|
| H A D | nvec_ps2.c | 35 struct notifier_block notifier; member 118 ps2_dev.notifier.notifier_call = nvec_ps2_notifier; in nvec_mouse_probe() 120 nvec_register_notifier(nvec, &ps2_dev.notifier, 0); in nvec_mouse_probe() 133 nvec_unregister_notifier(nvec, &ps2_dev.notifier); in nvec_mouse_remove()
|
| /linux/tools/testing/selftests/memory-hotplug/ |
| H A D | mem-on-off-test.sh | 243 NOTIFIER_ERR_INJECT_DIR=$DEBUGFS/notifier-error-inject/memory 249 /sbin/modprobe -q -r memory-notifier-error-inject 250 /sbin/modprobe -q memory-notifier-error-inject priority=$priority 258 echo $msg memory-notifier-error-inject module is not available >&2 305 /sbin/modprobe -q -r memory-notifier-error-inject
|
| /linux/drivers/infiniband/core/ |
| H A D | umem_odp.c | 108 ret = mmu_interval_notifier_insert(&umem_odp->notifier, in ib_init_umem_odp() 194 odp_data->notifier.ops = ops; in ib_umem_odp_alloc_child() 253 umem_odp->notifier.ops = ops; in ib_umem_odp_get() 288 mmu_interval_notifier_remove(&umem_odp->notifier); in ib_umem_odp_free() 353 range.notifier = &umem_odp->notifier; in ib_umem_odp_map_dma_and_lock() 370 mmu_interval_read_begin(&umem_odp->notifier); in ib_umem_odp_map_dma_and_lock() 385 if (mmu_interval_read_retry(&umem_odp->notifier, current_seq)) { in ib_umem_odp_map_dma_and_lock()
|
| /linux/Documentation/driver-api/surface_aggregator/clients/ |
| H A D | cdev.rst | 85 - Register event notifier. 91 - Unregister event notifier. 149 Register a notifier for the event target category specified in the given 150 notifier description with the specified priority. Notifiers registration is 152 notifier for a specific target category has been registered, all events of that 157 Only one notifier can be registered per target category and client instance. If 158 a notifier has already been registered, this IOCTL will fail with ``-EEXIST``. 168 Unregisters the notifier associated with the specified target category. The 169 priority field will be ignored by this IOCTL. If no notifier has been 180 Note that this call will not register a notifier itself, it will only enable [all …]
|