From owner-svn-src-all@freebsd.org Mon Dec 7 12:11:50 2020 Return-Path: Delivered-To: svn-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 8C2CD4A8EA3 for ; Mon, 7 Dec 2020 12:11:50 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) (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 4CqMcQ3LGJz4kVL for ; Mon, 7 Dec 2020 12:11:50 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: by mail-wr1-f51.google.com with SMTP id a12so5730216wrv.8 for ; Mon, 07 Dec 2020 04:11:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=yiOhNQ1CHVVKSYrSl4f7xCMNqaM8D6A17zM9HSARdB8=; b=swlSVMuSiNnFA840meOGo3uVRhRBG2dCTjDI+7ipWbfqOFn8KL/khuqcjgtzKGEaNS 0Hbaa1UPrOtGoYy5ReSF51s9/7Rs/ruavb5DZEjzOutwNx/ckgW2HOfuZGY0Z2Qz+Ga2 gr0WtQW7WXCjGycCdaLZ7tKmQrYkr4hXwWYxMYSsFhtzFdeJKtthFoNMToJkCQMnJqkO 1cL8RvZC5iFWjc7UirGXXGD4sXxx0jNk9KzGOTa1UxNxHbmtZT7QlLkKqlaxyELgvSq+ 254cHM7NEOSTxAQuA6U/EA+P+C8WD71B7B6vzZG4n1EnG0894v/CHKtxdkshMqnZn/H/ Aftw== X-Gm-Message-State: AOAM530SmxqKYlxbBPJnz1DAW/XoZ0AoUng3axC5QkpeI9l1N9rQ9jyM dGQszJLbYZpdLKfSk38t3m24mg== X-Google-Smtp-Source: ABdhPJzbo7OMFK5bYPutRdLj5tCl3AMbyLXHh5Y976oQtRdbmfRwMj7vEEspnLjdmbuRnODT77PB3g== X-Received: by 2002:a05:6000:112:: with SMTP id o18mr19044763wrx.7.1607343108757; Mon, 07 Dec 2020 04:11:48 -0800 (PST) Received: from [192.168.149.251] (trinity-students-nat.trin.cam.ac.uk. [131.111.193.104]) by smtp.gmail.com with ESMTPSA id u26sm14626787wmm.24.2020.12.07.04.11.47 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 07 Dec 2020 04:11:48 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.4\)) Subject: Re: svn commit: r368410 - head/stand/libsa/zfs From: Jessica Clarke In-Reply-To: <202012071125.0B7BPIt4017680@repo.freebsd.org> Date: Mon, 7 Dec 2020 12:11:46 +0000 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: 7bit Message-Id: References: <202012071125.0B7BPIt4017680@repo.freebsd.org> To: Toomas Soome X-Mailer: Apple Mail (2.3608.120.23.2.4) X-Rspamd-Queue-Id: 4CqMcQ3LGJz4kVL X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Dec 2020 12:11:50 -0000 On 7 Dec 2020, at 11:25, Toomas Soome wrote: > @@ -183,28 +215,29 @@ xdr_u_int(xdr_t *xdr, unsigned *ip) > static bool > xdr_int64(xdr_t *xdr, int64_t *lp) > { > - int hi; > - unsigned lo; > bool rv = false; > > - if (xdr->xdr_idx + sizeof (int64_t) > xdr->xdr_buf + xdr->xdr_buf_size) > + if (xdr->xdr_idx + sizeof(int64_t) > xdr->xdr_buf + xdr->xdr_buf_size) > return (rv); > > switch (xdr->xdr_op) { > case XDR_OP_ENCODE: > /* Encode value *lp, store to buf */ > - hi = *lp >> 32; > - lo = *lp & UINT32_MAX; > - xdr->xdr_idx += xdr->xdr_putint(xdr, hi); > - xdr->xdr_idx += xdr->xdr_putint(xdr, lo); > + if (xdr->xdr_putint == _putint) > + *(int64_t *)xdr->xdr_idx = htobe64(*lp); > + else > + *(int64_t *)xdr->xdr_idx = *lp; I don't know the details here, but inspecting the callback function and comparing it against a known one to decide what to do is generally not good practice. Can this be pushed down into the function in question, up into the caller or additional information passed to be explicit about this behaviour rather than brittle magic behaviour? Jess Jess