diff options
author | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2019-04-15 19:14:45 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-04-16 20:46:17 -0700 |
commit | ad910c7c01269f229a97c335f2dc669fff750f65 (patch) | |
tree | 94815209f5a50aaa29411e6e5511f5076f049b68 /net | |
parent | 3b2e2904deb314cc77a2192f506f2fd44e3d10d0 (diff) | |
download | linux-ad910c7c01269f229a97c335f2dc669fff750f65.tar.gz linux-ad910c7c01269f229a97c335f2dc669fff750f65.tar.bz2 linux-ad910c7c01269f229a97c335f2dc669fff750f65.zip |
net/core: work around section mismatch warning for ptp_classifier
The routine ptp_classifier_init() uses an initializer for an
automatic struct type variable which refers to an __initdata
symbol. This is perfectly legal, but may trigger a section
mismatch warning when running the compiler in -fpic mode, due
to the fact that the initializer may be emitted into an anonymous
.data section thats lack the __init annotation. So work around it
by using assignments instead.
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/core/ptp_classifier.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/core/ptp_classifier.c b/net/core/ptp_classifier.c index 703cf76aa7c2..7109c168b5e0 100644 --- a/net/core/ptp_classifier.c +++ b/net/core/ptp_classifier.c @@ -185,9 +185,10 @@ void __init ptp_classifier_init(void) { 0x16, 0, 0, 0x00000000 }, { 0x06, 0, 0, 0x00000000 }, }; - struct sock_fprog_kern ptp_prog = { - .len = ARRAY_SIZE(ptp_filter), .filter = ptp_filter, - }; + struct sock_fprog_kern ptp_prog; + + ptp_prog.len = ARRAY_SIZE(ptp_filter); + ptp_prog.filter = ptp_filter; BUG_ON(bpf_prog_create(&ptp_insns, &ptp_prog)); } |