<span class="gmail_quote">On 12/9/05, <b class="gmail_sendername">James Lentini</b> <<a href="mailto:jlentini@netapp.com">jlentini@netapp.com</a>> wrote:</span><br>
<div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">ian> 1) Could memory allocated by kmem_cache_create() be OK?<br>ian> AFAIK, memory allocated by kmalloc() is OK and that by vmalloc()
<br>ian> is not.<br><br>Correct, assuming you pass kmalloc the GFP_DMA flag.</blockquote><div><br>
Roland> No, the GFP_DMA flag is not necessary.  On x86 is means to allocate<br>
Roland> from the 24-bit ISA DMA region (ie the low 16 MB of RAM).  In general<br>
Roland> it is never necessary to use GFP_DMA in modern code.<br>
 <br>
I agree with Roland. I tried the kmalloc() with GFP_ATOMIC flag and it was OK.<br>
</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">ian> and it's not necessary for the DAT_MEM_TYPE_IA type. Is the<br>ian> translation is done in the dat_lmr_kcreate() for the
<br>ian> DAT_MEM_TYPE_IA type?<br><br>No translation is done in dat_lmr_kcreate for DAT_MEM_TYPE_IA. A<br>DAT_MEM_TYPE_IA address is supposed to be an I/O address that the<br>adapter can use.</blockquote><div><br>
<br>
</div>Question 1: How to distinguish a address that the adapter can use from that the adapter cannot use? <br>
</div>Could you give an example? I am really not very familiar with the I/O address details.<br>
<br>
Question 2: Which memory type should be use given a continuous range of physical memory?<br>
It seems simpler to use the DAT_MEM_TYPE_IA type since no translation
is needed. But is not there any limitation to the memory to be
registered using the DAT_MEM_TYPE_IA, contrasted with the
DAT_MEM_PHYSICAL type?<br><br clear="all">Thanks a lot!<br>-- <br>Ian Jiang<br><a href="mailto:ianjiang.ict@gmail.com">ianjiang.ict@gmail.com</a><br><br>Laboratory of Spatial Information Technology<br>Division of System Architecture
<br>Institute of Computing Technology<br>Chinese Academy of Sciences