
Closed
Posted
Paid on delivery
I need a custom SCSI driver written for Linux that cleanly mounts and manages storage devices formatted with the btrfs file system. The goal is to expose full read/write functionality, pass-through standard SCSI commands, and report accurate SMART data without compromising kernel stability or btrfs’s advanced features such as snapshots and checksums. Scope • Develop a loadable kernel module that detects hot-plugged SCSI storage and registers the device so the kernel’s btrfs layer sees it as a native block device. • Implement the essential INQUIRY, READ/WRITE(10/16), MODE SENSE/SELECT, and REQUEST SENSE command set, plus TRIM/UNMAP for efficient space reclaim on btrfs. • Provide I/O queue management that keeps latency low and honours Linux’s blk-mq scheduling. • Include udev rules (or systemd-udevd snippets) for automatic device naming. Deliverables 1. Well-commented C source code that builds against the current LTS kernel. 2. A Makefile and concise build/install guide. 3. Sample btrfs stress-test script demonstrating successful read/write, snapshot, send/receive, and scrub operations. 4. A short report summarising performance metrics and any limitations. Acceptance criteria • Driver loads with no kernel oops or warnings (checked via dmesg). • btrfs file system passes fsck and scrub after a randomized fio workload. • Sequential R/W throughput within 5 % of raw device speeds. If you have prior kernel-space SCSI work or patches submitted upstream, mention them in your proposal so I can gauge alignment with this project’s depth.
Project ID: 40570606
21 proposals
Remote project
Active 3 days ago
Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
21 freelancers are bidding on average €31 EUR for this job

With over six years of experience as a Senior Full Stack Developer, my expertise aligns perfectly with your project requirements. My broad range of skills, including C, C++, and Linux, will enable me to design and develop a high-quality, loadable kernel module for btrfs SCSI driver while ensuring compatibility with the latest LTS kernel. I've worked extensively on similar low-level projects, developing from scratch complex blocks such as I/O queue management and disk hot-plugging detection systems. My commitment to quality is evident in the clean, well-commented code that I produce. With me on board, you can rest assured of no kernel oops or warnings. Moreover, while developing the driver for you, I'll make sure to thoroughly test it using randomized fio workload scripts to ensure the btrfs file system passes fsck and scrub successfully. Since performance is a priority for this project, I will run routine performance metrics to deliver results within 5% of raw device speeds. In addition to providing you with concise build and install guides through Makefile instructions, I can prepare a sample btrfs stress-test script as requested in the deliverables. My work history includes optimizing files systems for best throughput on diverse hardware. One such project involved creating a filesystem translator built-in into Linux Kernel to safely share files between Linux and Windows 10 using Microsoft NTFS concurrently with adjacent spans from ext4 formt.
€19 EUR in 1 day
6.5
6.5

Hello There! I’m Md Toriqul Islam, and I’m excited to partner with you. I can dive into your project immediately. I have over 10 years of experience developing Linux system software, C/C++ applications, kernel-level integrations, and storage-related solutions. I understand you need a Linux SCSI driver that integrates cleanly with btrfs, supports essential SCSI commands, blk-mq, SMART reporting, TRIM/UNMAP, hot-plug detection, and thorough testing with proper documentation. I can deliver clean, maintainable code with build instructions and validation scripts. I am skilled in C, C++, Linux kernel development, SCSI, block devices, btrfs, and system programming. I’m ready to discuss your technical requirements and project timeline. Let's get started. Looking forward to hearing from you. Best regards, Md Toriqul Islam
€19 EUR in 2 days
5.6
5.6

I can develop a clean, stable Linux SCSI driver that exposes full read/write support for btrfs while preserving snapshots, checksums and blk‑mq performance. I’ve worked on kernel‑space modules, storage stacks and low‑level I/O paths. If helpful, I can explain how I design a SCSI command layer or how I structure a btrfs‑safe block driver for predictable behaviour. My approach: • Loadable kernel module detecting hot‑plugged SCSI devices and registering them as native block devices. • Full implementation of INQUIRY, READ/WRITE(10/16), MODE SENSE/SELECT, REQUEST SENSE and UNMAP/TRIM. • blk‑mq queue management for low‑latency I/O. • udev/systemd rules for automatic naming. • Stress‑test script validating read/write, snapshots, send/receive and scrub. • Clear Makefile, build guide and performance notes. I’ve contributed to kernel‑level storage patches and built custom drivers for high‑throughput systems. Ready to deliver a stable module aligned with your acceptance criteria.
€30 EUR in 7 days
5.1
5.1

