From owner-dev-commits-src-all@freebsd.org Fri Jan 29 03:11:33 2021 Return-Path: Delivered-To: dev-commits-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 918934FA1F5; Fri, 29 Jan 2021 03:11:33 +0000 (UTC) (envelope-from koobs.freebsd@gmail.com) Received: from mail-pf1-x42f.google.com (mail-pf1-x42f.google.com [IPv6:2607:f8b0:4864:20::42f]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4DRj6X69Fwz3kqw; Fri, 29 Jan 2021 03:11:32 +0000 (UTC) (envelope-from koobs.freebsd@gmail.com) Received: by mail-pf1-x42f.google.com with SMTP id w14so5346193pfi.2; Thu, 28 Jan 2021 19:11:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:message-id:date:mime-version:user-agent:reply-to:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=RbfLezO11+fVy3VqF9SFeFsfyjAMFafOciZ+/DGiHP4=; b=J5wHfz4DN59/UTyz33lV2/wh/jREmXwzzi8j9H8K1/1qTq/x6MTcpavq2Rq5Zbm1kq vUm6uC/VwngYqkZvmBju8W49WXNCAgsOr2rkwH2QpmVY49nVfHHZBx6wC4NmmP/lxV2K LyoaCHit2vuVApRNuzyg7OimB4PovQg5J3g3gR3WRvsIvgV+1JkTj8UxP08gHNbgttSe XOgXMMD23KUhNKDFmPcId3UGLgqpCIpLJ2fdP7jKO4w3QmSF8mhYsRtrFpzOsWrZzhIi O+Iakr1opWtsux0pRtvNbJTfUDd2P6fvszq0Ewm94/ZAeGHPJ4ayPfmBfpq2u5MKwmB3 iwYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :reply-to:subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=RbfLezO11+fVy3VqF9SFeFsfyjAMFafOciZ+/DGiHP4=; b=e8i3MhuviiWrQ6NcTXC3QP4/AjmIg+EV4bw8qTMxsvc5WImXz7ii1h1o7JBaHpR5oz dvYXfsUBV+BSPtaJ5AhrUqiS+qrLgE3lDHhHihES4Hu0HdffyrvmP9dLY4R3780oR4DJ eW0nbGP0UaP7apWZ9XZCzTzfkQ+Prcc6GLgtpTl1GhpnlYeg2Qh8OfMpAiR+j3jHjArj HdYN0zXdv1n20wIBgR9naeMX9Eq5ow5YTHOsn9pZOeP6jTKZNVk9sc52Jn1b7SL2g6gO X6hyB9BP2wFXxSMiC9+daaLdvWQGFsg259E6eF1AthU8o9AqPNjlVKnHXc3m/Fow0XZ6 32bA== X-Gm-Message-State: AOAM533x97UMdof5rI5Pe6ucdC2kB5oTfU82P+sbIs85YBtc+AybS46m 7JsAEPip5hxOiGyLknwba/FeOzrpVrk= X-Google-Smtp-Source: ABdhPJzg8J7R07Y+nzOivROgoNuPna2uIitv7YbNLX1c7pb+B1lGREGf8xyOry4b/Wb75CwQ6gVF8Q== X-Received: by 2002:a63:1f1e:: with SMTP id f30mr2539146pgf.141.1611889890841; Thu, 28 Jan 2021 19:11:30 -0800 (PST) Received: from [192.168.1.109] (180-150-68-130.b49644.syd.nbn.aussiebb.net. [180.150.68.130]) by smtp.gmail.com with UTF8SMTPSA id b14sm5525982pfi.74.2021.01.28.19.11.28 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 28 Jan 2021 19:11:30 -0800 (PST) Sender: Kubilay Kocak Message-ID: <6be9d1bd-5180-e4f0-5f52-c50fdefbc5ec@FreeBSD.org> Date: Fri, 29 Jan 2021 14:11:05 +1100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:87.0) Gecko/20100101 Thunderbird/87.0a1 Reply-To: koobs@FreeBSD.org Subject: Re: git: 02ec31bdf60f - main - cache: add back target entry on rename Content-Language: en-US To: Mateusz Guzik , Oliver Pinter Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" References: <202101231810.10NIAKXd018767@gitrepo.freebsd.org> From: Kubilay Kocak In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 4DRj6X69Fwz3kqw X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=J5wHfz4D; dmarc=none; spf=pass (mx1.freebsd.org: domain of koobsfreebsd@gmail.com designates 2607:f8b0:4864:20::42f as permitted sender) smtp.mailfrom=koobsfreebsd@gmail.com X-Spamd-Result: default: False [0.80 / 15.00]; HAS_REPLYTO(0.00)[koobs@FreeBSD.org]; TO_DN_EQ_ADDR_SOME(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; REPLYTO_ADDR_EQ_FROM(0.00)[]; RCPT_COUNT_FIVE(0.00)[5]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[gmail.com:+]; FREEMAIL_TO(0.00)[gmail.com]; FORGED_SENDER(0.30)[koobs@FreeBSD.org,koobsfreebsd@gmail.com]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MID_RHS_MATCH_FROM(0.00)[]; TAGGED_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; ARC_NA(0.00)[]; RBL_DBL_DONT_QUERY_IPS(0.00)[2607:f8b0:4864:20::42f:from]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_NEQ_ENVFROM(0.00)[koobs@FreeBSD.org,koobsfreebsd@gmail.com]; FROM_HAS_DN(0.00)[]; NEURAL_SPAM_SHORT(1.00)[1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; TAGGED_RCPT(0.00)[]; DMARC_NA(0.00)[FreeBSD.org]; MIME_GOOD(-0.10)[text/plain]; NEURAL_SPAM_MEDIUM(1.00)[1.000]; SPAMHAUS_ZRD(0.00)[2607:f8b0:4864:20::42f:from:127.0.2.255]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::42f:from]; MAILMAN_DEST(0.00)[dev-commits-src-main,dev-commits-src-all] X-BeenThere: dev-commits-src-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the src repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 29 Jan 2021 03:11:33 -0000 On 24/01/2021 7:22 am, Mateusz Guzik wrote: > The sysctl at hand is temporary in case someone reports trouble -- > then they can flip it. I don't expect it to survive more than a month. > > On 1/23/21, Oliver Pinter wrote: >> On Saturday, January 23, 2021, Mateusz Guzik wrote: >> >>> The branch main has been updated by mjg: >>> >>> URL: https://cgit.FreeBSD.org/src/commit/?id= >>> 02ec31bdf60fa3a8530544cb3c8c4ec1df6cde0d >>> >>> commit 02ec31bdf60fa3a8530544cb3c8c4ec1df6cde0d >>> Author: Mateusz Guzik >>> AuthorDate: 2021-01-23 17:21:42 +0000 >>> Commit: Mateusz Guzik >>> CommitDate: 2021-01-23 18:10:16 +0000 >>> >>> cache: add back target entry on rename >>> --- >>> sys/kern/vfs_cache.c | 19 +++++++++++++++++++ >>> 1 file changed, 19 insertions(+) >>> >>> diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c >>> index 770c8ebf061b..03bafc75acaa 100644 >>> --- a/sys/kern/vfs_cache.c >>> +++ b/sys/kern/vfs_cache.c >>> @@ -367,6 +367,10 @@ static bool __read_frequently cache_fast_revlookup = >>> true; >>> SYSCTL_BOOL(_vfs, OID_AUTO, cache_fast_revlookup, CTLFLAG_RW, >>> &cache_fast_revlookup, 0, ""); >>> >>> +static bool __read_mostly cache_rename_add = true; >>> +SYSCTL_BOOL(_vfs, OID_AUTO, cache_rename_add, CTLFLAG_RW, >>> + &cache_rename_add, 0, ""); >> >> >> It would be really if the description were filled with proper info. >> >> + >>> static u_int __exclusive_cache_line neg_cycle; >>> >>> #define ncneghash 3 >>> @@ -2731,6 +2735,21 @@ cache_vop_rename(struct vnode *fdvp, struct vnode >>> *fvp, struct vnode *tdvp, >>> } else { >>> cache_remove_cnp(tdvp, tcnp); >>> } >>> + >>> + /* >>> + * TODO >>> + * >>> + * Historically renaming was always purging all revelang entries, >>> + * but that's quite wasteful. In particular turns out that in >>> many >>> cases >>> + * the target file is immediately accessed after rename, inducing >>> a cache >>> + * miss. >>> + * >>> + * Recode this to reduce relocking and reuse the existing entry >>> (if any) >>> + * instead of just removing it above and allocating a new one >>> here. >>> + */ >>> + if (cache_rename_add) { >>> + cache_enter(tdvp, fvp, tcnp); >>> + } >>> } >>> >>> void >>> _______________________________________________ >>> dev-commits-src-all@freebsd.org mailing list >>> https://lists.freebsd.org/mailman/listinfo/dev-commits-src-all >>> To unsubscribe, send any mail to "dev-commits-src-all- >>> unsubscribe@freebsd.org" >>> >> > > Could we: description: "QA/Testing (temporary) tunable: " ?