+ case RTE_FLOW_ACTION_TYPE_RSS:
+ size = sizeof(struct rte_flow_action_rss);
+ rss = action->conf;
+ rte_memcpy(&sample_rss_data[idx].conf,
+ (const void *)rss, size);
+ if (rss->key_len) {
+ sample_rss_data[idx].conf.key =
+ sample_rss_data[idx].key;
+ rte_memcpy((void *)((uintptr_t)
+ sample_rss_data[idx].conf.key),
+ (const void *)rss->key,
+ sizeof(uint8_t) * rss->key_len);
+ }
+ if (rss->queue_num) {
+ sample_rss_data[idx].conf.queue =
+ sample_rss_data[idx].queue;
+ rte_memcpy((void *)((uintptr_t)
+ sample_rss_data[idx].conf.queue),
+ (const void *)rss->queue,
+ sizeof(uint16_t) * rss->queue_num);
+ }
+ action->conf = &sample_rss_data[idx].conf;
+ break;