2017-09-14 122 views
1

我正在研究内核扩展 - 设备驱动程序 - 并严重依赖来自kprintf()的诊断消息。nvram不记得我的引导参数设置。如何解决它?

$主机上的$ fwkpfv将显示来自目标上的kprintf()的日志消息,但它需要boot-args中的“debug = 0x8”。

# nvram boot-args="debug=0x14e kdp_match_name=firewire" 
# nvram -p | grep boot-args 
boot-args  "debug=0x14e kdp_match_name=firewire" 

(我不记得很清楚的报价是否被包括在内。)

如果我设置启动参数后正常启动:

# nvram -p | grep boot-args 

# 

我永远在你的债务。

+0

这很奇怪,我从来没有见过这种情况发生,并且几乎每天都会使用kprintf - macOS/OSX版本是什么,如果合适,是否启用了SIP?您是否安装了某种类型的EFI引导加载程序/菜单?在更新的版本中(10.12+ IIRC),您不能从普通会话中设置引导参数,只能从恢复操作系统或者在同一台Mac上安装早期的OS X。但是,如果这是问题,它应该会出错,而不是使NVRAM瞬态。任何内部访问NVRAM的kexts?另外,我猜NVRAM电池可能已经死了? (更可能在较旧的硬件上...) – pmdj

回答

1

darwin-drivers邮件列表中的一些人向我指出,nvram命令将其设置保存在RAM中,直到执行完全关闭为止。我一直习惯于强制关闭Mac Pro,因为有时候我的驱动程序刚刚安装时就发生混乱。

它工作启动到恢复模式,设置启动参数,然后关闭从Apple菜单。

这让我的Firewire记录回来。

相关问题