SlideShare uma empresa Scribd logo
1 de 120
Baixar para ler offline
Hunting and fixing bugs all over
the Linux kernel
Gustavo A. R. Silva
gustavo@embeddedor.com
@embeddedgus
The Linux Foundation's Core Infrastructure
Initiative
Kernel Recipes
September 26, 2019
Paris, France
Who am I?
Background in Embedded Systems.●
RTOS●
Embedded Linux.●
Volunteer at @kidsoncomputers●
Board of directors at @kidsoncomputers●
Who am I?
Background in Embedded Systems.●
RTOS●
Embedded Linux.●
Volunteer at @kidsoncomputers●
Board of directors at @kidsoncomputers●
●
Don’t speak Portuguese. :)
Agenda
● Coverity.
●
Some bugs.
●
-Wimplicit-fallthrough.
●
Results.
● Bonus.
●
Beyond bug fixing (KSPP).
●
●
Ancient bugs.●
Super powers and responsibility.
Coverity
● Static code analyzer.
Tons of false positives (This applies to all static
code analyzers).
●
Coverity
● Static code analyzer.
●
Tons of false positives (This applies to all static
code analyzers).
Helpful:
●
$ git log --shortstat --author="Gustavo A. R. Silva”
grep Coverity | wc -l
582
Coverity high impact issues
● Memory – illegal accesses (out-of-bounds
access).
●
Resource leaks (memory leaks).
●
Uninitialized variables.
Coverity medium impact issues
● NULL pointer dereferences (before/after null
check, explicit null dereference).
●
Integer handling issues (bad bit shift operation).
●
API usage errors (arguments in wrong order).
● Control flow issues.
Coverity work
Look at every issue●
Access to Coverity scans on mainline.
Look at every issue.
Weekly scans every -rc.
Now access to daily Coverity scans.
●
●
●
Fix bugs in linux-next before they hit mainline.●
Some Bugs
● commit 2b6199a1d1b70fccd62aed961ba4c2b979ae499c
Incorrect type of variable
● commit fe78627d430435d22316fe39f2012ece31bf23c2
Fix type of variable
● commit fe78627d430435d22316fe39f2012ece31bf23c2
Fix type of variable
● commit fe78627d430435d22316fe39f2012ece31bf23c2
Fix type of variable
●
uint8_t → [0-255]
● commit fe78627d430435d22316fe39f2012ece31bf23c2
Fix type of variable
●
uint8_t → [0-255]
●
while (counter < 1000) - is always true.
● commit fe78627d430435d22316fe39f2012ece31bf23c2
Fix type of variable
●
uint8_t → [0-255]
●
while (counter < 1000) - is always true.
●
uint16_t → [0-65,535]
● commit fe78627d430435d22316fe39f2012ece31bf23c2
Fix type of variable
●
uint8_t → [0-255]
●
while (counter < 1000) - is always true.
●
uint16_t → [0-65,535]
●
while (counter < 1000) - can be true or false.
● commit 52e17089d1850774d2ef583cdef2b060b84fca8c
Inconsistent IS_ERR and PTR_ERR
● commit 52e17089d1850774d2ef583cdef2b060b84fca8c
Inconsistent IS_ERR and PTR_ERR
●
pinctrl != priv->vdev
● commit 52e17089d1850774d2ef583cdef2b060b84fca8c
Inconsistent IS_ERR and PTR_ERR
●
pinctrl != priv->vdev
●
PTR_ERR(priv→vdev) → PTR_ERR(pinctrl)
● commit 2b7db29b79190f7ad5c32f63594ba08b9b9171ea
Fix inconsistent IS_ERR and PTR_ERR
● commit 2b7db29b79190f7ad5c32f63594ba08b9b9171ea
Fix inconsistent IS_ERR and PTR_ERR
●
Easily caught using Coccinelle.
● commit 6f3472a993e7cb63cde5d818dcabc8e42fc03744
potential integer overflows
● commit 594619497f3d6d4b8d8440e6d380e8da9dcc9eeb
use-after-free
Incorrect bitwise operator
●
#define MVPP22_CLS_C2_ATTR2_RSS_EN BIT(30)
●
commit e146471f588e4b8dcd7994036c1b47cc52325f00
●
Introduced on Jul 14, 2019.
●
Fixed on Jul 18, 2019.
●
Never hit mainline.
●
The use of the bitwise OR operator '|' always leads to true.
● commit c5b974bee9d2ceae4c441ae5a01e498c2674e100
Fix “missing return” in switch
resource leaks
●
commit 3b4acbb92dbda4829e021e5c6d5410658849fa1c
Ancient Bugs
Incorrect bitwise operator
●
commit 489338a717a0dfbbd5a3fabccf172b78f0ac9015
●
The use of the bitwise OR operator '|' always leads to true.
Incorrect bitwise operator
●
commit 489338a717a0dfbbd5a3fabccf172b78f0ac9015
●
7-year-old bug (Tue Sep 18 11:56:28 2012).
●
The use of the bitwise OR operator '|' always leads to true.
(!x & y) strikes again
●
commit 07c69f1148da7de3978686d3af9263325d9d60bd
(!x & y) strikes again
●
commit 07c69f1148da7de3978686d3af9263325d9d60bd
●
8-year-old bug (Mon Jun 6 19:42:44 2011).
(!x & y) strikes again
Beyond bug fixing
Kernel Self Protection Project
Kernel Self Protection Project
● Variable Length Arrays (VLA) removal.
Kernel Self Protection Project
● Variable Length Arrays (VLA) removal.
● Defense-in-depth with struct_size() helper.
Kernel Self Protection Project
● Variable Length Arrays (VLA) removal.
● Defense-in-depth with struct_size() helper.
● Switch case fall-through
Variable Length Arrays
Exhaust the stack: write to things following it.●
Jump over guard pages.●
Easy to find with compiler flag: -Wvla●
Variable Length Arrays
Exhaust the stack: write to things following it.●
Jump over guard pages.●
Easy to find with compiler flag: -Wvla●
Eradicated from the kernel in Linux v4.20. :)●
Defense-in-depth & struct_size()
Defense-in-depth & struct_size()
Defense-in-depth & struct_size()
●
Commit 72bb169e024a20203e6044a81d5e41ae6ee0645b
●
Bluetooth: mgmt: Use struct_size() helper
Defense-in-depth & struct_size()
●
Bluetooth: mgmt: Use struct_size() helper
●
Commit 72bb169e024a20203e6044a81d5e41ae6ee0645b
Defense-in-depth & struct_size()
●
One day I found something interesting...
Defense-in-depth & struct_size()
●
One day I found something interesting...
●
Commit cffaaf0c816238c45cd2d06913476c83eb50f682
Defense-in-depth & struct_size()
●
Commit 57384592c43375d2c9a14d82aebbdc95fdda9e9d
Defense-in-depth & struct_size()
●
Commit 57384592c43375d2c9a14d82aebbdc95fdda9e9d
Defense-in-depth & struct_size()
●
Commit 57384592c43375d2c9a14d82aebbdc95fdda9e9d
●
New structure dmar_pci_path
contains an extra field: u8 bus;
Defense-in-depth & struct_size()
●
Commit 57384592c43375d2c9a14d82aebbdc95fdda9e9d
●
New structure dmar_pci_path
contains an extra field: u8 bus;
●
Overflow: info→path[level].bus = tmp→bus→number;
Defense-in-depth & struct_size()
●
Commit 57384592c43375d2c9a14d82aebbdc95fdda9e9d
●
New structure dmar_pci_path
contains an extra field: u8 bus;
●
Overflow: info→path[level].bus = tmp→bus→number;
Defense-in-depth & struct_size()
●
Commit 57384592c43375d2c9a14d82aebbdc95fdda9e9d
●
New structure dmar_pci_path
contains an extra field: u8 bus;
●
Overflow: info→path[level].bus = tmp→bus→number;
●
4-year-old+ bug (Thu Oct 2 11:50:25 2014)
Defense-in-depth & struct_size()
●
iommu/vt-d: Use struct_size() helper
●
Commit 553d66cb1e8667aadb57e3804775c5ce1724a49b
Defense-in-depth & struct_size()
●
iommu/vt-d: Use struct_size() helper
●
Commit 553d66cb1e8667aadb57e3804775c5ce1724a49b
●
Could have prevented:
57384592c43375d2c9a14d82aebbdc95fdda9e9d
Defense-in-depth & struct_size()
●
Commit 76497732932f15e7323dc805e8ea8dc11bb587cf
Defense-in-depth & struct_size()
●
Commit 76497732932f15e7323dc805e8ea8dc11bb587cf
●
8-year-old bug (Tue Sep 6 13:59:13 2011).
Defense-in-depth & struct_size()
●
Commit 76497732932f15e7323dc805e8ea8dc11bb587cf
●
8-year-old bug (Tue Sep 6 13:59:13 2011).
●
Bugfix backported all the way down to LTS Linux v3.16.74
Switch case fall-through
Switch case fall-through
●
Common Weakness Enumeration.
CWE-484:Omitted Break Statement in Switch:
“The program omits a break statement within a switch or similar construct,
causing code associated with multiple conditions to execute. This can cause
problems when the programmer only intended to execute code associated
with one condition.”
Switch case fall-through
●
Common Weakness Enumeration.
CWE-484:Omitted Break Statement in Switch:
“The program omits a break statement within a switch or similar construct,
causing code associated with multiple conditions to execute. This can cause
problems when the programmer only intended to execute code associated
with one condition.”
●
Prone to error.
Switch case fall-through
●
Common Weakness Enumeration.
CWE-484:Omitted Break Statement in Switch:
“The program omits a break statement within a switch or similar construct,
causing code associated with multiple conditions to execute. This can cause
problems when the programmer only intended to execute code associated
with one condition.”
●
Prone to error.
●
“To enable -Wimplicit-fallthrough in Firefox,
I had to annotate 287 intentional fallthroughs.”
- Chris Peterson. TPM on Mozilla’s Firefox team.
-Wimplicit-fallthrough
-Wimplicit-fallthrough
●
Commit 7607a121f4617840fe645c65f090af6403738031
-Wimplicit-fallthrough
●
Tons of warnings (2300+).
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy:
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy: address x86, first.
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy: address x86, first.
●
x86 gate keeper:
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy: address x86, first.
●
x86 gate keeper: tglx.
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy: address x86, first.
●
What could possibly go wrong?
●
x86 gate keeper: tglx.
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy: address x86, first.
●
What could possibly go wrong?
●
x86 gate keeper: tglx.
●
First patch (2017) :)
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy: address x86, first.
●
What could possibly go wrong?
●
x86 gate keeper: tglx.
●
First patch (2017) :) - Flamed :/
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy: address x86, first.
●
What could possibly go wrong?
●
x86 gate keeper: tglx.
●
Abort.
●
First patch (2017) :) - Flamed :/
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
●
Strategy: address x86, first.
●
What could possibly go wrong?
●
x86 gate keeper: tglx.
●
Abort. Rethink strategy.
●
First patch (2017) :) - Flamed :/
x86 headers. Tons of warnings.
-Wimplicit-fallthrough
●
Tons of warnings (2300+). Just on x86.
●
Where do I even begin?
●
Count warnings in each file.
●
x86 headers. Tons of warnings.
●
Strategy: address x86, first.
●
What could possibly go wrong?
●
First patch (2017) :) - Flamed :/
●
x86 gate keeper: tglx.
●
Abort. Rethink strategy.
●
Warnings finally addressed in 2019.
Unintentional fall-through bugs
Unintentional fall-through bugs
Unintentional fall-through bugs
●
commit 1cbd7a64959d33e7a2a1fa2bf36a62b350a9fcbd
●
Recently applied to LTS Linux v3.16.74 (a couple of days ago).
Unintentional fall-through bugs
Unintentional fall-through bugs
●
commit cc5034a5d293dd620484d1d836aa16c6764a1c8c
Unintentional fall-through bugs
●
commit cc5034a5d293dd620484d1d836aa16c6764a1c8c
●
7-year-old bug.
Unintentional fall-through bugs
●
commit cc5034a5d293dd620484d1d836aa16c6764a1c8c
●
7-year-old bug.
●
Bugfix applied to multiple stable trees.
Unintentional fall-through bugs
Unintentional fall-through bugs
●
commit 1ee1119d184bb06af921b48c3021d921bbd85bac
Unintentional fall-through bugs
●
commit 1ee1119d184bb06af921b48c3021d921bbd85bac
●
10-year-old bug.
Unintentional fall-through bugs
●
commit 1ee1119d184bb06af921b48c3021d921bbd85bac
●
10-year-old bug.
●
Bugfix applied to multiple stable trees.
Ancient bugs
-Wimplicit-fallthrough
Worth it
Super powers and responsibility
My own tree
My own tree
Why?●
My own tree
Stuck at 90%.
Why?●
●
My own tree
Stuck at 90%.
Why?●
●
Patches deliberately ignored.●
My own tree
Forced to bypass people to get the job done.
Stuck at 90%.
Why?●
●
Patches deliberately ignored.●
●
Results
Contributions
200+ commits upstream (KR2017)
Contributions
200+ commits upstream (KR2017)
750+ commits upstream (KR2018)
Contributions
200+ commits upstream (KR2017)
750+ commits upstream (KR2018)
Contributions
1400+ commits upstream (KR2019)
Categories (10+)
●
NULL pointer
dereferences.
●
Spectre vulnerabilities.
●
API usage errors.
● Code maintainability
issues.
●
Constification.
●
Control flow issues.
● Uninitialized
variables.
● Incorrect expression.
●
Integer handling
issues.
● Miscellaneous
Types (38+)
●
Variable Length Arrays (VLA)
● Integer overflows
● Bad memory allocation
● Dereference after null check.
● Dereference before null check.
● Dereference null return value.
● Explicit null dereference.
● Missing null check on return value.
● Arguments in wrong order.
● Ignored error return code.
● Unused value.
● Unused code.
●
Unnecessary static on local variable.
● Missing return in switch
● Logical vs. bitwise operator
● Wrong operator used
●
Spectre V1
● Memory leaks
● ‘Constant’ variable guards dead code.
● Missing break in switch.
● Uninitialized scalar variable.
● Array compared against 0.
● Identical code for different branches.
● Self assignment.
● Macro compares unsigned to 0.
● Code refactoring.
● Print error message on failure.
● Unnecessary cast on kmalloc.
●
Use sizeof(*var) in kmalloc.
● Double free
● Copy-paste errors
● Read from pointer after free
Subsystems & Components
impacted (38+)
● alsa-devel
● linux-arm-msm
● linux-mediatek
● linux-samsung-soc
● ath10k
● linux-block
● linux-mmc
● linux-scsi
● ceph-devel
● linux-clk
● linux-nfs
● linux-wireless
● linux-media
● cifs-client
● linux-crypto
● linux-omap
● linux-wpan
● dri-devel
● linux-dmaengine
● linux-parisc
● platform-driver-x86
● intel-gfx
● linux-fbdev
● linux-pci
● spi-devel-general
● linux-arm-kernel
● kvm
●
linux-fpga
●
linux-pm
●
target-devel
●
linux-acpi
● linux-iio
● linux-rdma
●
tpmdd-devel
●
linux-rockchip
●
linux-input
●
linux-renesas-soc
●
xen-devel
Stable trees impacted (20)
●
5.3.y
●
5.2.y
●
5.1.y
●
5.0.y
●
4.20.y
●
4.19.y (LTS)
●
4.18.y
●
4.17.y
●
4.16.y
●
4.15.y
●
4.14.y (LTS)
●
4.13.y
●
4.12.y
●
4.11.y
●
4.10.y
●
4.9.y (LTS)
●
4.4.y (LTS)
●
4.1.y
●
3.18.y
●
3.16.y (LTS)
Stable trees impacted (20)
●
5.3.y
●
5.2.y
●
5.1.y
●
5.0.y
●
4.20.y
●
4.19.y (LTS)
●
4.18.y
●
4.17.y
●
4.16.y
●
4.15.y
●
4.14.y
●
4.13.y
●
4.12.y[1]
●
4.11.y
●
4.10.y
●
4.9.y (LTS)
●
4.4.y (LTS)
●
4.1.y
●
3.18.y
●
3.16.y (LTS)
[1] Kick-off. First bugfixes. May 2017.
(LTS)
Stable trees impacted (20)
●
5.3.y
●
5.2.y
●
5.1.y
●
5.0.y
●
4.20.y[2]
●
4.19.y (LTS)
●
4.18.y
●
4.17.y
●
4.16.y
●
4.15.y
●
4.14.y
●
4.13.y
●
●
4.11.y
●
4.10.y
●
4.9.y (LTS)
●
4.4.y (LTS)
●
4.1.y
●
3.18.y
●
3.16.y (LTS)
[1] Kick-off. First bugfixes. May 2017.
[2] VLAs erradicated from kernel. December 2018.
(LTS)
4.12.y[1]
Stable trees impacted (20)
●
5.3.y[3]
●
5.2.y
●
5.1.y
●
5.0.y
●
4.20.y[2]
●
4.19.y (LTS)
●
4.18.y
●
4.17.y
●
4.16.y
●
4.15.y
●
4.14.y
●
4.13.y
●
●
4.11.y
●
4.10.y
●
4.9.y (LTS)
●
4.4.y (LTS)
●
4.1.y
●
3.18.y
●
3.16.y (LTS)
[1] Kick-off. First bugfixes. May 2017.
[3] -Wimplicit-fallthrough globally enabled by default. September 2019
[2] VLAs erradicated from kernel. December 2018.
4.12.y[1]
(LTS)
Bonus
Code of Conduct
My experience with CoC
My experience with CoC
● 1480 files changed, 3920 (+), 2961 (-)
My experience with CoC
● 1480 files changed, 3920 (+), 2961 (-)
● 1846 interactions in general.
My experience with CoC
● 1480 files changed, 3920 (+), 2961 (-)
● 1846 interactions in general.
● Some interesting “feedback”:
– “This crap… !!”
– “I hate when… !!”
– Contempt.
Flexibility and persistence.
KSPP moto suggested by Alexander Popov.
Thank you!
gustavo@embeddedor.com
@embeddedgus
Gustavo A. R. Silva

Mais conteúdo relacionado

Mais procurados

Linux kernel-rootkit-dev - Wonokaerun
Linux kernel-rootkit-dev - WonokaerunLinux kernel-rootkit-dev - Wonokaerun
Linux kernel-rootkit-dev - Wonokaerunidsecconf
 
Kernel Recipes 2015 - The Dronecode Project – A step in open source drones
Kernel Recipes 2015 - The Dronecode Project – A step in open source dronesKernel Recipes 2015 - The Dronecode Project – A step in open source drones
Kernel Recipes 2015 - The Dronecode Project – A step in open source dronesAnne Nicolas
 
Kernel Recipes 2019 - Kernel documentation: past, present, and future
Kernel Recipes 2019 - Kernel documentation: past, present, and futureKernel Recipes 2019 - Kernel documentation: past, present, and future
Kernel Recipes 2019 - Kernel documentation: past, present, and futureAnne Nicolas
 
Kernel Recipes 2015: Kernel packet capture technologies
Kernel Recipes 2015: Kernel packet capture technologiesKernel Recipes 2015: Kernel packet capture technologies
Kernel Recipes 2015: Kernel packet capture technologiesAnne Nicolas
 
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all startedKernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all startedAnne Nicolas
 
Linux kernel tracing superpowers in the cloud
Linux kernel tracing superpowers in the cloudLinux kernel tracing superpowers in the cloud
Linux kernel tracing superpowers in the cloudAndrea Righi
 
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPFLinux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPFBrendan Gregg
 
QEMU - Binary Translation
QEMU - Binary Translation QEMU - Binary Translation
QEMU - Binary Translation Jiann-Fuh Liaw
 
BPF Internals (eBPF)
BPF Internals (eBPF)BPF Internals (eBPF)
BPF Internals (eBPF)Brendan Gregg
 
Kernel development
Kernel developmentKernel development
Kernel developmentNuno Martins
 
re:Invent 2019 BPF Performance Analysis at Netflix
re:Invent 2019 BPF Performance Analysis at Netflixre:Invent 2019 BPF Performance Analysis at Netflix
re:Invent 2019 BPF Performance Analysis at NetflixBrendan Gregg
 
LSFMM 2019 BPF Observability
LSFMM 2019 BPF ObservabilityLSFMM 2019 BPF Observability
LSFMM 2019 BPF ObservabilityBrendan Gregg
 
UM2019 Extended BPF: A New Type of Software
UM2019 Extended BPF: A New Type of SoftwareUM2019 Extended BPF: A New Type of Software
UM2019 Extended BPF: A New Type of SoftwareBrendan Gregg
 
Spying on the Linux kernel for fun and profit
Spying on the Linux kernel for fun and profitSpying on the Linux kernel for fun and profit
Spying on the Linux kernel for fun and profitAndrea Righi
 
NetConf 2018 BPF Observability
NetConf 2018 BPF ObservabilityNetConf 2018 BPF Observability
NetConf 2018 BPF ObservabilityBrendan Gregg
 
Linux Crash Dump Capture and Analysis
Linux Crash Dump Capture and AnalysisLinux Crash Dump Capture and Analysis
Linux Crash Dump Capture and AnalysisPaul V. Novarese
 
Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021
Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021
Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021Valeriy Kravchuk
 
Debugging Hung Python Processes With GDB
Debugging Hung Python Processes With GDBDebugging Hung Python Processes With GDB
Debugging Hung Python Processes With GDBbmbouter
 

Mais procurados (20)

Linux kernel-rootkit-dev - Wonokaerun
Linux kernel-rootkit-dev - WonokaerunLinux kernel-rootkit-dev - Wonokaerun
Linux kernel-rootkit-dev - Wonokaerun
 
Kernel crashdump
Kernel crashdumpKernel crashdump
Kernel crashdump
 
Kernel Recipes 2015 - The Dronecode Project – A step in open source drones
Kernel Recipes 2015 - The Dronecode Project – A step in open source dronesKernel Recipes 2015 - The Dronecode Project – A step in open source drones
Kernel Recipes 2015 - The Dronecode Project – A step in open source drones
 
Kernel Recipes 2019 - Kernel documentation: past, present, and future
Kernel Recipes 2019 - Kernel documentation: past, present, and futureKernel Recipes 2019 - Kernel documentation: past, present, and future
Kernel Recipes 2019 - Kernel documentation: past, present, and future
 
Kernel Recipes 2015: Kernel packet capture technologies
Kernel Recipes 2015: Kernel packet capture technologiesKernel Recipes 2015: Kernel packet capture technologies
Kernel Recipes 2015: Kernel packet capture technologies
 
BPF Tools 2017
BPF Tools 2017BPF Tools 2017
BPF Tools 2017
 
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all startedKernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started
 
Linux kernel tracing superpowers in the cloud
Linux kernel tracing superpowers in the cloudLinux kernel tracing superpowers in the cloud
Linux kernel tracing superpowers in the cloud
 
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPFLinux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPF
 
QEMU - Binary Translation
QEMU - Binary Translation QEMU - Binary Translation
QEMU - Binary Translation
 
BPF Internals (eBPF)
BPF Internals (eBPF)BPF Internals (eBPF)
BPF Internals (eBPF)
 
Kernel development
Kernel developmentKernel development
Kernel development
 
re:Invent 2019 BPF Performance Analysis at Netflix
re:Invent 2019 BPF Performance Analysis at Netflixre:Invent 2019 BPF Performance Analysis at Netflix
re:Invent 2019 BPF Performance Analysis at Netflix
 
LSFMM 2019 BPF Observability
LSFMM 2019 BPF ObservabilityLSFMM 2019 BPF Observability
LSFMM 2019 BPF Observability
 
UM2019 Extended BPF: A New Type of Software
UM2019 Extended BPF: A New Type of SoftwareUM2019 Extended BPF: A New Type of Software
UM2019 Extended BPF: A New Type of Software
 
Spying on the Linux kernel for fun and profit
Spying on the Linux kernel for fun and profitSpying on the Linux kernel for fun and profit
Spying on the Linux kernel for fun and profit
 
NetConf 2018 BPF Observability
NetConf 2018 BPF ObservabilityNetConf 2018 BPF Observability
NetConf 2018 BPF Observability
 
Linux Crash Dump Capture and Analysis
Linux Crash Dump Capture and AnalysisLinux Crash Dump Capture and Analysis
Linux Crash Dump Capture and Analysis
 
Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021
Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021
Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021
 
Debugging Hung Python Processes With GDB
Debugging Hung Python Processes With GDBDebugging Hung Python Processes With GDB
Debugging Hung Python Processes With GDB
 

Semelhante a Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel

Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernelKernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernelAnne Nicolas
 
Kernel Recipes 2018 - A year of fixing Coverity issues all over the Linux ker...
Kernel Recipes 2018 - A year of fixing Coverity issues all over the Linux ker...Kernel Recipes 2018 - A year of fixing Coverity issues all over the Linux ker...
Kernel Recipes 2018 - A year of fixing Coverity issues all over the Linux ker...Anne Nicolas
 
BlueHat v18 || A mitigation for kernel toctou vulnerabilities
BlueHat v18 || A mitigation for kernel toctou vulnerabilitiesBlueHat v18 || A mitigation for kernel toctou vulnerabilities
BlueHat v18 || A mitigation for kernel toctou vulnerabilitiesBlueHat Security Conference
 
Infecting the Embedded Supply Chain
 Infecting the Embedded Supply Chain Infecting the Embedded Supply Chain
Infecting the Embedded Supply ChainPriyanka Aash
 
Web 2.0 Performance and Reliability: How to Run Large Web Apps
Web 2.0 Performance and Reliability: How to Run Large Web AppsWeb 2.0 Performance and Reliability: How to Run Large Web Apps
Web 2.0 Performance and Reliability: How to Run Large Web Appsadunne
 
Troubleshooting MySQL from a MySQL Developer Perspective
Troubleshooting MySQL from a MySQL Developer PerspectiveTroubleshooting MySQL from a MySQL Developer Perspective
Troubleshooting MySQL from a MySQL Developer PerspectiveMarcelo Altmann
 
Let's trace Linux Lernel with KGDB @ COSCUP 2021
Let's trace Linux Lernel with KGDB @ COSCUP 2021Let's trace Linux Lernel with KGDB @ COSCUP 2021
Let's trace Linux Lernel with KGDB @ COSCUP 2021Jian-Hong Pan
 
Kettunen, miaubiz fuzzing at scale and in style
Kettunen, miaubiz   fuzzing at scale and in styleKettunen, miaubiz   fuzzing at scale and in style
Kettunen, miaubiz fuzzing at scale and in styleDefconRussia
 
Linux kernel debugging(PDF format)
Linux kernel debugging(PDF format)Linux kernel debugging(PDF format)
Linux kernel debugging(PDF format)yang firo
 
Linux kernel debugging(ODP format)
Linux kernel debugging(ODP format)Linux kernel debugging(ODP format)
Linux kernel debugging(ODP format)yang firo
 
Tech Days 2015: Dynamic Analysis
Tech Days 2015: Dynamic AnalysisTech Days 2015: Dynamic Analysis
Tech Days 2015: Dynamic AnalysisAdaCore
 
Headless Android at AnDevCon3
Headless Android at AnDevCon3Headless Android at AnDevCon3
Headless Android at AnDevCon3Opersys inc.
 
Asus WL500gP USB Serial
Asus WL500gP USB SerialAsus WL500gP USB Serial
Asus WL500gP USB Serialguestac21b8
 
Maintaining Linux kernel patches away from upstream
Maintaining Linux kernel patches away from upstreamMaintaining Linux kernel patches away from upstream
Maintaining Linux kernel patches away from upstreamMarian Marinov
 
DCSF 19 Deploying Rootless buildkit on Kubernetes
DCSF 19 Deploying Rootless buildkit on KubernetesDCSF 19 Deploying Rootless buildkit on Kubernetes
DCSF 19 Deploying Rootless buildkit on KubernetesDocker, Inc.
 
Secrets of building a debuggable runtime: Learn how language implementors sol...
Secrets of building a debuggable runtime: Learn how language implementors sol...Secrets of building a debuggable runtime: Learn how language implementors sol...
Secrets of building a debuggable runtime: Learn how language implementors sol...Dev_Events
 
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick44CON
 
Intro to Kernel Debugging - Just make the crashing stop!
Intro to Kernel Debugging - Just make the crashing stop!Intro to Kernel Debugging - Just make the crashing stop!
Intro to Kernel Debugging - Just make the crashing stop!All Things Open
 

Semelhante a Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel (20)

Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernelKernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
 
Kernel Recipes 2018 - A year of fixing Coverity issues all over the Linux ker...
Kernel Recipes 2018 - A year of fixing Coverity issues all over the Linux ker...Kernel Recipes 2018 - A year of fixing Coverity issues all over the Linux ker...
Kernel Recipes 2018 - A year of fixing Coverity issues all over the Linux ker...
 
BlueHat v18 || A mitigation for kernel toctou vulnerabilities
BlueHat v18 || A mitigation for kernel toctou vulnerabilitiesBlueHat v18 || A mitigation for kernel toctou vulnerabilities
BlueHat v18 || A mitigation for kernel toctou vulnerabilities
 
Infecting the Embedded Supply Chain
 Infecting the Embedded Supply Chain Infecting the Embedded Supply Chain
Infecting the Embedded Supply Chain
 
Web 2.0 Performance and Reliability: How to Run Large Web Apps
Web 2.0 Performance and Reliability: How to Run Large Web AppsWeb 2.0 Performance and Reliability: How to Run Large Web Apps
Web 2.0 Performance and Reliability: How to Run Large Web Apps
 
Troubleshooting MySQL from a MySQL Developer Perspective
Troubleshooting MySQL from a MySQL Developer PerspectiveTroubleshooting MySQL from a MySQL Developer Perspective
Troubleshooting MySQL from a MySQL Developer Perspective
 
Let's trace Linux Lernel with KGDB @ COSCUP 2021
Let's trace Linux Lernel with KGDB @ COSCUP 2021Let's trace Linux Lernel with KGDB @ COSCUP 2021
Let's trace Linux Lernel with KGDB @ COSCUP 2021
 
Kettunen, miaubiz fuzzing at scale and in style
Kettunen, miaubiz   fuzzing at scale and in styleKettunen, miaubiz   fuzzing at scale and in style
Kettunen, miaubiz fuzzing at scale and in style
 
Linux kernel debugging(PDF format)
Linux kernel debugging(PDF format)Linux kernel debugging(PDF format)
Linux kernel debugging(PDF format)
 
Linux kernel debugging(ODP format)
Linux kernel debugging(ODP format)Linux kernel debugging(ODP format)
Linux kernel debugging(ODP format)
 
Tech Days 2015: Dynamic Analysis
Tech Days 2015: Dynamic AnalysisTech Days 2015: Dynamic Analysis
Tech Days 2015: Dynamic Analysis
 
Headless Android at AnDevCon3
Headless Android at AnDevCon3Headless Android at AnDevCon3
Headless Android at AnDevCon3
 
A Methodology for Automatic GPU Kernel Optimization
A Methodology for Automatic GPU Kernel OptimizationA Methodology for Automatic GPU Kernel Optimization
A Methodology for Automatic GPU Kernel Optimization
 
Asus WL500gP USB Serial
Asus WL500gP USB SerialAsus WL500gP USB Serial
Asus WL500gP USB Serial
 
Maintaining Linux kernel patches away from upstream
Maintaining Linux kernel patches away from upstreamMaintaining Linux kernel patches away from upstream
Maintaining Linux kernel patches away from upstream
 
DCSF 19 Deploying Rootless buildkit on Kubernetes
DCSF 19 Deploying Rootless buildkit on KubernetesDCSF 19 Deploying Rootless buildkit on Kubernetes
DCSF 19 Deploying Rootless buildkit on Kubernetes
 
Secrets of building a debuggable runtime: Learn how language implementors sol...
Secrets of building a debuggable runtime: Learn how language implementors sol...Secrets of building a debuggable runtime: Learn how language implementors sol...
Secrets of building a debuggable runtime: Learn how language implementors sol...
 
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
 
Intro to Kernel Debugging - Just make the crashing stop!
Intro to Kernel Debugging - Just make the crashing stop!Intro to Kernel Debugging - Just make the crashing stop!
Intro to Kernel Debugging - Just make the crashing stop!
 
Inside Winnyp
Inside WinnypInside Winnyp
Inside Winnyp
 

Mais de Anne Nicolas

Kernel Recipes 2019 - Driving the industry toward upstream first
Kernel Recipes 2019 - Driving the industry toward upstream firstKernel Recipes 2019 - Driving the industry toward upstream first
Kernel Recipes 2019 - Driving the industry toward upstream firstAnne Nicolas
 
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMIKernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMIAnne Nicolas
 
Kernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyKernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyAnne Nicolas
 
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...Anne Nicolas
 
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataKernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataAnne Nicolas
 
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...Anne Nicolas
 
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and BareboxEmbedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and BareboxAnne Nicolas
 
Embedded Recipes 2019 - Making embedded graphics less special
Embedded Recipes 2019 - Making embedded graphics less specialEmbedded Recipes 2019 - Making embedded graphics less special
Embedded Recipes 2019 - Making embedded graphics less specialAnne Nicolas
 
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre SiliconEmbedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre SiliconAnne Nicolas
 
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) pictureEmbedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) pictureAnne Nicolas
 
Embedded Recipes 2019 - Testing firmware the devops way
Embedded Recipes 2019 - Testing firmware the devops wayEmbedded Recipes 2019 - Testing firmware the devops way
Embedded Recipes 2019 - Testing firmware the devops wayAnne Nicolas
 
Embedded Recipes 2019 - Herd your socs become a matchmaker
Embedded Recipes 2019 - Herd your socs become a matchmakerEmbedded Recipes 2019 - Herd your socs become a matchmaker
Embedded Recipes 2019 - Herd your socs become a matchmakerAnne Nicolas
 
Embedded Recipes 2019 - LLVM / Clang integration
Embedded Recipes 2019 - LLVM / Clang integrationEmbedded Recipes 2019 - LLVM / Clang integration
Embedded Recipes 2019 - LLVM / Clang integrationAnne Nicolas
 
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimediaEmbedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimediaAnne Nicolas
 
Kernel Recipes 2019 - Suricata and XDP
Kernel Recipes 2019 - Suricata and XDPKernel Recipes 2019 - Suricata and XDP
Kernel Recipes 2019 - Suricata and XDPAnne Nicolas
 
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)Anne Nicolas
 
Kernel Recipes 2019 - Formal modeling made easy
Kernel Recipes 2019 - Formal modeling made easyKernel Recipes 2019 - Formal modeling made easy
Kernel Recipes 2019 - Formal modeling made easyAnne Nicolas
 
Kernel Recipes 2019 - XDP closer integration with network stack
Kernel Recipes 2019 -  XDP closer integration with network stackKernel Recipes 2019 -  XDP closer integration with network stack
Kernel Recipes 2019 - XDP closer integration with network stackAnne Nicolas
 
Kernel Recipes 2019 - Kernel hacking behind closed doors
Kernel Recipes 2019 - Kernel hacking behind closed doorsKernel Recipes 2019 - Kernel hacking behind closed doors
Kernel Recipes 2019 - Kernel hacking behind closed doorsAnne Nicolas
 
Kernel Recipes 2019 - Faster IO through io_uring
Kernel Recipes 2019 - Faster IO through io_uringKernel Recipes 2019 - Faster IO through io_uring
Kernel Recipes 2019 - Faster IO through io_uringAnne Nicolas
 

Mais de Anne Nicolas (20)

Kernel Recipes 2019 - Driving the industry toward upstream first
Kernel Recipes 2019 - Driving the industry toward upstream firstKernel Recipes 2019 - Driving the industry toward upstream first
Kernel Recipes 2019 - Driving the industry toward upstream first
 
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMIKernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
 
Kernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyKernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are money
 
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
 
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataKernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
 
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
 
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and BareboxEmbedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
 
Embedded Recipes 2019 - Making embedded graphics less special
Embedded Recipes 2019 - Making embedded graphics less specialEmbedded Recipes 2019 - Making embedded graphics less special
Embedded Recipes 2019 - Making embedded graphics less special
 
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre SiliconEmbedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
 
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) pictureEmbedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
 
Embedded Recipes 2019 - Testing firmware the devops way
Embedded Recipes 2019 - Testing firmware the devops wayEmbedded Recipes 2019 - Testing firmware the devops way
Embedded Recipes 2019 - Testing firmware the devops way
 
Embedded Recipes 2019 - Herd your socs become a matchmaker
Embedded Recipes 2019 - Herd your socs become a matchmakerEmbedded Recipes 2019 - Herd your socs become a matchmaker
Embedded Recipes 2019 - Herd your socs become a matchmaker
 
Embedded Recipes 2019 - LLVM / Clang integration
Embedded Recipes 2019 - LLVM / Clang integrationEmbedded Recipes 2019 - LLVM / Clang integration
Embedded Recipes 2019 - LLVM / Clang integration
 
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimediaEmbedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
 
Kernel Recipes 2019 - Suricata and XDP
Kernel Recipes 2019 - Suricata and XDPKernel Recipes 2019 - Suricata and XDP
Kernel Recipes 2019 - Suricata and XDP
 
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
 
Kernel Recipes 2019 - Formal modeling made easy
Kernel Recipes 2019 - Formal modeling made easyKernel Recipes 2019 - Formal modeling made easy
Kernel Recipes 2019 - Formal modeling made easy
 
Kernel Recipes 2019 - XDP closer integration with network stack
Kernel Recipes 2019 -  XDP closer integration with network stackKernel Recipes 2019 -  XDP closer integration with network stack
Kernel Recipes 2019 - XDP closer integration with network stack
 
Kernel Recipes 2019 - Kernel hacking behind closed doors
Kernel Recipes 2019 - Kernel hacking behind closed doorsKernel Recipes 2019 - Kernel hacking behind closed doors
Kernel Recipes 2019 - Kernel hacking behind closed doors
 
Kernel Recipes 2019 - Faster IO through io_uring
Kernel Recipes 2019 - Faster IO through io_uringKernel Recipes 2019 - Faster IO through io_uring
Kernel Recipes 2019 - Faster IO through io_uring
 

Último

UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfmaor17
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolsosttopstonverter
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...OnePlan Solutions
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 

Último (20)

UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdf
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration tools
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 

Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel