In #1265168: Rebuild the file list properly when a feature is enabled or disabled the following hack was committed to user_permission_features_rebuild():

commit b82b16d

function user_permission_features_rebuild($module) {
  if ($defaults = features_get_default('user_permission', $module)) {
    // Make sure the list of available node types is up to date, especially when
    // installing multiple features at once, for example from an install profile
    // or via drush.
    node_types_rebuild();
  ...
}

As discussed further in that issue, the actual solution is to clear specific static caches when needed, which finally led to issue #1265168: Rebuild the file list properly when a feature is enabled or disabled, but this code was already committed at that point.

It blindly rebuilds all node types whenever a feature containing user permissions is reverted, even if the permissions have nothing to do with nodes. This commit can best be reverted.