- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用两个虚拟机(主机和目标)调试 linux-kernel。通过串口连接/dev/ttyS0
.
HOST
命令行以--> <--
高亮显示
--> root@tony-VirtualBox:~/linux# gdb ./vmlinux <--
GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./vmlinux...done.
--> (gdb) target remote /dev/ttyS0 <--
Remote debugging using /dev/ttyS0
0xc1119026 in free_rp_inst (rp=<optimized out>)
at kernel/kprobes.c:1248
1248 kfree(ri);
(gdb) break htb_dequeue_tree
Breakpoint 1 at 0xc17165a9: file net/sched/sch_htb.c, line 850.
(gdb) continue
continuing.
从这一点开始,我连接到目标机器,我在感兴趣的点插入断点,然后 continue
启动它的目标机器。当我到达该断点时,控制将返回(HTB 是一个帮助控制给定链接上出站带宽使用的模块)。
目标
使用 iperf测试 linux htb
tc qdisc add dev eno2 root handle 1: htb
tc class add dev eth0 parent 1: classid 1:1 htb rate 100kbps ceil 100kbps
tc class add dev eno2 parent 1:1 classid 1:10 htb rate 30kbps ceil 100kbps
tc class add dev eno2 parent 1:1 classid 1:20 htb rate 10kbps ceil 100kbps
tc filter add dev eno2 protocol ip parent 1:0 prio 1 u32 match ip dport 80 0xffff flowid 1:10
tc filter add dev eno2 protocol ip parent 1:0 prio 1 u32 match ip dport 25 0xffff flowid 1:20
问题
当我启动服务器并连接到它时,为了到达该断点,我收到了 SIGILL
在达到该断点之前。没有 Debug模式,它可以完美运行。而且我能够测试 HTB 并得到我期望的结果(按照我的预期方式调整流量)。
[New Thread -2]
Program received signal SIGILL, Illegal instruction.
[Switching to Thread -2]
0xc17165a8 in ffz (word=3889660160)
at ./arch/x86/include/asm/bitops.h:381
381 : "r" (~word));
(gdb)
它可能是什么?这里是ffz已定义,它不应该崩溃......我很困惑。
最佳答案
尝试添加 rodata=off 和 nokaslr 内核引导参数。
这里是添加内核启动参数的方法: https://askubuntu.com/questions/19486/how-do-i-add-a-kernel-boot-parameter
关于linux - gdb远程内核调试添加bug,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50811961/
作为内部研究项目的一部分,我们正在尝试从 Bugzilla 数据库中收集一些指标;我们已经找到了一个工具来帮助我们从中收集一些指标 ( BugzillaMetrics ) 但我们现在问自己应该收集哪些
我想向 Mantis Bug 跟踪器添加一个名为“On Hold”的自定义状态。根据我在网上找到的一些博客,我在 config_local.php 中添加了以下几行: $g_status_enum_s
我安装了Mantis BT,并在成功安装后重定向到登录页面。它说默认用户是“管理员”,但没有提供有关其密码的提示。 Documentation也未指定默认密码。有什么线索吗? 最佳答案 Aah ..明
我遇到了一些复杂的C++模板代码的编译错误,将其简化如下: struct MyOptions { static const size_t maxArray = 2; static co
我试图编译一些使用 Boost (1.49) 的代码,使用 trunk 中的 Clang(& libc++)。有问题的代码归结为以下内容: #include #include int main()
我在这里设置了一个 CSS 菜单: http://pans.saebermedia.com/ 问题是,我注意到 IE 无法正确显示菜单,现在我又开始使用装有 IE8 的计算机来修复它。我正在使用兼容模
我检查了 GCC buglist和 Clang buglist并且还没有看到任何相关内容。 This Wandbox link显示一些 C++11/C++14 代码为各种类型的 x 执行 declty
所以我有这个简洁的小 javascript 函数,我用它以很酷的命令提示符样式将文本打印到浏览器窗口。它接受一个字符串并以设定的时间间隔一次将一个字符打印到窗口。这是:(我已经删除了所有不必要的部分,
在我的 Galaxy Tab 2(三星)上启动我的应用程序时,我不断收到此错误消息。我正在开发的应用程序非常复杂,很难追踪此错误的来源。所以我开始逐个剥离我的应用程序,最后只剩下一个 map View
我正在使用 Workbench 在 Mathematica 中开发一个应用程序包,它开始变得复杂,包含多个版本和组件。我在一些 mathematica 文档(http://reference.wolf
我选择了四种免费工具用于基于 Web 的缺陷跟踪。它们是: 错误说明 螳螂 错误跟踪器 .NET 来自 Project Locker 软件的 Trac 考虑到以下因素,我正在尝试在这四种工具之间做出决
我正在尝试将 mysqlclient 安装到我的 Python 3.6 上。最初我想安装的是 MySQLdb,但是它说 MySQLdb 不能与 Python 3 一起使用(还是?)。所以我切换到mys
我正在尝试将 mysqlclient 安装到我的 Python 3.6。最初我要安装的是 MySQLdb,但是它说 MySQLdb 不能与 Python 3 一起使用(仍然?)。所以我切换到mysql
我正在尝试将 mysqlclient 安装到我的 Python 3.6。最初我要安装的是 MySQLdb,但是它说 MySQLdb 不能与 Python 3 一起使用(仍然?)。所以我切换到mysql
**摘要:**为了保障华为云GaussDB产品的可靠性,每一款产品发布前都要通过多轮严苛的测试用例。 说明:本文中的MySQL,如果不做特殊说明,指的是开源社区版MySQL。 华为云数据库新版本在发布
我有一个程序,它打开一个程序,然后将一个字符串复制并粘贴到该程序中,一段时间后,它使用带有 ctrl+c 的机器人将一个字符串从程序复制到剪贴板。然后我的程序检查复制的字符串是否包含单词,但不是检查最
所以我尝试为 cocos2d-x 构建项目。我目前在 cmd 中,当我键入 python android-build.py -p 19 cpp-tests 时,它开始制作项目,但随后出现构建失败的错误
我是开发物理模型的团队中唯一的软件工程师(大约 30,000 行代码)。团队的其他成员由开发代码库大约 20 年的科学家组成。我的工作流程是这样的: 科学家请求新功能 我实现 通过测试和验证,我在数字
关闭。这个问题是opinion-based .它目前不接受答案。 想改进这个问题?更新问题,以便 editing this post 提供事实和引用来回答它. 2年前关闭。 Improve this
当我运行 时,以下代码抛出 ExecutionEngineException发布 构建可执行文件(启动 exe 文件 )。这是错误还是正常行为? 包大小 = 1 的值类型: [StructLayout
我是一名优秀的程序员,十分优秀!