Path: csiph.com!news.samoylyk.net!gothmog.csi.it!bofh.it!news.nic.it!robomod From: Miguel Ojeda Newsgroups: linux.debian.kernel Subject: Re: Package for development of out-of-tree kernel modules written in Rust Date: Sun, 13 Apr 2025 18:40:01 +0200 Message-ID: References: X-Mailbox-Line: From debian-kernel-request@lists.debian.org Sun Apr 13 16:36:29 2025 Old-Return-Path: X-Amavis-Spam-Status: No, score=-2.099 tagged_above=-10000 required=5.3 tests=[BAYES_00=-2, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FOURLA=0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=no autolearn_force=no X-Policyd-Weight: using cached result; rate: -5.5 X-Forwarded-Encrypted: i=1; AJvYcCU0wGGvi3NQiVthaDvubsbhZjNdOTEJ+9U0dikqiL6Wko4xBdoalwzg7Q2u+JUotXHnNyQUaVfgZ3hWlA==@lists.debian.org X-Gm-Message-State: AOJu0YwCeDV84JHnbPuCgt2BIFitNVjwP5bgnuYajPKRBTo4VCqjK52V d6R5fvwfsKMVdiaBC16iqCcX9m0Dn5sK7tYItrvIriAI1pNwsScGRsYRsqA2FvbPQroBQ1Nt4JI M5/7GbG/PKqxhIqdTh+9FgmKufIU= X-Gm-Gg: ASbGncsx1fojaGB4zsLDRXciq+epTVS2EsK7GqYQSf+vqM7OqWtxTymIJfLkL4u0Vpn y+R1y6vyABY0GplfvPG0rJwfv8LDmRiGjQD5yhnj4JlupebnNDLQPaEKo9DiDGXjEB/YTNFZcpy 7p714jWawGu4MZSSnmCAflWw== X-Google-SMTP-Source: AGHT+IHVfgEmBivkuv8wHmOSZHWLh+RZ2VAQ3Z9OLFy6f3N1Xk+xCQXUH7C8WCC7NhAyGWO3aBL+8EjmTP872hT5uF0= X-Received: by 2002:a17:902:d4cc:b0:224:e0e:e08b with SMTP id d9443c01a7336-22bea3dedcamr46832985ad.0.1744561088063; Sun, 13 Apr 2025 09:18:08 -0700 (PDT) MIME-Version: 1.0 X-Gm-Features: ATxdqUEuWDnUAOPj3jIh5vVnRioZSAF4TdHnnpG6Wg2WkMpgRQ2CYrJqMYp91SQ Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Mailing-List: archive/latest/148215 List-ID: List-URL: List-Archive: https://lists.debian.org/msgid-search/CANiq72=Y3iwGgAmAwc_Cn+x0h939aX5HN-UNVFVUgmy8dTOrTA@mail.gmail.com Approved: robomod@news.nic.it Lines: 30 Organization: linux.* mail to news gateway Sender: robomod@news.nic.it X-Original-Cc: debian-kernel@lists.debian.org, debian-rust@lists.debian.org X-Original-Date: Sun, 13 Apr 2025 18:17:55 +0200 X-Original-Message-ID: X-Original-References: <20250402211027.yned7ytqevpygnpj@shell.thinkmo.de> <0fb7dc74-1ee5-4b30-8edd-c1db97bbaa85@disroot.org> <20250403142812.kf5ucbblwytoac7h@shell.thinkmo.de> <5058a094-6d9a-4164-aabc-34c3f0db4a75@disroot.org> <20250403183302.iao7vqal7uxh7zn4@shell.thinkmo.de> <6b625d6c-4111-4645-9a24-cc02300d32fb@disroot.org> <7a198601-652a-4c25-a80e-462a7140c5da@disroot.org> <20250413111408.jh7busq5cvvj36o7@shell.thinkmo.de> Xref: csiph.com linux.debian.kernel:86880 On Sun, Apr 13, 2025 at 5:36=E2=80=AFPM NoisyCoil w= rote: > > 1. Native build on arm64. Installed the build on amd64, replaced the > Rust files (rmeta and libmacros) with ones obtained by cross-compiling > the same kernel with the same config on amd64. Pointing KDIR to the > natively-built /usr/src/linux-headers with the replaced Rust files > correctly builds the OOT module, and the module correctly loads on arm64. > > 2. Cross-build on amd64. Installed the build on arm64, replaced the Rust > files with those from the twin native build. Same as above, the module > builds and correctly loads on arm64. I am not sure I am following correctly the tests, but are you referring to rebuilding all the Rust artifacts (and not just the host ones)? I think that would still be not generally supported by the kernel, since you still used a different host/target pair (i.e. different toolchains/binaries) -- if I understand correctly, your out-of-tree module ends up using `.rmeta`s that are different than those used for the main kernel since they come from a different build, even if they are all accepted by the Rust compiler since it built them all. Nice to hear that worked here, though :) Thanks a lot for all the tests you performed! I really appreciate it. Cheers, Miguel