| .. | .. |
|---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-or-later |
|---|
| 1 | 2 | /* |
|---|
| 2 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 3 | | - * it under the terms of the GNU General Public License as published by |
|---|
| 4 | | - * the Free Software Foundation; either version 2 of the License, or |
|---|
| 5 | | - * (at your option) any later version. |
|---|
| 6 | 3 | * |
|---|
| 7 | 4 | * Copyright Jonathan Naylor G4KLX (g4klx@g4klx.demon.co.uk) |
|---|
| 8 | 5 | * Copyright Alan Cox GW4PTS (alan@lxorguk.ukuu.org.uk) |
|---|
| .. | .. |
|---|
| 266 | 263 | case 3: |
|---|
| 267 | 264 | re_sort_routes(nr_node, 0, 1); |
|---|
| 268 | 265 | re_sort_routes(nr_node, 1, 2); |
|---|
| 269 | | - /* fall through */ |
|---|
| 266 | + fallthrough; |
|---|
| 270 | 267 | case 2: |
|---|
| 271 | 268 | re_sort_routes(nr_node, 0, 1); |
|---|
| 272 | 269 | case 1: |
|---|
| .. | .. |
|---|
| 359 | 356 | switch (i) { |
|---|
| 360 | 357 | case 0: |
|---|
| 361 | 358 | nr_node->routes[0] = nr_node->routes[1]; |
|---|
| 362 | | - /* fall through */ |
|---|
| 359 | + fallthrough; |
|---|
| 363 | 360 | case 1: |
|---|
| 364 | 361 | nr_node->routes[1] = nr_node->routes[2]; |
|---|
| 365 | 362 | case 2: |
|---|
| .. | .. |
|---|
| 482 | 479 | switch (i) { |
|---|
| 483 | 480 | case 0: |
|---|
| 484 | 481 | s->routes[0] = s->routes[1]; |
|---|
| 485 | | - /* Fallthrough */ |
|---|
| 482 | + fallthrough; |
|---|
| 486 | 483 | case 1: |
|---|
| 487 | 484 | s->routes[1] = s->routes[2]; |
|---|
| 488 | 485 | case 2: |
|---|
| .. | .. |
|---|
| 529 | 526 | switch (i) { |
|---|
| 530 | 527 | case 0: |
|---|
| 531 | 528 | t->routes[0] = t->routes[1]; |
|---|
| 532 | | - /* fall through */ |
|---|
| 529 | + fallthrough; |
|---|
| 533 | 530 | case 1: |
|---|
| 534 | 531 | t->routes[1] = t->routes[2]; |
|---|
| 535 | 532 | case 2: |
|---|
| .. | .. |
|---|
| 842 | 839 | #ifdef CONFIG_PROC_FS |
|---|
| 843 | 840 | |
|---|
| 844 | 841 | static void *nr_node_start(struct seq_file *seq, loff_t *pos) |
|---|
| 842 | + __acquires(&nr_node_list_lock) |
|---|
| 845 | 843 | { |
|---|
| 846 | 844 | spin_lock_bh(&nr_node_list_lock); |
|---|
| 847 | 845 | return seq_hlist_start_head(&nr_node_list, *pos); |
|---|
| .. | .. |
|---|
| 853 | 851 | } |
|---|
| 854 | 852 | |
|---|
| 855 | 853 | static void nr_node_stop(struct seq_file *seq, void *v) |
|---|
| 854 | + __releases(&nr_node_list_lock) |
|---|
| 856 | 855 | { |
|---|
| 857 | 856 | spin_unlock_bh(&nr_node_list_lock); |
|---|
| 858 | 857 | } |
|---|
| .. | .. |
|---|
| 897 | 896 | }; |
|---|
| 898 | 897 | |
|---|
| 899 | 898 | static void *nr_neigh_start(struct seq_file *seq, loff_t *pos) |
|---|
| 899 | + __acquires(&nr_neigh_list_lock) |
|---|
| 900 | 900 | { |
|---|
| 901 | 901 | spin_lock_bh(&nr_neigh_list_lock); |
|---|
| 902 | 902 | return seq_hlist_start_head(&nr_neigh_list, *pos); |
|---|
| .. | .. |
|---|
| 908 | 908 | } |
|---|
| 909 | 909 | |
|---|
| 910 | 910 | static void nr_neigh_stop(struct seq_file *seq, void *v) |
|---|
| 911 | + __releases(&nr_neigh_list_lock) |
|---|
| 911 | 912 | { |
|---|
| 912 | 913 | spin_unlock_bh(&nr_neigh_list_lock); |
|---|
| 913 | 914 | } |
|---|