vl_rotate.c (f401b2c9931a70317b6ac0d3e6020adc3a404cc0) vl_rotate.c (88c853c3f5c0a07c5db61b494ee25152535cfeee)
1// SPDX-License-Identifier: GPL-2.0-or-later
2/* Handle vlserver selection and rotation.
3 *
4 * Copyright (C) 2018 Red Hat, Inc. All Rights Reserved.
5 * Written by David Howells (dhowells@redhat.com)
6 */
7
8#include <linux/kernel.h>

--- 31 unchanged lines hidden (view full) ---

40{
41 struct afs_cell *cell = vc->cell;
42 unsigned int dns_lookup_count;
43
44 if (cell->dns_source == DNS_RECORD_UNAVAILABLE ||
45 cell->dns_expiry <= ktime_get_real_seconds()) {
46 dns_lookup_count = smp_load_acquire(&cell->dns_lookup_count);
47 set_bit(AFS_CELL_FL_DO_LOOKUP, &cell->flags);
1// SPDX-License-Identifier: GPL-2.0-or-later
2/* Handle vlserver selection and rotation.
3 *
4 * Copyright (C) 2018 Red Hat, Inc. All Rights Reserved.
5 * Written by David Howells (dhowells@redhat.com)
6 */
7
8#include <linux/kernel.h>

--- 31 unchanged lines hidden (view full) ---

40{
41 struct afs_cell *cell = vc->cell;
42 unsigned int dns_lookup_count;
43
44 if (cell->dns_source == DNS_RECORD_UNAVAILABLE ||
45 cell->dns_expiry <= ktime_get_real_seconds()) {
46 dns_lookup_count = smp_load_acquire(&cell->dns_lookup_count);
47 set_bit(AFS_CELL_FL_DO_LOOKUP, &cell->flags);
48 queue_work(afs_wq, &cell->manager);
48 afs_queue_cell(cell);
49
50 if (cell->dns_source == DNS_RECORD_UNAVAILABLE) {
51 if (wait_var_event_interruptible(
52 &cell->dns_lookup_count,
53 smp_load_acquire(&cell->dns_lookup_count)
54 != dns_lookup_count) < 0) {
55 vc->error = -ERESTARTSYS;
56 return false;

--- 292 unchanged lines hidden ---
49
50 if (cell->dns_source == DNS_RECORD_UNAVAILABLE) {
51 if (wait_var_event_interruptible(
52 &cell->dns_lookup_count,
53 smp_load_acquire(&cell->dns_lookup_count)
54 != dns_lookup_count) < 0) {
55 vc->error = -ERESTARTSYS;
56 return false;

--- 292 unchanged lines hidden ---