From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id E487F1FFCC05 for ; Fri, 16 Aug 2024 16:12:09 -0400 (EDT) (envelope-from sommerfeld@hamachi.org) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 3A007A8CD1B; Fri, 16 Aug 2024 16:12:09 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1723839129; b=v2+y1J+iQ8dB9ZYOsbv++fKXGyWBxnzRvb3LJIDLtRZ2xPg4+h o0wT6X+b3N7jy/ncuyb/B97ibQT6h8IS9lVWT703qJaxOU6SIVfjPBbrFsc6YdZi QfckVgiHpQOB1rhMy5Nosv+8mqaADFwqvb4NsHKBHx6e5G7A3K5xI3FsWWIlEVKu XVIEalPGhSJDrMdgublH2/W2DuH5JeKMpQ7ibUmXIq53gliD2Tvi4WhrL1DuyWmp fHrN2xzraSoTKl2/KlToARAf3TGyx4Tt3TZOLWoqPFjPBqPYTwIezI9rVElICLVV hDGI1194SbZwrA2M3oL03ZYaKQn5UGmaXm8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:date:mime-version:to:subject:from :content-type:content-transfer-encoding; s=arcseal; t= 1723839129; bh=539kvhQbE41A6w08TwTW3W1qzfSv6L2s63IsdDIYKzU=; b=U 4FLGeVv3odwtQ46yMaUDcu+im9HA1cPBwUPMppkqlISto3IoOG7p4DzvFwLBB/Um PVtjzewEGW9EvEFR5lyT55vOoLHSOFEKb5PWgNz5PQ+DgjuLzR64ffTABAHyfzsd tdjM1qYqPGb4vpN7wwBr/7gs6VtEsnr3PW38ObMUS9VNiq0k8n6R1r6OZAMh1Gii WrUtBwPXh5tbB1iHC6QYlIezi+iKTDO64/ZHI2FmEyILD5Nx+U8LmPm+NZM2K8A9 1GPZ82IZAnNQq9ss4PapVHxWUc/oE+gKJ5Wch4XnjjHTi+pv9WWghYRPyER3Tgpu 6jW6mAuaah5Z67A7blZKQ== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=none (No BIMI records found); dkim=pass (2048-bit rsa key sha256) header.d=hamachi.org header.i=@hamachi.org header.b=bIXf6m6b header.a=rsa-sha256 header.s=hamachi-202408 x-bits=2048; dmarc=pass policy.published-domain-policy=reject policy.applied-disposition=none policy.evaluated-disposition=none (p=reject,d=none,d.eval=none) policy.policy-from=p header.from=hamachi.org; iprev=pass smtp.remote-ip=173.11.94.225 (the-governor.hamachi.org); spf=pass smtp.mailfrom=sommerfeld@hamachi.org smtp.helo=the-governor.hamachi.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=the-governor.hamachi.org policy.ptr=the-governor.hamachi.org; x-return-mx=pass header.domain=hamachi.org policy.is_org=yes (MX Records found: the-governor.hamachi.org,smtp-backup-in.hamachi.org); x-return-mx=pass smtp.domain=hamachi.org policy.is_org=yes (MX Records found: the-governor.hamachi.org,smtp-backup-in.hamachi.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 Authentication-Results: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=none (No BIMI records found); dkim=pass (2048-bit rsa key sha256) header.d=hamachi.org header.i=@hamachi.org header.b=bIXf6m6b header.a=rsa-sha256 header.s=hamachi-202408 x-bits=2048; dmarc=pass policy.published-domain-policy=reject policy.applied-disposition=none policy.evaluated-disposition=none (p=reject,d=none,d.eval=none) policy.policy-from=p header.from=hamachi.org; iprev=pass smtp.remote-ip=173.11.94.225 (the-governor.hamachi.org); spf=pass smtp.mailfrom=sommerfeld@hamachi.org smtp.helo=the-governor.hamachi.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=the-governor.hamachi.org policy.ptr=the-governor.hamachi.org; x-return-mx=pass header.domain=hamachi.org policy.is_org=yes (MX Records found: the-governor.hamachi.org,smtp-backup-in.hamachi.org); x-return-mx=pass smtp.domain=hamachi.org policy.is_org=yes (MX Records found: the-governor.hamachi.org,smtp-backup-in.hamachi.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgeeftddruddtkedgudeggecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepkfffgg gfvffuhfgtgfesthejredttddvjeenucfhrhhomhepuehilhhlucfuohhmmhgvrhhfvghl ugcuoehsohhmmhgvrhhfvghlugeshhgrmhgrtghhihdrohhrgheqnecuggftrfgrthhtvg hrnhepuedukeeuieeuheeiieduleekteevleeifeegudehtefhueffhfduledugfeugfeu necuffhomhgrihhnpehilhhluhhmohhsrdhorhhgnecukfhppedujeefrdduuddrleegrd dvvdehpddviedtfeemfedtvdegmegvtdehmegrsgdttdemmeefnecuvehluhhsthgvrhfu ihiivgeptdenucfrrghrrghmpehinhgvthepudejfedruddurdelgedrvddvhedphhgvlh hopehthhgvqdhgohhvvghrnhhorhdrhhgrmhgrtghhihdrohhrghdpmhgrihhlfhhrohhm peeoshhomhhmvghrfhgvlhgusehhrghmrggthhhirdhorhhgqedpnhgspghrtghpthhtoh epuddprhgtphhtthhopeeouggvvhgvlhhophgvrheslhhishhtshdrihhllhhumhhoshdr ohhrgheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (hamachi.org: 173.11.94.225 is authorized to use 'sommerfeld@hamachi.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="sommerfeld@hamachi.org"; helo=the-governor.hamachi.org; client-ip=173.11.94.225 Received: from the-governor.hamachi.org (the-governor.hamachi.org [173.11.94.225]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for ; Fri, 16 Aug 2024 16:12:08 -0400 (EDT) (envelope-from sommerfeld@hamachi.org) Received: from [IPV6:2603:3024:e05:ab00::3] (hydra.hamachi.org [IPv6:2603:3024:e05:ab00::3]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: sommerfeld) by the-governor.hamachi.org (Postfix) with ESMTPSA id 075CE267C; Fri, 16 Aug 2024 13:12:03 -0700 (PDT) Authentication-Results: the-governor.hamachi.org; auth=pass; dkim=pass (2048-bit rsa key sha256) header.d=hamachi.org header.i=@hamachi.org header.b=bIXf6m6b header.a=rsa-sha256 header.s=hamachi-202408; x-aligned-from=pass (Address match); x-local-user=pass; x-spam=pass score=-2.00 required=5.00 X-Spam-hits: BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,NO_RECEIVED,NO_RELAYS, T_SCC_BODY_TEXT_LINE X-Spam-Status: No, score=-2.00 required=5.00 X-Spam-score: -2.00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hamachi.org; s=hamachi-202408; t=1723839124; bh=539kvhQbE41A6w08TwTW3W1qzfSv6L2s63IsdDIYKzU=; h=Date:To:Subject:From; b=bIXf6m6bm/d5j+qfX0JkA0qoLrbESs9jTqJPrQgP5L7zkXsfqIaLvUpPC5i0YZHYn WL/9j5Ndq7uildnXQJ3SY149LQnRx2ETGasrKez8Y4PlB3uPoYfj/QqiTtU/+Ehwp2 JbKkOqpMEQx8LbrOFJOY+iASI4bKCuZF86pDV5EcYqLI68cOg3egLvRACQqbc1M+Fo IN6eS+BkTgg/G/zhb1x3Fa3RK5cyBATur9Y4hVURubLJCn2Q7Ri2KdcZ3V482obzJX QuYvT3LaBEx4oc6py0bHvMboHiE1mBRU1bRn1PrRs39KifUCwEsdDs81MOCVJQuzbL nkKZW7cYfkjBA== Message-ID: <7b7f5298-3668-4e90-a70c-4872c13901c7@hamachi.org> Date: Fri, 16 Aug 2024 13:12:05 -0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: developer@lists.illumos.org Subject: [REVIEW] 16704 protolist corrupts inode numbers larger than 2^31 Content-Language: en-US From: Bill Sommerfeld Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: d5035768-5c0b-11ef-ab29-cca6ca8cdeae Issue: https://www.illumos.org/issues/16704 CR: https://code.illumos.org/c/illumos-gate/+/3634 Diff: https://code.illumos.org/~diff/b9ac120bc9e759ad1b83db83de3f6814432532cd I've been experimenting with doing illumos-gate builds in /tmp, which exposed a bug in the protolist tool used during nightly. The output of protolist includes a column with the inode number of each file in the proto area. The ino_t type is an unsigned long, but but protolist passes the value through a variable of type "int" and then formats it for output as a signed integer. The corresponding code in protocmp which reads protolist output then refuses to accept a negative number in the inode column, and spits out a "bad i-node" error for each one. This has apparently gone unnoticed because most filesystems use the inode number to index a compact table of some sort. But tmpfs does something different - its inode numbers are computed as a function of the kernel virtual address of a per-file datastructure and on large-memory machines tend to be scattered broadly between 0 and 2^32-1, so an appreciable fraction of them turn into negative values when cast to int. Thanks in advance for your review. - Bill