From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [IPv6:2607:f8b0:4864:20::1132]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 00AAC3B29D for ; Tue, 26 Sep 2023 06:12:47 -0400 (EDT) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-5a1d0fee86aso30560627b3.2 for ; Tue, 26 Sep 2023 03:12:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695723166; x=1696327966; darn=lists.bufferbloat.net; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ZAZGthwKxQPWmAjjn5FZ7r6pf6/s1KpPopq0y+ei1MA=; b=WZm5v5qS4/96xS/ihWA7wSDkxh2rEdRaFdB92HRgI9ZwdsiNr2QSJ3EeJXFbHHMybI Omt++9BCX95SPQLRTUt+brN82/GUz2AN/ctvhQy3diaQeejPPpkKcIv98GapD4zzF1ep IcGxz9n9kLb0FZku/NaPMAalUGTlyttO2Abu/qsNTOQ1ej1e8idFxg4rBWwrIxSYbF7/ 5Ap+Ibxeql6otYC5/QTPdurmySBry+Z8VRMgN0MyBKcC36N8CPpUqPXX20yaI6uKpeNN 7P44+cl39WRVxksdsxqyZU6sWgoS/E5SWRM5nO7lgpUzdbF/DTSzZWPOEc3lgl31afOo 02jg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695723166; x=1696327966; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ZAZGthwKxQPWmAjjn5FZ7r6pf6/s1KpPopq0y+ei1MA=; b=o7eAG7pByLtD3LKrg37AeE2ZMgrQPxmJ48IbzJKpoNuIyI8Tq6GimgjyiEJb4U6+sH r5SxTm5xeZ/LtwH1J9Sz1LXgwcRDY1zhtBBzGJwoq4L4KD393FfvH631q6BfZp+fb5mA ec8Hp8OvuvJ0XAdpdEQb8Vc+2h/EexmLLHWyxdf5uLQ6KxTgzuv2GWbV+YiHd8oO46f9 OzRSljU2wzllDK6t1hnKkk6ZsxEsys7PL4FKLc33G7hCpnwJDlsLImcQPqa5f+cMhVzB 2RhrCYfXfXt5UKjGB4FWsjjIx1hhSGuGO60sD/qXXivxTyMXgnccSlDEcd03/IfIs7Ro Cqkw== X-Gm-Message-State: AOJu0Yxg5UneCOO4X79e0DaNP5esOpNhhqu1IB6nemyeAdp2ED99khlo n/QgJa2GGmmXiIQGCk0v5//glS9qUiMOY9VgOlil3w7M X-Google-Smtp-Source: AGHT+IGx51AmkopvZlkf6LhapY+anOfXT+ADE8tzgqMwJ6okAZ1cEdoRkol+ZQw50CxlsK6z95sNoSq3I8MQ/V0An5U= X-Received: by 2002:a81:5dc2:0:b0:57a:5c79:482a with SMTP id r185-20020a815dc2000000b0057a5c79482amr7890669ywb.50.1695723166028; Tue, 26 Sep 2023 03:12:46 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Dave Taht Date: Tue, 26 Sep 2023 03:12:32 -0700 Message-ID: To: libreqos Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: [LibreQoS] Fwd: [NetDev-People] 0x17: Rust for Linux Networking Tutorial X-BeenThere: libreqos@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Many ISPs need the kinds of quality shaping cake can do List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Sep 2023 10:12:48 -0000 ---------- Forwarded message --------- From: Jamal Hadi Salim via people Date: Tue, Sep 26, 2023 at 3:06=E2=80=AFAM Subject: [NetDev-People] 0x17: Rust for Linux Networking Tutorial To: people Cc: , Kimberley Jeffries , Ricardo Coelho , Lael Santos , Wedson Almeida Filho , Miguel Ojeda , Jamal Hadi Salim So you've heard of Rust and you have heard, while walking around the grape vine, about Rust for Linux. You are a hardcore linux kernel hacker and you love your C. You scratch your head as you wonder why in the world would anyone need another language! But at the same time you cant stand all those annoying pesty syzkaller bug reports or CVEs on your code - they take away all the fun. Rust has a key property that makes it very interesting as the second language in the kernel: it guarantees no undefined behavior takes place (as long as unsafe code is sound). This includes no use-after-free mistakes, no double frees, no data races, etc. It also provides other important benefits, such as improved error handling, stricter typing, sum types, pattern matching, privacy, closures, generics, etc. In this tutorial two of the gurus in Rust for Linux, Wedson Almeida Filho and Miguel Ojeda will guide us through a practical example which will use an example of kernel networking code. The sample code is first written in C and then migrated to Rust. Wedson and Miguel will then do a step-by-step walk of the Rust incarnation of the code, explaining how the language works at a high-level and well as giving practical tips to get started with Rust for networking in the kernel. Our esteemed guides will show us how Rust prevents some of the mistakes that could happen in the C version, some of which could become vulnerabilities exploited by bad operators or that pesky syzkaller. There is no prerequisite Rust knowledge needed for this tutorial. cheers, jamal _______________________________________________ people mailing list -- people@netdevconf.info To unsubscribe send an email to people-leave@netdevconf.info --=20 Oct 30: https://netdevconf.info/0x17/news/the-maestro-and-the-music-bof.htm= l Dave T=C3=A4ht CSO, LibreQos