Re: Tough Issue: kernel instruction corruption

From: Gavin Shan
Date: Sat Jul 05 2008 - 11:27:40 EST


>> 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?§²æìr¸?yúè?Øb²X¬¶Ç§vØ^?)Þº{.nÇ+?·¥?{±?êçzX§¶?¡Ü¨}©?²Æ zÚ&j:+v?¨¾«?êçzZ+?Ê+zf£¢·h??§~?­?Ûiÿûàz¹®w¥¢¸??¨è­Ú&¢)ߢf?ù^jÇ«y§m?á@A«a¶Úÿ 0¶ìh®å?i