Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp946520imm; Thu, 31 May 2018 12:14:46 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJsID7KmZzq5XE8vCjInGvRMJFNfHmhS3thOymb8JTx7dPyC4vLnYeau7p8CC9TpRSay+3p X-Received: by 2002:a17:902:b604:: with SMTP id b4-v6mr8108383pls.18.1527794086351; Thu, 31 May 2018 12:14:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527794086; cv=none; d=google.com; s=arc-20160816; b=GU3wUzgKpTF2QvN40rDMPrpajZ+wW4CdYY7P7bnYi5koVFZdqTxh2t58G91p371Pcc lMWDGWkeuBOjtDAebX/7cFkwLjbiG6X8Ah7b76aUM3CUyH7SSBjbKLUIXa4eiUkvyxq2 9Mp3xqmcAbovkSJUPlhWTs/IqgiBaM9Gqdc/bxcsPC+B7XsqpgI4soXM1ZlbTiMetkeC va+wD70P0y8ZjWw7hn8riGFUda1e/xYrsmWXjGh+d91s+Oyit8JFK6fGVG/6/DiIdwKb GAgLp+URii/GE2n2EHofMK95IWAp99KxlRJRGbJjAjDEOrwJTPW4b2AWC0CtgbcDpI/2 Bclw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:to :from:date:dkim-signature:arc-authentication-results; bh=1J1LFwxoyTjTjyzrgO4gMvlNR2m2CmHbN6JSkB2hNGQ=; b=CDlgn2gPXL1ftL29TkxUcbCB9iFcoarg0hebmo0k9YZWMKmzVanJl483t74SBmk1cR UJdP5xyCEtgUjLAnj0uSMsJaudVIC3iXM3aKmt4axGCi/6MMm488x3TJ9j/0H10GT8Pf T+325o9I9mXjVzOmeKN155ILUrzh0pNdAKMVMMEStMJOu/jtiK5w1NsuxCOqHniJoyHO Mk05TqMAGSEFrzG6plBL4Vphw4J2Q0w/5nmi+F3N1/m5OBo5MUenEno2Rtt7tg3iIjPn SnwSMEaill8xFNbb2JXumMdzFAQVNRQ5HoUf3k2e/9htT11tHMZlQX5bYcwTeQXde3QL 14eQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@oracle.com header.s=corp-2017-10-26 header.b=ZhPwMnEo; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h66-v6si14518337pgc.53.2018.05.31.12.14.29; Thu, 31 May 2018 12:14:46 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@oracle.com header.s=corp-2017-10-26 header.b=ZhPwMnEo; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754094AbeEaTN5 (ORCPT + 99 others); Thu, 31 May 2018 15:13:57 -0400 Received: from userp2130.oracle.com ([156.151.31.86]:58624 "EHLO userp2130.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754021AbeEaTNy (ORCPT ); Thu, 31 May 2018 15:13:54 -0400 Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.22/8.16.0.22) with SMTP id w4VJBENh162658; Thu, 31 May 2018 19:13:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=date : from : to : subject : message-id : references : mime-version : content-type : in-reply-to; s=corp-2017-10-26; bh=1J1LFwxoyTjTjyzrgO4gMvlNR2m2CmHbN6JSkB2hNGQ=; b=ZhPwMnEo11lqtb7LAGoeoY300iHfryqdhzHvmmLGK/726xGVjwiRXzdnVw520vHZxrwe si5dEsM6bl1CF7WIY0vpzcd+ngal+fudIssilddRg1N9CyMjK8dsS1/lzQpBjK7H92Pa I0ybeZbC4Pun+ShD4J2KYGBnYtj522MXXWhNAYM7mEVyEy/WGlU2anLJjSs1JG/F3GX1 44DBLTnHvxVnUjyzqWp2MRohhqkRyqUkMHy0haLirxuitsj5s2wFuVJ1f28xDK5RgTsn rZjcsg6dQv7z+DOTpFn+Gu+019xq4JMZAoECsYx28L6rYAdTa25XspOG7U9b8ImkJ1gZ Nw== Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by userp2130.oracle.com with ESMTP id 2janje0dx7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 31 May 2018 19:13:36 +0000 Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserv0022.oracle.com (8.14.4/8.14.4) with ESMTP id w4VJDZuK011784 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 31 May 2018 19:13:35 GMT Received: from abhmp0017.oracle.com (abhmp0017.oracle.com [141.146.116.23]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id w4VJDY1Y027248; Thu, 31 May 2018 19:13:34 GMT Received: from localhost (/67.169.218.210) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Thu, 31 May 2018 12:13:33 -0700 Date: Thu, 31 May 2018 12:13:32 -0700 From: "Darrick J. Wong" To: Ross Zwisler , Toshi Kani , Mike Snitzer , dm-devel@redhat.com, Dave Jiang , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-nvdimm@lists.01.org, linux-xfs@vger.kernel.org Subject: Re: [PATCH v2 2/7] dax: change bdev_dax_supported() to support boolean returns Message-ID: <20180531191332.GB7825@magnolia> References: <20180529195106.14268-1-ross.zwisler@linux.intel.com> <20180529195106.14268-3-ross.zwisler@linux.intel.com> <20180529212510.GJ30110@magnolia> <20180529220114.GA13948@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180529220114.GA13948@linux.intel.com> User-Agent: Mutt/1.9.4 (2018-02-28) X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=8910 signatures=668702 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=2 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1805220000 definitions=main-1805310213 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, May 29, 2018 at 04:01:14PM -0600, Ross Zwisler wrote: > On Tue, May 29, 2018 at 02:25:10PM -0700, Darrick J. Wong wrote: > > On Tue, May 29, 2018 at 01:51:01PM -0600, Ross Zwisler wrote: > > > From: Dave Jiang > > > > > > The function return values are confusing with the way the function is > > > named. We expect a true or false return value but it actually returns > > > 0/-errno. This makes the code very confusing. Changing the return values > > > to return a bool where if DAX is supported then return true and no DAX > > > support returns false. > > > > > > Signed-off-by: Dave Jiang > > > Signed-off-by: Ross Zwisler > > > > Looks ok, do you want me to pull the first two patches through the xfs > > tree? > > > > Reviewed-by: Darrick J. Wong > > Thanks for the review. > > I'm not sure what's best. If you do that then Mike will need to have a DM > branch for the rest of the series based on your stable commits, yea? > > Mike what would you prefer? I /was/ about to say that I would pull in the first two patches, but now I can't get xfs to mount with pmem at all, and have no way of testing this...? # echo 'file drivers/dax/* +p' > /sys/kernel/debug/dynamic_debug/control # mount /dev/pmem3 -o rtdev=/dev/pmem4,dax /mnt # dmesg SGI XFS with ACLs, security attributes, realtime, scrub, debug enabled XFS (pmem3): DAX enabled. Warning: EXPERIMENTAL, use at your own risk pmem3: error: dax support not enabled pmem4: error: dax support not enabled XFS (pmem3): DAX unsupported by block device. Turning off DAX. XFS (pmem3): Mounting V5 Filesystem XFS (pmem3): Ending clean mount Evidently the pfn it picks up is missing PFN_MAP in flags because ND_REGION_PAGEMAP isn't set, and looking at the kernel source, pmem that comes in via NFIT never gets that set...? relevant qemu pmem options: -object memory-backend-file,id=memnvdimm0,prealloc=no,mem-path=/dev/shm/a.img,share=yes,size=13488881664 -device nvdimm,node=0,memdev=memnvdimm0,id=nvdimm0,slot=0 (repeat for five more devices) --D NFIT table contents: 0000000 4e 46 49 54 78 04 00 00 01 46 42 4f 43 48 53 20 N F I T x 004 \0 \0 001 F B O C H S 0000016 42 58 50 43 4e 46 49 54 01 00 00 00 42 58 50 43 B X P C N F I T 001 \0 \0 \0 B X P C 0000032 01 00 00 00 00 00 00 00 00 00 38 00 08 00 03 00 001 \0 \0 \0 \0 \0 \0 \0 \0 \0 8 \0 \b \0 003 \0 0000048 00 00 00 00 01 00 00 00 79 d3 f0 66 f3 b4 74 40 \0 \0 \0 \0 001 \0 \0 \0 y 323 360 f 363 264 t @ 0000064 ac 43 0d 33 18 b7 8c db 00 00 00 6c 0a 00 00 00 254 C \r 3 030 267 214 333 \0 \0 \0 l \n \0 \0 \0 0000080 00 00 00 24 03 00 00 00 08 80 00 00 00 00 00 00 \0 \0 \0 $ 003 \0 \0 \0 \b 200 \0 \0 \0 \0 \0 \0 0000096 01 00 30 00 04 00 00 00 00 00 00 00 08 00 09 00 001 \0 0 \0 004 \0 \0 \0 \0 \0 \0 \0 \b \0 \t \0 0000112 00 00 00 24 03 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 $ 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000128 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 001 \0 \0 \0 \0 \0 0000144 04 00 50 00 09 00 86 80 01 00 01 00 00 00 00 00 004 \0 P \0 \t \0 206 200 001 \0 001 \0 \0 \0 \0 \0 0000160 00 00 00 00 00 00 00 00 59 34 12 00 01 03 00 00 \0 \0 \0 \0 \0 \0 \0 \0 Y 4 022 \0 001 003 \0 \0 0000176 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0000224 00 00 38 00 0a 00 03 00 00 00 00 00 00 00 00 00 \0 \0 8 \0 \n \0 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000240 79 d3 f0 66 f3 b4 74 40 ac 43 0d 33 18 b7 8c db y 323 360 f 363 264 t @ 254 C \r 3 030 267 214 333 0000256 00 00 00 90 0d 00 00 00 00 00 00 24 03 00 00 00 \0 \0 \0 220 \r \0 \0 \0 \0 \0 \0 $ 003 \0 \0 \0 0000272 08 80 00 00 00 00 00 00 01 00 30 00 05 00 00 00 \b 200 \0 \0 \0 \0 \0 \0 001 \0 0 \0 005 \0 \0 \0 0000288 00 00 00 00 0a 00 0b 00 00 00 00 24 03 00 00 00 \0 \0 \0 \0 \n \0 \v \0 \0 \0 \0 $ 003 \0 \0 \0 0000304 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000320 00 00 01 00 00 00 00 00 04 00 50 00 0b 00 86 80 \0 \0 001 \0 \0 \0 \0 \0 004 \0 P \0 \v \0 206 200 0000336 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 001 \0 001 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000352 5a 34 12 00 01 03 00 00 00 00 00 00 00 00 00 00 Z 4 022 \0 001 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000368 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0000400 00 00 00 00 00 00 00 00 00 00 38 00 0c 00 03 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 8 \0 \f \0 003 \0 0000416 00 00 00 00 01 00 00 00 79 d3 f0 66 f3 b4 74 40 \0 \0 \0 \0 001 \0 \0 \0 y 323 360 f 363 264 t @ 0000432 ac 43 0d 33 18 b7 8c db 00 00 00 b4 10 00 00 00 254 C \r 3 030 267 214 333 \0 \0 \0 264 020 \0 \0 \0 0000448 00 00 00 24 03 00 00 00 08 80 00 00 00 00 00 00 \0 \0 \0 $ 003 \0 \0 \0 \b 200 \0 \0 \0 \0 \0 \0 0000464 01 00 30 00 06 00 00 00 00 00 00 00 0c 00 0d 00 001 \0 0 \0 006 \0 \0 \0 \0 \0 \0 \0 \f \0 \r \0 0000480 00 00 00 24 03 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 $ 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000496 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 001 \0 \0 \0 \0 \0 0000512 04 00 50 00 0d 00 86 80 01 00 01 00 00 00 00 00 004 \0 P \0 \r \0 206 200 001 \0 001 \0 \0 \0 \0 \0 0000528 00 00 00 00 00 00 00 00 5b 34 12 00 01 03 00 00 \0 \0 \0 \0 \0 \0 \0 \0 [ 4 022 \0 001 003 \0 \0 0000544 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0000592 00 00 38 00 02 00 03 00 00 00 00 00 00 00 00 00 \0 \0 8 \0 002 \0 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000608 79 d3 f0 66 f3 b4 74 40 ac 43 0d 33 18 b7 8c db y 323 360 f 363 264 t @ 254 C \r 3 030 267 214 333 0000624 00 00 00 00 01 00 00 00 00 00 00 24 03 00 00 00 \0 \0 \0 \0 001 \0 \0 \0 \0 \0 \0 $ 003 \0 \0 \0 0000640 08 80 00 00 00 00 00 00 01 00 30 00 01 00 00 00 \b 200 \0 \0 \0 \0 \0 \0 001 \0 0 \0 001 \0 \0 \0 0000656 00 00 00 00 02 00 03 00 00 00 00 24 03 00 00 00 \0 \0 \0 \0 002 \0 003 \0 \0 \0 \0 $ 003 \0 \0 \0 0000672 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000688 00 00 01 00 00 00 00 00 04 00 50 00 03 00 86 80 \0 \0 001 \0 \0 \0 \0 \0 004 \0 P \0 003 \0 206 200 0000704 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 001 \0 001 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000720 56 34 12 00 01 03 00 00 00 00 00 00 00 00 00 00 V 4 022 \0 001 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000736 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0000768 00 00 00 00 00 00 00 00 00 00 38 00 04 00 03 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 8 \0 004 \0 003 \0 0000784 00 00 00 00 01 00 00 00 79 d3 f0 66 f3 b4 74 40 \0 \0 \0 \0 001 \0 \0 \0 y 323 360 f 363 264 t @ 0000800 ac 43 0d 33 18 b7 8c db 00 00 00 24 04 00 00 00 254 C \r 3 030 267 214 333 \0 \0 \0 $ 004 \0 \0 \0 0000816 00 00 00 24 03 00 00 00 08 80 00 00 00 00 00 00 \0 \0 \0 $ 003 \0 \0 \0 \b 200 \0 \0 \0 \0 \0 \0 0000832 01 00 30 00 02 00 00 00 00 00 00 00 04 00 05 00 001 \0 0 \0 002 \0 \0 \0 \0 \0 \0 \0 004 \0 005 \0 0000848 00 00 00 24 03 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 $ 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000864 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 001 \0 \0 \0 \0 \0 0000880 04 00 50 00 05 00 86 80 01 00 01 00 00 00 00 00 004 \0 P \0 005 \0 206 200 001 \0 001 \0 \0 \0 \0 \0 0000896 00 00 00 00 00 00 00 00 57 34 12 00 01 03 00 00 \0 \0 \0 \0 \0 \0 \0 \0 W 4 022 \0 001 003 \0 \0 0000912 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0000960 00 00 38 00 06 00 03 00 00 00 00 00 00 00 00 00 \0 \0 8 \0 006 \0 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000976 79 d3 f0 66 f3 b4 74 40 ac 43 0d 33 18 b7 8c db y 323 360 f 363 264 t @ 254 C \r 3 030 267 214 333 0000992 00 00 00 48 07 00 00 00 00 00 00 24 03 00 00 00 \0 \0 \0 H \a \0 \0 \0 \0 \0 \0 $ 003 \0 \0 \0 0001008 08 80 00 00 00 00 00 00 01 00 30 00 03 00 00 00 \b 200 \0 \0 \0 \0 \0 \0 001 \0 0 \0 003 \0 \0 \0 0001024 00 00 00 00 06 00 07 00 00 00 00 24 03 00 00 00 \0 \0 \0 \0 006 \0 \a \0 \0 \0 \0 $ 003 \0 \0 \0 0001040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0001056 00 00 01 00 00 00 00 00 04 00 50 00 07 00 86 80 \0 \0 001 \0 \0 \0 \0 \0 004 \0 P \0 \a \0 206 200 0001072 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 001 \0 001 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0001088 58 34 12 00 01 03 00 00 00 00 00 00 00 00 00 00 X 4 022 \0 001 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0001104 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0001136 00 00 00 00 00 00 00 00 \0 \0 \0 \0 \0 \0 \0 \0 0001144 > -- > To unsubscribe from this list: send the line "unsubscribe linux-xfs" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html