[dpdk-dev] [Bug 721] Wrong event pointer in rx adapter
bugzilla at dpdk.org
bugzilla at dpdk.org
Wed May 26 10:23:48 CEST 2021
https://bugs.dpdk.org/show_bug.cgi?id=721
Bug ID: 721
Summary: Wrong event pointer in rx adapter
Product: DPDK
Version: 20.11
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: major
Priority: Normal
Component: eventdev
Assignee: dev at dpdk.org
Reporter: heng.wang at ericsson.com
Target Milestone: ---
Problem:
In the function rxa_buffer_mbufs the ev is not reset to the array's first
element before passing to a user call back function.
Workaround:
In the user callback, we must decrement ev by number of event before we can use
it.
Fix:
I think we should pass &buf->events[buf->count] to dev_info->cb_fn instead of
ev.
773 for (i = 0; i < num; i++) {
774 m = mbufs[i];
775
776 rss = do_rss ?
777 rxa_do_softrss(m, rx_adapter->rss_key_be) :
778 m->hash.rss;
779 ev->event = event;
780 ev->flow_id = (rss & ~flow_id_mask) |
781 (ev->flow_id & flow_id_mask);
782 ev->mbuf = m;
783 ev++;
784 }
785
786 if (dev_info->cb_fn) {
787
788 dropped = 0;
789 nb_cb = dev_info->cb_fn(eth_dev_id, rx_queue_id,
790 ETH_EVENT_BUFFER_SIZE, buf->count,
ev,
791 num, dev_info->cb_arg, &dropped);
792 if (unlikely(nb_cb > num))
793 RTE_EDEV_LOG_ERR("Rx CB returned %d (> %d)
events",
794 nb_cb, num);
795 else
796 num = nb_cb;
797 if (dropped)
798 rx_adapter->stats.rx_dropped += dropped;
799 }
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the dev
mailing list