iovisor / iovisor/bcc

tools: broken assumption in mdflush

Open
#3,650 6 comments 0 reactions 0 assignees View on GitHub
bug libbpf-tools-port
Dominant language
C
Stars
22.7k
Forks
4.1k
Avg merge
10d 4h
Merged PRs (30d)
3

Description

Since kernel commit 309dca309fc ("block: store a block_device pointer in struct bio") struct bio points again to a block_device and not to a gendisk directly. However mdflush is looking at the presence or not of the bio_dev macro to check whether to get the gendisk directly from the bio or not, which doesn't work anymore since the bio_dev macro still exists.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating mdflush and inspecting its bio_dev conditional, then compare that assumption with the current Linux struct bio and block_device relationship described in the issue. Done means mdflush obtains the gendisk through the current bio representation rather than using the continued existence of bio_dev as its feature check.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
operating-systems, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.