Commit 49be4fb9cc3431fc4ebc71c764db848483b2a16c

Authored by Al Viro
1 parent 68bf861107

overlayfs: embed root into overlay_readdir_data

no sense having it a pointer - all instances have it pointing to
local variable in the same stack frame

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Showing 1 changed file with 5 additions and 6 deletions Side-by-side Diff

fs/overlayfs/readdir.c
... ... @@ -36,7 +36,7 @@
36 36 struct ovl_readdir_data {
37 37 struct dir_context ctx;
38 38 bool is_merge;
39   - struct rb_root *root;
  39 + struct rb_root root;
40 40 struct list_head *list;
41 41 struct list_head *middle;
42 42 int count;
... ... @@ -101,7 +101,7 @@
101 101 const char *name, int len, u64 ino,
102 102 unsigned int d_type)
103 103 {
104   - struct rb_node **newp = &rdd->root->rb_node;
  104 + struct rb_node **newp = &rdd->root.rb_node;
105 105 struct rb_node *parent = NULL;
106 106 struct ovl_cache_entry *p;
107 107  
... ... @@ -126,7 +126,7 @@
126 126  
127 127 list_add_tail(&p->l_node, rdd->list);
128 128 rb_link_node(&p->node, parent, newp);
129   - rb_insert_color(&p->node, rdd->root);
  129 + rb_insert_color(&p->node, &rdd->root);
130 130  
131 131 return 0;
132 132 }
... ... @@ -137,7 +137,7 @@
137 137 {
138 138 struct ovl_cache_entry *p;
139 139  
140   - p = ovl_cache_entry_find(rdd->root, name, namelen);
  140 + p = ovl_cache_entry_find(&rdd->root, name, namelen);
141 141 if (p) {
142 142 list_move_tail(&p->l_node, rdd->middle);
143 143 } else {
144 144  
... ... @@ -277,12 +277,11 @@
277 277 struct list_head *list)
278 278 {
279 279 int err;
280   - struct rb_root root = RB_ROOT;
281 280 struct list_head middle;
282 281 struct ovl_readdir_data rdd = {
283 282 .ctx.actor = ovl_fill_merge,
284 283 .list = list,
285   - .root = &root,
  284 + .root = RB_ROOT,
286 285 .is_merge = false,
287 286 };
288 287