922 iter->table = table;
923 iter->bucket = ct;
924 return entry;
925 }
926 }
927 ++ct;
928 }
929
930 if (table == resolved) {
931 ct = 0;
932 table = unresolved;
933 goto rescan;
934 }
935 if (table == unresolved) {
936 ct = 0;
937 table = proxies;
938 goto rescan;
939 }
940 return NULL;
941}
942
943static void *aarp_seq_start(struct seq_file *seq, loff_t *pos)
944 __acquires(aarp_lock)
945{
946 struct aarp_iter_state *iter = seq->private;
947
948 read_lock_bh(&aarp_lock);
949 iter->table = resolved;
950 iter->bucket = 0;
951
952 return *pos ? iter_next(iter, pos) : SEQ_START_TOKEN;
953}
954
955static void *aarp_seq_next(struct seq_file *seq, void *v, loff_t *pos)
956{
957 struct aarp_entry *entry = v;
958 struct aarp_iter_state *iter = seq->private;
959
960 ++*pos;
961
962