| .. | .. | 
|---|
|  | 1 | +// SPDX-License-Identifier: GPL-2.0-or-later | 
|---|
| 1 | 2 | /* | 
|---|
| 2 | 3 | * net/sched/em_meta.c	Metadata ematch | 
|---|
| 3 |  | - * | 
|---|
| 4 |  | - *		This program is free software; you can redistribute it and/or | 
|---|
| 5 |  | - *		modify it under the terms of the GNU General Public License | 
|---|
| 6 |  | - *		as published by the Free Software Foundation; either version | 
|---|
| 7 |  | - *		2 of the License, or (at your option) any later version. | 
|---|
| 8 | 4 | * | 
|---|
| 9 | 5 | * Authors:	Thomas Graf <tgraf@suug.ch> | 
|---|
| 10 | 6 | * | 
|---|
| .. | .. | 
|---|
| 450 | 446 | *err = -1; | 
|---|
| 451 | 447 | return; | 
|---|
| 452 | 448 | } | 
|---|
| 453 |  | -	dst->value = sk->sk_wmem_queued; | 
|---|
|  | 449 | +	dst->value = READ_ONCE(sk->sk_wmem_queued); | 
|---|
| 454 | 450 | } | 
|---|
| 455 | 451 |  | 
|---|
| 456 | 452 | META_COLLECTOR(int_sk_fwd_alloc) | 
|---|
| .. | .. | 
|---|
| 525 | 521 | *err = -1; | 
|---|
| 526 | 522 | return; | 
|---|
| 527 | 523 | } | 
|---|
| 528 |  | -	dst->value = sk->sk_ack_backlog; | 
|---|
|  | 524 | +	dst->value = READ_ONCE(sk->sk_ack_backlog); | 
|---|
| 529 | 525 | } | 
|---|
| 530 | 526 |  | 
|---|
| 531 | 527 | META_COLLECTOR(int_sk_max_ack_bl) | 
|---|
| .. | .. | 
|---|
| 536 | 532 | *err = -1; | 
|---|
| 537 | 533 | return; | 
|---|
| 538 | 534 | } | 
|---|
| 539 |  | -	dst->value = sk->sk_max_ack_backlog; | 
|---|
|  | 535 | +	dst->value = READ_ONCE(sk->sk_max_ack_backlog); | 
|---|
| 540 | 536 | } | 
|---|
| 541 | 537 |  | 
|---|
| 542 | 538 | META_COLLECTOR(int_sk_prio) | 
|---|
| .. | .. | 
|---|
| 558 | 554 | *err = -1; | 
|---|
| 559 | 555 | return; | 
|---|
| 560 | 556 | } | 
|---|
| 561 |  | -	dst->value = sk->sk_rcvlowat; | 
|---|
|  | 557 | +	dst->value = READ_ONCE(sk->sk_rcvlowat); | 
|---|
| 562 | 558 | } | 
|---|
| 563 | 559 |  | 
|---|
| 564 | 560 | META_COLLECTOR(int_sk_rcvtimeo) | 
|---|
| .. | .. | 
|---|
| 912 | 908 | struct tcf_meta_hdr *hdr; | 
|---|
| 913 | 909 | struct meta_match *meta = NULL; | 
|---|
| 914 | 910 |  | 
|---|
| 915 |  | -	err = nla_parse(tb, TCA_EM_META_MAX, data, len, meta_policy, NULL); | 
|---|
|  | 911 | +	err = nla_parse_deprecated(tb, TCA_EM_META_MAX, data, len, | 
|---|
|  | 912 | +				   meta_policy, NULL); | 
|---|
| 916 | 913 | if (err < 0) | 
|---|
| 917 | 914 | goto errout; | 
|---|
| 918 | 915 |  | 
|---|