|
|
f8f52d |
WHATS_NEW | 1 +
|
|
|
f8f52d |
lib/device/bcache.c | 10 +++++++++-
|
|
|
f8f52d |
2 files changed, 10 insertions(+), 1 deletion(-)
|
|
|
f8f52d |
|
|
|
f8f52d |
diff --git a/WHATS_NEW b/WHATS_NEW
|
|
|
f8f52d |
index 47db4a3..8063364 100644
|
|
|
f8f52d |
--- a/WHATS_NEW
|
|
|
f8f52d |
+++ b/WHATS_NEW
|
|
|
f8f52d |
@@ -10,6 +10,7 @@ Version 2.02.182 -
|
|
|
f8f52d |
Fix change of monitoring in clustered volumes.
|
|
|
f8f52d |
Fix lvconvert striped/raid0/raid0_meta -> raid6 regression.
|
|
|
f8f52d |
Add After=rbdmap.service to {lvm2-activation-net,blk-availability}.service.
|
|
|
f8f52d |
+ Reduce max concurrent aios to avoid EMFILE with many devices.
|
|
|
f8f52d |
Fix lvconvert conversion attempts to linear.
|
|
|
f8f52d |
Fix lvconvert raid0/raid0_meta -> striped regression.
|
|
|
f8f52d |
Fix lvconvert --splitmirror for mirror type (2.02.178).
|
|
|
f8f52d |
diff --git a/lib/device/bcache.c b/lib/device/bcache.c
|
|
|
f8f52d |
index 6886b74..7384a32 100644
|
|
|
f8f52d |
--- a/lib/device/bcache.c
|
|
|
f8f52d |
+++ b/lib/device/bcache.c
|
|
|
f8f52d |
@@ -253,7 +253,15 @@ static bool _async_issue(struct io_engine *ioe, enum dir d, int fd,
|
|
|
f8f52d |
return true;
|
|
|
f8f52d |
}
|
|
|
f8f52d |
|
|
|
f8f52d |
-#define MAX_IO 1024
|
|
|
f8f52d |
+/*
|
|
|
f8f52d |
+ * MAX_IO is returned to the layer above via bcache_max_prefetches() which
|
|
|
f8f52d |
+ * tells the caller how many devices to submit io for concurrently. There will
|
|
|
f8f52d |
+ * be an open file descriptor for each of these, so keep it low enough to avoid
|
|
|
f8f52d |
+ * reaching the default max open file limit (1024) when there are over 1024
|
|
|
f8f52d |
+ * devices being scanned.
|
|
|
f8f52d |
+ */
|
|
|
f8f52d |
+
|
|
|
f8f52d |
+#define MAX_IO 256
|
|
|
f8f52d |
#define MAX_EVENT 64
|
|
|
f8f52d |
|
|
|
f8f52d |
static bool _async_wait(struct io_engine *ioe, io_complete_fn fn)
|