Commit Graph

1128 Commits

Author SHA1 Message Date
taras 234ea262a5 Fix netstat tool compilation on linux 2024-09-28 00:24:35 +02:00
fengbojiang 5b97230c85 Update 1.23 release note. 2023-09-13 16:26:33 +08:00
jfb8856606 bcbb047645 Remove app/nginx1.16.1. 2023-09-13 08:13:14 +00:00
用jfb8856606 677c4ebadd Merge branch 'master' into dev
Conflicts:
	dpdk/VERSION
	dpdk/app/test-pmd/cmdline.c
	dpdk/app/test-pmd/config.c
	dpdk/app/test-pmd/csumonly.c
	dpdk/app/test-pmd/ieee1588fwd.c
	dpdk/app/test-pmd/meson.build
	dpdk/app/test-pmd/testpmd.c
	dpdk/app/test/meson.build
	dpdk/app/test/test_common.c
	dpdk/app/test/test_trace.c
	dpdk/config/arm/meson.build
	dpdk/config/meson.build
	dpdk/config/x86/meson.build
	dpdk/devtools/checkpatches.sh
	dpdk/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
	dpdk/doc/guides/nics/index.rst
	dpdk/doc/guides/nics/mvneta.rst
	dpdk/doc/guides/nics/mvpp2.rst
	dpdk/doc/guides/prog_guide/vhost_lib.rst
	dpdk/doc/guides/rel_notes/release_20_11.rst
	dpdk/drivers/baseband/acc100/rte_acc100_pmd.c
	dpdk/drivers/baseband/turbo_sw/meson.build
	dpdk/drivers/common/mlx5/linux/meson.build
	dpdk/drivers/compress/qat/qat_comp_pmd.c
	dpdk/drivers/crypto/ccp/ccp_pci.c
	dpdk/drivers/crypto/ccp/rte_ccp_pmd.c
	dpdk/drivers/crypto/kasumi/rte_kasumi_pmd.c
	dpdk/drivers/crypto/qat/qat_sym_session.c
	dpdk/drivers/crypto/snow3g/rte_snow3g_pmd.c
	dpdk/drivers/event/dlb2/dlb2.c
	dpdk/drivers/event/dsw/dsw_event.c
	dpdk/drivers/event/sw/sw_evdev_selftest.c
	dpdk/drivers/net/axgbe/axgbe_rxtx.c
	dpdk/drivers/net/bnxt/bnxt_txr.c
	dpdk/drivers/net/bonding/rte_eth_bond_api.c
	dpdk/drivers/net/bonding/rte_eth_bond_pmd.c
	dpdk/drivers/net/dpaa/dpaa_ethdev.c
	dpdk/drivers/net/dpaa2/dpaa2_rxtx.c
	dpdk/drivers/net/e1000/em_rxtx.c
	dpdk/drivers/net/ena/ena_ethdev.c
	dpdk/drivers/net/hns3/hns3_cmd.h
	dpdk/drivers/net/hns3/hns3_ethdev.c
	dpdk/drivers/net/hns3/hns3_ethdev.h
	dpdk/drivers/net/hns3/hns3_ethdev_vf.c
	dpdk/drivers/net/hns3/hns3_fdir.h
	dpdk/drivers/net/hns3/hns3_flow.c
	dpdk/drivers/net/hns3/hns3_mp.c
	dpdk/drivers/net/hns3/hns3_rss.c
	dpdk/drivers/net/hns3/hns3_rss.h
	dpdk/drivers/net/hns3/hns3_rxtx.c
	dpdk/drivers/net/hns3/hns3_rxtx.h
	dpdk/drivers/net/hns3/hns3_stats.c
	dpdk/drivers/net/hns3/hns3_stats.h
	dpdk/drivers/net/i40e/i40e_ethdev.c
	dpdk/drivers/net/i40e/i40e_rxtx.c
	dpdk/drivers/net/i40e/i40e_rxtx.h
	dpdk/drivers/net/iavf/iavf_ethdev.c
	dpdk/drivers/net/iavf/iavf_fdir.c
	dpdk/drivers/net/iavf/iavf_rxtx.c
	dpdk/drivers/net/iavf/iavf_rxtx_vec_avx2.c
	dpdk/drivers/net/iavf/iavf_rxtx_vec_avx512.c
	dpdk/drivers/net/iavf/iavf_rxtx_vec_sse.c
	dpdk/drivers/net/iavf/iavf_vchnl.c
	dpdk/drivers/net/ice/ice_dcf_ethdev.c
	dpdk/drivers/net/ice/ice_dcf_parent.c
	dpdk/drivers/net/ice/ice_rxtx.c
	dpdk/drivers/net/ice/ice_rxtx.h
	dpdk/drivers/net/ionic/ionic_lif.c
	dpdk/drivers/net/ionic/ionic_rxtx.c
	dpdk/drivers/net/mlx4/meson.build
	dpdk/drivers/net/mlx5/linux/mlx5_ethdev_os.c
	dpdk/drivers/net/mlx5/linux/mlx5_os.c
	dpdk/drivers/net/mlx5/mlx5.c
	dpdk/drivers/net/mlx5/mlx5.h
	dpdk/drivers/net/mlx5/mlx5_flow.c
	dpdk/drivers/net/mlx5/mlx5_flow_dv.c
	dpdk/drivers/net/mlx5/mlx5_rxtx.c
	dpdk/drivers/net/mlx5/mlx5_rxtx.h
	dpdk/drivers/net/mlx5/mlx5_rxtx_vec_altivec.h
	dpdk/drivers/net/mlx5/mlx5_trigger.c
	dpdk/drivers/net/nfp/nfp_net.c
	dpdk/drivers/net/nfp/nfpcore/nfp_cppcore.c
	dpdk/drivers/net/nfp/nfpcore/nfp_rtsym.c
	dpdk/drivers/net/sfc/sfc_mae.c
	dpdk/drivers/net/txgbe/base/txgbe_phy.c
	dpdk/drivers/net/txgbe/base/txgbe_type.h
	dpdk/drivers/net/txgbe/txgbe_rxtx.c
	dpdk/drivers/net/vhost/rte_eth_vhost.c
	dpdk/drivers/net/virtio/virtio_ethdev.c
	dpdk/drivers/net/virtio/virtio_pci.c
	dpdk/drivers/net/virtio/virtio_user/virtio_user_dev.c
	dpdk/examples/ipsec-secgw/ipsec-secgw.c
	dpdk/examples/ipsec-secgw/sa.c
	dpdk/lib/librte_acl/acl_run_altivec.h
	dpdk/lib/librte_cmdline/cmdline.c
	dpdk/lib/librte_cmdline/cmdline_os_windows.c
	dpdk/lib/librte_cmdline/cmdline_private.h
	dpdk/lib/librte_compressdev/rte_compressdev.h
	dpdk/lib/librte_compressdev/rte_compressdev_pmd.c
	dpdk/lib/librte_cryptodev/rte_crypto_sym.h
	dpdk/lib/librte_cryptodev/rte_cryptodev.c
	dpdk/lib/librte_cryptodev/rte_cryptodev.h
	dpdk/lib/librte_cryptodev/rte_cryptodev_pmd.c
	dpdk/lib/librte_cryptodev/rte_cryptodev_pmd.h
	dpdk/lib/librte_eal/common/eal_common_debug.c
	dpdk/lib/librte_eal/common/eal_common_dynmem.c
	dpdk/lib/librte_eal/common/eal_common_fbarray.c
	dpdk/lib/librte_eal/common/eal_common_proc.c
	dpdk/lib/librte_eal/common/eal_common_trace.c
	dpdk/lib/librte_eal/common/eal_common_trace_ctf.c
	dpdk/lib/librte_eal/common/eal_common_trace_utils.c
	dpdk/lib/librte_eal/common/eal_trace.h
	dpdk/lib/librte_eal/common/malloc_heap.c
	dpdk/lib/librte_eal/common/malloc_mp.c
	dpdk/lib/librte_eal/common/rte_service.c
	dpdk/lib/librte_eal/freebsd/eal.c
	dpdk/lib/librte_eal/freebsd/eal_alarm.c
	dpdk/lib/librte_eal/freebsd/eal_hugepage_info.c
	dpdk/lib/librte_eal/freebsd/eal_memory.c
	dpdk/lib/librte_eal/freebsd/include/rte_os.h
	dpdk/lib/librte_eal/include/generic/rte_atomic.h
	dpdk/lib/librte_eal/include/rte_bitmap.h
	dpdk/lib/librte_eal/include/rte_common.h
	dpdk/lib/librte_eal/include/rte_hexdump.h
	dpdk/lib/librte_eal/include/rte_memzone.h
	dpdk/lib/librte_eal/include/rte_uuid.h
	dpdk/lib/librte_eal/linux/eal.c
	dpdk/lib/librte_eal/linux/eal_hugepage_info.c
	dpdk/lib/librte_eal/linux/eal_memory.c
	dpdk/lib/librte_eal/windows/eal.c
	dpdk/lib/librte_eal/windows/include/pthread.h
	dpdk/lib/librte_ethdev/rte_ethdev.c
	dpdk/lib/librte_ethdev/rte_ethdev.h
	dpdk/lib/librte_ethdev/rte_ethdev_pci.h
	dpdk/lib/librte_eventdev/rte_event_crypto_adapter.c
	dpdk/lib/librte_eventdev/rte_event_eth_rx_adapter.h
	dpdk/lib/librte_eventdev/rte_event_eth_tx_adapter.c
	dpdk/lib/librte_eventdev/rte_event_timer_adapter.c
	dpdk/lib/librte_fib/dir24_8.c
	dpdk/lib/librte_fib/rte_fib.h
	dpdk/lib/librte_fib/rte_fib6.h
	dpdk/lib/librte_graph/node.c
	dpdk/lib/librte_graph/rte_graph_worker.h
	dpdk/lib/librte_gro/gro_tcp4.c
	dpdk/lib/librte_gro/gro_udp4.c
	dpdk/lib/librte_hash/rte_cuckoo_hash.c
	dpdk/lib/librte_ipsec/esp_outb.c
	dpdk/lib/librte_ipsec/rte_ipsec_sad.h
	dpdk/lib/librte_kni/rte_kni.c
	dpdk/lib/librte_kni/rte_kni.h
	dpdk/lib/librte_kvargs/rte_kvargs.h
	dpdk/lib/librte_lpm/rte_lpm.h
	dpdk/lib/librte_lpm/rte_lpm6.h
	dpdk/lib/librte_mbuf/rte_mbuf.h
	dpdk/lib/librte_mbuf/rte_mbuf_core.h
	dpdk/lib/librte_mempool/rte_mempool.h
	dpdk/lib/librte_net/rte_ip.h
	dpdk/lib/librte_node/ethdev_ctrl.c
	dpdk/lib/librte_pci/rte_pci.h
	dpdk/lib/librte_pdump/rte_pdump.c
	dpdk/lib/librte_power/rte_power.h
	dpdk/lib/librte_rcu/rte_rcu_qsbr.h
	dpdk/lib/librte_reorder/rte_reorder.c
	dpdk/lib/librte_reorder/rte_reorder.h
	dpdk/lib/librte_rib/rte_rib.h
	dpdk/lib/librte_rib/rte_rib6.h
	dpdk/lib/librte_ring/rte_ring.c
	dpdk/lib/librte_ring/rte_ring.h
	dpdk/lib/librte_ring/rte_ring_core.h
	dpdk/lib/librte_ring/rte_ring_elem.h
	dpdk/lib/librte_sched/rte_sched.c
	dpdk/lib/librte_telemetry/telemetry.c
	dpdk/lib/librte_timer/rte_timer.c
	dpdk/lib/librte_vhost/rte_vhost.h
	dpdk/lib/librte_vhost/rte_vhost_async.h
	dpdk/lib/librte_vhost/socket.c
	dpdk/lib/librte_vhost/version.map
	dpdk/lib/librte_vhost/vhost.c
	dpdk/lib/librte_vhost/vhost.h
	dpdk/lib/librte_vhost/vhost_user.c
	dpdk/lib/librte_vhost/virtio_net.c
	dpdk/meson.build
