android_kernel_msm-6.1_noth.../android
Bart Van Assche 4fd9a46455 ANDROID: block: Support configuring limits below the page size
Allow block drivers to configure the following:
* Maximum number of hardware sectors values smaller than
  PAGE_SIZE >> SECTOR_SHIFT. For PAGE_SIZE = 4096 this means that values
  below 8 become supported.
* A maximum segment size below the page size. This is most useful
  for page sizes above 4096 bytes.

The blk_sub_page_segments static branch will be used in later patches to
prevent that performance of block drivers that support segments >=
PAGE_SIZE and max_hw_sectors >= PAGE_SIZE >> SECTOR_SHIFT would be affected.

This patch may change the behavior of existing block drivers from not
working into working. If a block driver calls
blk_queue_max_hw_sectors() or blk_queue_max_segment_size(), this is
usually done to configure the maximum supported limits. An attempt to
configure a limit below what is supported by the block layer causes the
block layer to select a larger value. If that value is not supported by
the block driver, this may cause other data to be transferred than
requested, a kernel crash or other undesirable behavior.

Keeps the ABI stable by taking advantage of hole in struct queue_limits.

Bug: 308663717
Bug: 319125789
Bug: 324152549

Change-Id: I7358f3e16aa0c80a6d345cb7887fbe9276e52912
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
[jyescas@google.com: disable subpage limits in block/blk-sysfs.c
                     instead block/blk-core.c because the function
                     blk_free_queue() is not defined in 6.1 kernel]
Signed-off-by: Juan Yescas <jyescas@google.com>
2024-03-20 23:00:23 +00:00
..
abi_gki_aarch64 Revert "ANDROID: Add utf8_data_table for case-folding support" 2023-04-21 23:11:46 +00:00
abi_gki_aarch64.stg ANDROID: block: Support configuring limits below the page size 2024-03-20 23:00:23 +00:00
abi_gki_aarch64_asr ANDROID: GKI: Add ASR KMI symbol list 2024-01-30 18:40:36 +00:00
abi_gki_aarch64_asus ANDROID: GKI: Update symbol list for ASUS 2023-09-20 15:23:46 +00:00
abi_gki_aarch64_db845c ANDROID: GKI: add system_unbound_wq to some symbol lists. 2023-11-06 17:03:21 +00:00
abi_gki_aarch64_exynos ANDROID: ABI: Update symbol for Exynos SoC 2024-03-19 17:29:26 +00:00
abi_gki_aarch64_exynosauto ANDROID: GKI: add GKI symbol list for Exynosauto SoC 2024-03-06 14:43:14 +00:00
abi_gki_aarch64_fips140 ANDROID: add symbol list for fips140 module 2024-03-04 11:16:37 +00:00
abi_gki_aarch64_galaxy ANDROID: ABI: update symbol list for galaxy 2023-12-13 17:58:33 +00:00
abi_gki_aarch64_honda ANDROID: GKI: Update honda symbol list for xt_LOG 2024-01-17 01:26:43 +00:00
abi_gki_aarch64_honor ANDROID: ABI: Update honor symbol list 2023-06-05 16:31:49 +00:00
abi_gki_aarch64_imx ANDROID: ABI: Update symbol list for imx 2024-01-19 10:38:15 +00:00
abi_gki_aarch64_meizu ANDROID: GKI: add symbol list file for meizu 2023-09-05 21:14:49 +00:00
abi_gki_aarch64_moto ANDROID: GKI: add symbol list file for moto 2024-02-27 13:30:12 +00:00
abi_gki_aarch64_mtk ANDROID: GKI: Update symbol list for mtk 2024-03-05 10:10:35 +00:00
abi_gki_aarch64_nothing ANDROID: ABI: Update symbol list for Nothing 2024-02-26 10:13:28 +00:00
abi_gki_aarch64_oplus ANDROID: ABI: Update oplus symbol list 2024-03-18 18:00:07 +00:00
abi_gki_aarch64_pasa ANDROID: GKI: Add Pasa symbol list 2024-01-31 00:03:03 +00:00
abi_gki_aarch64_pixel ANDROID: EXPORT raise_softirq and update the ABI symbol list 2024-03-13 16:18:09 +00:00
abi_gki_aarch64_qcom ANDROID: abi_gki_aarch64_qcom: Update symbol list 2024-03-01 14:01:47 +08:00
abi_gki_aarch64_rockchip ANDROID: GKI: Enable symbols for v4l2 in async and fwnode 2024-01-04 22:25:09 +00:00
abi_gki_aarch64_sony ANDROID: ABI: Update sony symbol list and stg 2023-11-02 22:52:08 +00:00
abi_gki_aarch64_transsion ANDROID: GKI: Update symbol list for transsion 2024-02-29 21:10:10 +00:00
abi_gki_aarch64_tuxera ANDROID: GKI: Update Tuxera symbol list 2023-09-11 16:07:12 +03:00
abi_gki_aarch64_unisoc ANDROID: update symbol for unisoc whitelist 2023-11-30 18:19:39 +00:00
abi_gki_aarch64_virtual_device Revert "ANDROID: Update symbols list for open-dice.ko" 2024-03-19 19:40:13 +00:00
abi_gki_aarch64_vivo ANDROID: GKI: Update symbol list for VIVO 2023-08-31 13:09:07 +00:00
abi_gki_aarch64_xiaomi ANDROID: GKI: Update symbol list for xiaomi 2024-02-28 18:04:33 +00:00
abi_gki_protected_exports_aarch64 ANDROID: GKI: Update protected exports 2023-07-19 22:21:30 +00:00
abi_gki_protected_exports_x86_64 ANDROID: GKI: Update protected exports 2023-07-19 22:21:30 +00:00
gki_aarch64_protected_modules ANDROID: virt: geniezone: Enable as GKI module for arm64 2023-08-29 18:02:40 +00:00
gki_x86_64_protected_modules ANDROID: GKI: Add WWAN as GKI protected module 2023-07-13 15:23:46 +00:00