.. | .. |
---|
21 | 21 | unsigned long n; |
---|
22 | 22 | }; |
---|
23 | 23 | |
---|
24 | | -static struct dentry *cma_debugfs_root; |
---|
25 | | - |
---|
26 | 24 | static int cma_debugfs_get(void *data, u64 *val) |
---|
27 | 25 | { |
---|
28 | 26 | unsigned long *p = data; |
---|
.. | .. |
---|
31 | 29 | |
---|
32 | 30 | return 0; |
---|
33 | 31 | } |
---|
34 | | -DEFINE_SIMPLE_ATTRIBUTE(cma_debugfs_fops, cma_debugfs_get, NULL, "%llu\n"); |
---|
| 32 | +DEFINE_DEBUGFS_ATTRIBUTE(cma_debugfs_fops, cma_debugfs_get, NULL, "%llu\n"); |
---|
35 | 33 | |
---|
36 | 34 | static int cma_used_get(void *data, u64 *val) |
---|
37 | 35 | { |
---|
.. | .. |
---|
46 | 44 | |
---|
47 | 45 | return 0; |
---|
48 | 46 | } |
---|
49 | | -DEFINE_SIMPLE_ATTRIBUTE(cma_used_fops, cma_used_get, NULL, "%llu\n"); |
---|
| 47 | +DEFINE_DEBUGFS_ATTRIBUTE(cma_used_fops, cma_used_get, NULL, "%llu\n"); |
---|
50 | 48 | |
---|
51 | 49 | static int cma_maxchunk_get(void *data, u64 *val) |
---|
52 | 50 | { |
---|
.. | .. |
---|
68 | 66 | |
---|
69 | 67 | return 0; |
---|
70 | 68 | } |
---|
71 | | -DEFINE_SIMPLE_ATTRIBUTE(cma_maxchunk_fops, cma_maxchunk_get, NULL, "%llu\n"); |
---|
| 69 | +DEFINE_DEBUGFS_ATTRIBUTE(cma_maxchunk_fops, cma_maxchunk_get, NULL, "%llu\n"); |
---|
72 | 70 | |
---|
73 | 71 | static void cma_add_to_cma_mem_list(struct cma *cma, struct cma_mem *mem) |
---|
74 | 72 | { |
---|
.. | .. |
---|
128 | 126 | |
---|
129 | 127 | return cma_free_mem(cma, pages); |
---|
130 | 128 | } |
---|
131 | | -DEFINE_SIMPLE_ATTRIBUTE(cma_free_fops, NULL, cma_free_write, "%llu\n"); |
---|
| 129 | +DEFINE_DEBUGFS_ATTRIBUTE(cma_free_fops, NULL, cma_free_write, "%llu\n"); |
---|
132 | 130 | |
---|
133 | 131 | static int cma_alloc_mem(struct cma *cma, int count) |
---|
134 | 132 | { |
---|
.. | .. |
---|
139 | 137 | if (!mem) |
---|
140 | 138 | return -ENOMEM; |
---|
141 | 139 | |
---|
142 | | - p = cma_alloc(cma, count, 0, false); |
---|
| 140 | + p = cma_alloc(cma, count, 0, GFP_KERNEL); |
---|
143 | 141 | if (!p) { |
---|
144 | 142 | kfree(mem); |
---|
145 | 143 | return -ENOMEM; |
---|
.. | .. |
---|
160 | 158 | |
---|
161 | 159 | return cma_alloc_mem(cma, pages); |
---|
162 | 160 | } |
---|
163 | | -DEFINE_SIMPLE_ATTRIBUTE(cma_alloc_fops, NULL, cma_alloc_write, "%llu\n"); |
---|
| 161 | +DEFINE_DEBUGFS_ATTRIBUTE(cma_alloc_fops, NULL, cma_alloc_write, "%llu\n"); |
---|
164 | 162 | |
---|
165 | | -static void cma_debugfs_add_one(struct cma *cma, int idx) |
---|
| 163 | +static void cma_debugfs_add_one(struct cma *cma, struct dentry *root_dentry) |
---|
166 | 164 | { |
---|
167 | 165 | struct dentry *tmp; |
---|
168 | 166 | char name[16]; |
---|
169 | | - int u32s; |
---|
170 | 167 | |
---|
171 | 168 | scnprintf(name, sizeof(name), "cma-%s", cma->name); |
---|
172 | 169 | |
---|
173 | | - tmp = debugfs_create_dir(name, cma_debugfs_root); |
---|
| 170 | + tmp = debugfs_create_dir(name, root_dentry); |
---|
174 | 171 | |
---|
175 | 172 | debugfs_create_file("alloc", 0200, tmp, cma, &cma_alloc_fops); |
---|
176 | 173 | debugfs_create_file("free", 0200, tmp, cma, &cma_free_fops); |
---|
.. | .. |
---|
182 | 179 | debugfs_create_file("used", 0444, tmp, cma, &cma_used_fops); |
---|
183 | 180 | debugfs_create_file("maxchunk", 0444, tmp, cma, &cma_maxchunk_fops); |
---|
184 | 181 | |
---|
185 | | - u32s = DIV_ROUND_UP(cma_bitmap_maxno(cma), BITS_PER_BYTE * sizeof(u32)); |
---|
186 | | - debugfs_create_u32_array_hex("bitmap", 0444, tmp, (u32 *)cma->bitmap, u32s); |
---|
| 182 | + cma->dfs_bitmap.array = (u32 *)cma->bitmap; |
---|
| 183 | + cma->dfs_bitmap.n_elements = DIV_ROUND_UP(cma_bitmap_maxno(cma), |
---|
| 184 | + BITS_PER_BYTE * sizeof(u32)); |
---|
| 185 | + debugfs_create_u32_array("bitmap", 0444, tmp, &cma->dfs_bitmap); |
---|
187 | 186 | } |
---|
188 | 187 | |
---|
189 | 188 | static int __init cma_debugfs_init(void) |
---|
190 | 189 | { |
---|
| 190 | + struct dentry *cma_debugfs_root; |
---|
191 | 191 | int i; |
---|
192 | 192 | |
---|
193 | 193 | cma_debugfs_root = debugfs_create_dir("cma", NULL); |
---|
194 | | - if (!cma_debugfs_root) |
---|
195 | | - return -ENOMEM; |
---|
196 | 194 | |
---|
197 | 195 | for (i = 0; i < cma_area_count; i++) |
---|
198 | | - cma_debugfs_add_one(&cma_areas[i], i); |
---|
| 196 | + cma_debugfs_add_one(&cma_areas[i], cma_debugfs_root); |
---|
199 | 197 | |
---|
200 | 198 | return 0; |
---|
201 | 199 | } |
---|