History log of /f-stack/lib/ff_dpdk_if.c (Results 1 – 25 of 128)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 2317ada5 18-Sep-2021 fengbojiang <[email protected]>

Update LICENCE.


Revision tags: v1.21.1
# 391d4989 02-Sep-2021 fengbojiang <[email protected]>

If process_dispatch_ring() has data packet to be processed and it is considered non-idle state.


# 215f56e7 02-Sep-2021 fengbojiang <[email protected]>

The CPU usage of packet_dispatcher() is modified to usr.


# 8beba062 02-Sep-2021 fengbojiang <[email protected]>

fix a plurality of packets may not statistics in ff_traffic.rx_packets and ff_traffic.rx_bytes.


# 8d76b62e 05-Feb-2021 fengbojiang <[email protected]>

Support DPDK 20.11.0(LTS).


Revision tags: v1.21
# 8d0052bc 28-Jan-2021 fengbojiang <[email protected]>

Fix some issues of ff msg.


# aa61e4b5 22-Jan-2021 fengbojiang(姜凤波) <[email protected]>

Add `ff_regist_pcblddr_fun` to regist a pcb lddr function in F-Stack.

If There are multiple ips, and F-Stack client application can choose a source ip by yourself, instead always use the first ip.


# fa552ee2 27-Nov-2020 Jianfeng Tan <[email protected]>

fix use after free issue in mbuf free

Two kinds of mbuf are used in f-stack: freebsd mbuf and dpdk mbuf.

freebsd mbufs are metadata used in freebsd stack, and their data
pointers (m_data) point to

fix use after free issue in mbuf free

Two kinds of mbuf are used in f-stack: freebsd mbuf and dpdk mbuf.

freebsd mbufs are metadata used in freebsd stack, and their data
pointers (m_data) point to dpdk mbuf's data (buf_addr). And they have
their own chain, like this:

bsd_mbuf1 -> bsd_mbuf2 -> bsd_mbuf3
\ \ \
dpdk_mbuf1 -> dpdk_mbuf2 -> dpdk_mbuf3

Considering the map relationship,

- m_freem() is corresponding to rte_pktmbuf_free(), is to free the whole
chain of mbufs.
- m_free() is corresponding to rte_pktmbuf_free_seg(), is to free the
specified mbuf segment.

The current implementation in f-stack uses rte_pktmbuf_free() for
m_free(). This leads to mbufs, which are still in use, be freed
unexpectedly. For example, if the bsd_mbuf1 is trimed into zero length,
bsd will invoke m_free() to free the specified segment, however, the
whole mbuf chain is freed by calling rte_pktmbuf_free().

#0 rte_pktmbuf_free (m=0x22006fb480)
#1 in ff_dpdk_pktmbuf_free (m=0x22006fb480)
#2 in ff_mbuf_ext_free (m=0x7ffff7f82800, arg1=0x22006fb480, arg2=0x0)
#3 in mb_free_ext (m=0x7ffff7f82800)
#4 in m_free (m=0x7ffff7f82800)
#5 in sbcompress (sb=, m=0x7ffff7f82800, n=)
#6 in sbappendstream_locked (sb=, m=0x7ffff7f82800, flags=0)

The fix is straightforward. Use the correct API for segment free.

Reported-by: Yong-Hao Zou <[email protected]>
Signed-off-by: Jianfeng Tan <[email protected]>

show more ...


# 1d7d040e 27-Nov-2020 Hawker <[email protected]>

update comments


# e0b37068 27-Nov-2020 Hawker <[email protected]>

update comments


# 7c803532 27-Nov-2020 Hawker <[email protected]>

update comments


# bee2fff9 27-Nov-2020 Hawker <[email protected]>

update create_tcp_flow parameter


# 4542e5fb 27-Nov-2020 Hawker <[email protected]>

update init_flow


# 71412662 26-Nov-2020 Hawker <[email protected]>

Replace deprecated filter api with generic flowapi


# 2474e163 25-Nov-2020 Hawker <[email protected]>

Bugfix: support rte_flow_isolate for multi lcore (#562)

* Bugfix: support rte_flow_isolate

init flow isolate mode only run once


# 32ff8fda 21-Nov-2020 fengbojiang <[email protected]>

Fix bug of `sysctl` in tools/compat/sysctl.c.

The ff msg shouldn't to free while `ff_ipc_send` success but `ff_ipc_recv` failed (such as F-Stack app are breaking by gdb).


# f41205e9 29-Aug-2020 fengbojiang <[email protected]>

Add configuration options `symmetric_rss` to set whether to use symmetric RSS.


# 4418919f 18-Jun-2020 johnjiang <[email protected]>

DPDK: upgrade to DPDK 19.11.2(LTS).


# 47507c15 14-May-2020 pengtian <[email protected]>

#add knictl support


# 4dfcdbcc 08-Jan-2020 jinhao2 <[email protected]>

update indent size


# 819aafb6 08-Jan-2020 jinhao2 <[email protected]>

dump packets by core, instead of by ports;without fopen/fclose while dumping


Revision tags: v1.20, v1.13
# 3a3642c7 04-Nov-2019 Jayath Sathyanarayana <[email protected]>

Merge patch of Configuration param to skip "TX checksum offload", refer #448.


# c9b3c75a 04-Sep-2019 fengbojiang(姜凤波) <[email protected]>

Fix mac set bug.


# c0f66684 04-Sep-2019 fengbojiang(姜凤波) <[email protected]>

Bonding: supported. but it can't work in multi-processes, to be fix.


# aa18b738 06-Aug-2019 fengbojiang(姜凤波) <[email protected]>

packet_dispatcher support vlan.


123456