Thanks for reporting this. I thought we had fixed this in 3.0.Before then, when we had a tid wrap, it would result in kjournaldspinning forever. I suspect this was your "spontaneous reboots" thatyou mentioned you mentioned when you were using 2.6.39 --- did youhave a hardware or softward watchdog timer enabled by any chance?
Since we didn't have a good way of reproducing the problem at thetime, I didn't realize that the problem had not been fully fixed;since while jbd2_log_start_commit() would no longer cause kjournald tospin forwever, a subsequent call to jbd2_log_wait_commit() with astale transaction id would wait for a very long time (possibly untilthe heat death of the universe :-)
I think a patch like this should fix things; I've run a stress testwith a hack to increment the transaction id by 1 << 24 after eachcommit, to more quickly cause an tid wrap, and the regression testsseem to be passing without complaint.