<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Linux Windows System Administrator Help &#187; HDIO_SET_DMA failed: Operation not permitted</title>
	<atom:link href="http://linuxwindowsmaster.com/tag/hdio_set_dma-failed-operation-not-permitted/feed/" rel="self" type="application/rss+xml" />
	<link>http://linuxwindowsmaster.com</link>
	<description></description>
	<lastBuildDate>Wed, 15 Feb 2012 17:58:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>What is DMA ? How to enable/disable it ?</title>
		<link>http://linuxwindowsmaster.com/what-is-dma-how-to-enable-disable-it/</link>
		<comments>http://linuxwindowsmaster.com/what-is-dma-how-to-enable-disable-it/#comments</comments>
		<pubDate>Sat, 18 Oct 2008 23:40:13 +0000</pubDate>
		<dc:creator>Alex P</dc:creator>
				<category><![CDATA[Cpanel Server]]></category>
		<category><![CDATA[Direct Memory Access]]></category>
		<category><![CDATA[DMA]]></category>
		<category><![CDATA[HDIO_SET_DMA failed: Operation not permitted]]></category>
		<category><![CDATA[hdparm]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[memory]]></category>
		<category><![CDATA[on/off]]></category>
		<category><![CDATA[SATA]]></category>

		<guid isPermaLink="false">http://linuxwindowsmaster.com/?p=39</guid>
		<description><![CDATA[What is DMA? DMA stands for Direct Memory Access, a mechanism in modern computers which allow peripheral devices (like HDD, USB etc..) to sent data directly to motherboard’s memory without passing through the CPU. Many hardware systems use DMA including disk drive controllers, graphics cards, network cards, and sound cards. DMA technology is implemented in [...]]]></description>
			<content:encoded><![CDATA[<p>What is <strong>DMA</strong>?</p>
<p><strong>DMA</strong> stands for <strong>Direct Memory Access</strong>, a mechanism in modern computers which allow peripheral devices (like HDD, USB etc..) to sent data directly to<strong> motherboard’s memory</strong> without passing through the <strong>CPU</strong>. Many hardware systems use DMA including disk drive controllers, graphics cards, network cards, and sound cards.</p>
<p><strong>DMA</strong> technology is implemented in modern computer bus architectures to speed up computer operations and allow multitasking. Normally, the CPU will be fully occupied in any read/write operation; enabling DMA allows reading/writing data in the internal memory, external memory and peripherals without CPU involvement, thus making the processor available for other tasks. This ensures streamlined operations, as movement of data to/from memory is one of the most common computer operations and freeing the CPU of this overhead can lead to a significant improvement in performance.</p>
<p>You will have to make sure whether the HD controller supports DMA (likely), and your drives support it (newer than 1997), enable it.</p>
<p>You can use the following command to check and <strong>turn on/off DMA</strong></p>
<ol>
<li> Check whether HDD is SATA or IDEIf you do df -lh you can tell which drives are IDE and which are SATA.<strong><br />
/dev/hd? &lt;&lt; that is IDE<br />
/dev/sd? &lt;&lt; that is SATA</strong><br />
SATA drives do not use DMA because it is already so fast <img src='http://linuxwindowsmaster.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' title="What is DMA ? How to enable/disable it ?" /> </li>
<li>Check whether DMA is on/off<br />
root@server [~]#<strong> hdparm –d 1 /dev/hdd</strong><br />
/dev/hdd:<br />
using_dma = 0 (off)<br />
root@server [~]#</li>
<li>If it is Off then you can turn On using command command<br />
root@server [~]# <strong>hdparm -d 1 /dev/hdd</strong><br />
/dev/hdd:<br />
setting using_dma to 1 (on)<br />
using_dma = 0 (on)</li>
<li>You can test HDD performance using following command<br />
<strong>#hdparm -tT /dev/hdd</strong></li>
</ol>
<p>If you are getting following error while trying to enable (<strong>hdparm –d 1 /dev/hdd</strong>) DMA there might be following possibility</p>
<p>Error ::</p>
<p>root@server [~]# hdparm -d 1 /dev/hdd<br />
/dev/hdd:<br />
setting using_dma to 1 (on)<br />
<strong> HDIO_SET_DMA failed: Operation not permitted</strong><br />
using_dma = 0 (off)<br />
root@server [~]#</p>
<ul>
<li> Check whether the<strong> HD controller</strong> supports DMA ?</li>
</ul>
<ul>
<li>Check whether kernel is compile with <strong>DMA module </strong>?</li>
</ul>
<p>If not please recompile the latest kernel with DMA module , The steps which are particularly relevant to DMA support are as follows:</p>
<ul>
<li> Download a recent kernel from http://www.kernel.org/pub/linux/kernel/v2.6/ URL</li>
<li>untar it and run make menuconfig make sure following feature are enable<br />
General setup &#8212;&gt;Device Drivers &#8212;&gt;</p>
<p>&lt;*&gt; ATA/ATAPI/MFM/RLL support &#8212;&gt;</p>
<p>&lt;*&gt; generic/default IDE chipset support</p>
<p>&lt;*&gt; Generic PCI IDE Chipset Support</p>
<p>&lt;*&gt; Intel PIIX/ICH chipsets support</li>
<li>and then :
<ol>
<li>#make &#8211;&gt; compile kernel, it says &#8220;bzimage is ready.&#8221;</li>
<li>#make modules</li>
<li>#make modules_install</li>
<li>#make install &gt;&gt; sh /usr/src/linux-2.6.26.5/arch/x86/boot/install.sh 2.6.26.5-VISION arch/x86/boot/bzImage System.map &#8220;/boot&#8221;</li>
<li># edit the /etc/grub.conf file and make new complied kernel entry as default</li>
<li>#reboot</li>
</ol>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://linuxwindowsmaster.com/what-is-dma-how-to-enable-disable-it/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

