12/18
mm/swap: bound synchronous discard during allocation
按设备 cluster 分配时,若空闲 cluster 链表耗尽则在所选设备上同步处理 discard,而非全局 fallback 扫描;抽出 swap_discard_one_cluster,在 si->lock 下摘一个 cluster,I/O 期间保留 CLUSTER_FLAG_DISCARD,完成后放回。每次设备分配尝试最多同步处理一个 cluster,限制 discard 工作量而不等 I/O 完成。