Re: Tough Issue: kernel instruction corruption | |
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] | |
>> Hello, I'm faced a tough issue recently: instructions of kernel
>> were corrupted. There has 2 PCI buses on my board and lots
>> of PCI devices with DMA capabality involved. I'm suspecting
>> the kernel instructions were corrupted by DMA operations driving
>> by those PCI devices with DMA capabality.
>>
>> Anybody have tried to protect kernel instructions from this case
>> or have any ideas to protect kernel text section?
>
> if you have a modern Intel board, you can enable the IOMMU on it that
> will protect the kernel text (well, all of memory) from rogue DMA.
> PPC generally has similar capabilities, as do some IBM x86 chipsets.
PPC is used now and PPC doesn't have 2 kinds of MMUs. I don't know much
about IOMMU. Is it part of CPU?
>
> Without an IOMMU it's basically impossible to protect against such DMA.
I did a google with "instruction"+"corruption"+"DMA" and found one matched
patent. And I go through the datasheet of PCI chips on my board, unfortunately,
the PCI chip didn't supply address protection from vager DMA.
http://www.freepatentsonline.com/y2005/0182862.html
>
> --
> If you want to reach me at my work email, use arjan@xxxxxxxxxxxxxxx
> For development, discussion and tips for power savings,
> visit http://www.lesswatts.org
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>ÿôèº{.nÇ+?·?®??+%?Ëÿ±éݶ¥?wÿº{.nÇ+?·¥?{±þG«?éÿ?{ayºÊ?Ú?ë,j¢f£¢·h??ï?êÿ?êçz_è®(é???Ý¢j"?ú¶m§ÿÿ¾«þG«?éÿ¢¸??¨èÚ&£ø§~?á¶iO?æ¬z·?vØ^¶m§ÿÿÃÿ¶ìÿ¢¸??I¥
[Site Home] [Other Archives] [Linux Kernel Newbies] [Linux Kernel Testers] [Linux SH] [Linux Omap] [Linux Kbuild] [Linux Tape] [Linux Input] [Linux Kernel Janitors] [Linux Doc] [Linux Man Pages] [Linux Standards] [Kernel Announce] [Memory] [Netdev] [Git] [Linux PCI] [NUMA] [Netfilter] [Netfilter Devel] [SELinux] [Bugtraq] [Writing Drivers] [Linux Serial] [Linux PPP] [Kernel MM Commits] [Linux Security Module] [Ext4] [Linux BTRFS] [Linux NFS] [Linux Cachefs] [Reiser FS] [Fastboot] [Linux RT Users] [Linux Virtualization] [LVS Devel] [KVM] [KVM PPC] [KVM ia64] [Linux Containers] [Util Linux NG] [Sk Drivers] [Wireless] [Linux Bluetooth] [Ethernet Bridging] [Embedded Linux] [Sparse] [Linux Arch] [Linux ACPI] [Linux IBM ACPI] [Linux OpenGL] [Linux Power Management] [Linux DCCP] [ALSA Devel] [Linux USB] [Large Format Photos] [DVD Store] [Tux] [Gimp] [Yosemite News] [Linux PA RISC] [MIPS Linux] [S390 Linux] [ARM Linux] [ARM Kernel] [Sparc Linux] [Linux Security] [Linux Sound] [Video 4 Linux] [Linux for the blind] [Linux IDE] [Linux RAID] [Linux SCSI] [Linux SMP] [Linux AXP] [Linux Alpha] [Linux M68K] [Linux ia64] [Linux 8086] [Linux x86_64] [Linux Apps] [Linux X.25] [Linux Crypto] [DM Crypt] [LInux Btrace] [Utrace Devel] [Yosemite Photos] [Linux Resources] [Older Kernel Mail]
![]() |
![]() |