uint64_t oldcount = discard_threads.size();
uint64_t newcount = cct->_conf.get_val<uint64_t>("bdev_async_discard_threads");
+ if (newcount == 0) {
+ //backward compatibility mode to make sure legacy "bdev_async_discard" is
+ // taken into account if set.
+ newcount = cct->_conf.get_val<bool>("bdev_async_discard") ? 1 : 0;
+ }
if (!cct->_conf.get_val<bool>("bdev_enable_discard") || !support_discard || discard_stop) {
newcount = 0;
}
{
return {
"bdev_async_discard_threads"s,
- "bdev_enable_discard"s
+ "bdev_async_discard"s,
+ "bdev_enable_discard"s,
};
}
void KernelDevice::handle_conf_change(const ConfigProxy& conf,
const std::set <std::string> &changed)
{
- if (changed.count("bdev_async_discard_threads") || changed.count("bdev_enable_discard")) {
+ if (changed.count("bdev_async_discard_threads") || changed.count("bdev_async_discard") ||
+ changed.count("bdev_enable_discard")) {
_discard_update_threads();
}
}
see_also:
- bdev_enable_discard
- bdev_async_discard_max_pending
+- name: bdev_async_discard
+ long_desc: When set this works like an alias for 'bdev_async_discard_threads = 1"
+ mode to avoid implicit async discard mode disablement after upgrade.
+ Ignored if 'dev_asunc_discard_threads' is greater than zero.
+ This parameter is DEPRECATED and provided for backward compatibility for
+ Squid minor releases only.
+ PLEASE SWITCH TO 'bdev_async_discard_threads' USE.
+ type: bool
+ level: advanced
+ default: false
+ with_legacy: false
+ flags:
+ - runtime
+ see_also:
+ - bdev_enable_discard
+ - bdev_async_discard_threads
- name: bdev_async_discard_max_pending
desc: maximum number of pending discards
long_desc: The maximum number of pending async discards that can be queued and not claimed by an