Enabling writebooster capability for Pixel UFS (pa/2994670)
enabled the following flags in Android Common Kernel:
- wb_flush_en
- wb_flush_during_h8
- wb_enable
This patch disables these writebooster-related flags to restore the
intended behavior for Pixel devices. This overrides the default Android
Common Kernel behavior.
While 'wb_flush_en' and 'wb_enable' have corresponding sysfs entries
('enable_wb_buf_flush' and 'wb_on') for toggling,
'wb_flush_during_h8' currently lacks this functionality in the Android
Common Kernel. Pixel provides the 'manual_gc' sysfs entry as a
workaround. Setting 'manual_gc' to 0 disables 'wb_flush_during_h8'.
Bug: 377958570
Flag: EXEMPT bugfix
Test: check if all writebooster-realated flags are false upon init
Change-Id: I918bf6939de3e208b715f554a96ccbd053f68a18
Signed-off-by: Daniel Lee <chullee@google.com>
This patch change the I/O schedulor back to mq-deadline before boot completed.
Bug:374905027
Test: forrest run
This reverts commit 0af034bf9f.
Change-Id: Ie49fb8a62d6fdb8da112e83d5a8e3551b0072379
Move blkio class configuration from on init to on property:sys.boot_completed=1.
This improves I/O balance between foreground and background processes during boot,
as many background processes compete for I/O resources at that time.
Deferring the configuration ensures a smoother user experience
by prioritizing foreground processes.
Bug: 364960533
Test: forrest build and test on felix
Change-Id: If15343d4d96d55032618a4611bf9fdf47105c974
Assign a higher I/O priority to foreground I/O compared to background
I/O to improve responsiveness of the foreground app.
The command below shows that this CL has the intended effect on a device
with kernel 5.10:
$ adb shell 'cd /dev/blkio && grep -aH . blkio.prio.class background/blkio.prio.class'
blkio.prio.class:none-to-rt
background/blkio.prio.class:restrict-to-be
From a device with an Android 6.1 kernel:
$ grep -aH . blkio.prio.class background/blkio.prio.class'
blkio.prio.class:promote-to-rt
background/blkio.prio.class:restrict-to-be
Bug: 347109476
Change-Id: I6f1ea6a89a8dfaa223e8d2a82917b4de2d7bf1cf
Signed-off-by: Bart Van Assche <bvanassche@google.com>
max_io_bytes : block will split out, so let's submit asap.
min_hot_blocks : don't mess up the logs per the chunk size.
Change-Id: I0795fea90c3aaee0ef6058fce7f4a3c31fc3fb42
Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
When rq_affinity is 1, it will default to servicing the softirq on the
same CPU that has serviced the interrupt.
By setting it to 2, completions are processed by the CPU core that
submitted the I/O.
Bug: 311655524
Signed-off-by: Qais Yousef <qyousef@google.com>
Change-Id: I21421f97f069083793fe2e2fa51739dac12eca1d
The debugging code introduces too much performance overhead for random I/O operations.
Only enable the debugging feature on non-user builds.
Bug: 284231590
Test: boot device
Change-Id: Idf6852060dfd3a250d92147a3ee0f1fe9e6140d4
Signed-off-by: Randall Huang <huangrandall@google.com>