From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrey Ryabinin Subject: Re: [git pull] vfs part 2 Date: Wed, 01 Jul 2015 14:25:43 +0300 Message-ID: <5593CE37.4070307@samsung.com> References: <20150415181406.GL889@ZenIV.linux.org.uk> <5538C66F.4050404@samsung.com> <20150621211213.GA18732@ZenIV.linux.org.uk> <5587F943.3040006@samsung.com> <20150701062752.GC17109@ZenIV.linux.org.uk> <55939BE3.6040902@samsung.com> <20150701082753.GD17109@ZenIV.linux.org.uk> <5593A7A0.6050400@samsung.com> <20150701085507.GE17109@ZenIV.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Cc: Linus Torvalds , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org To: Al Viro Return-path: Received: from mailout1.w1.samsung.com ([210.118.77.11]:33585 "EHLO mailout1.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751382AbbGALZr (ORCPT ); Wed, 1 Jul 2015 07:25:47 -0400 In-reply-to: <20150701085507.GE17109@ZenIV.linux.org.uk> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: 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