Greetings, I am interested in taking on this project. I am a professional software developer with over 10 years of experience. I am highly proficient in C/C++ and am a Linux Certified System Administrator with a solid understanding of Linux systems and file systems. While I have not previously worked on a Linux SCSI driver specifically for Btrfs, I am confident in my ability to learn the required components and deliver a working solution. I am particularly interested in the technical challenges and the end result of this project. To demonstrate my capability and commitment, I am willing to develop a prototype using my C/C++ expertise and Linux systems knowledge. I believe this approach will allow you to evaluate my technical skills and the proposed solution before making any long-term commitment. I would appreciate the opportunity to discuss your requirements in more detail and explore the best approach for the project. Thank you for your time and consideration.
€30 EUR in 7 days
4.3
4.3

Writing a Linux SCSI LKM that passes through full btrfs features is complex, especially if you want wire-speed performance and no dmesg noise. What usually breaks are atomicity guarantees and hotplug events—most SCSI pseudo-drivers mishandle multi-queue and device teardown, which is why you see kernel panics or FS corruption under fio stress. For past work, I contributed block-layer patches and a custom SCSI target module (for virtual shelves integrating with LIO). I've traced and debugged udev and systemd-udevd hotplug flows across RHEL and Ubuntu, so I can script the device auto-naming as well. Plan: Write the LKM in C, implement SCSI pass-through for core commands, tie into blk-mq, and expose a clean block device. Run randomized fio and btrfs stress—log all kernel output and measure sequential I/O. You get code, Makefile, usage docs, test scripts, and a short report. Is testing limited to VMs, or do you have hardware with btrfs already provisioned? Pradeep
€19 EUR in 7 days
3.5
3.5

Hi, I hope you're doing well. I've delivered several Linux kernel modules and block-device integrations that expose devices to filesystems, including a userspace-tested SCSI passthrough prototype that handled READ/WRITE(10/16) and INQUIRY correctly so btrfs saw the device as a native block device. The main technical risk is preserving kernel stability while implementing command passthrough, blk-mq queueing, and correct handling of btrfs checksums and snapshots under concurrent IO. Race conditions in request handling and improper error reporting are common failure modes. I'd usually start by matching your target LTS kernel tree, setting up a reproducible build environment, and implementing a minimal loadable module that registers as a scsi host and handles INQUIRY and basic READ/WRITE paths. Then I'd layer blk-mq-compatible request handling, TRIM/UNMAP support, REQUEST SENSE, and SMART passthrough, with fio and btrfs-progs for validation. Tools I use: kernel build tools, perf/fio, btrfs-progs, and udev/systemd-udevd snippets. If you have ten minutes, I'd like to confirm the exact LTS kernel version and the expected raw device interface (emulated or physical), and whether SMART must be parsed in-kernel or passed through to userspace. Thank you, Everett C.
€19 EUR in 24 days
3.0
3.0

Hi, This project comes down to four key areas: correct SCSI command implementation, seamless integration with the Linux block layer, efficient I/O queue management, and reliable btrfs compatibility. I can develop a maintainable kernel module that presents the storage device as a native block device while following current Linux kernel interfaces and coding practices. My approach is to implement the required SCSI command set, integrate with the blk-mq framework for efficient request handling, validate hot-plug behavior, and verify compatibility with btrfs operations including read/write, TRIM/UNMAP, snapshot, scrub, and send/receive workflows. The final deliverable will include clean, well-documented source code, a reproducible build process, and functional validation with stress testing. Before getting started, I'd like to clarify a few details: Which Linux LTS kernel version will be the primary deployment target? Is this intended for a physical SCSI device, USB mass-storage bridge, or a virtual/custom storage device? Are there any hardware-specific requirements or performance constraints beyond the stated throughput target? Once these details are confirmed, I can recommend the most suitable driver architecture and implementation strategy. I look forward to discussing your project.
€30 EUR in 7 days
3.1
3.1

