Received: by 2002:a6b:500f:0:0:0:0:0 with SMTP id e15csp667413iob; Wed, 18 May 2022 10:11:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyUBYZ4I0Aao7yD5SYeSP0CjwpJmXXRQiQtZy08Wwcftdba4UdXW1sRaN71zFgp3asqeZXV X-Received: by 2002:a05:6a00:1891:b0:50d:e6e7:acae with SMTP id x17-20020a056a00189100b0050de6e7acaemr399833pfh.26.1652893902398; Wed, 18 May 2022 10:11:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1652893902; cv=none; d=google.com; s=arc-20160816; b=MnEWxxnjpmRPpkawl53B8zdvpjIDn+Fp1+NevZX8TSRtZEs92wXSXwFX2HeiCL9N+L BcI71EIh3bvJ3A8LxMiI1wEZ919yeW64TkwN5iWrWZ+vQ5KciFMhnxzr/9bC6LkeeYzQ AKUX4Fkjr9Zt+Gdssb5vHmcqPrXw2II8ZW0UcXX7k8StRLkMKTwCqb7+x9rWXkmrKCFw MH0+PhLoivkibZPYUt/LDPrZvaKwOTcOrPUNFE8wNKP8MMS1tvzML1CpygvBgVaUOfuc syoglsbB3GbKt1nrCr9kWoIs935AOgdc4GGL6UVmNa3cf4OvDgW1H7alyt6DgmMoQ9t6 O7Lw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=X4cQhgsNH4NMM2gDMe6qhYgR1Uuo0IffIvWkryvfqfA=; b=jgNBAg5hqwkerdk3/Q5xLUyaakSTK0wKjccy7tqZHFI3WFLbG/rq2RJ/qcSkm0qora qhJ92EJclP5DKYGVKAVLt/mUXhvRIZ14VFtlmz4bq2gfRV0MBL9VkoDib3M9uabW0vD6 50sJQGU2dAL07n3mE9L+aHWgUmCg7Ftjple9Rz0FktfDVmmhWhqrjzlyk/UCwic03LJM Qq6caUhbF0SbJdrI6XsyJHxDMYIfWI5R9STmALPcgvUqnmH1t4u8j9lNQ/aYxYZ86R0u aUPFjyG7KUXQP/9QEPeU4X3ndkHyqA889Hji7k+rgpfZCiu4aT3Co55UEXDQZ6eJvImP b5+A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=gxYr0KWC; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id c189-20020a6335c6000000b003f5f0a397e6si3463556pga.814.2022.05.18.10.11.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 May 2022 10:11:42 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=gxYr0KWC; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 518121F90D1; Wed, 18 May 2022 10:10:10 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240775AbiERRKB (ORCPT + 99 others); Wed, 18 May 2022 13:10:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46240 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240748AbiERRKA (ORCPT ); Wed, 18 May 2022 13:10:00 -0400 Received: from casper.infradead.org (casper.infradead.org [IPv6:2001:8b0:10b:1236::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DB6D11BF19A; Wed, 18 May 2022 10:09:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=X4cQhgsNH4NMM2gDMe6qhYgR1Uuo0IffIvWkryvfqfA=; b=gxYr0KWCY0yOaJHClLCtZS+DOS HcbT78QpS1dxcVsUI0zMSTSYWi3JDk6/qHIJhef/D+3ZhBl/jNprF8Y4KocA1xkzvW1cD/pqALThT odMSJEQm0EHRRzhuYx4zpM4hTEfgqO3qAn6GCU4xjPDv/GHxVUA9B3NAo7aX8373g7jX9Ov7t21u6 kR6nzQKA8YK8Ur7qacr6v2c940Q6eZb2iFRXDkUWA9Xhk+KFRw5ki75RTrZi9f7DGfRkU9IFeGnzC nWWcFsLwIVSK0jFiaMKy/H+NUjy0mYORO2aI3b+brUWMbdOF/s6htUbfS+1s+4g04bPZpXxhFAnIO cI8gPicw==; Received: from j217100.upc-j.chello.nl ([24.132.217.100] helo=worktop.programming.kicks-ass.net) by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1nrNB2-00ByS7-QC; Wed, 18 May 2022 17:09:36 +0000 Received: by worktop.programming.kicks-ass.net (Postfix, from userid 1000) id CC833980E1C; Wed, 18 May 2022 19:09:34 +0200 (CEST) Date: Wed, 18 May 2022 19:09:34 +0200 From: Peter Zijlstra To: Song Liu Cc: linux-kernel@vger.kernel.org, bpf@vger.kernel.org, ast@kernel.org, daniel@iogearbox.net, mcgrof@kernel.org, torvalds@linux-foundation.org, rick.p.edgecombe@intel.com, kernel-team@fb.com Subject: Re: [PATCH bpf-next 2/5] x86/alternative: introduce text_poke_set Message-ID: <20220518170934.GG10117@worktop.programming.kicks-ass.net> References: <20220516054051.114490-1-song@kernel.org> <20220516054051.114490-3-song@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220516054051.114490-3-song@kernel.org> X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, May 15, 2022 at 10:40:48PM -0700, Song Liu wrote: > Introduce a memset like API for text_poke. This will be used to fill the > unused RX memory with illegal instructions. FWIW, you're going to use it to set INT3 (0xCC), that's not an illegal instruction. INTO (0xCE) would be an illegal instruction (in 64bit mode). > + return addr; > +} > + > +/** > + * text_poke_set - memset into (an unused part of) RX memory > + * @addr: address to modify > + * @c: the byte to fill the area with > + * @len: length to copy, could be more than 2x PAGE_SIZE > + * > + * Not safe against concurrent execution; useful for JITs to dump > + * new code blocks into unused regions of RX memory. Can be used in > + * conjunction with synchronize_rcu_tasks() to wait for existing > + * execution to quiesce after having made sure no existing functions > + * pointers are live. That comment suffers from copy-pasta and needs an update because it clearly isn't correct. > + */ Other than that, seems fine. Acked-by: Peter Zijlstra (Intel)