Linux kernel 如何通过mmio区域从pcie总线读取指令,而不实际将其复制到本地dram?
有没有办法从通过MMIO区域(通过PCIe接口)访问的目标板内存区域(也是多核处理器)获取指令,而不实际将其复制到主机的本地DRAM 我尝试用MMIO地址更新页表,并跳转到该虚拟地址,还尝试直接跳转到MMIO地址(目标DRAM上的PCI BASE+地址)。 但是,在这两种情况下,我都无法使用gdb(因为我只能看到nops)逐步完成指令 此外,通过下面的print语句,我可以看到控制台上打印的十六进制代码。 地址:(目标的PCI基+DRAM地址) 我不确定出了什么问题,任何关于这个问题的建议都是值得赞赏的 提前谢谢Linux kernel 如何通过mmio区域从pcie总线读取指令,而不实际将其复制到本地dram?,linux-kernel,paging,cpu-cache,tlb,mips64,Linux Kernel,Paging,Cpu Cache,Tlb,Mips64,有没有办法从通过MMIO区域(通过PCIe接口)访问的目标板内存区域(也是多核处理器)获取指令,而不实际将其复制到主机的本地DRAM 我尝试用MMIO地址更新页表,并跳转到该虚拟地址,还尝试直接跳转到MMIO地址(目标DRAM上的PCI BASE+地址)。 但是,在这两种情况下,我都无法使用gdb(因为我只能看到nops)逐步完成指令 此外,通过下面的print语句,我可以看到控制台上打印的十六进制代码。 地址:(目标的PCI基+DRAM地址) 我不确定出了什么问题,任何关于这个问题的建议都是值
printf(" *** Reading: 0x%lx *** \n", *CASTPTR(volatile uint64_t, addr));