Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[6.6] bcache IO hinting updates #32

Draft
wants to merge 3 commits into
base: base-6.6
Choose a base branch
from
Draft

Commits on Nov 19, 2023

  1. bcache: introduce bcache sysfs entries for ioprio-based bypass/writeb…

    …ack hints
    
    Add sysfs entries to support to hint for bypass/writeback by the ioprio
    assigned to the bio.  If the bio is unassigned, use current's io-context
    ioprio for cache writeback or bypass (configured per-process with
    `ionice`).
    
    Having idle IOs bypass the cache can increase performance elsewhere
    since you probably don't care about their performance.  In addition,
    this prevents idle IOs from promoting into (polluting) your cache and
    evicting blocks that are more important elsewhere.
    
    If you really nead the performance at the expense of SSD wearout,
    then configure ioprio_writeback and set your `ionice` appropriately.
    
    For example:
    	echo 2,7 > /sys/block/bcache0/bcache/ioprio_bypass
    	echo 2,0 > /sys/block/bcache0/bcache/ioprio_writeback
    
    See the documentation commit for details.
    
    v2: Removed calls to get_task_io_context()
    
    Signed-off-by: Eric Wheeler <[email protected]>
    Acked-by: Kent Overstreet <[email protected]>
    Tested-by: Kai Krakow <[email protected]>
    Cc: [email protected]
    Signed-off-by: Kai Krakow <[email protected]>
    Eric Wheeler authored and kakra committed Nov 19, 2023
    Configuration menu
    Copy the full SHA
    e74915f View commit details
    Browse the repository at this point in the history
  2. bcache: documentation for sysfs entries describing bcache cache hinting

    v2: get_task_io_context() no longer exists in the kernel
    
    Signed-off-by: Eric Wheeler <[email protected]>
    Signed-off-by: Kai Krakow <[email protected]>
    Eric Wheeler authored and kakra committed Nov 19, 2023
    Configuration menu
    Copy the full SHA
    2a59715 View commit details
    Browse the repository at this point in the history
  3. bcache: Only skip data request in io_prio bypass mode

    Even if ioprio_bypass hints bypassing the request, we still allow it
    for REQ_META|REQ_PRIO bio.
    
    Cc: Eric Wheeler <[email protected]>
    Signed-off-by: Kai Krakow <[email protected]>
    kakra committed Nov 19, 2023
    Configuration menu
    Copy the full SHA
    a689a08 View commit details
    Browse the repository at this point in the history