mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-05 22:12:16 +00:00
drbd: distribute former syncer_conf settings to disk, connection, and resource level
This commit breaks the API again. Move per-volume former syncer options into disk_conf. Move per-connection former syncer options into net_conf. Renamed the remainign sync_conf to res_opts Syncer settings have been changeable at runtime, so we need to prepare for these settings to be runtime-changeable in their new home as well. Introduce new configuration operations, and share the netlink attribute between "attach" (create new disk) and "disk-opts" (change options). Same for "connect" and "net-opts". Some fields cannot be changed at runtime, however. Introduce a new flag GENLA_F_INVARIANT to be able to trigger on that in the generated validation and assignment functions. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
This commit is contained in:
parent
6b75dced00
commit
f399002e68
10 changed files with 570 additions and 365 deletions
|
@ -59,12 +59,20 @@ enum {
|
|||
GENLA_F_MANDATORY = 1 << 14,
|
||||
GENLA_F_REQUIRED = 1 << 15,
|
||||
|
||||
/* This will not be present in the __u16 .nla_type, but can be
|
||||
* triggered on in <struct>_to_skb, to exclude "sensitive"
|
||||
* information from broadcasts, or on unpriviledged get requests.
|
||||
* This is useful because genetlink multicast groups can be listened in
|
||||
* on by anyone. */
|
||||
/* Below will not be present in the __u16 .nla_type, but can be
|
||||
* triggered on in <struct>_to_skb resp. <struct>_from_attrs */
|
||||
|
||||
/* To exclude "sensitive" information from broadcasts, or on
|
||||
* unpriviledged get requests. This is useful because genetlink
|
||||
* multicast groups can be listened in on by anyone. */
|
||||
GENLA_F_SENSITIVE = 1 << 16,
|
||||
|
||||
/* INVARIAN options cannot be changed at runtime.
|
||||
* Useful to share an attribute policy and struct definition,
|
||||
* between some "create" and "change" commands,
|
||||
* but disallow certain fields to be changed online.
|
||||
*/
|
||||
GENLA_F_INVARIANT = 1 << 17,
|
||||
};
|
||||
|
||||
#define __nla_type(x) ((__u16)((__u16)(x) & (__u16)NLA_TYPE_MASK))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue