<div>Hello,</div>
<div>I wish to know, why the problem of bad clientid does not come, if we safely umount the USB storage device.</div>
<div>Also if anyone can help where XFS uses these flush_kernel_vmap_range/invalidate_kernel_vmap_range.</div>
<div> </div>
<div>With what ever understanding I have developed about log recovery that buffer "dbp" is updated with new value in xlog_bread(), but the cache hold buffer lines of last iteration, I think if we can can dpd pages uncachable than it may solve this problem, pls comment if I am wrong. </div>
<div> </div>
<div>dbp = xlog_get_bp(log, BTOBB(h_size)); --------> In function xlog_do_recovery_pass() </div>
<div> </div>
<div>for (blk_no = tail_blk; blk_no < head_blk; ) {</div>
<div>.</div>
<div> error = xlog_bread(log, blk_no + hblks, bblks, dbp,<br> &offset);<br> if (error)<br> goto bread_err2;</div>
<div> xlog_unpack_data(rhead, offset, log);<br> if ((error = xlog_recover_process_data(log,<br> rhash, rhead, offset, pass)))<br> goto bread_err2;<br> blk_no += bblks + hblks;</div>
<div>} </div>
<div><br><br> </div>
<div class="gmail_quote">On Thu, Oct 21, 2010 at 6:57 PM, Ajeet Yadav <span dir="ltr"><<a href="mailto:ajeet.yadav.77@gmail.com">ajeet.yadav.77@gmail.com</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div>Thanks for response, </div>
<div> </div>
<div>Linux kernel I am using is 2.6.30, where as XFS I have ported until 2.6.34 on given kernel.</div>
<div>Do you think I need the mentioned API flush_kernel_vmap_range/invalidate_kernel_vmap_range in 2.6.30.9 as well.I will be grateful if you can provide me sample code for the above API. </div>
<div>
<div></div>
<div class="h5">
<div><br><br> </div>
<div class="gmail_quote">On Thu, Oct 21, 2010 at 6:22 PM, Christoph Hellwig <span dir="ltr"><<a href="mailto:hch@infradead.org" target="_blank">hch@infradead.org</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div>On Thu, Oct 21, 2010 at 05:41:43PM +0530, Ajeet Yadav wrote:<br>> Dear member,<br>> If I remove USB flash storage from PC/ARM/MIPS target (i.e<br>> without umount) while copying file to XFS partition and connect it to MIPS<br>
> target I always get<br>> XFS: xlog_recover_process_data: bad clientid<br>> XFS: log mount/recovery failed: error 5<br>> XFS: log mount failed<br>> This problem does not occur, if I connect the same USB flash to PC/ARM<br>
> target.<br>> I have tested this on 2.6.30 - 2.6.34 (It everywhere when concerend with<br>> MIPS)<br><br></div>Since Linux 2.6.34 Linux uses the flush_kernel_vmap_range/<br>invalidate_kernel_vmap_range APIs to make I/O to vmapped<br>
areas work on systems with virtually indexed caches.<br><br>Unfortunately only arm, parisc and sh actually implement these so far.<br>You'll need to implement an implementation of these APIs for your cache<br>architecture to make XFS work on MIPS with virtually indexed caches.<br>
</blockquote></div><br></div></div></blockquote></div><br>