Project Description

multipathd is multi-threaded, but it uses a single lock that essentially kills most benefits of the additional threads. Also, it busy-waits or sleeps in various places, in part with locks held, which is of course very bad for a program with lots of asynchronous things going on.

Goal for this Hackweek

Eliminate busy-waiting. Assess which of the various threads are actually necessary. Rework the path checker to be truly asynchronous. Also, re-think configuration changes (reconfigure). Currently this works with user-space RCU, but I believe that's not optimal. It's dangerous to continue servicing uevents and path checkers while a configuration change is pending.

Looking for hackers with the skills:

c multipath storage

This project is part of:

Hack Week 20

Activity

  • about 3 years ago: mkubecek liked this project.
  • about 3 years ago: mwilck added keyword "multipath" to this project.
  • about 3 years ago: mwilck added keyword "storage" to this project.
  • about 3 years ago: mwilck added keyword "c" to this project.
  • about 3 years ago: mwilck originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    Extract generic testing framework from Linux Test Project code base by acervesato

    Project Description

    The Linux Test Projec...


    Vulkan Widget for GTK by yudaike

    [comment]: # (Please use the project descriptio...


    Deep Packet Inspection: compare the performance between libnetfilter_queue, NF_HOOK and eBPF XDP by nguyens

    Deep Packet Inspection: compare the performan...


    The Missing Middle: Add an intermediate brightness setting for auxiliary LEDs in Andúril 2 by gkenion

    [comment]: # (Please use the project descriptio...


    Port OTPClient to GTK >= 4.12 by pstivanin

    Project Description

    OTPClient is currentl...