From owner-freebsd-current@freebsd.org  Wed Oct  3 14:51:29 2018
Return-Path: <owner-freebsd-current@freebsd.org>
Delivered-To: freebsd-current@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6909110C5A12
 for <freebsd-current@mailman.ysv.freebsd.org>;
 Wed,  3 Oct 2018 14:51:29 +0000 (UTC)
 (envelope-from rmacklem@uoguelph.ca)
Received: from CAN01-TO1-obe.outbound.protection.outlook.com
 (mail-eopbgr670081.outbound.protection.outlook.com [40.107.67.81])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits))
 (Client CN "mail.protection.outlook.com",
 Issuer "GlobalSign Organization Validation CA - SHA256 - G3" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 0B3D57F080
 for <freebsd-current@FreeBSD.org>; Wed,  3 Oct 2018 14:51:28 +0000 (UTC)
 (envelope-from rmacklem@uoguelph.ca)
Received: from YTOPR0101MB1820.CANPRD01.PROD.OUTLOOK.COM (52.132.44.160) by
 YTOPR0101MB1417.CANPRD01.PROD.OUTLOOK.COM (52.132.47.21) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.1207.21; Wed, 3 Oct 2018 14:51:27 +0000
Received: from YTOPR0101MB1820.CANPRD01.PROD.OUTLOOK.COM
 ([fe80::65af:417a:161f:f4eb]) by YTOPR0101MB1820.CANPRD01.PROD.OUTLOOK.COM
 ([fe80::65af:417a:161f:f4eb%3]) with mapi id 15.20.1207.021; Wed, 3 Oct 2018
 14:51:27 +0000
From: Rick Macklem <rmacklem@uoguelph.ca>
To: "gljennjohn@gmail.com" <gljennjohn@gmail.com>
CC: "freebsd-current@FreeBSD.org" <freebsd-current@FreeBSD.org>, Josh Paetzel
 <josh@tcbug.org>
Subject: Re: which way to update export_args structure?
Thread-Topic: which way to update export_args structure?
Thread-Index: AQHUWq0WJEV5v0B9NEODb8Fv+fAB/qUNGj6AgAB8jz0=
Date: Wed, 3 Oct 2018 14:51:27 +0000
Message-ID: <YTOPR0101MB1820E3D8B3587FF3218E771CDDE90@YTOPR0101MB1820.CANPRD01.PROD.OUTLOOK.COM>
References: <YTOPR0101MB182021549F8CF8277477A4C5DDE90@YTOPR0101MB1820.CANPRD01.PROD.OUTLOOK.COM>,
 <20181003090751.68d23005@ernst.home>
In-Reply-To: <20181003090751.68d23005@ernst.home>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=rmacklem@uoguelph.ca; 
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; YTOPR0101MB1417;
 6:ZQSmoxSjWn4EtdMnsTgAxMBdGfdllQOkgeTO4XJYF/HlKd2KWst7O2MwqoG3DmKh2xyquDvWDt5EajJ1NyisR0tqiu47iDd9a9ALjrwlLjuYDReBcVmdTWbH/X41a/c0fBwsNSM/U4J7wDndcIJdI21EbZmQW9L3XhRfxwAg4U7hAXV6waox7251pH4YCXxiuWM/YnYiWhtrb2cl55v0QzH8evKhRt8qt3HCwgbJc1/wOV6uWBMfL2d2F0tTNmeCy6Nwdy1aTxggv49IbAhfforU4xJOdkdiMTNHDwZULy4UFRN7B79Klr2iCUNfWfjiKy0HRGslBiHI0kN4mJU6kju6CihtvTT+/mtEe2X6iv6Ax8PiDcN3GfQD0g52UlD1fh+MV/1uZDNKQ58ZGlX8XEmfn69b6iDOElHDQXuhVXIyJDeqwoS2hQMyXb+RDI/g2a2ocCiTN5zM3cVUlw2aaw==;
 5:posrVQegM7P9cnb1KIt1w/BqNgyClb6/tq+44/qhcTzYeEC4PxuWiCJujpgZDnWomxy+IxQYILUnnWp9b+hj4YNcg32S65kpXaQ4sUOpzUOZFCbDALKw2VYWHbJf4dVab+AcExg9iNn1wBGMw9LkYKX75rtSjHX5WynGWydfVRA=;
 7:hPQuarmtovMaEk9UIywEUuEBR3xlb4l2dkVxR+npqs+HBrPpqeB9MoLYFQtOKnOhLtEjuucgx5RGkCJyZg2X/khvpIA7D8nY/CpBDM9IvCiNS7ohMrgulS9yvRc8WDQOzraJkDK/zqFZR5J134q9fOWa/+Yobgn1Ek/we0dQlrztSv/mJR9AQTAuGTjgj+lq4ezL71x8juTcM9Ci4x+luOg3eeHBdoCKetUG480216XMUrToHHrvJtMgPYjGomt/
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-correlation-id: ea9611cf-eed9-4544-44e4-08d6293fb2ca
x-microsoft-antispam: BCL:0; PCL:0;
 RULEID:(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(2017052603328)(7153060)(7193020);
 SRVR:YTOPR0101MB1417; 
x-ms-traffictypediagnostic: YTOPR0101MB1417:
x-microsoft-antispam-prvs: <YTOPR0101MB141719EB081ADF1280BA1C41DDE90@YTOPR0101MB1417.CANPRD01.PROD.OUTLOOK.COM>
x-exchange-antispam-report-test: UriScan:;
x-ms-exchange-senderadcheck: 1
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(6040522)(2401047)(8121501046)(5005006)(3002001)(3231355)(944501410)(52105095)(10201501046)(93006095)(93001095)(149066)(150057)(6041310)(20161123560045)(20161123558120)(20161123562045)(20161123564045)(201703131423095)(201702281529075)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(201708071742011)(7699051);
 SRVR:YTOPR0101MB1417; BCL:0; PCL:0; RULEID:; SRVR:YTOPR0101MB1417; 
x-forefront-prvs: 0814A2C7A3
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(39860400002)(346002)(366004)(396003)(376002)(136003)(189003)(199004)(97736004)(68736007)(7696005)(39060400002)(229853002)(6246003)(74482002)(4326008)(105586002)(2351001)(106356001)(55016002)(5640700003)(9686003)(53936002)(1361003)(14454004)(25786009)(446003)(478600001)(76176011)(11346002)(476003)(6506007)(486006)(33656002)(2900100001)(6436002)(99286004)(305945005)(6916009)(46003)(256004)(74316002)(5660300001)(8676002)(2501003)(2906002)(1730700003)(71190400001)(71200400001)(54906003)(8936002)(102836004)(186003)(5250100002)(786003)(316002)(1411001)(86362001)(81156014)(81166006)(43043002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:YTOPR0101MB1417;
 H:YTOPR0101MB1820.CANPRD01.PROD.OUTLOOK.COM; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; MX:1; A:1; 
received-spf: None (protection.outlook.com: uoguelph.ca does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: K49fUI0tywWTQ63BQBkm4hmZoMgYzgx5Ja6O/NeNXUhEaSoqPOPvE5cjt4yGXdCF2nhQXtLhlpFCqHuine7zxk4OuKvQmH27TeW7YfyjupRyJJjN+zhvmP9ZwgSZ0DFPnxdmvw6/4KeoeYaLRdBX/fCmLfK1FRklNHvzZZcAjwTeiJDnB14jZjQ4ZlZbJgkoGYjplUZ4UTSma16GlubTXcKBtZVfPaC/FuOiwYZ6EKXdySEk+fOTZNTPMnSLxbX6wAKE0ixGua7o7bDU9kM5nr2pauf/fYOt7ZuVIJuOOye+ZZxytr4aaFejcwfYB2NxZdOyZVMJ1TIEDc8HWhh2uXeiS5xNl36QgDP8+aKlLc0=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: uoguelph.ca
X-MS-Exchange-CrossTenant-Network-Message-Id: ea9611cf-eed9-4544-44e4-08d6293fb2ca
X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Oct 2018 14:51:27.8152 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: be62a12b-2cad-49a1-a5fa-85f4f3156a7d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: YTOPR0101MB1417
X-BeenThere: freebsd-current@freebsd.org
X-Mailman-Version: 2.1.27
Precedence: list
List-Id: Discussions about the use of FreeBSD-current
 <freebsd-current.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/freebsd-current>, 
 <mailto:freebsd-current-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-current/>
List-Post: <mailto:freebsd-current@freebsd.org>
List-Help: <mailto:freebsd-current-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/freebsd-current>, 
 <mailto:freebsd-current-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 03 Oct 2018 14:51:29 -0000

Gary Jennejohn wrote:
[stuff snipped]
>In B, shouldn't ex_flags become uint32_t if all 32 bits can contain
>flag bits?
You could. For B) my intent was to leave the structure exactly the same as =
the
old versions and only add new fields at the end.  The current compatibility=
 code in head does bcopy() of the structure, which means a change to uint32=
_t would require that to be re-written. (For A) it gets re-written anyhow.)

> And why make ex_flagshighbits a uint64_t?  You could
>make it uint32_t and simply shift the high bits around.
Again, you could. I didn't do that, since the code then does require bit sh=
ifts
every time you test a flag and I thought that would look messy.
I also get worried that compilers will do weird things like truncate the co=
nstant
to 32bits before the shift and drop the flag. (I do test cases for these in=
 a little
program, but can only test i386.)
(The flags are constants defined in mount.h as MNT_xx for 64bits.)

Since I figured out a way that I think allows A) to be MFC'd, I'm leaning t=
owards
A) anyhow.


rick