Trước khi nhân Linux 6.3 có khả năng được phát hành ổn định vào Chủ nhật, hai bản vá phút cuối cho trình điều khiển hệ thống tệp Btrfs đã được gửi hôm nay để giải quyết một vấn đề cấp bách kể từ Linux 6.2.
Btrfs dành cho Linux 6.3 đang hoạt động vào phút cuối để khắc phục sự cố với loại bỏ không đồng bộ, tính năng này đã được bật theo mặc định kể từ Linux 6.2. Hành vi hủy bỏ không đồng bộ mặc định có giới hạn IOPS thấp và việc xử lý một loạt lớn các lần hủy bỏ sẽ mất nhiều thời gian và gây lãng phí năng lượng/hoạt động của đĩa.
Boris Burkov đã gửi các bản vá Btrfs vào đầu tháng này và đã giải thích:
“Kể từ khi discard=async trở thành mặc định ngầm định trong btrfs trong nhân 6.2, đã có rất nhiều phàn nàn về việc loại bỏ quá dàn trải trên các hệ thống máy trạm. Điều này dẫn đến các tình huống như ổ đĩa của người dùng không ở chế độ chờ trong một khoảng thời gian dài bất ngờ.
Điều này là do giới hạn iops mặc định tương đối thấp là 10, vì vậy loạt bài này tăng giới hạn mặc định lên 1000 (độ trễ 1ms) và sửa đổi một dự phòng kỳ lạ hành vi cho giới hạn=0 được hiểu là không giới hạn.
…
Trước đây, mặc định là 10 tương đối thận trọng. Điều này dẫn đến độ trễ 100 mili giây, vì vậy với ~300 lượt hủy trong một lần xác nhận, nó sẽ mất toàn bộ 30 giây cho đến khi lần xác nhận tiếp theo hoàn thành việc loại bỏ. Trên máy trạm, điều này dẫn đến việc ổ đĩa không bao giờ ở chế độ chờ, gây lãng phí năng lượng/pin, v.v.Đặt giá trị mặc định thành 1000, điều này dẫn đến việc sử dụng độ trễ nhỏ nhất có thể, hiện tại, là 1 mili giây. Điều này đã được chứng minh là không khiến người báo cáo ban đầu bận rộn một cách bệnh lý.”
Thay đổi Btrfs sẽ sớm xuất hiện trong Linux 6.3 Git và có lẽ cũng được Linux 6.2 chọn làm bản sửa lỗi ổn định.