From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Jason@zx2c4.com Received: from krantz.zx2c4.com (localhost [127.0.0.1]) by krantz.zx2c4.com (ZX2C4 Mail Server) with ESMTP id 46aa673b for ; Tue, 14 Nov 2017 09:25:10 +0000 (UTC) Received: from frisell.zx2c4.com (frisell.zx2c4.com [192.95.5.64]) by krantz.zx2c4.com (ZX2C4 Mail Server) with ESMTP id f7687790 for ; Tue, 14 Nov 2017 09:25:10 +0000 (UTC) Received: by frisell.zx2c4.com (ZX2C4 Mail Server) with ESMTP id 82f5a7bf for ; Tue, 14 Nov 2017 09:25:10 +0000 (UTC) Received: by frisell.zx2c4.com (ZX2C4 Mail Server) with ESMTPSA id 6f8765dd (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128:NO) for ; Tue, 14 Nov 2017 09:25:10 +0000 (UTC) Received: by mail-oi0-f50.google.com with SMTP id r128so13224527oig.9 for ; Tue, 14 Nov 2017 01:29:15 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <5A0A3587.25804.3AD10FF8@pageexec.freemail.hu> References: <20171111080920.GA5705@localhost.localdomain> <5A08F7ED.19177.35F8664A@pageexec.freemail.hu> <5A0A3587.25804.3AD10FF8@pageexec.freemail.hu> From: "Jason A. Donenfeld" Date: Tue, 14 Nov 2017 10:29:14 +0100 Message-ID: Subject: Re: imer_setup() is not compatible with PaX's RAP To: pageexec@freemail.hu Content-Type: text/plain; charset="UTF-8" Cc: WireGuard mailing list List-Id: Development discussion of WireGuard List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Tue, Nov 14, 2017 at 1:15 AM, PaX Team wrote: > oh boy, can't disagree with ugly ;) The goal is the highest possible density of filth. > > --- WireGuard-0.0.20171111.orig/src/compat/compat.h 2017-11-11 04:35:06.000000000 +0100 > +++ WireGuard-0.0.20171111/src/compat/compat.h 2017-11-13 23:21:17.967716768 +0100 I fixed things up here: https://git.zx2c4.com/WireGuard/commit/?id=df318d1f0526663a2d92439376379e32ebcfef1a > the KERNEXEC block isn't needed as it was removing KERNEXEC's own define Wait, but earlier you wrote: > speaking of PaX support, you recently added some __ro_after_init wrapper > to wireguard which breaks under KERNEXEC when it's used on ops structs > (my __read_only has different semantics) so i have to revert it here but > it'd be nicer if you didn't define it when KERNEXEC is active. So what exactly should I be fixing? I think in that last patch I forgot to redefine it to be empty. Would this do what you have in mind: #ifdef CONFIG_PAX_KERNEXEC #include #undef __ro_after_init #define __ro_after_init #endif Or is there something else? Jason