networking.bonds: add support for arbitrary driverOptions
Until now the four attributes available very selectively provided a small subset, while copying upstream documentation. We make driver options an arbitrary key-value set and point to kernel documentation, which is always up-to-date. This way every option can be set. The four already existing options are deprecated with a warning.
This commit is contained in:
@@ -587,11 +587,28 @@ in
|
||||
description = "The interfaces to bond together";
|
||||
};
|
||||
|
||||
driverOptions = mkOption {
|
||||
type = types.attrsOf types.str;
|
||||
default = {};
|
||||
example = literalExample {
|
||||
interfaces = [ "eth0" "wlan0" ];
|
||||
miimon = 100;
|
||||
mode = "active-backup";
|
||||
};
|
||||
description = ''
|
||||
Options for the bonding driver.
|
||||
Documentation can be found in
|
||||
<link xlink:href="https://www.kernel.org/doc/Documentation/networking/bonding.txt" />
|
||||
'';
|
||||
|
||||
};
|
||||
|
||||
lacp_rate = mkOption {
|
||||
default = null;
|
||||
example = "fast";
|
||||
type = types.nullOr types.str;
|
||||
description = ''
|
||||
DEPRECATED, use `driverOptions`.
|
||||
Option specifying the rate in which we'll ask our link partner
|
||||
to transmit LACPDU packets in 802.3ad mode.
|
||||
'';
|
||||
@@ -602,6 +619,7 @@ in
|
||||
example = 100;
|
||||
type = types.nullOr types.int;
|
||||
description = ''
|
||||
DEPRECATED, use `driverOptions`.
|
||||
Miimon is the number of millisecond in between each round of polling
|
||||
by the device driver for failed links. By default polling is not
|
||||
enabled and the driver is trusted to properly detect and handle
|
||||
@@ -614,6 +632,7 @@ in
|
||||
example = "active-backup";
|
||||
type = types.nullOr types.str;
|
||||
description = ''
|
||||
DEPRECATED, use `driverOptions`.
|
||||
The mode which the bond will be running. The default mode for
|
||||
the bonding driver is balance-rr, optimizing for throughput.
|
||||
More information about valid modes can be found at
|
||||
@@ -626,6 +645,7 @@ in
|
||||
example = "layer2+3";
|
||||
type = types.nullOr types.str;
|
||||
description = ''
|
||||
DEPRECATED, use `driverOptions`.
|
||||
Selects the transmit hash policy to use for slave selection in
|
||||
balance-xor, 802.3ad, and tlb modes.
|
||||
'';
|
||||
|
||||
Reference in New Issue
Block a user