From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id C426CC7619A for ; Wed, 12 Apr 2023 19:33:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2BF54900002; Wed, 12 Apr 2023 15:33:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 26F606B0075; Wed, 12 Apr 2023 15:33:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 136A1900002; Wed, 12 Apr 2023 15:33:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 0466A6B0074 for ; Wed, 12 Apr 2023 15:33:55 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id CB7381A0239 for ; Wed, 12 Apr 2023 19:33:54 +0000 (UTC) X-FDA: 80673739188.13.20345E2 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf01.hostedemail.com (Postfix) with ESMTP id A9B8B4001F for ; Wed, 12 Apr 2023 19:33:52 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=K6m5dhX5; spf=pass (imf01.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681328032; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Uw6xQG4wZGC1xgdfimz/iSV63q+d6nwv6pZhBDNF+ac=; b=1voGKcmNpuBzFKVShBJr5bPvHaS50YdXVfXvP9JQUTsQBDG44iWLfbm1Cd8ZVB+JR9631d gHdk/SVrsdiObKes9ilTn8Q1rRirtsw/u/Bb2RE36N37XSdvFuGWp02Zxc5ZNs0ZwVQoqZ T9gDTqbZbj+j0+BAvv5np5b8nXqP5Ww= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=K6m5dhX5; spf=pass (imf01.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681328032; a=rsa-sha256; cv=none; b=KPw6dhP9YwxrU0Kf12Rj+rWmUQqBPC+AWjAPRzUQ2VA/dlF6TrP0Mjc/OnApAAq4CeTXSd OAyeLq8z3lCGA/UoZYwAYAHB/evmo7RcucOCp7OeU9ZTORjkOp6mlpm60J5yo4afrg2avS QV5DWGPCMl9o5zSn56Q0JzjhLCXlmwM= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1681328031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Uw6xQG4wZGC1xgdfimz/iSV63q+d6nwv6pZhBDNF+ac=; b=K6m5dhX5pebMnY43XUizPZWqxmcbXSE57/Gyrsl0ZKYJcSHxSyQe9gbKuUgo/c6umGCuE5 456najT81R7Z/mrEfqJ2lz+F+602UnS43J2f2Re21XccwLsJvJR0N+Wwf91nf33XkWSZ8P k/ZCKZcBW9WD2alGfx9JjvK6+MBDBB0= Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-218-IQ82j8FTOt6LZRaPBbuw0g-1; Wed, 12 Apr 2023 15:33:50 -0400 X-MC-Unique: IQ82j8FTOt6LZRaPBbuw0g-1 Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-74a904f38f3so87780885a.1 for ; Wed, 12 Apr 2023 12:33:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681328030; x=1683920030; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Uw6xQG4wZGC1xgdfimz/iSV63q+d6nwv6pZhBDNF+ac=; b=fsLVste3FeMA3QjTTJagkV7UVJ1IOPfI2SWseCfz0VDgIetm+HVmUX6eG62lJayURK NYOEpxVYeN6c49+x0ANSe5XgwYSd3gBc+2fvKtKpnfqwDT4SlmnNWEKu8kwbRPC70S/x LbZu9Avh68sROXjIgWYTlaZ0fCE8jPLxuZ7VklWuCmaeM1R3or+cLpKVynbbNXXhKzA1 h8DZGVHFZLTyUydkewrVLWgzXJeU2Xl5Ufka8Tn02UXu8QTl7Pc9nVmEYatqU3hnsfAr xLEsY/KK2SE5/9nD6EsT1Lz/XwdlU7Fx09oaMyQzl5pQ7II1hGbJM1bmP4rN8Bzjj/wY jKkw== X-Gm-Message-State: AAQBX9efUqgNbbh/+xn/bCrqgeABFOdCrN2EHCBQYm5GqMTxov3stcaO LYcqoHAdQcq07WMcG0JGG0WO18qWulhXawtf97fsB7f9nf21kLkvkO9stiEIM5rfcqZ+hGSULk5 1LPwU4KZ4jXg= X-Received: by 2002:a05:622a:1821:b0:3e6:8da4:427 with SMTP id t33-20020a05622a182100b003e68da40427mr4249477qtc.6.1681328030104; Wed, 12 Apr 2023 12:33:50 -0700 (PDT) X-Google-Smtp-Source: AKy350YrCdMl0uPyf75zLMUcydJmenbK3Ym9Oek/Fm1okyU88m4dfxSLMEpFGfaz6ToLYNMshOQn/Q== X-Received: by 2002:a05:622a:1821:b0:3e6:8da4:427 with SMTP id t33-20020a05622a182100b003e68da40427mr4249461qtc.6.1681328029844; Wed, 12 Apr 2023 12:33:49 -0700 (PDT) Received: from x1n (bras-base-aurron9127w-grc-40-70-52-229-124.dsl.bell.ca. [70.52.229.124]) by smtp.gmail.com with ESMTPSA id q10-20020a05620a2a4a00b0074accdc10ecsm240192qkp.47.2023.04.12.12.33.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 12 Apr 2023 12:33:49 -0700 (PDT) Date: Wed, 12 Apr 2023 15:33:48 -0400 From: Peter Xu To: Axel Rasmussen Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Andrew Morton , Andrea Arcangeli , Mike Kravetz , Nadav Amit , David Hildenbrand , Mike Rapoport , Leonardo Bras Soares Passos Subject: Re: [PATCH v2 14/31] selftests/mm: uffd_[un]register() Message-ID: References: <20230412163922.327282-1-peterx@redhat.com> <20230412164247.328293-1-peterx@redhat.com> MIME-Version: 1.0 In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: A9B8B4001F X-Stat-Signature: kawc9supfwq54f5pjss4nsrftijj7nw9 X-Rspam-User: X-HE-Tag: 1681328032-48268 X-HE-Meta: U2FsdGVkX1/CeodM55Ze5EMtYIUXn4PeNlQrFKfMxTqtbUUPb6AJxf20mLecsEuopKIPgM4dq5sFvllBvTJuhrt+lh99K/XF40vdflydRbuEqj39otvIuXvapRg8gpXAnHis7fJXpYZwsJpvD7W7y/ZR5f84AUOjXucU7xTTTy+GTiRuG3QtALY/1XDPAxnPU3Aq4GGBHNzuMAJJI/XpTId4I9w5VIF2cFx4iQgHL/BvY9/e+h9SuEaXyLsyQplcG+ZEU8CzSR+dbb4lvKaX8cGhu+4yR0l9OsEqzwlIzHIyxw5GCcNl42LayVvrACQVjw2DAUSbWy2rRnGowRERTgOpB/makBatlKQGoGQ+9rAH+cfBWvGcCMfxZftquRrXSI284TDyqIkt0+TD6lwzhPgiHhMIAafSgS+72YJ1D+1gYrOQa3Edm0CWhNENZyQ6U5sQJ0ZnfVvLWTVsOtbF30Mi1RzoIVqvYlTOHb9mIjizCpE7PUYWDhEWLSLQdDeZkg68ATZh4Ig8UItTuHVXLQpZXwblQB96U5LPaDEPegKa4XTYb4gkPmz5zQI6OWz4rZrG2VRWAP+YZn/h7DdZuQVIx/WDw2uFNBSOqcmU5B1j+m68+HmbiNwQwTF0cSEpW2fVy5PcOwN3PtYURGGiC8p2qbBHmjcUmcBMk7QsnFLELxzldFK150NdMbFKYJQKUaDuTBejWu15OO0rlLXLUwIh9cxyOT7O2Wp+1AVVoH3p/PjqJbSnIEwCFGP3N24424g8abQdlr677qo8jsirgdyo4wmVjbRzrRlxRC9Zoe1HiMsY54Nal4Be9rkzBYEiu48ltFfV+4qpWSjftE7HgylWFC1W2z/fHeJY8Z4T0gvHecEDmlLM3Femgaz+nvs7hHP3fv34bwUZ43jBeFpvFydepARnTNDisizBy20h2amydTD89YN6NvUDAupIa0b7RtQN1T8i4O779tpe9/n tKYQOKlA NLxheyNiTLD734nlz07NL06QlXcdfHnGmB9CyYWwjjIHt9oXd4qOk+Kp7mugikLph/83hOYVbWD51kTPJUE42BY2kEOd2jlwiXo2QwCsaVhMwkCoab/s1F2pseseao3Wgon56g7ifAvMA/Gpw4Uiyu6pms5LvkmudY2Prr8l238GKrLN1qU7J/26z38xxBMjQNI1Sgc6RvuAiQDzR9rXb6BFfrmjqSZkL9NwPjX5TL6dviF4jQQyTiSQ5I2aXGn2xAtQSORWuO70TUxpyFtYBIG5NgrJ4ScgxcgwiMoWNyy2AfpX/2rD8oJEcodmdubggs713C6fqpxWgjWUj6gahvc/MdxV4nFPuuArI3LZYA90mdhuyvQ5F+GOf4nBkMYFQjh/iYCnafy4nM87vUtMBMNB/snOVd2ql0K2CEiCfis0yG8PD1Nm4YoImLCsp2oHFK3EnygVtSx6XflGppHkwY2sCjnMaUpu8LyqcDxfnjGEoSQrUQ5kmVcZh+Q== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Wed, Apr 12, 2023 at 11:20:35AM -0700, Axel Rasmussen wrote: > > - uffdio_register.range.start = (unsigned long)addr; > > - uffdio_register.range.len = len; > > - uffdio_register.mode = UFFDIO_REGISTER_MODE_MISSING; > > - if (ioctl(uffd, UFFDIO_REGISTER, &uffdio_register) == -1) { > > + if (uffd_register(uffd, addr, len, true, false, false)) { > > For what it's worth, I agree with Mike that the booleans here are hard > to read. It's not clear what "true, false, false" means without going > to look at the header file, whereas "uffd_register(uffd, addr, len, > MINOR)" would be immediately clear. > > One solution I've seen outside the kernel is to comment the bools, like: > > uffd_register(..., /*minor=*/true, /*wp=*/false, /*minor=*/false); > > But, then I feel we lose most of the benefit we wanted from switching > to bools anyway (code length). :) > > I do agree the macro names are unwieldy, and lots of tests already use > booleans so we'd have to convert from bool -> flag. If it were me, I > would resolve that by: > > - Define much shorter aliases for these macros in uffd-common.h > - Consider refactoring callers to not use bools either. > > Then again, I also agree with Mike that it's not a deal breaker, if > you like this way much more than that alternative we can leave it. No strong feeling here either. I kept it just to avoid code churns and rebases. I'll see whether I'll need a repost, if so I can go back to use modes. Thanks, -- Peter Xu