History

block: split bio if the only bvec's length is > SZ_4K

64K PAGE_SIZE is popular on ARM64 or other ARCHs, and 64K has been big enough to break some devices probably, so change the logic to split bio if the only bvec's length is > SZ_4K instead of PAGE_SIZE.

Ming Lei committed 7 years ago

Commit 6952a7f1 parent 59db8ba1 file · +1 −1Browse files

Unified · Split

block/blk-merge.c+1−1
@@ -320,7 +320,7 @@ void __blk_queue_split(struct request_queue *q, struct bio **bio, · 319 unmodified lines
320 if (!q->limits.chunk_sectors &&320 if (!q->limits.chunk_sectors &&
321 (*bio)->bi_vcnt == 1 &&321 (*bio)->bi_vcnt == 1 &&
322 ((*bio)->bi_io_vec[0].bv_len +322 ((*bio)->bi_io_vec[0].bv_len +
323 (*bio)->bi_io_vec[0].bv_offset) <= PAGE_SIZE) {323 (*bio)->bi_io_vec[0].bv_offset) <= SZ_4K) {
324 *nr_segs = 1;324 *nr_segs = 1;
325 break;325 break;
326 }326 }

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t