summaryrefslogtreecommitdiffstats
path: root/tc
diff options
context:
space:
mode:
authorStephen Hemminger <stephen@networkplumber.org>2016-01-18 09:37:38 -0800
committerStephen Hemminger <stephen@networkplumber.org>2016-01-18 09:37:38 -0800
commitbc223ab8617720902d75d855a702273dc6d232c8 (patch)
tree02610672843357dcc5017303752b691aaae58f8b /tc
parent92a0236a3cdf3438000834121b7ea8a09f1f52b1 (diff)
Revert "tc: fix compilation with old gcc (< 4.6)"
This reverts commit 8f80d450c3cb0996d839996807b77ca28bd4da09.
Diffstat (limited to 'tc')
-rw-r--r--tc/tc_bpf.c48
1 files changed, 21 insertions, 27 deletions
diff --git a/tc/tc_bpf.c b/tc/tc_bpf.c
index 47993bad..276871a5 100644
--- a/tc/tc_bpf.c
+++ b/tc/tc_bpf.c
@@ -257,14 +257,12 @@ static bool bpf_may_skip_map_creation(int file_fd)
static int bpf_create_map(enum bpf_map_type type, unsigned int size_key,
unsigned int size_value, unsigned int max_elem)
{
- union bpf_attr attr;
-
- memset(&attr, 0, sizeof(attr));
-
- attr.map_type = type;
- attr.key_size = size_key;
- attr.value_size = size_value;
- attr.max_entries = max_elem;
+ union bpf_attr attr = {
+ .map_type = type,
+ .key_size = size_key,
+ .value_size = size_value,
+ .max_entries = max_elem,
+ };
return bpf(BPF_MAP_CREATE, &attr, sizeof(attr));
}
@@ -272,14 +270,12 @@ static int bpf_create_map(enum bpf_map_type type, unsigned int size_key,
static int bpf_update_map(int fd, const void *key, const void *value,
uint64_t flags)
{
- union bpf_attr attr;
-
- memset(&attr, 0, sizeof(attr));
-
- attr.map_fd = fd;
- attr.key = bpf_ptr_to_u64(key);
- attr.value = bpf_ptr_to_u64(value);
- attr.flags = flags;
+ union bpf_attr attr = {
+ .map_fd = fd,
+ .key = bpf_ptr_to_u64(key),
+ .value = bpf_ptr_to_u64(value),
+ .flags = flags,
+ };
return bpf(BPF_MAP_UPDATE_ELEM, &attr, sizeof(attr));
}
@@ -287,17 +283,15 @@ static int bpf_update_map(int fd, const void *key, const void *value,
static int bpf_prog_load(enum bpf_prog_type type, const struct bpf_insn *insns,
unsigned int len, const char *license)
{
- union bpf_attr attr;
-
- memset(&attr, 0, sizeof(attr));
-
- attr.prog_type = type;
- attr.insns = bpf_ptr_to_u64(insns);
- attr.insn_cnt = len / sizeof(struct bpf_insn);
- attr.license = bpf_ptr_to_u64(license);
- attr.log_buf = bpf_ptr_to_u64(bpf_log_buf);
- attr.log_size = sizeof(bpf_log_buf);
- attr.log_level = 1;
+ union bpf_attr attr = {
+ .prog_type = type,
+ .insns = bpf_ptr_to_u64(insns),
+ .insn_cnt = len / sizeof(struct bpf_insn),
+ .license = bpf_ptr_to_u64(license),
+ .log_buf = bpf_ptr_to_u64(bpf_log_buf),
+ .log_size = sizeof(bpf_log_buf),
+ .log_level = 1,
+ };
return bpf(BPF_PROG_LOAD, &attr, sizeof(attr));
}