Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp2176832rdb; Thu, 7 Dec 2023 23:43:55 -0800 (PST) X-Google-Smtp-Source: AGHT+IGVWkbdhRXJcYLgv4BhaokMBYzdcvlBIBgwCnH8lEYGt+4LydyfKxL9JZzItbvEO5Fq3DF9 X-Received: by 2002:a17:902:b081:b0:1d0:6785:f1be with SMTP id p1-20020a170902b08100b001d06785f1bemr2949332plr.36.1702021435360; Thu, 07 Dec 2023 23:43:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702021435; cv=none; d=google.com; s=arc-20160816; b=0hsyIR+yFH5HW22SwY8tVHf+5IJ6rAP+5D6zlMzy7dSrJhDtduEy2e0dcMBc0YL1fK aalpPDoEC5zvRXcTT3uLhLUsjCUrsGgHnkMmPzFc5kXbmrX2TvotaMJLUz9fUvEKjUfF 5WsjviKy91Uv2JD49p3un/AgQO0/W6yDmOpVz2yWAACh5EBO2AptzQsC0OEMSuWDl08i sr46UcuBFjp1pwlsAq9waepdgjZ2SQgxr2UQ/B7+jcmNifizZP3L2YBCbck72MBmgyVo Km7ZW3GhQR23TOTCm80b2QvfBlgacfbxILC0mZZHfQBIYlzudJzWtXT1IyUuaghnLfZ1 D+ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=+4q2vuoSSJgvH7vZRaxIDen/jyKU6XB1LXeL+/4gRcM=; fh=6wBG0zffrG67hu7SekXXuIsofnkmIt/kVC0pxVbw5v4=; b=Mkhx2Y8DoP7uy/CZAvSt/Xqvb87TSYxU0MZWvfbYbAnycSW/0T38PmG0lghlRcKkDb mqwt9XbB94xqEsOZsKBk2MI9l61x3AW25FZ+jcJo5rxXc4V2SKD8mX42mta4/O/zDmbK Q19SWENRkoEv5KldQay4ZfD5u8dOy3kF3+cXvFkl5ioiKFACMWMcpfXIqLFQYMmtGdmd H+wGWGPm1OXp0mKOcmybG/gm8MXz35rbW1vBrFV4OSp866o4VnGeqg6fJsefzzA/bdfw ADqBvHoSyItw3yWtHhJkZywAcCypHVoV7oz8PHG018yl+XzG3KvjD+0jMDfbjX4OHqef cTlw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=rIrWSWa6; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id i11-20020a170902c94b00b001d0c41b1d1fsi1217355pla.397.2023.12.07.23.43.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Dec 2023 23:43:55 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=rIrWSWa6; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 2C3B1806B119; Thu, 7 Dec 2023 23:43:53 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1573283AbjLHHnk (ORCPT + 99 others); Fri, 8 Dec 2023 02:43:40 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42174 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1573335AbjLHHnh (ORCPT ); Fri, 8 Dec 2023 02:43:37 -0500 Received: from mail-ua1-x929.google.com (mail-ua1-x929.google.com [IPv6:2607:f8b0:4864:20::929]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B39211734 for ; Thu, 7 Dec 2023 23:43:37 -0800 (PST) Received: by mail-ua1-x929.google.com with SMTP id a1e0cc1a2514c-7c45280b1a9so427927241.1 for ; Thu, 07 Dec 2023 23:43:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1702021416; x=1702626216; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=+4q2vuoSSJgvH7vZRaxIDen/jyKU6XB1LXeL+/4gRcM=; b=rIrWSWa6FMeZTRA6fOsq7PUz5nO/S7mlA2+xHwzMbfB2voaQlNJrCeXFB0LFJLHnwW lcgHihAnps8KkMjw0WtR8PrJrujwWJStNJyWMLVwE1TF3NnLDTEzx/0d3KI2vB9RpKTP /ZQz9Yp627xKNzP365RyfKbmo+H7Sccqxwp5MZ4SCW2RV8UTFqnQW4pkiKsRa2adIK8k 1iYz5a3AmrGvIDcJXgdRYBCpj2el7zudWoQdyvjdk+DItHaCSDB+RNo/NyFxDUxImE/A jI5kkZhkRSqrEDkRF8g1VRuWv86sgrA0+eEcuQAUGyiqDibJShj6Ram4BWguRtBLrcmx /rRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702021416; x=1702626216; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+4q2vuoSSJgvH7vZRaxIDen/jyKU6XB1LXeL+/4gRcM=; b=aYWtk3l5hv+0bSiFMfhADivW7Se0nQdA3sS8A9N5PXYNnMQ8HvMrhxzLB3Uqzb62GG Njk0T8x2fNhdVGrtvVbdfnTYrEBrCnpsNwryeNxUKzaEqv+xnbrhxlRbiesuDkjnXlt0 2msYjw3/sb6Xu82KPftze4ul4RoEnaUORFh1UamlPyQOrzVdvcTRwR4ehhrEIbGVp7Zr 2dXaasxnnRRD9l3Pj2qMmEwKL+M3YvSH1mgRrrLcmMwH586Zxv3ZlaorcSxDGC90LNIC CTNOsBY4tyaUJn8bTGV1+QQR4yWqW+itZsJU2JV2bdkAanjShSmd6wX4waY/vOZAMiqC wGrA== X-Gm-Message-State: AOJu0YzcmKew/OrJQgYsRh1aE4M8wRFW5lTEF/ObxtvhUxdcdrpDlOvD G+rVfjZ5DlNcaJ5ecYRb2WDxjOxSVmyxwadQ+8WYaQ== X-Received: by 2002:a05:6102:548d:b0:464:8660:18b2 with SMTP id bk13-20020a056102548d00b00464866018b2mr4377343vsb.22.1702021416509; Thu, 07 Dec 2023 23:43:36 -0800 (PST) MIME-Version: 1.0 References: <20231206-alice-file-v2-0-af617c0d9d94@google.com> <20231206-alice-file-v2-4-af617c0d9d94@google.com> In-Reply-To: From: Alice Ryhl Date: Fri, 8 Dec 2023 08:43:25 +0100 Message-ID: Subject: Re: [PATCH v2 4/7] rust: file: add `FileDescriptorReservation` To: Benno Lossin Cc: Miguel Ojeda , Alex Gaynor , Wedson Almeida Filho , Boqun Feng , Gary Guo , =?UTF-8?Q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Peter Zijlstra , Alexander Viro , Christian Brauner , Greg Kroah-Hartman , =?UTF-8?B?QXJ2ZSBIasO4bm5ldsOlZw==?= , Todd Kjos , Martijn Coenen , Joel Fernandes , Carlos Llamas , Suren Baghdasaryan , Dan Williams , Kees Cook , Matthew Wilcox , Thomas Gleixner , Daniel Xu , linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org, linux-fsdevel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-8.4 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE, USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Thu, 07 Dec 2023 23:43:53 -0800 (PST) On Fri, Dec 8, 2023 at 8:37=E2=80=AFAM Benno Lossin wrote: > > +/// Zero-sized type to mark types not [`Send`]. > > +/// > > +/// Add this type as a field to your struct if your type should not be= sent to a different task. > > +/// Since [`Send`] is an auto trait, adding a single field that is `!S= end` will ensure that the > > +/// whole type is `!Send`. > > +/// > > +/// If a type is `!Send` it is impossible to give control over an inst= ance of the type to another > > +/// task. This is useful when a type stores task-local information for= example file descriptors. > > +pub type NotThreadSafe =3D PhantomData<*mut ()>; > > This should be in its own commit. Will do. > Then you can also change the usages of `PhantomData<*mut ()>` in > `Guard` and `TaskRef`. Will do. > It would be nice to use `NotThreadSafe` as the value instead of > `PhantomData`, since it is a bit confusing... That doesn't compile, unfortunately. > I think we might be able to also have a constant with the same name > that is just `pub const NotThreadSafe: NotThreadSafe =3D PhantomData;`. I can try to get this to work, but I worry that they will shadow each other= . Alice