Hello, Our team has extensive experience with Linux kernel development and SCSI command implementations. We have successfully created loadable kernel modules for custom storage solutions, integrating features such as I/O queue management and efficient command processing in similar projects within the storage domain. For your project, we can develop a kernel module that cleanly mounts and manages devices formatted with the btrfs file system while ensuring full read/write capabilities and accurate SMART reporting. Our technical approach will involve creating a module that registers hot-plugged SCSI devices and implements the necessary command set, including TRIM/UNMAP for space efficiency. We plan to structure the project in phases: setup, configuration, testing, and final handover, estimating a timeline of 6-8 weeks for completion. Thanks, PureCode Company
€30 EUR in 1 day
2.0
2.0

As an experienced full-stack developer with a deep understanding of Linux and software architecture, I am confident in my ability to successfully deliver your project. While my core services align primarily with web and mobile application development, my years of experience have given me the capability to design and develop high-quality solutions in any requirement context. I may not have specific prior kernel-space SCSI work or patches submitted upstream, however, I do have an impressive track record of delivering reliable and scalable digital solutions tailored to meet unique client needs. My proficiency with systems like Linux, Git, Docker, and cPanel assures the efficiency and maintainability of my outputs. Moreover, my familiarity with API design and integration is directly relevant to the task at hand. By entrusting me with your project you will get more than just my expertise. You will also have access to the expert team that I collaborate with if your project requires it. This means you aren’t just communicating with me but an entire team that has specialized skills in UI/UX design, graphics, 3D/CAD solutions – talents just one call or email away – guaranteeing comprehensive management of every aspect of your project. Let's join forces today and bring your idea to life with no compromise on quality, timeline or stability.
€20 EUR in 3 days
2.6
2.6

Hello! Your project needs a stable Linux kernel SCSI driver that exposes storage cleanly to the native btrfs layer without risking data integrity or kernel stability. I can develop a loadable kernel module in C with proper SCSI command handling, hot plug detection, blk mq aware queue management, TRIM and UNMAP support, udev rules, and clear build instructions for the current LTS kernel. I’ll also include btrfs stress testing with fio, snapshot, send receive, scrub, and fsck checks, plus a short performance report comparing throughput against raw device speeds. For this kind of work, I would be very cautious, test incrementally, and document all limitations clearly. Which LTS kernel version and target hardware should the driver support? Is this for a real SCSI device, virtual device, or custom storage backend? Thank you very much.
€12 EUR in 2 days
1.7
1.7

Hello, I have experience with Linux development, kernel debugging, storage subsystems, and C-based systems programming. For this project, I would first review whether a custom SCSI LKM is truly required or whether an existing SCSI/block layer integration can be extended safely, since btrfs already relies on the Linux block layer for advanced functionality such as snapshots, scrub, TRIM, and checksumming. My focus would be on clean blk-mq integration, robust error handling, SMART pass-through, hot-plug support, and stability under fio and btrfs stress testing. The deliverables would include documented source code, build instructions, automated test scripts, and performance validation against the target kernel version. A few details that would help are the target hardware/device type, Linux LTS version, and whether this driver is for a custom storage controller or a virtual/emulated SCSI device.
€65 EUR in 1 day
1.0
1.0

Hello, The main risk is subtle interaction between a custom SCSI layer and btrfs metadata integrity: delayed or re-ordered WRITE(10/16) completions, incorrect handling of TRIM/UNMAP, or improper REQUEST SENSE mapping can corrupt checksums or snapshots. I will ensure strict compliance with Linux SCSI semantics and ordering so btrfs scrub and fsck remain valid after randomized fio workloads. I have implemented kernel modules that register hot-plug block devices, integrate with the block layer, and expose correct SCSI responses to upper layers. Recent work involved a loadable module that presented virtual block devices with full SMART passthrough and blk-mq multiqueue support, and I have experience exercising filesystems under heavy fio and scrub-like workloads to validate metadata consistency. I will reuse proven patterns for scsi_host_template, scsi_device lifecycle, and blk_mq tagsets to avoid common stability issues. My first step will be a minimal prototype that registers a scsi_host, implements INQUIRY, READ/WRITE(10/16), MODE SENSE/SELECT, REQUEST SENSE, and TRIM/UNMAP handlers, and presents a native block device to btrfs. I will validate ordering and completions with kernel tracepoints and fio scripts before expanding to full feature set and udev rules. - Do you have a target current LTS kernel version and preferred test hardware model? - Should SMART reporting be proxied from underlying devices verbatim or normalized into a fixed schema? Regards, Affan Qureshi
€100 EUR in 1 day
0.0
0.0

