Print this page
11506 smatch resync

Split Close
Expand all
Collapse all
          --- old/usr/src/tools/smatch/src/check_held_dev.c
          +++ new/usr/src/tools/smatch/src/check_held_dev.c
↓ open down ↓ 105 lines elided ↑ open up ↑
 106  106          token = get_tokens_file("kernel.returns_held_funcs");
 107  107          if (!token)
 108  108                  return;
 109  109          if (token_type(token) != TOKEN_STREAMBEGIN)
 110  110                  return;
 111  111          token = token->next;
 112  112          while (token_type(token) != TOKEN_STREAMEND) {
 113  113                  if (token_type(token) != TOKEN_IDENT)
 114  114                          return;
 115  115                  func = show_ident(token->ident);
 116      -                return_implies_state(func, valid_ptr_min, valid_ptr_max,
      116 +                return_implies_state_sval(func, valid_ptr_min_sval, valid_ptr_max_sval,
 117  117                                       &match_returns_held, NULL);
 118  118                  return_implies_state(func, 0, 0, &match_returns_null,
 119  119                                           NULL);
 120  120                  token = token->next;
 121  121          }
 122  122          clear_token_alloc();
 123  123  }
 124  124  
 125  125  void check_held_dev(int id)
 126  126  {
 127  127          if (option_project != PROJ_KERNEL)
 128  128                  return;
 129  129  
 130  130          my_id = id;
 131  131          add_function_hook("dev_hold", &match_dev_hold, NULL);
 132  132          add_function_hook("dev_put", &match_dev_put, NULL);
 133  133          register_returns_held_funcs();
 134  134          add_hook(&match_return, RETURN_HOOK);
 135  135  }
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX