SlideShare a Scribd company logo
1 of 23
1
T U D O R C O R N E A
2
• What is Open-Source
• Benefits of Open-Source
• Contributing to Open-Source Projects
• Case Study: DPDK
• Lessons Learned
3
4
• “Open-Source software is code that is designed to be publicly accessible—anyone can see,
modify, and distribute the code as they see fit.”
• “Open-Source software is developed in a decentralized and collaborative way, relying on peer
review and community production. Open-Source software is often cheaper, more flexible, and has
more longevity than its proprietary peers because it is developed by communities rather than a
single author or company.”
• [1] https://www.redhat.com/en/topics/open-source/what-is-open-source
5
[1] https://moqod-software.medium.com/understanding-open-source-and-free-software-licensing-c0fa600106c9
6
[1] https://moqod-software.medium.com/understanding-open-source-and-free-software-licensing-c0fa600106c9
7
• ~ 200 3rdParty packages (mostly Open-Source)
• 9 out of 10 companies use Open-Source [1]
• Open-Source is perceived to be more secure than Proprietary Software
• [1] https://openuk.uk/wp-content/uploads/2021/10/openuk-state-of-open_final-version.pdf
• [2] https://www.redhat.com/en/resources/state-of-enterprise-open-source-report-2022
8
• Upgrading from Version x to Version x + 1
• Requires re-applying old Patches
• Integration Work
9
• Good Practice
• Vulnerabilities
• Software Bugs
• Improved Performance
• New Features
10
Porting Patches is often non-trivial work
11
• Almost 10 years old
• 100s of custom kernel patches
• Latest kernel: 5.17 (March 2022)
• No access to newer-developed features like eBPF, or XDP 
12
• Libraries to Accelerate Packet Processing
• Widely used when building Virtual Networking Functions
• Used in our product
• …
• And at least 6 other teams inside the company
13
• 17.11 – Initial version in the product
• 17.11 -> 18.11 : 3 Patches
• 18.11 -> 19.11 : 11 Patches
• 19.11 -> 20.11 : 16 Patches
• 20.11 -> 21.11 : 11 Patches *
• (*) Started upstreaming patches since 20.11
14
The Not so Good
• Takes Time 
• Maintainers might be slow to respond
• Some patches might be too specific
• “Give away competitive advantage”
The Good
• Helping the community
• Helping other teams in the company
• Less effort in migrating to newer versions
• Peer Review
The Necessary
• GPL Compliance
15
• Identify candidate patches
• Be sure there are no Legal roadblocks
• Each project has a designated Maintainer
• Each project might have its own way of contributing
• Examples:
• Hosted on public Git Repository
• Fork Repository + Pull Request
• Send patches on a mailing list
• The Linux Kernel
• DPDK
16
[1] https://doc.dpdk.org/guides/contributing/patches.html
[2] https://doc.dpdk.org/guides/contributing/coding_style.html#coding-style
17
https://github.com/DPDK/dpdk/blob/main/MAINTAINERS
18
• Create patches with git-format-patch
• Use ./devtools/checkpatches.sh
• Create a good commit log message
• Why the patch is needed
• What the patch implements
• How the patch is implemented
• Send patch to dev@dpdk.org
• Register to Patchwork
• https://patches.dpdk.org/
• Maintenance
• stable@dpdk.org
19
• 8 Patches have already been accepted
• Upstreaming Process could be slow
• Need a lot of patience 
• Reduce customization
• Try to make the patches more generic
• Kni patch for configuring kthread granularity
• AF_Packet support for VLAN stripping
• Unit Tests help with integration effort
• Don’t let nr. of patches get out of hand !
20
• Proper tools could make life easier
• Outlook
• Bad formatting
• Top Posting
• Mutt
• Thunderbird
• [1] https://www.kernel.org/doc/html/v4.11/process/email-clients.html
E-Mail Etiquette
Top Posting
Bottom Posting
Interleaved Posting
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
> Q: The meeting has been postponed to next Friday.
A: Has the deadline for the report been moved too?
21
• More Bugfixes
• New Features
• Offloads support for certain drivers
• Apply the same approach to other projects ?
• Upstream-First development ?
22
Upstreaming could help reduce the
patching work while upgrading
23
• The Four Freedoms of Free Software
• https://www.gnu.org/philosophy/free-sw.en.html
• Open Source
• https://www.whitesourcesoftware.com/resources/blog/open-source-licenses-explained/
• https://moqod.com/blog/how-to-avoid-intellectual-property-rights-traps-in-software-development/
• Contributing to DPDK
• https://doc.dpdk.org/guides/contributing/patches.html
• https://doc.dpdk.org/guides/contributing/coding_style.html#coding-style

More Related Content

Similar to Why It’s Important to Contribute to Open-Source Projects | Keysight Connect #10

Open Source Lessons from the TODO Group
Open Source Lessons from the TODO GroupOpen Source Lessons from the TODO Group
Open Source Lessons from the TODO GroupChris Aniszczyk
 
Effectively using Open Source with conda
Effectively using Open Source with condaEffectively using Open Source with conda
Effectively using Open Source with condaTravis Oliphant
 
How to get started in Open Source!
How to get started in Open Source!How to get started in Open Source!
How to get started in Open Source!Pradeep Singh
 
A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015Henry Huang
 
Freifunk Munich - How to scale Jitsi
Freifunk Munich - How to scale JitsiFreifunk Munich - How to scale Jitsi
Freifunk Munich - How to scale JitsiAnnika Wickert
 
Upgrading CentOS on the Facebook fleet
Upgrading CentOS on the Facebook fleetUpgrading CentOS on the Facebook fleet
Upgrading CentOS on the Facebook fleetDavide Cavalca
 
Start your open source project
Start your open source projectStart your open source project
Start your open source projectAhmed Othman
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationNick Josevski
 
Vimeo and Open Source (SMPTE Forum 2015)
Vimeo and Open Source (SMPTE Forum 2015)Vimeo and Open Source (SMPTE Forum 2015)
Vimeo and Open Source (SMPTE Forum 2015)Derek Buitenhuis
 
Managing Open Source Software in the GitHub Era
Managing Open Source Software in the GitHub EraManaging Open Source Software in the GitHub Era
Managing Open Source Software in the GitHub EranexB Inc.
 
Guidelines for Working with Contract Developers in Evergreen
Guidelines for Working with Contract Developers in EvergreenGuidelines for Working with Contract Developers in Evergreen
Guidelines for Working with Contract Developers in Evergreenloriayre
 
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Demi Ben-Ari
 
Make It Cooler: Using Decentralized Version Control
Make It Cooler: Using Decentralized Version ControlMake It Cooler: Using Decentralized Version Control
Make It Cooler: Using Decentralized Version Controlindiver
 
Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Jody Garnett
 
Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?Bruno Capuano
 
Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4aspyker
 
Managing Open Source Software Supply Chains
Managing Open Source Software Supply ChainsManaging Open Source Software Supply Chains
Managing Open Source Software Supply ChainsnexB Inc.
 
Introduction to dev ops
Introduction to dev opsIntroduction to dev ops
Introduction to dev opsLen Bass
 

Similar to Why It’s Important to Contribute to Open-Source Projects | Keysight Connect #10 (20)

Open Source Lessons from the TODO Group
Open Source Lessons from the TODO GroupOpen Source Lessons from the TODO Group
Open Source Lessons from the TODO Group
 
Effectively using Open Source with conda
Effectively using Open Source with condaEffectively using Open Source with conda
Effectively using Open Source with conda
 
How to get started in Open Source!
How to get started in Open Source!How to get started in Open Source!
How to get started in Open Source!
 
A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015
 
Open Development
Open DevelopmentOpen Development
Open Development
 
Freifunk Munich - How to scale Jitsi
Freifunk Munich - How to scale JitsiFreifunk Munich - How to scale Jitsi
Freifunk Munich - How to scale Jitsi
 
Upgrading CentOS on the Facebook fleet
Upgrading CentOS on the Facebook fleetUpgrading CentOS on the Facebook fleet
Upgrading CentOS on the Facebook fleet
 
Case study
Case studyCase study
Case study
 
Start your open source project
Start your open source projectStart your open source project
Start your open source project
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable application
 
Vimeo and Open Source (SMPTE Forum 2015)
Vimeo and Open Source (SMPTE Forum 2015)Vimeo and Open Source (SMPTE Forum 2015)
Vimeo and Open Source (SMPTE Forum 2015)
 
Managing Open Source Software in the GitHub Era
Managing Open Source Software in the GitHub EraManaging Open Source Software in the GitHub Era
Managing Open Source Software in the GitHub Era
 
Guidelines for Working with Contract Developers in Evergreen
Guidelines for Working with Contract Developers in EvergreenGuidelines for Working with Contract Developers in Evergreen
Guidelines for Working with Contract Developers in Evergreen
 
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
 
Make It Cooler: Using Decentralized Version Control
Make It Cooler: Using Decentralized Version ControlMake It Cooler: Using Decentralized Version Control
Make It Cooler: Using Decentralized Version Control
 
Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...
 
Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?
 
Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4
 
Managing Open Source Software Supply Chains
Managing Open Source Software Supply ChainsManaging Open Source Software Supply Chains
Managing Open Source Software Supply Chains
 
Introduction to dev ops
Introduction to dev opsIntroduction to dev ops
Introduction to dev ops
 

Recently uploaded

Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445ruhi
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.soniya singh
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...tanu pandey
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$kojalkojal131
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableSeo
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Delhi Call girls
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...Escorts Call Girls
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
Russian Call Girls in %(+971524965298  )#  Call Girls in DubaiRussian Call Girls in %(+971524965298  )#  Call Girls in Dubai
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
 
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
 
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
 

Why It’s Important to Contribute to Open-Source Projects | Keysight Connect #10

  • 1. 1 T U D O R C O R N E A
  • 2. 2 • What is Open-Source • Benefits of Open-Source • Contributing to Open-Source Projects • Case Study: DPDK • Lessons Learned
  • 3. 3
  • 4. 4 • “Open-Source software is code that is designed to be publicly accessible—anyone can see, modify, and distribute the code as they see fit.” • “Open-Source software is developed in a decentralized and collaborative way, relying on peer review and community production. Open-Source software is often cheaper, more flexible, and has more longevity than its proprietary peers because it is developed by communities rather than a single author or company.” • [1] https://www.redhat.com/en/topics/open-source/what-is-open-source
  • 7. 7 • ~ 200 3rdParty packages (mostly Open-Source) • 9 out of 10 companies use Open-Source [1] • Open-Source is perceived to be more secure than Proprietary Software • [1] https://openuk.uk/wp-content/uploads/2021/10/openuk-state-of-open_final-version.pdf • [2] https://www.redhat.com/en/resources/state-of-enterprise-open-source-report-2022
  • 8. 8 • Upgrading from Version x to Version x + 1 • Requires re-applying old Patches • Integration Work
  • 9. 9 • Good Practice • Vulnerabilities • Software Bugs • Improved Performance • New Features
  • 10. 10 Porting Patches is often non-trivial work
  • 11. 11 • Almost 10 years old • 100s of custom kernel patches • Latest kernel: 5.17 (March 2022) • No access to newer-developed features like eBPF, or XDP 
  • 12. 12 • Libraries to Accelerate Packet Processing • Widely used when building Virtual Networking Functions • Used in our product • … • And at least 6 other teams inside the company
  • 13. 13 • 17.11 – Initial version in the product • 17.11 -> 18.11 : 3 Patches • 18.11 -> 19.11 : 11 Patches • 19.11 -> 20.11 : 16 Patches • 20.11 -> 21.11 : 11 Patches * • (*) Started upstreaming patches since 20.11
  • 14. 14 The Not so Good • Takes Time  • Maintainers might be slow to respond • Some patches might be too specific • “Give away competitive advantage” The Good • Helping the community • Helping other teams in the company • Less effort in migrating to newer versions • Peer Review The Necessary • GPL Compliance
  • 15. 15 • Identify candidate patches • Be sure there are no Legal roadblocks • Each project has a designated Maintainer • Each project might have its own way of contributing • Examples: • Hosted on public Git Repository • Fork Repository + Pull Request • Send patches on a mailing list • The Linux Kernel • DPDK
  • 18. 18 • Create patches with git-format-patch • Use ./devtools/checkpatches.sh • Create a good commit log message • Why the patch is needed • What the patch implements • How the patch is implemented • Send patch to dev@dpdk.org • Register to Patchwork • https://patches.dpdk.org/ • Maintenance • stable@dpdk.org
  • 19. 19 • 8 Patches have already been accepted • Upstreaming Process could be slow • Need a lot of patience  • Reduce customization • Try to make the patches more generic • Kni patch for configuring kthread granularity • AF_Packet support for VLAN stripping • Unit Tests help with integration effort • Don’t let nr. of patches get out of hand !
  • 20. 20 • Proper tools could make life easier • Outlook • Bad formatting • Top Posting • Mutt • Thunderbird • [1] https://www.kernel.org/doc/html/v4.11/process/email-clients.html E-Mail Etiquette Top Posting Bottom Posting Interleaved Posting A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? > Q: The meeting has been postponed to next Friday. A: Has the deadline for the report been moved too?
  • 21. 21 • More Bugfixes • New Features • Offloads support for certain drivers • Apply the same approach to other projects ? • Upstream-First development ?
  • 22. 22 Upstreaming could help reduce the patching work while upgrading
  • 23. 23 • The Four Freedoms of Free Software • https://www.gnu.org/philosophy/free-sw.en.html • Open Source • https://www.whitesourcesoftware.com/resources/blog/open-source-licenses-explained/ • https://moqod.com/blog/how-to-avoid-intellectual-property-rights-traps-in-software-development/ • Contributing to DPDK • https://doc.dpdk.org/guides/contributing/patches.html • https://doc.dpdk.org/guides/contributing/coding_style.html#coding-style