数据库修仙金丹篇十一——vpp调试指北

vpp中dpdk日志的配置和查看 首先在 vpp 配置文件(/etc/vpp/startup.conf) 的 dpdk section 添加 log-level debug 配置项,其中 debug 是日志级别。在 vpp 的 dpdk_config 函数中将 log-level 解析到了整型变量 log_level 中: else if (unformat (input, "log-level %U", unformat_dpdk_log_level, &x)) log_level = x; ... 阅读详情

vpp调试指北

常用程序调试有如下几种方式:

  • 日志打印
  • gdb调试

日志打印

  • 可以使用printf直接打印到当前shell
  • vpp自带的日志模块会使用syslog记录日志

gdb调试

直接使用gdb调试

gdb vpp
(gdb)set args param
(gdb) b break_point
(gdb) r

重点在于需要使用set args设置参数,同时需添加断点。

使用attach

vpp按正常模式启动,启动后使用top找到进程号,利用gdb attach调试。

gdb attach pid

vpp本身提供了如下全局函数,可用来查看vecetor的相关信息:

(gdb) p vl(vm->node_main.nodes)
$8 = 575
(gdb) p pe(vm->node_main.nodes)
$9 = 575
(gdb) p pifi(vm->node_main.nodes,576)
$10 = 1
(gdb) p pifi(vm->node_main.nodes,575)
$11 = 1
(gdb) p pifi(vm->node_main.nodes,574)
$12 = 0
(gdb) p debug_hex_bytes(vm->node_main.nodes,20)
74c408e7ffff000044af27e9ffff00001454fce6
$13 = void
(gdb) p debug_hex_bytes(vm->node_main.nodes,8)
74c408e7ffff0000
$14 = void
(gdb) p debug_hex_bytes(vm->node_main.nodes,1)
74
$15 = void
(gdb) p debug_hex_bytes(vm->node_main.nodes,2)
74c4
VPP:编译安装及运行 阅读详情

相关推荐

vpp源码之Makefile分析(编译调试)

下面是vpp的命令: [root@localhost vpp-18.07]# make Make Targets: install-dep - install software dependencies wipe - wipe all products of debug build wipe-release - wipe all ...

u012919476的博客 1291

Cisco VPP emacs+gdb单步调试

VPP主要由VPP框架加上插件业务组成,开发插件时首先会编译成动态库,在VPP启动时通过指定路径加载动态库,所以在gdb调试时需要指明动态库路径。 启动可执行文件: 设置启动参数: 设置启动参数需要明确指定插件路径,VPP启动时会根据路径加载库文件。 设置断点: 设置断点过程,“Function xxx not defined”意为进程符号表中没有“xxx”符号表,但是此处的...

迷失的专栏 2118

VMP比较正确的编译教程

warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失error C2511: “void IntelFunction::Mutate(const CompileContext &,bool)”:“IntelFunction”中没有找到重载的成员函数elseend。

q1424966670的博客 2921

gdb调试指令,以及ubuntu如何新建窗口

这几天需要在vpp下面写一个新函数接口,频繁使用gdb,因此做一下记录,主要是指令和操作。

Chiang11的博客 1366

AURIX™ TC3xx 调试口保护 secure debug

AURIX™ TC3xx 调试口保护 secure debug UCB_DBG_ORIG and UCB_DBG_COPY Content 使用Debug Password 保护调试接口设置 项目硬件接口保护方案 hexview Lock using UDE Unlockusing UDE Lock using Lauterbach Unlock using Lauterbach

2301_76563067的博客 6863

IMU、INS、GNSS与组合导航:从原理到工程实践全解析

在自动驾驶、无人机和机器人等智能系统的定位方案中,IMU、INS、GNSS和组合导航常被混为一谈,但它们在硬件层级、数据特性和误差机制上截然不同。IMU作为惯性测量单元,以百赫兹以上频率输出加速度和角速度;INS基于IMU完成姿态、速度与位置的递推解算,却因积分累积误差而随时间漂移;GNSS提供绝对位置,但易受遮挡和干扰。组合导航通过卡尔曼滤波将两者融合,实现短期不飘、长期不偏的连续定位,这正是高精度导航系统的技术底座。工程落地时,从IMU标定、Allan方差分析到相机/LiDAR与IMU外参标定,再到松耦

weixin_29193259的博客 385

VPP开启调试trace

注册如下的命令trace add,开启记录报文信息,参数为节点名称和记录报文数量。命令行指定的节点需要支持trace功能,对应标志VLIB_NODE_FLAG_TRACE_SUPPORTED。如果指定的trace报文数量为最大值,修改为50。遍历每个线程,找到线程中的vlib_trace_node_t结构(或者新分配),将指定的报文数量设置到limit成员。将每个线程的vlib_trace_main_t结构成员trace_enable设置为1。

redwingz的博客 1595

stm32 Can通讯过滤器寄存器设置(实验验证)

起因:在使用stm32单片机can通讯时,参考手册的介绍与寄存器封装有差别,不好理解怎么去设置寄存器。在参考一些代码时,对怎么去设置过滤器还是难以理解。 解决: 在寄存器封装库中,我们发现CAN过滤器设置寄存器封装有CAN1->sFilterRegister[ x ].FR1 和 CAN1->sFilterRegister[ x ].FR2 两个寄存器,其封装如下:type

u013984214的专栏 3289

vpp 2101 编译安装和运行

参考 官网 FD.io/VPP — VPP 的安装部署 一、下载源码 排查之前是否安装过vpp/dpdk并卸载 dpkg -l | grep vpp dpkg -l | grep DPDK 下载后切换分支到2101上。master容易编译不过。 $ apt-get update $ git clone https://gerrit.fd.io/r/vpp $ cd vpp $ git checkout stable/2101 如果git时出现server certificate verificati

weixin_43941593的博客 3226

QT使用openssl实现RSA加解密

使用openssl生成公私钥,随后用QT对相应的信息进行RSA加解密

weixin_42098322的博客 3867

物联网低功耗广域网NB-IoT开发(一):初识NB-IoT

(二)NB-IoT的关键特性: (三)NB-IoT的应用场景: 二、NB-IOT介绍

weixin_49763156的博客 853

数据库修仙金丹篇四——vpp vector指北

vpp vector指北 版权声明:本文为优快云博主「成王君」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.youkuaiyun.com/weixin_45429253/article/details/97020110 vectors 的本质 外在表现 很简单,实际上就是一个动态的可变大小数组。这个数组: 每个元素的大小可以变化,数组大小可以变化。从而使得其可以作为任何数据结构的存储结构,事实上,VPP就是这样做的,所有数据结构的存储结构就是

growdu的网络博客 607

大津法(OTSU)点云强度信息分割

大津法(OTSU)是一种灰度图像自适应的阈值分割方法,大津法根据图像的灰度分布,将图像分成背景和前景两部分,前景就是需要按照阈值分割出来的部分。由于点云的强度信息的特性,也可以利用此方法进行分类,但需要保证信息干扰较少,例如道路标线分割等场景较为适用。

qq_48694523的博客 966

vpp自动化测试报错调试

1)vpp 自动化测试方法 在源码目录下,执行 make test 命令可进行自动化测试,并可通过 make test-help 来查看具体的参数信息。 2)如果在执行 make test 时,vpp 报错,或者 vpp 出现 crash,导致 python 侧出现 IO 超时,比如: ... Starting ACL create/delete test ... --------------------------------------------------------------...

choumin的专栏 1462

建行报专版报道建设银行金融科技发展历程

经过十多年的建设,总行前中后台部门都有了自己的业务系统,但系统“部门”特征显著,渠道、客户、产品的横向整合不足,产品系统层次化、结构化、参数化程度不高,渠道支持产品快速部署以及跨渠道服务能力不足,管理分析类系统建设相对滞后,系统较弱的可扩展能力在应对高速增长的交易量时已疲态尽显,同时安全稳定运行的压力和风险日益积聚。站在新的历史起点上,科技条线将聚焦主责主业,完善信息科技管理体系,紧紧围绕安全生产中心任务,持续推动技术能力复用共享和自主可控,为全行做好金融五篇大文章,推动业务高质量发展提供技术支撑。

