问题标签 [panic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android Studio 模拟器恐慌找不到
我正在尝试为 Android Studio 运行模拟器并收到此错误。
恐慌:在 $ANDROID_AVD_HOME 和 $HOME/.android/avd 中找不到 Nexus_S_Main_activity_API_21.ini 文件
我怎样才能解决这个问题?请记住,我是一个完整的初学者,所以请尝试清楚地解释每个步骤。
go - 如何检查Scanln是否在Golang中抛出错误
我是 Go 新手。我一直在寻找答案,我知道确实有一个我还没有找到。
为了更好地解释我的问题,这是我的代码:
这是我的结构:
如果我为输入 A 输入“123”,为输入 B 输入另一个“123”,我将得到“ Sum is: 246 ”的输出。但是如果我错误地输入'123j',它将不再起作用,因为 A 和 B 只接受 int(s)。
现在,如何从fmt.Scanln中捕捉恐慌或者有什么办法?提前致谢。
debugging - 如何找到 FreeBSD 内核恐慌的确切行号?
我正在 FreeBSD 内核上测试一个新的驱动程序。
对于有经验的开发人员来说,这可能是微不足道的,但我无法弄清楚这个问题的解决方案。
我有内核恐慌,当它恐慌时,我得到了恐慌的回溯。
回溯表明恐慌发生在 say foo_bar() + 0x94
。如何提取不对应的行foo_bar() + 0x94
?
内核是用调试符号构建的。我试过 greppingnm kernel
但它只包含调试符号。
我该怎么做才能找到确切的行号?
http - Go - 运行时错误:无效的内存地址或 nil 指针取消引用
我正在尝试使用 Go 制作一个代理服务器,它将请求正文中的某些值更改为 API,但是当发送请求时,会发生以下恐慌并且请求失败:
这是脚本:
logging - 如何将内核恐慌保存到嵌入式设备中的文件
我正在开发一个嵌入式设备,在调试模式下,我使用 NFS 将我的应用程序挂载到设备,telnet 到设备,然后运行我的应用程序。设备的串口控制台不可用有时,内核致命的恐慌,但我不知道什么时候。网络已关闭,我无法远程登录到设备收到任何恐慌消息,我想将恐慌消息保存到文件并在下次启动后检查它,有人知道怎么做吗?谢谢!
有关设备操作系统的一些信息:linux 3.0.8 ram:64M spi:16M nand:256M
linux - 编译内核不使用 initrd
我正在使用用 asm 编写的自定义引导加载程序来引导 debian 8。但是引导加载程序不使用 initrd。为了启动系统,我需要编译一个内核,该内核将我的硬盘驱动器的驱动程序配置为“内置”。所以,我做了这个:
在我进入 linux-source 文件夹之后,我做了:
为了选择我想在我的内核中编译的内容。所以我选择了类似的东西:
- ATA/ATAPI/MFM/RLL 支持
- ...
但是我的自定义引导加载程序和 GRUB 有时会出现内核恐慌。有人可以帮我选择要在我的内核中编译的内容吗?
谢谢,亚历山大。
ruby-on-rails - Rails 服务器恐慌:重复 GET 请求
我正在做一些与编码无关的事情(并且在不同的 Safari 窗口中),当我突然看到生成一堆 GET 请求的日志时。开头是这样的:
然后第一个块再次重复 n 次,直到我停止服务器。唯一的异常如下:
ID:13 是我正在使用的 user_id。
任何线索这可能是什么?看起来很可疑。
android - 使用内核模块写入内存会导致 Android 内核中出现内核 oops
我目前正在尝试调试库存的 android 内核,但遇到了一些需要帮助的问题。我有内核的源代码,但我不想重建内核并刷入手机,我只想对我手机中存在的股票内核进行调试。Kprobes 在股票内核中启用(我通过查看 /proc/kallsyms 中的符号列表确认了这一点)。
首先,我尝试通过编译自己的内核模块来操作内核内存。我可以通过将物理地址映射到虚拟地址,然后将其分配给指针来读取内存,如下所示:
但是当我尝试使用 this: 写入内存时my_ptr[0] = 0;
,内核进入恐慌(oops)状态,然后重新启动手机。从 /proc/last_kmsg,我得到以下日志:
我认为这与我的内核模块有关,所以我继续使用内核中可用的 kprobes 函数(主要是 register_kprobe),如下所示:
当我用上面的代码插入内核模块时,同样的事情发生了,内核产生了一个恐慌(oops),然后它重新启动了手机。记录的 last_kmsg 与我上面提供的大致相同。
如果熟悉该领域的任何人可以帮助我解决上述问题,我将不胜感激。我想知道Android系统中是否有任何内存保护。在我以前的手机中,当 /dev/mem 仍然在内核中实现时,我可以根据需要通过驱动程序读取/写入内存。我试过 ioremap 但它只返回 NULL 指针。提前致谢!
编辑:抱歉上面的混淆,我以 0x12345678 为例,我从 /proc/kallsyms 获取地址,并将其转换为物理地址。例如,如果它是 0xc01c1d50,我需要从中减去 0xc0008000,并且由于内核本身的起始偏移量为 0x00008000,我将它添加到结果中,因此它将是 0x001C1D50。
这是我尝试使用 register_kprobe() 注册 kprobe 时的 /proc/last_kmsg 输出:
编辑 2:我尝试使用以下代码进行页面遍历并将 pte 设置为允许写入,但写入地址会导致内核死机并再次重新启动。
关于这个问题的任何见解?
rust - 将恐慌重定向到指定的缓冲区
有没有办法做到这一点?在终端图形库中,如果发生异常,异常会在显示之前被刷新掉,使用该库很难进行编程调试。
如果我要注释掉self.flush().unwrap();
异常会打印,但是即使程序结束,终端也不会正确刷新屏幕并在终端上留下图形。
是否可以在程序开始时指定用于写入的自定义缓冲区恐慌?或者可能写一个hacky技巧来做到这一点?这样,在刷新之后,我们可以检查这个缓冲区内是否有任何东西,如果有,我们就知道发生了异常并可以将其打印出来。
然而,通过注释掉self.flush().unwrap();
,我们看到了实际的异常,但现在是一个非常丑陋的终端。此解决方案将不起作用,因为正确执行的程序仍需要刷新,因为不需要显示错误
http - Go http panic serving
I got this panic:
Whit this code:
I cant fix it, I tried everything what I found in the stackoverflow. What is the problem? There is no error, and the panic said that the problem in t, err := template.ParseFiles("templates/index.gtpl")..
There is the template file: