Home
last modified time | relevance | path

Searched full:handle (Results 1 – 25 of 5413) sorted by relevance

12345678910>>...217

/Linux-v5.4/drivers/crypto/qat/qat_common/
Dqat_hal.c79 #define AE(handle, ae) handle->hal_handle->aes[ae] argument
112 void qat_hal_set_live_ctx(struct icp_qat_fw_loader_handle *handle, in qat_hal_set_live_ctx() argument
115 AE(handle, ae).live_ctx_mask = ctx_mask; in qat_hal_set_live_ctx()
119 static int qat_hal_rd_ae_csr(struct icp_qat_fw_loader_handle *handle, in qat_hal_rd_ae_csr() argument
126 value = GET_AE_CSR(handle, ae, csr); in qat_hal_rd_ae_csr()
127 if (!(GET_AE_CSR(handle, ae, LOCAL_CSR_STATUS) & LCS_STATUS)) in qat_hal_rd_ae_csr()
135 static int qat_hal_wr_ae_csr(struct icp_qat_fw_loader_handle *handle, in qat_hal_wr_ae_csr() argument
142 SET_AE_CSR(handle, ae, csr, value); in qat_hal_wr_ae_csr()
143 if (!(GET_AE_CSR(handle, ae, LOCAL_CSR_STATUS) & LCS_STATUS)) in qat_hal_wr_ae_csr()
151 static void qat_hal_get_wakeup_event(struct icp_qat_fw_loader_handle *handle, in qat_hal_get_wakeup_event() argument
[all …]
Dqat_uclo.c167 static void qat_uclo_wr_sram_by_words(struct icp_qat_fw_loader_handle *handle, in qat_uclo_wr_sram_by_words() argument
176 SRAM_WRITE(handle, addr, outval); in qat_uclo_wr_sram_by_words()
183 static void qat_uclo_wr_umem_by_words(struct icp_qat_fw_loader_handle *handle, in qat_uclo_wr_umem_by_words() argument
195 qat_hal_wr_umem(handle, ae, addr++, 1, &outval); in qat_uclo_wr_umem_by_words()
201 static void qat_uclo_batch_wr_umem(struct icp_qat_fw_loader_handle *handle, in qat_uclo_batch_wr_umem() argument
218 qat_uclo_wr_umem_by_words(handle, ae, addr, value, size); in qat_uclo_batch_wr_umem()
224 qat_uclo_cleanup_batch_init_list(struct icp_qat_fw_loader_handle *handle, in qat_uclo_cleanup_batch_init_list() argument
260 static int qat_uclo_fetch_initmem_ae(struct icp_qat_fw_loader_handle *handle, in qat_uclo_fetch_initmem_ae() argument
264 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle; in qat_uclo_fetch_initmem_ae()
292 *handle, struct icp_qat_uof_initmem in qat_uclo_create_batch_init_list()
[all …]
/Linux-v5.4/drivers/net/ethernet/hisilicon/hns/
Dhns_ae_adapt.c18 static struct hns_mac_cb *hns_get_mac_cb(struct hnae_handle *handle) in hns_get_mac_cb() argument
20 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_get_mac_cb()
30 static struct hns_ppe_cb *hns_get_ppe_cb(struct hnae_handle *handle) in hns_get_ppe_cb() argument
34 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_get_ppe_cb()
141 static void hns_ae_put_handle(struct hnae_handle *handle) in hns_ae_put_handle() argument
143 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_put_handle()
146 for (i = 0; i < handle->q_num; i++) in hns_ae_put_handle()
147 hns_ae_get_ring_pair(handle->qs[i])->used_by_vf = 0; in hns_ae_put_handle()
152 static int hns_ae_wait_flow_down(struct hnae_handle *handle) in hns_ae_wait_flow_down() argument
160 for (i = 0; i < handle->q_num; i++) { in hns_ae_wait_flow_down()
[all …]
/Linux-v5.4/fs/ext4/
Dext4_jbd2.c10 /* Just increment the non-pointer handle value */
13 handle_t *handle = current->journal_info; in ext4_get_nojournal() local
14 unsigned long ref_cnt = (unsigned long)handle; in ext4_get_nojournal()
19 handle = (handle_t *)ref_cnt; in ext4_get_nojournal()
21 current->journal_info = handle; in ext4_get_nojournal()
22 return handle; in ext4_get_nojournal()
26 /* Decrement the non-pointer handle value */
27 static void ext4_put_nojournal(handle_t *handle) in ext4_put_nojournal() argument
29 unsigned long ref_cnt = (unsigned long)handle; in ext4_put_nojournal()
34 handle = (handle_t *)ref_cnt; in ext4_put_nojournal()
[all …]
Dext4_jbd2.h68 /* We break up a large truncate or write transaction once the handle's
112 * Ext4 handle operation types -- for logging purposes
137 /* list information for other callbacks attached to the same handle */
149 * @handle: active journal transaction handle to register callback on
157 * after the transaction for which the handle was created has completed.
168 static inline void _ext4_journal_callback_add(handle_t *handle, in _ext4_journal_callback_add() argument
172 list_add_tail(&jce->jce_list, &handle->h_transaction->t_private_list); in _ext4_journal_callback_add()
175 static inline void ext4_journal_callback_add(handle_t *handle, in ext4_journal_callback_add() argument
182 EXT4_SB(handle->h_transaction->t_journal->j_private); in ext4_journal_callback_add()
187 _ext4_journal_callback_add(handle, jce); in ext4_journal_callback_add()
[all …]
Dmigrate.c21 static int finish_range(handle_t *handle, struct inode *inode, in finish_range() argument
56 if (needed && ext4_handle_has_enough_credits(handle, in finish_range()
59 retval = ext4_journal_restart(handle, needed); in finish_range()
64 retval = ext4_journal_extend(handle, needed); in finish_range()
70 retval = ext4_journal_restart(handle, needed); in finish_range()
76 retval = ext4_ext_insert_extent(handle, inode, &path, &newext, 0); in finish_range()
85 static int update_extent_range(handle_t *handle, struct inode *inode, in update_extent_range() argument
103 retval = finish_range(handle, inode, lb); in update_extent_range()
110 static int update_ind_extent_range(handle_t *handle, struct inode *inode, in update_ind_extent_range() argument
126 retval = update_extent_range(handle, inode, in update_ind_extent_range()
[all …]
/Linux-v5.4/drivers/gpu/drm/amd/include/
Dkgd_pp_interface.h230 int (*pre_set_power_state)(void *handle);
231 int (*set_power_state)(void *handle);
232 void (*post_set_power_state)(void *handle);
233 void (*display_configuration_changed)(void *handle);
234 void (*print_power_state)(void *handle, void *ps);
235 bool (*vblank_too_short)(void *handle);
236 void (*enable_bapm)(void *handle, bool enable);
237 int (*check_state_equal)(void *handle,
242 void (*set_fan_control_mode)(void *handle, u32 mode);
243 u32 (*get_fan_control_mode)(void *handle);
[all …]
/Linux-v5.4/tools/testing/selftests/tc-testing/tc-tests/filters/
Dfw.json15 "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 65535 fw action ok",
17 "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 prio 65535 protocol all fw",
18 "matchPattern": "pref 65535 fw.*handle 0x1.*gact action pass",
37 "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 65536 fw action ok",
39 "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 prio 65536 protocol all fw",
40 "matchPattern": "pref 65536 fw.*handle 0x1.*gact action pass",
164 "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 fw action ok",
166 "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 prio 1 protocol all fw",
167 "matchPattern": "handle 0x1.*gact action pass",
186 … "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 fw action gact index 1",
[all …]
Dmatchall.json13 …"cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ip matchall act…
15 "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 1 protocol ip matchall",
16 …"matchPattern": "^filter parent ffff: protocol ip pref 1 matchall.*handle 0x1.*gact action pass.*r…
32 "$TC qdisc add dev $DUMMY root handle 1: prio"
34 …"cmdUnderTest": "$TC filter add dev $DUMMY parent 1: handle 0x1 prio 1 protocol ip matchall action…
36 "verifyCmd": "$TC filter get dev $DUMMY parent 1: handle 1 prio 1 protocol ip matchall",
37 …"matchPattern": "^filter parent 1: protocol ip pref 1 matchall.*handle 0x1.*gact action pass.*ref …
40 "$TC qdisc del dev $DUMMY root handle 1: prio",
55 …"cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall a…
57 … "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 1 protocol ipv6 matchall",
[all …]
/Linux-v5.4/drivers/firmware/arm_scmi/
Dbase.c29 * @handle: SCMI entity handle
33 static int scmi_base_attributes_get(const struct scmi_handle *handle) in scmi_base_attributes_get() argument
38 struct scmi_revision_info *rev = handle->version; in scmi_base_attributes_get()
40 ret = scmi_xfer_get_init(handle, PROTOCOL_ATTRIBUTES, in scmi_base_attributes_get()
45 ret = scmi_do_xfer(handle, t); in scmi_base_attributes_get()
52 scmi_xfer_put(handle, t); in scmi_base_attributes_get()
60 * @handle: SCMI entity handle
66 scmi_base_vendor_id_get(const struct scmi_handle *handle, bool sub_vendor) in scmi_base_vendor_id_get() argument
72 struct scmi_revision_info *rev = handle->version; in scmi_base_vendor_id_get()
84 ret = scmi_xfer_get_init(handle, cmd, SCMI_PROTOCOL_BASE, 0, size, &t); in scmi_base_vendor_id_get()
[all …]
Dreset.c55 static int scmi_reset_attributes_get(const struct scmi_handle *handle, in scmi_reset_attributes_get() argument
62 ret = scmi_xfer_get_init(handle, PROTOCOL_ATTRIBUTES, in scmi_reset_attributes_get()
67 ret = scmi_do_xfer(handle, t); in scmi_reset_attributes_get()
73 scmi_xfer_put(handle, t); in scmi_reset_attributes_get()
78 scmi_reset_domain_attributes_get(const struct scmi_handle *handle, u32 domain, in scmi_reset_domain_attributes_get() argument
85 ret = scmi_xfer_get_init(handle, RESET_DOMAIN_ATTRIBUTES, in scmi_reset_domain_attributes_get()
94 ret = scmi_do_xfer(handle, t); in scmi_reset_domain_attributes_get()
106 scmi_xfer_put(handle, t); in scmi_reset_domain_attributes_get()
110 static int scmi_reset_num_domains_get(const struct scmi_handle *handle) in scmi_reset_num_domains_get() argument
112 struct scmi_reset_info *pi = handle->reset_priv; in scmi_reset_num_domains_get()
[all …]
Dclock.c74 static int scmi_clock_protocol_attributes_get(const struct scmi_handle *handle, in scmi_clock_protocol_attributes_get() argument
81 ret = scmi_xfer_get_init(handle, PROTOCOL_ATTRIBUTES, in scmi_clock_protocol_attributes_get()
88 ret = scmi_do_xfer(handle, t); in scmi_clock_protocol_attributes_get()
94 scmi_xfer_put(handle, t); in scmi_clock_protocol_attributes_get()
98 static int scmi_clock_attributes_get(const struct scmi_handle *handle, in scmi_clock_attributes_get() argument
105 ret = scmi_xfer_get_init(handle, CLOCK_ATTRIBUTES, SCMI_PROTOCOL_CLOCK, in scmi_clock_attributes_get()
113 ret = scmi_do_xfer(handle, t); in scmi_clock_attributes_get()
119 scmi_xfer_put(handle, t); in scmi_clock_attributes_get()
124 scmi_clock_describe_rates_get(const struct scmi_handle *handle, u32 clk_id, in scmi_clock_describe_rates_get() argument
136 ret = scmi_xfer_get_init(handle, CLOCK_DESCRIBE_RATES, in scmi_clock_describe_rates_get()
[all …]
Dperf.c155 static int scmi_perf_attributes_get(const struct scmi_handle *handle, in scmi_perf_attributes_get() argument
162 ret = scmi_xfer_get_init(handle, PROTOCOL_ATTRIBUTES, in scmi_perf_attributes_get()
169 ret = scmi_do_xfer(handle, t); in scmi_perf_attributes_get()
180 scmi_xfer_put(handle, t); in scmi_perf_attributes_get()
185 scmi_perf_domain_attributes_get(const struct scmi_handle *handle, u32 domain, in scmi_perf_domain_attributes_get() argument
192 ret = scmi_xfer_get_init(handle, PERF_DOMAIN_ATTRIBUTES, in scmi_perf_domain_attributes_get()
201 ret = scmi_do_xfer(handle, t); in scmi_perf_domain_attributes_get()
225 scmi_xfer_put(handle, t); in scmi_perf_domain_attributes_get()
237 scmi_perf_describe_levels_get(const struct scmi_handle *handle, u32 domain, in scmi_perf_describe_levels_get() argument
248 ret = scmi_xfer_get_init(handle, PERF_DESCRIBE_LEVELS, in scmi_perf_describe_levels_get()
[all …]
Dpower.c59 static int scmi_power_attributes_get(const struct scmi_handle *handle, in scmi_power_attributes_get() argument
66 ret = scmi_xfer_get_init(handle, PROTOCOL_ATTRIBUTES, in scmi_power_attributes_get()
73 ret = scmi_do_xfer(handle, t); in scmi_power_attributes_get()
81 scmi_xfer_put(handle, t); in scmi_power_attributes_get()
86 scmi_power_domain_attributes_get(const struct scmi_handle *handle, u32 domain, in scmi_power_domain_attributes_get() argument
93 ret = scmi_xfer_get_init(handle, POWER_DOMAIN_ATTRIBUTES, in scmi_power_domain_attributes_get()
102 ret = scmi_do_xfer(handle, t); in scmi_power_domain_attributes_get()
112 scmi_xfer_put(handle, t); in scmi_power_domain_attributes_get()
117 scmi_power_state_set(const struct scmi_handle *handle, u32 domain, u32 state) in scmi_power_state_set() argument
123 ret = scmi_xfer_get_init(handle, POWER_STATE_SET, SCMI_PROTOCOL_POWER, in scmi_power_state_set()
[all …]
Dsensors.c78 static int scmi_sensor_attributes_get(const struct scmi_handle *handle, in scmi_sensor_attributes_get() argument
85 ret = scmi_xfer_get_init(handle, PROTOCOL_ATTRIBUTES, in scmi_sensor_attributes_get()
92 ret = scmi_do_xfer(handle, t); in scmi_sensor_attributes_get()
101 scmi_xfer_put(handle, t); in scmi_sensor_attributes_get()
105 static int scmi_sensor_description_get(const struct scmi_handle *handle, in scmi_sensor_description_get() argument
114 ret = scmi_xfer_get_init(handle, SENSOR_DESCRIPTION_GET, in scmi_sensor_description_get()
125 ret = scmi_do_xfer(handle, t); in scmi_sensor_description_get()
133 dev_err(handle->dev, "No. of sensors can't exceed %d", in scmi_sensor_description_get()
163 scmi_xfer_put(handle, t); in scmi_sensor_description_get()
167 static int scmi_sensor_trip_point_notify(const struct scmi_handle *handle, in scmi_sensor_trip_point_notify() argument
[all …]
/Linux-v5.4/drivers/net/ethernet/hisilicon/hns3/
Dhnae3.h8 * ae handle (handle):
89 struct hnae3_handle *handle; member
90 int tqp_index; /* index in a handle */
215 int (*init_instance)(struct hnae3_handle *handle);
216 void (*uninit_instance)(struct hnae3_handle *handle, bool reset);
217 void (*link_status_change)(struct hnae3_handle *handle, bool state);
218 int (*setup_tc)(struct hnae3_handle *handle, u8 tc);
219 int (*reset_notify)(struct hnae3_handle *handle,
221 void (*process_hw_error)(struct hnae3_handle *handle,
244 /* This struct defines the operation on the handle.
[all …]
/Linux-v5.4/fs/
Dfhandle.c24 struct file_handle *handle = NULL; in do_sys_name_to_handle() local
28 * support decoding of the file handle in do_sys_name_to_handle()
40 handle = kmalloc(sizeof(struct file_handle) + f_handle.handle_bytes, in do_sys_name_to_handle()
42 if (!handle) in do_sys_name_to_handle()
45 /* convert handle size to multiple of sizeof(u32) */ in do_sys_name_to_handle()
48 /* we ask for a non connected handle */ in do_sys_name_to_handle()
50 (struct fid *)handle->f_handle, in do_sys_name_to_handle()
52 handle->handle_type = retval; in do_sys_name_to_handle()
53 /* convert handle size to bytes */ in do_sys_name_to_handle()
55 handle->handle_bytes = handle_bytes; in do_sys_name_to_handle()
[all …]
/Linux-v5.4/drivers/net/ethernet/qualcomm/
Dqca_7k_common.c77 qcafrm_fsm_decode(struct qcafrm_handle *handle, u8 *buf, u16 buf_len, u8 recv_byte) in qcafrm_fsm_decode() argument
82 switch (handle->state) { in qcafrm_fsm_decode()
86 handle->state--; in qcafrm_fsm_decode()
90 handle->state = handle->init; in qcafrm_fsm_decode()
95 handle->state--; in qcafrm_fsm_decode()
104 handle->state = handle->init; in qcafrm_fsm_decode()
106 handle->state--; in qcafrm_fsm_decode()
112 handle->offset = recv_byte; in qcafrm_fsm_decode()
113 handle->state = QCAFRM_WAIT_LEN_BYTE1; in qcafrm_fsm_decode()
116 handle->offset = handle->offset | (recv_byte << 8); in qcafrm_fsm_decode()
[all …]
/Linux-v5.4/drivers/gpu/drm/amd/powerplay/
Damd_powerplay.c75 static int pp_early_init(void *handle) in pp_early_init() argument
78 struct amdgpu_device *adev = handle; in pp_early_init()
92 static int pp_sw_init(void *handle) in pp_sw_init() argument
94 struct amdgpu_device *adev = handle; in pp_sw_init()
105 static int pp_sw_fini(void *handle) in pp_sw_fini() argument
107 struct amdgpu_device *adev = handle; in pp_sw_fini()
118 static int pp_hw_init(void *handle) in pp_hw_init() argument
121 struct amdgpu_device *adev = handle; in pp_hw_init()
132 static int pp_hw_fini(void *handle) in pp_hw_fini() argument
134 struct amdgpu_device *adev = handle; in pp_hw_fini()
[all …]
/Linux-v5.4/drivers/pci/hotplug/
Dacpi_pcihp.c36 * @handle - the handle of the hotplug controller.
38 static acpi_status acpi_run_oshp(acpi_handle handle) in acpi_run_oshp() argument
43 acpi_get_name(handle, ACPI_FULL_PATHNAME, &string); in acpi_run_oshp()
46 status = acpi_evaluate_object(handle, METHOD_NAME_OSHP, NULL, NULL); in acpi_run_oshp()
73 acpi_handle chandle, handle; in acpi_get_hp_hw_control_from_firmware() local
105 handle = ACPI_HANDLE(&pdev->dev); in acpi_get_hp_hw_control_from_firmware()
106 if (!handle) { in acpi_get_hp_hw_control_from_firmware()
109 * space at all. Try to get ACPI handle of parent PCI bus. in acpi_get_hp_hw_control_from_firmware()
113 handle = acpi_pci_get_bridge_handle(pbus); in acpi_get_hp_hw_control_from_firmware()
114 if (handle) in acpi_get_hp_hw_control_from_firmware()
[all …]
/Linux-v5.4/drivers/firmware/
Dti_sci.c109 * @handle: Instance of TI SCI handle to send to clients.
126 struct ti_sci_handle handle; member
139 #define handle_to_ti_sci_info(h) container_of(h, struct ti_sci_info, handle)
285 dev_err(dev, "Unable to handle %zu xfer(max %d)\n", in ti_sci_rx_callback()
463 struct ti_sci_handle *handle = &info->handle; in ti_sci_cmd_get_revision() local
464 struct ti_sci_version_info *ver = &handle->version; in ti_sci_cmd_get_revision()
513 * @handle: pointer to TI SCI handle
520 static int ti_sci_set_device_state(const struct ti_sci_handle *handle, in ti_sci_set_device_state() argument
530 if (IS_ERR(handle)) in ti_sci_set_device_state()
531 return PTR_ERR(handle); in ti_sci_set_device_state()
[all …]
/Linux-v5.4/drivers/misc/vmw_vmci/
Dvmci_resource.c30 static unsigned int vmci_resource_hash(struct vmci_handle handle) in vmci_resource_hash() argument
32 return hash_32(handle.resource, VMCI_RESOURCE_HASH_BITS); in vmci_resource_hash()
36 * Gets a resource (if one exists) matching given handle from the hash table.
38 static struct vmci_resource *vmci_resource_lookup(struct vmci_handle handle, in vmci_resource_lookup() argument
42 unsigned int idx = vmci_resource_hash(handle); in vmci_resource_lookup()
47 u32 cid = r->handle.context; in vmci_resource_lookup()
48 u32 rid = r->handle.resource; in vmci_resource_lookup()
51 rid == handle.resource && in vmci_resource_lookup()
52 (cid == handle.context || cid == VMCI_INVALID_ID || in vmci_resource_lookup()
53 handle.context == VMCI_INVALID_ID)) { in vmci_resource_lookup()
[all …]
Dvmci_doorbell.c30 * DoorbellEntry describes the a doorbell notification handle allocated by the
80 * with a given doorbell handle. For guest endpoints, the
83 * handle. Hypervisor endpoints are not yet supported.
85 int vmci_dbell_get_priv_flags(struct vmci_handle handle, u32 *priv_flags) in vmci_dbell_get_priv_flags() argument
87 if (priv_flags == NULL || handle.context == VMCI_INVALID_ID) in vmci_dbell_get_priv_flags()
90 if (handle.context == VMCI_HOST_CONTEXT_ID) { in vmci_dbell_get_priv_flags()
94 resource = vmci_resource_by_handle(handle, in vmci_dbell_get_priv_flags()
102 } else if (handle.context == VMCI_HYPERVISOR_CONTEXT_ID) { in vmci_dbell_get_priv_flags()
109 *priv_flags = vmci_context_get_priv_flags(handle.context); in vmci_dbell_get_priv_flags()
225 * Creates a link between the given doorbell handle and the given
[all …]
/Linux-v5.4/drivers/media/pci/cx18/
Dcx23418.h21 OUT[0] - Task handle. This handle is passed along with commands to
27 IN[0] - Task handle. Hanlde of the task to destroy
65 IN[0] - Task handle. Handle of the task
83 IN[0] - Task handle. Handle of the task to start
88 IN[0] - Task handle. Handle of the task to stop
94 IN[0] - Task handle. Handle of the task to pause
99 IN[0] - Task handle. Handle of the task to resume
115 IN[0] - Task handle. Handle of the task to start
121 IN[0] - task handle. Handle of the task to start
127 IN[0] - task handle
[all …]
/Linux-v5.4/tools/testing/selftests/net/forwarding/
Dtc_flower.sh41 tc filter add dev $h2 ingress protocol ip pref 1 handle 101 flower \
43 tc filter add dev $h2 ingress protocol ip pref 2 handle 102 flower \
55 tc filter del dev $h2 ingress protocol ip pref 1 handle 101 flower
56 tc filter del dev $h2 ingress protocol ip pref 2 handle 102 flower
67 tc filter add dev $h2 ingress protocol ip pref 1 handle 101 flower \
69 tc filter add dev $h2 ingress protocol ip pref 2 handle 102 flower \
81 tc filter del dev $h2 ingress protocol ip pref 1 handle 101 flower
82 tc filter del dev $h2 ingress protocol ip pref 2 handle 102 flower
91 tc filter add dev $h2 ingress protocol ip pref 1 handle 101 flower \
93 tc filter add dev $h2 ingress protocol ip pref 2 handle 102 flower \
[all …]

12345678910>>...217