Hi Anderson,<br><br><div class="gmail_quote">On Jan 7, 2008 12:41 AM, Anderson Briglia <<a href="mailto:anderson@briglia.net">anderson@briglia.net</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I backported the actual code from [1] to 2.6.21 kernel version, used on Nokia N810 device. This is an embedded Linux device using an ARM-OMAP processor. Well, after some compilation problems due to bio interface changes, I got ccache modules compiled.
</blockquote><div><br>Now ccache compiles with kernels >= 2.6.21 too (I didn't try with even older kernels). Also, sys_swapon() does not hang now (this never happened with 2.6.24-rcX).<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br>The problem now is happening when I try to "swapon" /dev/ccache. sys_swapon() never finishes and seems that we have a deadlock there. I'm investigating what's going on with sys_swapon() but I really appreciate if you point something that could cause this.
</blockquote><div><br>Looks like you were doing same mistake as I was doing initially. bio_io_error() should be called as bio_io_error(bio, bio->bi_size) and not as bio_io_error(bio, 0). This was causing read() on /dev/ccache to hang.
<br> <br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>Good work Nitin, I intend to contribute to your project. :)<br></blockquote>
<div><br>Thanks :) <br><br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>[1] <a href="http://code.google.com/p/ccache/source" target="_blank">
http://code.google.com/p/ccache/source</a></blockquote><div><br><br>Cheers,<br>Nitin<br> <br></div></div><br>