| /linux/drivers/gpu/drm/panthor/ |
| H A D | panthor_sched.c | 1 // SPDX-License-Identifier: GPL-2.0 or MIT 16 #include <linux/dma-mapping.h> 17 #include <linux/dma-resv.h> 22 #include <linux/iosys-map.h> 42 * Mali CSF hardware adopts a firmware-assisted scheduling model, where 45 * The scheduling happens at the scheduling group level, each group 47 * through the firmware interface). Each queue is assigned a command 54 * rotating the groups passed to the firmware so every group gets 57 * The current implementation only supports with kernel-mode queues. 58 * In other terms, userspace doesn't have access to the ring-buffer. [all …]
|
| /linux/drivers/iommu/ |
| H A D | io-pgfault.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include "iommu-priv.h" 23 struct dev_iommu *param = dev->iommu; in iopf_get_dev_fault_param() 27 fault_param = rcu_dereference(param->fault_param); in iopf_get_dev_fault_param() 28 if (fault_param && !refcount_inc_not_zero(&fault_param->users)) in iopf_get_dev_fault_param() 38 if (refcount_dec_and_test(&fault_param->users)) in iopf_put_dev_fault_param() 42 static void __iopf_free_group(struct iopf_group *group) in __iopf_free_group() argument 46 list_for_each_entry_safe(iopf, next, &group->faults, list) { in __iopf_free_group() 47 if (!(iopf->fault.prm.flags & IOMMU_FAULT_PAGE_REQUEST_LAST_PAGE)) in __iopf_free_group() 52 iopf_put_dev_fault_param(group->fault_param); in __iopf_free_group() [all …]
|
| /linux/fs/notify/ |
| H A D | notification.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 7 * Basic idea behind the notification queue: An fsnotify group (like inotify) 10 * event to the group notify queue. Since a single event might need to be on 11 * multiple group's notification queues we can't add the event directly to each 12 * queue and instead add a small "event_holder" to each queue. This event_holder 14 * going to end up on one, and only one, notification queue we embed one 17 * another group a new event_holder (from fsnotify_event_holder_cachep) will be 41 * fsnotify_get_cookie - return a unique cookie for use in synchronizing events. 50 void fsnotify_destroy_event(struct fsnotify_group *group, in fsnotify_destroy_event() argument 53 /* Overflow events are per-group and we don't want to free them */ in fsnotify_destroy_event() [all …]
|
| H A D | group.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 20 * Final freeing of a group 22 static void fsnotify_final_destroy_group(struct fsnotify_group *group) in fsnotify_final_destroy_group() argument 24 if (group->ops->free_group_priv) in fsnotify_final_destroy_group() 25 group->ops->free_group_priv(group); in fsnotify_final_destroy_group() 27 mem_cgroup_put(group->memcg); in fsnotify_final_destroy_group() 28 mutex_destroy(&group->mark_mutex); in fsnotify_final_destroy_group() 30 kfree(group); in fsnotify_final_destroy_group() 34 * Stop queueing new events for this group. Once this function returns 35 * fsnotify_add_event() will not add any new events to the group's queue. [all …]
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_exec_queue.h | 1 /* SPDX-License-Identifier: MIT */ 41 if (kref_get_unless_zero(&q->refcount)) in xe_exec_queue_get_unless_zero() 51 kref_get(&q->refcount); in xe_exec_queue_get() 57 kref_put(&q->refcount, xe_exec_queue_destroy); in xe_exec_queue_put() 62 return q->width > 1; in xe_exec_queue_is_parallel() 67 return q->pxp.type; in xe_exec_queue_uses_pxp() 71 * xe_exec_queue_is_multi_queue() - Whether an exec_queue is part of a queue group. 74 * Return: True if the exec_queue is part of a queue group, false otherwise. 78 return q->multi_queue.valid; in xe_exec_queue_is_multi_queue() 82 * xe_exec_queue_is_multi_queue_primary() - Whether an exec_queue is primary queue [all …]
|
| /linux/tools/testing/selftests/drivers/net/ |
| H A D | shaper.py | 2 # SPDX-License-Identifier: GPL-2.0 3 # pylint: disable=too-many-lines 15 def _delete_shaper(cfg, nl_shaper, handle) -> None: 16 """ Delete the shaper identified by handle, ignoring a missing-shaper error. """ 25 """ Return the netdev TX queue count, skipping the test if fewer than count exist. """ 26 qcnt = len(glob.glob(f"/sys/class/net/{cfg.ifname}/queues/tx-*")) 41 def _require_caps(cfg, nl_shaper, scope, caps, msg) -> None: 53 def get_shapers(cfg, nl_shaper) -> None: 64 def get_caps(cfg, nl_shaper) -> None: 76 def set_qshapers(cfg, nl_shaper) -> None: [all …]
|
| /linux/tools/perf/pmu-events/arch/x86/amdzen3/ |
| H A D | other.json | 5 "BriefDescription": "Cycles where the Micro-Op Queue is empty." 22 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a T… 28 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a T… 34 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a T… 40 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a T… 46 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a t… 52 …group is valid but does not get dispatched due to a Token Stall. Also counts cycles when the threa… 58 …group is valid but does not get dispatched due to a Token Stall. Also counts cycles when the threa… 64 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a T… 70 …ion": "Cycles where a dispatch group is valid but does not get dispatched due to a token stall. In… [all …]
|
| /linux/block/ |
| H A D | bfq-iosched.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 12 #include "blk-cgroup-rwstat.h" 29 * Soft real-time applications are extremely more latency sensitive 30 * than interactive ones. Over-raise the weight of the former to 38 * per-actuator data. The current value is hopefully a good upper 46 * struct bfq_service_tree - per ioprio_class service tree. 48 * Each service tree represents a B-WF2Q+ scheduler on its own. Each 50 * bfq_service_tree. All the fields are protected by the queue lock 71 * struct bfq_sched_data - multi-class scheduler. 73 * bfq_sched_data is the basic scheduler queue. It supports three [all …]
|
| H A D | blk-throttle.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 #include "blk-cgroup-rwstat.h" 10 * issued. When dispatching bios from the children and local group at each 12 * of a local or child group which can queue many bios at once filling up 17 * the parent, they're popped in round-robin order so that no single source 22 * throtl_service_queue and then dispatched in round-robin order. 31 struct list_head node; /* service_queue->queued[] */ 50 * their ->disptime. 60 THROTL_TG_WAS_EMPTY = 1 << 1, /* bio_lists[] became non-empty */ 62 * The sq's iops queue is empty, and a bio is about to be enqueued [all …]
|
| H A D | bfq-cgroup.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 16 #include "bfq-iosched.h" 23 ret = percpu_counter_init(&stat->cpu_cnt, 0, gfp); in bfq_stat_init() 27 atomic64_set(&stat->aux_cnt, 0); in bfq_stat_init() 33 percpu_counter_destroy(&stat->cpu_cnt); in bfq_stat_exit() 37 * bfq_stat_add - add a value to a bfq_stat 42 * don't re-enter this function for the same counter. 46 percpu_counter_add_batch(&stat->cpu_cnt, val, BLKG_STAT_CPU_BATCH); in bfq_stat_add() 50 * bfq_stat_read - read the current value of a bfq_stat 55 return percpu_counter_sum_positive(&stat->cpu_cnt); in bfq_stat_read() [all …]
|
| H A D | genhd.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include <linux/backing-dev.h> 30 #include "blk-throttle.h" 32 #include "blk-mq-sched.h" 33 #include "blk-rq-qos.h" 34 #include "blk-cgroup.h" 63 disk->disk_name, sectors, in set_capacity() 68 bdev_set_nr_sectors(disk->part0, sectors); in set_capacity() 90 (disk->flags & GENHD_FL_HIDDEN)) in set_capacity_and_notify() 94 disk->disk_name, capacity, size); in set_capacity_and_notify() [all …]
|
| /linux/tools/perf/pmu-events/arch/x86/amdzen6/ |
| H A D | decode.json | 5 …"BriefDescription": "Cycles where the op queue is empty. Such cycles indicate that the frontend is… 28 "BriefDescription": "Ops dispatched from the decoder to a floating-point unit.", 40 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to int… 46 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to loa… 52 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to sto… 58 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to tak… 64 …ption": "Cycles where a dispatch group is valid but does not get dispatched due to floating-point … 70 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to una… 76 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to una… 82 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to una… [all …]
|
| /linux/Documentation/block/ |
| H A D | bfq-iosched.rst | 5 BFQ is a proportional-share I/O scheduler, with some extra 6 low-latency capabilities. In addition to cgroups support (blkio or io 9 - BFQ guarantees a high system and application responsiveness, and a 10 low latency for time-sensitive applications, such as audio or video 12 - BFQ distributes bandwidth, not just time, among processes or 19 goal, for a given device, is to achieve the maximum-possible 20 throughput at all times, then do switch off all low-latency heuristics 25 As every I/O scheduler, BFQ adds some overhead to per-I/O-request 27 single-lock-protected, per-request processing time of BFQ---i.e., the 29 completion hooks---is, e.g., 1.9 us on an Intel Core i7-2760QM@2.40GHz [all …]
|
| /linux/Documentation/netlink/specs/ |
| H A D | net_shaper.yaml | 1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 2 --- 3 name: net-shaper 18 scheduling group, that can be placed in an arbitrary location of 23 the @group operation, to create and update a scheduling 24 group. Only the @group operation can create @node scope shapers. 33 @cap-get operation. 36 - 38 name: max-handle-id 41 - [all …]
|
| /linux/tools/perf/pmu-events/arch/x86/amdzen2/ |
| H A D | other.json | 5 "BriefDescription": "Cycles where the Micro-Op Queue is empty." 28 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a t… 34 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a t… 40 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a t… 46 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a t… 52 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a t… 58 …escription": "Cycles where a dispatch group is valid but does not get dispatched due to a token st… 64 …Description": "Cycles where a dispatch group is valid but does not get dispatched due to a token s… 70 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a t… 76 …"BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to a t… [all …]
|
| /linux/drivers/net/ethernet/freescale/ |
| H A D | gianfar.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 13 * Copyright 2002-2009, 2011-2013 Freescale Semiconductor, Inc. 16 * -Add support for module parameters 17 * -Add patch for ethtool phys id 67 #define DRV_NAME "gfar-enet" 92 #define GFAR_RXB_SIZE rounddown(GFAR_RXB_TRUESIZE - GFAR_SKBFRAG_OVR, 64) 95 #define TX_RING_MOD_MASK(size) (size-1) 96 #define RX_RING_MOD_MASK(size) (size-1) 281 /* weighted round-robin scheduling (WRRS) */ 381 * to the 3-bit hash value generated */ [all …]
|
| /linux/include/linux/ |
| H A D | iommu.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copyright (C) 2007-2008 Advanced Micro Devices, Inc. 63 * struct iommu_fault_page_request - Page Request data 65 * is the last page in group (IOMMU_FAULT_PAGE_REQUEST_* values). 70 * @grpid: Page Request Group Index 73 * @private_data: device-specific private information 88 * struct iommu_fault - Generic fault data 98 * enum iommu_page_response_code - Return status of fault handlers 113 * struct iommu_page_response - Generic page response information 115 * @grpid: Page Request Group Index [all …]
|
| /linux/drivers/crypto/marvell/octeontx/ |
| H A D | otx_cptvf.h | 1 /* SPDX-License-Identifier: GPL-2.0 22 #define otx_cpt_device_ready(cpt) ((cpt)->flags & OTX_CPT_FLAG_DEVICE_READY) 23 /* Default command queue length */ 36 u32 idx; /* Command queue host write idx */ 39 * Command queue head, instructions 47 u32 qchunksize; /* Command queue chunk size */ 48 struct otx_cpt_cmd_queue queue[OTX_CPT_NUM_QS_PER_VF]; member 53 struct otx_cpt_pending_queue queue[OTX_CPT_NUM_QS_PER_VF]; member 57 for (i = 0, q = &qinfo->queue[i]; i < qinfo->num_queues; i++, \ 58 q = &qinfo->queue[i]) [all …]
|
| /linux/Documentation/admin-guide/cgroup-v1/ |
| H A D | blkio-controller.rst | 22 ----------------------------- 33 mount -t cgroup -o blkio none /sys/fs/cgroup/blkio 35 Specify a bandwidth rate on particular device for root group. The format 40 This will put a limit of 1MB/second on reads happening for root group 98 -------------------------------- 101 Specifies per cgroup weight. This is default weight of the group 106 see Documentation/block/bfq-iosched.rst. 109 Specifies per cgroup per device weights, overriding the default group 110 weight. For more details, see Documentation/block/bfq-iosched.rst. 141 third field specifies the disk time allocated to group in [all …]
|
| /linux/Documentation/devicetree/bindings/net/ |
| H A D | fsl,gianfar.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Freescale Three-Speed Ethernet Controller (TSEC), "Gianfar" 10 - J. Neuschäfer <j.ne@posteo.net> 12 # This is needed to distinguish gianfar.yaml and gianfar-mdio.yaml, because 16 - properties: 23 - device_type 25 - properties: 30 - compatible [all …]
|
| /linux/tools/perf/pmu-events/arch/x86/skylakex/ |
| H A D | uncore-memory.json | 177 … "DRAM CAS (Column Address Strobe) Commands.; DRAM WR_CAS (w/ and w/out auto-pre) in Read Major Mo… 183 … number of Opportunistic DRAM Write CAS commands issued on this channel while in Read-Major-Mode.", 188 … "DRAM CAS (Column Address Strobe) Commands.; DRAM WR_CAS (w/ and w/out auto-pre) in Write Major M… 193 …nts the total number or DRAM Write CAS commands issued on this channel while in Write-Major-Mode.", 206 … "BriefDescription": "Clockticks in the Memory Controller using a dedicated 48-bit Fixed Counter", 263 …on the given channel. Major modea are channel-wide, and not a per-rank (or dimm or bank) mode.; … 274 …ected by a filter) on the given channel. Major modea are channel-wide, and not a per-rank (or di… 285 …ected by a filter) on the given channel. Major modea are channel-wide, and not a per-rank (or di… 296 …ected by a filter) on the given channel. Major modea are channel-wide, and not a per-rank (or di… 436 …-refresh and has a clock. This happens in some ACPI CPU package C-states for the sleep levels. For… [all …]
|
| /linux/tools/perf/pmu-events/arch/x86/cascadelakex/ |
| H A D | uncore-memory.json | 177 … "DRAM CAS (Column Address Strobe) Commands.; DRAM WR_CAS (w/ and w/out auto-pre) in Read Major Mo… 183 … number of Opportunistic DRAM Write CAS commands issued on this channel while in Read-Major-Mode.", 188 … "DRAM CAS (Column Address Strobe) Commands.; DRAM WR_CAS (w/ and w/out auto-pre) in Write Major M… 193 …nts the total number or DRAM Write CAS commands issued on this channel while in Write-Major-Mode.", 206 … "BriefDescription": "Clockticks in the Memory Controller using a dedicated 48-bit Fixed Counter", 281 …on the given channel. Major modea are channel-wide, and not a per-rank (or dimm or bank) mode.; … 292 …ected by a filter) on the given channel. Major modea are channel-wide, and not a per-rank (or di… 303 …ected by a filter) on the given channel. Major modea are channel-wide, and not a per-rank (or di… 314 …ected by a filter) on the given channel. Major modea are channel-wide, and not a per-rank (or di… 324 "ScaleUnit": "6.103515625E-5MiB/sec", [all …]
|
| /linux/include/uapi/linux/ |
| H A D | vhost.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 4 /* Userspace interface for in-kernel virtio accelerators. */ 18 #define VHOST_FILE_UNBIND -1 74 /* Base value where queue looks for available descriptors */ 80 * or VHOST_VRING_BIG_ENDIAN (other values return -EINVAL). 82 * returns -EBUSY. 130 * used for transmit. Pass fd -1 to unbind from the socket and the transmit 152 * the device id defined in virtio-spec. 156 * of the device status defined in virtio-spec. 161 * definition of the device config defined in virtio-spec. [all …]
|
| /linux/tools/perf/trace/beauty/include/uapi/linux/ |
| H A D | vhost.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 4 /* Userspace interface for in-kernel virtio accelerators. */ 18 #define VHOST_FILE_UNBIND -1 74 /* Base value where queue looks for available descriptors */ 80 * or VHOST_VRING_BIG_ENDIAN (other values return -EINVAL). 82 * returns -EBUSY. 130 * used for transmit. Pass fd -1 to unbind from the socket and the transmit 152 * the device id defined in virtio-spec. 156 * of the device status defined in virtio-spec. 161 * definition of the device config defined in virtio-spec. [all …]
|
| /linux/drivers/crypto/cavium/cpt/ |
| H A D | cptpf_mbox.c | 1 // SPDX-License-Identifier: GPL-2.0-only 12 cpt_write_csr64(cpt->reg_base, CPTX_PF_VFX_MBOXX(0, vf, 1), in cpt_send_msg_to_vf() 13 mbx->data); in cpt_send_msg_to_vf() 14 cpt_write_csr64(cpt->reg_base, CPTX_PF_VFX_MBOXX(0, vf, 0), mbx->msg); in cpt_send_msg_to_vf() 23 mbx->data = 0ull; in cpt_mbox_send_ack() 24 mbx->msg = CPT_MBOX_MSG_TYPE_ACK; in cpt_mbox_send_ack() 31 cpt_write_csr64(cpt->reg_base, CPTX_PF_MBOX_INTX(0, 0), (1 << vf)); in cpt_clear_mbox_intr() 41 pf_qx_ctl.u = cpt_read_csr64(cpt->reg_base, CPTX_PF_QX_CTL(0, vf)); in cpt_cfg_qlen_for_vf() 44 cpt_write_csr64(cpt->reg_base, CPTX_PF_QX_CTL(0, vf), pf_qx_ctl.u); in cpt_cfg_qlen_for_vf() 54 pf_qx_ctl.u = cpt_read_csr64(cpt->reg_base, CPTX_PF_QX_CTL(0, vf)); in cpt_cfg_vq_priority() [all …]
|