Linux kernel 为什么“pstore”不能与三星S10 5G配合使用?

Linux kernel 为什么“pstore”不能与三星S10 5G配合使用?,linux-kernel,root,android-source,kernel-module,samsung-mobile,Linux Kernel,Root,Android Source,Kernel Module,Samsung Mobile,我有三星S10 5G与根通过Magisk给出。我正试图修改system.img以在ROM的AP文件中修补我的SELinux策略。当我使用Odin将AP文件与其他文件一起刷新时,启动循环失败。要调试原因,我正在使用pstore,它在设备上的配置如下: 在init.rc中,pstore安装在/sys/fs/pstore上,如下所示: 内核配置选项如下所示: Ramoops配置如下: 现在,我将学习以下教程: 但是/sys/fs/pstore目录中没有日志。当我在另一台设备(OnePlus 6T)上尝

我有三星S10 5G与根通过Magisk给出。我正试图修改
system.img
以在ROM的AP文件中修补我的SELinux策略。当我使用Odin将AP文件与其他文件一起刷新时,启动循环失败。要调试原因,我正在使用
pstore
,它在设备上的配置如下:

  • init.rc
    中,
    pstore
    安装在
    /sys/fs/pstore
    上,如下所示:
  • 内核配置选项如下所示:
  • Ramoops配置如下:
  • 现在,我将学习以下教程:

    但是
    /sys/fs/pstore
    目录中没有日志。当我在另一台设备(OnePlus 6T)上尝试相同的步骤时,我可以看到日志

    此外,我还尝试按照以下说明检查日志,以了解闪存ROM的真正原因:

  • 导致启动循环的闪存ROM
  • 具有根访问权限的闪存ROM
  • 检查
    /sys/fs/pstore
    目录中的日志
  • 这也不起作用

    除了检查
    /sys/fs/pstore
    目录外,我还尝试使用
    mount-t pstore-/dev/pstore
    将pstore装载到其他位置,但没有日志

    我需要你帮个忙

    • 有没有办法调试
      pstore
      问题
    • 还有其他方法可以找到内核日志吗

    我看到很多人在使用pstore时也面临同样的问题。检查是否有以下输出:

    #cat /sys/module/pstore/parameters/backend
    (null)
    
    后端参数为“要使用的Pstore后端”

    尝试pstore_blk、mtdpstore、mmcpstore、phram或android ram控制台(如果可用)

    你的电话是什么

    您是否已加载reed_solomon模块?这是ramoops需要的

    Pstore_控制台可能需要配置才能工作

    工作命令行是“ramoops.mem_address=0x11ff000000 ramoops.mem_size=0x1000000 pstore.backend=ramoops”,对于blk后端是“pstore_blk.blkdev=179:7 pstore_blk.oops_size=64”

    如果您想拥有pstore/blk,请记住需要在mmc/sdcc/sdhci驱动程序中支持死机写入。这在android手机上很常见。例如,在android手机上无法使用帧缓冲区控制台。您有MSM FB驱动程序,但不支持fbcon

    有关更多帮助,请参阅

    检查

    $ cat config | grep PSTORE
    CONFIG_PSTORE=y
    CONFIG_PSTORE_ZLIB_COMPRESS=y
    # CONFIG_PSTORE_LZO_COMPRESS is not set
    # CONFIG_PSTORE_LZ4_COMPRESS is not set
    CONFIG_PSTORE_CONSOLE=y
    CONFIG_PSTORE_PMSG=y
    CONFIG_PSTORE_PMSG_SSPLOG=y
    CONFIG_PSTORE_RAM=y
    
    ./sys/module/ramoops/parameters/console_size            262144
    ./sys/module/ramoops/parameters/dump_oops               1
    ./sys/module/ramoops/parameters/ecc                     0
    ./sys/module/ramoops/parameters/ftrace_size             262144
    ./sys/module/ramoops/parameters/mem_address             3241148416
    ./sys/module/ramoops/parameters/mem_size                1048576
    ./sys/module/ramoops/parameters/mem_type                0
    ./sys/module/ramoops/parameters/pmsg_size               262144
    ./sys/module/ramoops/parameters/record_size             262144
    
    #cat /sys/module/pstore/parameters/backend
    (null)
    
    Pstore only supports one backend at a time. If multiple
    backends are available, the preferred backend may be
    set by passing the pstore.backend= argument to the kernel at
    boot time.