银行信息系统应用架构详解 387

5G射频设计中N77&N79的PRX为什么需要3个SRS

首先,我们来逐个拆解一下这个神秘的“

weixin_43199439的博客 1325

FDio/VPP项目测试指南:构建、运行与调试详解

在FDio/VPP(Vector Packet Processing)项目中,测试是确保代码质量和功能稳定性的关键环节。本文将从技术实践角度,详细介绍VPP项目的测试体系,包括单元测试的执行方法、调试技巧以及相关参数配置,帮助开发者高效地进行代码验证。 ## 测试体系概述 VPP项目拥有完善的测试框架,目前包含超过1000个单元测试用例。这些测试用例覆盖了从基础功能到高级特性的各个方面,确保每

gitblog_00453的博客 673

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

VPP创建接口

在 Linux 中,有一种接口叫做“veth”,像是Windows里面的虚拟网卡,但veth设备是成对出现的,一端连接内核的协议栈,另一端相连VPP的接口。所以,也可以将“veth”接口视为具有两端(而不是一端)的接口。...

衡水铁头哥的博客 2344

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

【VPP】vpp节点调度

vpp process类型节点调度流程介绍

Wendy1226的博客 1180

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

手把手教你使用gdb调试器

Linux下gdb调试器的使用

m0_55752775的博客 1万+

VPP 编译记录

VPP 编译

xuwaiwai的博客 822

FD.io VPP环境下运行用户应用程序教程

FD.io VPP环境下运行用户应用程序教程 RToax 2020年9月 相关文章:《FD.io VPP利用iperf3进行UDP灌包测试-英特尔X520万兆网卡》 1. VPP简介 VPP是思科矢量数据包处理(VPP)技术的开源版本:一种高性能的数据包处理协议栈。具体介绍请阅读相关文档,此处不做VPP介绍相关内容。 2. VPP协议栈架构 DPDK用户态驱动接管10G网卡,VPP内嵌DPDK插件(plugin)组成一套完整的用户态网络协议栈。通过使用VCL库,VPP可以重定向应用程序的接口函数,当然

RToax 3582

VPP编译安装及测试

测试环境:主机1(172.20.10.37/24) 和 主机2(172.20.10.38/24)各使用VPP接管10G网卡,两网卡通过光纤直连。(注:上述ip是在VPP网络下的):VPP Communication Library,VCL可以在不修改应用的情况下,使应用访问VPP网络。说明:VPP网络和内核网络是独立的(不通的),有两套路由和网络。下图是绑定成功后结果。

AcTarjan的博客 1574

VPP调试trace显示

注册如下的命令show trace,显示记录的报文信息,默认每个线程最大显示50条,可使用参数max进行更改。trace显示处理函数如下,首先获取用户输入的trace最大显示数量。接下来遍历所有线程的vlib_main_t结构,第一行内容为线程的索引和线程名称,写入到向量s中。遍历当前线程的trace_buffer_pool池添加到traces向量中,trace_buffer_pool池中每个元素为一个报文的trace信息,包括报文在整个处理过程中每个节点node产生的信息。

redwingz的博客 1775

思科开源软交换机vpp环境搭建

在搭建vpp的时候遇到了很多坑,如:vpp安装必须要git clone 才能成功,网上七七八八的文章很多,精华集中到我这一篇好吧,手动狗头

caoli4608的博客 2689

【GDB】手把手教你用gdb调试程序(超清晰流程)

实例 我以自己曾经写的一段实际代码为例,来讲解究竟该怎么进行GDB调试。 实例地址: 码云:https://gitee.com/yngzMiao/protobuf-parser-tool GitHub:https://github.com/yngzMiao/protobuf-parser-tool 实例的功能是生成和解析proto文件,分为C++和python版本。其中,C++版本采用的是CMak...

Yngz_Miao的博客 3万+
上一篇: 数据库修仙筑基篇七——corosync使用
下一篇: 数据库修仙筑基篇十一——corosync-cmap使用指南
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我在数据库世界里修仙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值