{"id":2074,"date":"2025-08-25T08:45:37","date_gmt":"2025-08-25T14:45:37","guid":{"rendered":"https:\/\/embeddedor.com\/blog\/?p=2074"},"modified":"2025-09-06T04:59:19","modified_gmt":"2025-09-06T10:59:19","slug":"speaking-at-open-source-summit-europe-2025","status":"publish","type":"post","link":"https:\/\/embeddedor.com\/blog\/2025\/08\/25\/speaking-at-open-source-summit-europe-2025\/","title":{"rendered":"Speaking at Open Source Summit Europe 2025"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"700\" height=\"525\" src=\"https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/1000003949-700x525.jpg\" alt=\"\" class=\"wp-image-2083\" srcset=\"https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/1000003949-700x525.jpg 700w, https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/1000003949-300x225.jpg 300w, https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/1000003949-768x576.jpg 768w, https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/1000003949-1536x1152.jpg 1536w, https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/1000003949-2048x1536.jpg 2048w, https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/1000003949-800x600.jpg 800w, https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/1000003949-80x60.jpg 80w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>I presented at the Open Source Summit Europe in Amsterdam this afternoon. &#x1f1f3;&#x1f1f1;&#x1f427;&#x1f6e1;&#x2694;&#xfe0f;<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Upstream Kernel Hardening: Progress on enabling -Wflex-array-member-not-at-end<\/p>\n\n\n\n<p>The -Wflex-array-member-not-at-end compiler option was introduced in GCC 14. At the time, it revealed around 60,000 warnings in the upstream Linux kernel. While many of these were duplicates, about 650 are unique and require individual auditing and attention. These issues span different categories and vary in complexity, which adds to the challenge of globally enabling this compiler option in the upstream Linux kernel.<\/p>\n\n\n\n<p>In this presentation, we&#8217;ll share the progress we&#8217;ve made on this work as part of the Kernel Self-Protection Project (KSPP) over the past few months. We&#8217;ll go over the challenges we&#8217;ve encountered, show concrete code examples, and demonstrate how to fix these kinds of problems. We&#8217;ll also discuss why enabling this option is important for the kernel, and how we plan to complete this work in the near future.<\/p>\n\n\n\n<p>Whether you&#8217;re a seasoned kernel developer or someone looking to start contributing upstream, this presentation will introduce useful helpers and strategies you can use to fix existing code or implement new functionality, and in doing so, help us harden the upstream Linux kernel for the benefit of everyone.<\/p>\n<\/blockquote>\n\n\n\n<p>See the slides and recording below. Thanks! \ud83d\ude42<\/p>\n\n\n<a href=\"https:\/\/embeddedor.com\/blog\/wp-content\/uploads\/2025\/08\/osseu2025.pdf\" class=\"pdfemb-viewer\" style=\"\" data-width=\"max\" data-height=\"max\" data-toolbar=\"bottom\" data-toolbar-fixed=\"off\">osseu2025<\/a>\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Upstream Kernel Hardening: Progress on Enabling -Wflex-array-member-not-at-end - Gustavo A. R. Silva\" width=\"700\" height=\"394\" src=\"https:\/\/www.youtube.com\/embed\/nz0GId_zsIk?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>I presented at the Open Source Summit Europe in Amsterdam this afternoon. &#x1f1f3;&#x1f1f1;&#x1f427;&#x1f6e1;&#x2694;&#xfe0f; Upstream Kernel Hardening: Progress on enabling -Wflex-array-member-not-at-end The -Wflex-array-member-not-at-end compiler option was introduced in GCC 14. At the time, it revealed around 60,000 warnings in the upstream Linux kernel. While many of these were duplicates, about 650 are unique and require individual&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[13,9,22,29],"tags":[],"class_list":["post-2074","post","type-post","status-publish","format-standard","hentry","category-kernel-self-protection-project","category-linux-kernel-hardening","category-mentoring","category-presentations"],"_links":{"self":[{"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/posts\/2074","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/comments?post=2074"}],"version-history":[{"count":9,"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/posts\/2074\/revisions"}],"predecessor-version":[{"id":2156,"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/posts\/2074\/revisions\/2156"}],"wp:attachment":[{"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/media?parent=2074"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/categories?post=2074"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/embeddedor.com\/blog\/wp-json\/wp\/v2\/tags?post=2074"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}