2023-09-13 07:37:02 +00:00
fengbojiang 252e89d860 update doc. 2023-09-13 15:18:34 +08:00
fengbojiang 4b1fbfe476 Update Release Note of 1.22.1. 2023-09-13 15:15:30 +08:00
fengbojiang 5313779e2b Fix missing sizeof(). 2023-09-13 13:12:13 +08:00
fengbojiang eb5544bec0 Modify IP_TTL to type int in freebsd2linux_cmsghdr while ff_recvmsg. 2023-09-13 12:57:33 +08:00
用jfb8856606 ddc33d7042 Sync DPDK's modifies.
1. igb_uio.
    2. mlx5 drivers.
    3. i40e drivers.
2023-09-11 08:11:16 +00:00
用jfb8856606 9e4ac2d556 DPDK: Upgrade to 20.11.9(LTS). 2023-09-11 07:59:44 +00:00
用jfb8856606 2cc2cdcf16 Sync DPDK's modifies.
1. igb_uio.
2. mlx5 drivers.
3. i40e drivers.
4. Freebsd-13.0
2023-09-11 07:23:39 +00:00
用jfb8856606 ef3b2dc851 DPDK: Upgrade to 21.11.5. 2023-09-11 06:58:14 +00:00
fengbojiang c31da49915 Add IPV6_DONTFRAG define in nginx-1.25.2/auto/unix, In order to support linux kernel versions earlier than 3.14. 2023-09-06 21:23:39 +08:00
用jfb8856606 d2fe88ce5e Add executable permissions to configure of nginx-1.25.2. 2023-09-06 12:48:44 +00:00
fengbojiang 33903b65de Fix some issues of HTTP/3 in nginx-1.25.2. 2023-09-05 20:38:05 +08:00
fengbojiang 51dc2a507f Fix some issue of ff_sendmsg and ff_recvmsg. 2023-09-05 20:32:04 +08:00
fengbojiang 05b573ded1 Add nginx-1.25.2 to support HTTP3.
Build passed, to be tested.
2023-09-01 16:20:49 +08:00
fengbojiang 8bf6ef65e0 Support LINUX_IP_TRANSPARENT and LINUX_IPV6_TRANSPARENT to IP_BINDANY
and IPV6_BINDANY in lib/ff_syscall_wrapper.c.
2023-09-01 16:17:56 +08:00
fengbojiang 2157bebab6 Add FSTACK define in if_gre.h. 2023-08-29 16:21:37 +08:00
fengbojiang 0a92bc396c fix some issue of ff_sendmsg and ff_recvmsg, build pass, to be tested.
Ref #768 #775.
2023-08-25 18:00:57 +08:00
fengbojiang 0ba3e0f107 Fiexd some build errors of micro_thread on ubuntu 22.04 (kernel:5.19.0-1025, gcc:11.4.0),
Ref #777.
2023-08-14 21:01:56 +08:00
fengbojiang 2f169245d3 Fiexd some build errors of ipfw on ubuntu 22.04 (kernel:5.19.0-1025, gcc:11.4.0),
Ref #777.
2023-08-14 20:45:10 +08:00
fengbojiang 0ee517ed0a Fiexd some build errors ubuntu 22.04 (kernel:5.19.0-1025, gcc:11.4.0),
Ref #777.
2023-08-14 20:42:34 +08:00
fengbojiang 8471eecb32 Fixed an issue that before C99 mode. 2023-08-14 20:21:29 +08:00
fengbojiang 5ada33e91a Update igb_uio, sync from git://dpdk.org/dpdk-kmods. 2023-08-14 19:21:26 +08:00
fengbojiang fe40712835 Revert "fix cmsg for sendmsg". Fix #778.
This reverts commit 9582dbb778.
2023-08-11 15:13:37 +08:00
johnjiang ac031c3e5d
Merge pull request #775 from sarosharif/dev
fix cmsg for sendmsg
2023-06-15 11:34:47 +08:00
johnjiang dd27d061c2
Merge pull request #773 from jiegec/dev
Fix netmask in nginx conf
2023-06-15 11:33:50 +08:00
sarosh 9582dbb778 fix cmsg for sendmsg 2023-06-12 15:04:29 +05:00
Jiajie Chen 15450d6666 Fix netmask in nginx conf
Reported by @JisonRWang in #754.
2023-05-31 14:56:59 +08:00
fengbojiang cbcadd4435 update doc of syscall. 2023-05-18 11:19:40 +08:00
fengbojiang d5d872badf Update syscall's REAMDME. 2023-05-12 16:26:57 +08:00
fengbojiang 52c04c6c7f Update url of LD_PRELOAD. 2023-05-04 16:19:04 +08:00
johnjiang 4c623d4a5f
Update README.md
Modify url.
2023-05-03 23:51:30 +08:00
fengbojiang 419e3b16fe Merge branch 'preload_syscall' into dev 2023-05-03 23:25:53 +08:00
fengbojiang 3e1a3d8082 Add README.md。 2023-05-03 23:23:09 +08:00
fengbojiang 6c13a60c87 Add adapter/README.md. 2023-05-03 17:16:01 +08:00
fengbojiang 8d38554a6f Add LICENSE. 2023-05-03 17:09:29 +08:00
fengbojiang f52469fde1 move /app/micro_thread to adapter/micro_thread. 2023-05-03 17:06:40 +08:00
fengbojiang 8f5f1dfbb0 Move adapter diretcory's all file to adapter/syscall. 2023-05-03 17:04:14 +08:00
fengbojiang b64f360ebc 1. Add main_stack_epoll_kernel.c for helloworld_stack_epoll_kernel that support f-stack and kernel stack at the same time.
2. move all main_stack*.c to adapter directory.
2023-05-03 16:59:40 +08:00
fengbojiang 94d26c8a13 modify IOV_MAX to 16. 2023-05-03 12:02:19 +08:00
fengbojiang edeb90e0b5 fix an issue that close sockfd while Nginx exiting. 2023-04-28 14:48:18 +08:00
fengbojiang 3d3266071c Use ff_global_cfg.dpdk.pkt_tx_delay to delay ff_handle_each_context to
improve the performance of nginx.
2023-04-28 12:26:11 +08:00
fengbojiang 1b25a84cc6 Fix waring. 2023-04-27 20:47:43 +08:00
fengbojiang 85173ced83 try reduce the number of call ff_linux_epoll_wait(). 2023-04-27 20:41:54 +08:00
fengbojiang 8ae79cd438 support mutli ff_so_zones. 2023-04-27 18:34:44 +08:00
fengbojiang 3240dd0dad Add FF_MULTI_SC macro definition to support some special application scenarios, let the child process worker inherit the specified sc.
Like Nginx with reuseport.
  Parent process socket/bind/listen multi sockets, and use them in different child process worker.

  All child process workers must be forked by the same process, scilicet:
    support master fork child1, [child1 fork child2], chilid2 fork worker1/worker2/worker3...
    But not support master fork worker1, worker fork worker2, worker2 fork worker3...

2. modify some log.
2023-04-27 17:24:32 +08:00
fengbojiang f98fd1a615 Don't free the memory malloc with rte_malloc in more socket API to
improve proformance, such as ff_hook_writev(), ff_hook_ioctl(), ff_hook_setsockopt(), etc.

But there are some others socket API not support this now, such as
ff_hook_recvmsg(), ff_hook_readv(), ff_hook_sendmsg, because it not be
used now, and do it is relatively troublesome, So If you need call them
very frequently, maybe you should support it, and can see
ff_hook_writev().

Now it will cause memory lead, need to fix it later.
2023-04-26 15:29:15 +08:00
fengbojiang a791578c8a Fix the issue that memory leak in ff_hook_ioctl and ff_hook_getsockopt. 2023-04-25 15:01:22 +08:00