Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 509debc9 authored by Jozsef Kadlecsik's avatar Jozsef Kadlecsik
Browse files

netfilter: ipset: Simplify mtype_expire() for hash types



Remove one leve of intendation by using continue while
iterating over elements in bucket.

Ported from a patch proposed by Sergey Popovich <popovich_sergei@mail.ua>.

Signed-off-by: default avatarJozsef Kadlecsik <kadlec@blackhole.kfki.hu>
parent 5fdb5f69
Loading
Loading
Loading
Loading
+12 −13
Original line number Diff line number Diff line
@@ -487,22 +487,21 @@ mtype_expire(struct ip_set *set, struct htype *h)
				continue;
			}
			data = ahash_data(n, j, dsize);
			if (ip_set_timeout_expired(ext_timeout(data, set))) {
			if (!ip_set_timeout_expired(ext_timeout(data, set)))
				continue;
			pr_debug("expired %u/%u\n", i, j);
			clear_bit(j, n->used);
			smp_mb__after_atomic();
#ifdef IP_SET_HASH_WITH_NETS
			for (k = 0; k < IPSET_NET_COUNT; k++)
				mtype_del_cidr(h,
						NCIDR_PUT(DCIDR_GET(data->cidr,
								    k)),
					NCIDR_PUT(DCIDR_GET(data->cidr, k)),
					nets_length, k);
#endif
			ip_set_ext_destroy(set, data);
			set->elements--;
			d++;
		}
		}
		if (d >= AHASH_INIT_SIZE) {
			if (d >= n->size) {
				rcu_assign_pointer(hbucket(t, i), NULL);