On 07/01/2015 11:55 AM, Al Viro wrote: > On Wed, Jul 01, 2015 at 11:41:04AM +0300, Andrey Ryabinin wrote: >> On 07/01/2015 11:27 AM, Al Viro wrote: >>> >>> Could you check if 3.19 was getting anything similar? I.e. in >>> p9_client_write() there add >>> if (count > rsize) >>> printk(KERN_ERR "bogus RWRITE: %d -> %d\n", rsize, count); >>> just before >>> p9_debug(P9_DEBUG_9P, "<<< RWRITE count %d\n", count); >>> and see if that triggers... >>> >> >> Yeah, the same thing: >> [ 125.962374] bogus RWRITE: 27 -> 4096 >> [ 207.587632] bogus RWRITE: 27 -> 4096 >> [ 215.055627] bogus RWRITE: 27 -> 4096 >> [ 235.583138] bogus RWRITE: 27 -> 4096 >> [ 245.749174] bogus RWRITE: 27 -> 4096 >> [ 246.759270] bogus RWRITE: 27 -> 4096 >> [ 248.020787] bogus RWRITE: 27 -> 4096 > > Hrm... Could you add (int)req->rc->id, (int)req->rc->tag and (int)req->tc->tag > to that printk (on either kernel, the problem's apparently not new)? > I've attached gdb instead. So, after message "bogus RWRITE: 93 -> 4096" I've got this: (gdb) p *req->rc $11 = {size = 11, id = 119 'w', tag = 3, offset = 11, capacity = 8192, sdata = 0xffff8802347b8020 "\v"} (gdb) p *req->tc $12 = {size = 116, id = 118 'v', tag = 3, offset = 0, capacity = 8192, sdata = 0xffff88023479c020 "t"} > The question is whether we are mismatching replies, sending bogus requests or > if it's really the server sending bogus replies. Which qemu version are > you using, BTW? > As I said before qemu's version is 2.2.1. So, I've decided to try kvmtool. It took a bit longer to trigger, but still: [ 466.552432] bogus RWRITE: 57 -> 8168 [ 969.317058] bogus RWRITE: 27 -> 8168 -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html