Greetings, Your project for a Linux SCSI driver tailored for btrfs caught my attention. It seems you’re looking to create a reliable driver that seamlessly integrates with btrfs, ensuring full read/write capabilities while maintaining the system's stability and advanced features like snapshots and checksums. I can definitely help with that. With experience in developing loadable kernel modules, I would approach this by focusing on clean code and thorough testing to meet your requirements. I’ll ensure that the essential SCSI command set is implemented efficiently, and I’ll prioritize I/O queue management to minimize latency, aligning with Linux’s blk-mq scheduling. I have previously worked on kernel-space SCSI projects, which has equipped me with the knowledge necessary to handle the intricacies of this task. I’m excited to discuss how we can make this driver robust and effective.
€19 EUR in 7 days
0.0
0.0

I can develop a custom Linux SCSI driver tailored to cleanly mount and manage your btrfs storage devices. My experience includes working with low-level Linux kernel modules and file system drivers, ensuring stable and efficient device integration. I’ll focus on creating a reliable, maintainable driver that handles device detection, mounting, and error management smoothly. Are you targeting a specific Linux kernel version or distribution for this driver?
€19 EUR in 7 days
0.0
0.0

I recently assisted a client in achieving a similar goal, ensuring a seamless integration of custom drivers on Linux systems for optimal performance. I will develop a custom SCSI driver for Linux that seamlessly manages storage devices formatted with the btrfs file system, providing full read/write functionality and accurate SMART data reporting. I prioritize maintaining kernel stability while enabling advanced btrfs features like snapshots and checksums. Your project requires a driver that detects hot-plugged SCSI storage, implements essential command sets, optimizes I/O queue management, and includes automatic device naming via udev rules. With over 75+ 5-star reviews on similar projects, we rank in the top 1% among 75 million users! I am confident in delivering high-quality results aligned with your project's requirements. Let's discuss how I can tailor this solution to meet your specific needs. Regards, Johan
€15 EUR in 7 days
0.0
0.0

Hello, I have experience with C/C++ programming and debugging. I am interested in working on your project and can deliver the work within the required timeline. I will communicate regularly and ensure quality work. Thank you for considering my proposal
€19 EUR in 7 days
0.0
0.0

Acceptance criteria • Driver loads with no kernel oops or warnings (checked via dmesg). • btrfs file system passes fsck and scrub after a randomized fio workload. • Sequential R/W throughput within 5 % of raw device speeds. If you have prior kernel-space SCSI work or patches submitted upstream, mention them in your proposal so I can gauge alignment with this project’s depth. It can be done with 25
€25 EUR in 7 days
0.0
0.0

Hello, I am Carlos Porter, a Site Reliability Engineer with 15 years of experience across Linux/Unix systems and 7 years in Azure/cloud support. I can develop a custom SCSI driver for Linux that cleanly mounts and manages storage devices formatted with the btrfs file system. My experience with Linux server administration, operating system upgrades and migrations, and infrastructure automation with Bash, Ansible, Chef, Terraform, and ARM Templates makes me a strong candidate for this project. I have worked with various Linux distributions, including AlmaLinux, RHEL, SLES 12/15, and Ubuntu. To develop the SCSI driver, I will assess the current LTS kernel and btrfs file system requirements, design a loadable kernel module, and implement the essential INQUIRY, READ/WRITE(10/16), MODE SENSE/SELECT, and REQUEST SENSE command set, plus TRIM/UNMAP for efficient space reclaim on btrfs. I will also provide I/O queue management that keeps latency low and honors Linux's blk-mq scheduling. I will deliver well-commented C source code, a Makefile, and a concise build/install guide. Additionally, I will provide a sample btrfs stress-test script. I will review the setup with you and map the next steps. Carlos Porter Site Reliability Engineer
€100 EUR in 7 days
0.0
0.0

Helsinki, Finland
Payment method verified
Member since Aug 11, 2020
€30-250 EUR
min €36 EUR / hour
€8-30 EUR
€8-30 EUR
€2-6 EUR / hour
$250-750 USD
$250-750 USD
$3000-5000 USD
₹1250-2500 INR / hour
£250-750 GBP
$10-30 USD
₹1500-12500 INR
$250-750 USD
$15-25 USD / hour
$250-750 USD
$250-750 USD
$30-250 USD
₹1500-12500 INR
$30-80 USD
₹750-1250 INR / hour
$30-250 USD
₹1500-12500 INR
₹75000-150000 INR
₹2000-3000 INR
₹12500-37500 INR