Return-Path: Received: from daytona.panasas.com ([67.152.220.89]:24581 "EHLO daytona.panasas.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750751Ab1FANgv (ORCPT ); Wed, 1 Jun 2011 09:36:51 -0400 Message-ID: <4DE64069.7080103@panasas.com> Date: Wed, 01 Jun 2011 16:36:41 +0300 From: Boaz Harrosh To: Trond Myklebust CC: Weston Andros Adamson , trond@netapp.com, linux-nfs@vger.kernel.org Subject: Re: [PATCH] NFS: filelayout should use nfs_generic_pg_test References: <1306898310-9229-1-git-send-email-dros@netapp.com> <4DE5D287.603@panasas.com> <1306930452.25992.61.camel@lade.trondhjem.org> In-Reply-To: <1306930452.25992.61.camel@lade.trondhjem.org> Content-Type: text/plain; charset=UTF-8 Sender: linux-nfs-owner@vger.kernel.org List-ID: MIME-Version: 1.0 On 06/01/2011 03:14 PM, Trond Myklebust wrote: > On Wed, 2011-06-01 at 08:47 +0300, Boaz Harrosh wrote: >> On 06/01/2011 06:18 AM, Weston Andros Adamson wrote: >> >> pnfs_generic_pg_test is the one that gets the layout. >> >> What you've done is revert to MDS IO > > The "files" layout type always gets the layout in the pg_doio() method > instead of the pg_test(). > Well I don't see where? I fought this all day, when trying to make the new code run with objlayout, which was missing the implementation of pg_test(). And never got a pnfs-IO. I've searched the full tree for calls to pnfs_update_layout() the only one I can see are in: nfs_pagein_multi() - which means within a single page, right? nfs_pagein_one() - But is protected with list_is_singular() so only in the single page case nfs_flush_multi() - Same as nfs_pagein_multi nfs_flush_one() - Also here protected with list_is_singular() and the all mighty pnfs_generic_pg_test() I cannot see where the filelayout is different then other layouts in that respect. Sorry to be slow, I would like to understand? And also be careful with nfs_generic_pg_test() it inspects desc->bsize which is negotiated with MDS, it's very small. > Cheers > Trond > Thanks Boaz