misc: remove GNU Indent directives
[vpp.git] / src / vppinfra / test_pool_iterate.c
1 /*
2   Copyright (c) 2011 Cisco and/or its affiliates.
3
4   * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at:
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15 */
16
17 #include <vppinfra/mem.h>
18 #include <vppinfra/pool.h>
19
20 #ifdef __KERNEL__
21 #include <linux/unistd.h>
22 #else
23 #include <unistd.h>
24 #endif
25
26 int
27 main (int argc, char *argv[])
28 {
29   int i;
30   uword next;
31   u32 last_len = 0;
32   u32 *tp = 0;
33   u32 *junk;
34
35   clib_mem_init (0, 64ULL << 20);
36
37   for (i = 0; i < 70; i++)
38     {
39       pool_get (tp, junk);
40       if (vec_len (tp) > last_len)
41         {
42           last_len = vec_len (tp);
43           fformat (stdout, "vec_len (tp) now %d\n", last_len);
44         }
45     }
46
47   (void) junk;                  /* compiler warning */
48
49   pool_put_index (tp, 1);
50   pool_put_index (tp, 65);
51
52   for (i = 0; i < 70; i++)
53     {
54       int is_free;
55
56       is_free = pool_is_free_index (tp, i);
57
58       if (is_free == 0)
59         {
60           if (i == 1 || i == 65)
61             clib_warning ("oops, free index %d reported busy", i);
62         }
63       else
64         {
65           if (i != 1 && i != 65)
66             clib_warning ("oops, busy index %d reported free", i);
67         }
68     }
69
70   fformat (stdout, "vec_len (tp) is %d\n", vec_len (tp));
71
72   next = ~0;
73   do
74     {
75       next = pool_next_index (tp, next);
76       fformat (stdout, "next index %d\n", next);
77     }
78   while (next != ~0);
79
80   pool_foreach (junk, tp)
81    {
82     int is_free;
83
84     is_free = pool_is_free_index (tp, junk - tp);
85       if (is_free == 0)
86         {
87           if (i == 1 || i == 65)
88             clib_warning ("oops, free index %d reported busy", i);
89         }
90       else
91         {
92           if (i != 1 && i != 65)
93             clib_warning ("oops, busy index %d reported free", i);
94         }
95   }
96
97   return 0;
98 }
99
100 /*
101  * fd.io coding-style-patch-verification: ON
102  *
103  * Local Variables:
104  * eval: (c-set-style "gnu")
105  * End:
106  */