Received: by 2002:a05:6358:d09b:b0:dc:cd0c:909e with SMTP id jc27csp6586104rwb; Mon, 5 Dec 2022 14:44:30 -0800 (PST) X-Google-Smtp-Source: AA0mqf6HcJsbCEszZUlEVoOTKUSVN+QCj32rT+k46tKlYwA/+XDSfi8eCsDF0x/0fLjfXH2EWJ3U X-Received: by 2002:a05:6402:4286:b0:458:7489:34ea with SMTP id g6-20020a056402428600b00458748934eamr5937397edc.264.1670280269890; Mon, 05 Dec 2022 14:44:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1670280269; cv=none; d=google.com; s=arc-20160816; b=ur7Fk03vdQgwlgdp1Y7gWLRZ9vkOd17EDnxVZ3c0S3HubRaCQDnEWlATgdvoBXEmBj CYYicAb6bwfKazcMsAAwMnXc6FoQNr97egcqIV91zGVIEVM6kiy2U5M7QjwDAATUgWO4 HVQR4pqyFDRBVFQdKKn/cUG+KTXt+USym7E7MxpocaP6ssWd+8qWeJjUUkXW0ovhGvF/ OnDJNuYNG6BzR3qbY0SD+V10fZQ3V1eZ/8eOWhLXYgmyEv9Y46/7wqm/8tyW6c4mX9Ua Sb6lTFXrRJ53aal4xhj4//i3AiDQaEM7WZifCRBf0PVFfi15oexZVjgtFEmCv5nQdFuL wJUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=0D1/AKbbhVq4/+VN9IapHRbozm0cZNHzVM2fCG+wIgw=; b=O4X635q3lyT42zXbvzEvehggGWRUaqf7wWC0z6FEIJ2V+UA8tahw0+vekZyopnNNMC XRr3K+rCweFTJfSAQQxJac7hJDKNoz3/W/C/unhgeztfr9ZEvF7jqaRbLI4vcCuH3s7R kYLSL+IhtLfXaEFRbGxORlZyn9VJGrMS+GcO7RnK+dt+X38no02kXrLbq2m029EOJ2rA Vs4O/Sz9TOMb/defi2tKR2UShEZCZFIQxdsJSRYrmaoA9pOmZln1+EkkGqoAoT2rMYkK h4o6OtKj+4fw5olaF09dXQsJzKNTt50yGC+1Q8baNYCuaVk6PIapRKT8SWlfg1i1sXeZ vGQQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n10-20020a05640205ca00b0046b55b17f1fsi631812edx.567.2022.12.05.14.44.10; Mon, 05 Dec 2022 14:44:29 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231160AbiLEWWH (ORCPT + 79 others); Mon, 5 Dec 2022 17:22:07 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50830 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230036AbiLEWWE (ORCPT ); Mon, 5 Dec 2022 17:22:04 -0500 Received: from www62.your-server.de (www62.your-server.de [213.133.104.62]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B192A14D1B; Mon, 5 Dec 2022 14:22:03 -0800 (PST) Received: from sslproxy01.your-server.de ([78.46.139.224]) by www62.your-server.de with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1p2JqR-000OjL-Ty; Mon, 05 Dec 2022 23:21:51 +0100 Received: from [85.1.206.226] (helo=linux.home) by sslproxy01.your-server.de with esmtpsa (TLSv1.3:TLS_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p2JqR-000VX3-Nb; Mon, 05 Dec 2022 23:21:51 +0100 Subject: Re: [PATCH] bpf: call get_random_u32() for random integers To: "Jason A. Donenfeld" , bpf@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Andrii Nakryiko , Martin KaFai Lau References: <20221205181534.612702-1-Jason@zx2c4.com> From: Daniel Borkmann Message-ID: <730fd355-ad86-a8fa-6583-df23d39e0c23@iogearbox.net> Date: Mon, 5 Dec 2022 23:21:51 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.2 MIME-Version: 1.0 In-Reply-To: <20221205181534.612702-1-Jason@zx2c4.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Authenticated-Sender: daniel@iogearbox.net X-Virus-Scanned: Clear (ClamAV 0.103.7/26741/Mon Dec 5 09:16:09 2022) X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,NICE_REPLY_A, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS autolearn=ham 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 12/5/22 7:15 PM, Jason A. Donenfeld wrote: > Since BPF's bpf_user_rnd_u32() was introduced, there have been three > significant developments in the RNG: 1) get_random_u32() returns the > same types of bytes as /dev/urandom, eliminating the distinction between > "kernel random bytes" and "userspace random bytes", 2) get_random_u32() > operates mostly locklessly over percpu state, 3) get_random_u32() has > become quite fast. Wrt "quite fast", do you have a comparison between the two? Asking as its often used in networking worst case on per packet basis (e.g. via XDP), would be useful to state concrete numbers for the two on a given machine. > So rather than using the old clunky Tausworthe prandom code, just call > get_random_u32(), which should fit BPF uses perfectly.