Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753041AbbGAI2G (ORCPT ); Wed, 1 Jul 2015 04:28:06 -0400 Received: from zeniv.linux.org.uk ([195.92.253.2]:43419 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751090AbbGAI16 (ORCPT ); Wed, 1 Jul 2015 04:27:58 -0400 Date: Wed, 1 Jul 2015 09:27:53 +0100 From: Al Viro To: Andrey Ryabinin Cc: Linus Torvalds , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org Subject: Re: [git pull] vfs part 2 Message-ID: <20150701082753.GD17109@ZenIV.linux.org.uk> 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> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <55939BE3.6040902@samsung.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1565 Lines: 40 On Wed, Jul 01, 2015 at 10:50:59AM +0300, Andrey Ryabinin wrote: > # dmesg | grep fucked > > [ 114.732166] fucked: sent 2037, server says it got 2047 (err = 0) > [ 124.937105] fucked: sent 27, server says it got 4096 (err = 0) > [ 154.075400] fucked: sent 19, server says it got 4096 (err = 0) > > > It's one thing if > > you are hitting a buggy server, it gets confused and tells you it has > > written more bytes than you told it to write. Quite a different story > > in case if we are miscalculating the size we are putting into RWRITE TWRITE, sorry about the braino. > > packet and/or advancing the iterator when we shouldn't... > > > > What server are you using, BTW? And which transport (virtio or network - > > IOW, is it zero-copy path or not)? > > qemu v2.2.1, virtio transport. Hmm... The first one should've hit the zero-copy path then, the last two are too short for that... *grumble* I wonder if these short writes are getting matched with response from wrong request - that would explain full-page responses... 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... -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/