LASSERT(name != NULL);
        LASSERT(cache_threshold < cache_size);
 
-       OBD_ALLOC_PTR(cache);
+       cache = kzalloc(sizeof(*cache), GFP_NOFS);
        if (cache == NULL)
                return ERR_PTR(-ENOMEM);
 
        CDEBUG(D_INFO, "  Cache reqs: %llu\n", cache->fci_stat.fst_cache);
        CDEBUG(D_INFO, "  Cache hits: %llu%%\n", pct);
 
-       OBD_FREE_PTR(cache);
+       kfree(cache);
 }
 
 /**
        list_del(&node->fce_list);
        list_del(&node->fce_lru);
        cache->fci_cache_count--;
-       OBD_FREE_PTR(node);
+       kfree(node);
 }
 
 /**
 
        OBD_ALLOC_GFP(fldt, sizeof(*fldt), GFP_ATOMIC);
        if (!fldt) {
-               OBD_FREE_PTR(f_new);
+               kfree(f_new);
                /* overlap is not allowed, so dont mess up list. */
                return;
        }
                f_curr->fce_range.lsr_end = max(f_curr->fce_range.lsr_end,
                                                new_end);
 
-               OBD_FREE_PTR(f_new);
+               kfree(f_new);
                fld_fix_new_list(cache);
 
        } else if (new_start <= f_curr->fce_range.lsr_start &&
                 *       e.g. whole range migrated. update fld cache entry */
 
                f_curr->fce_range = *range;
-               OBD_FREE_PTR(f_new);
+               kfree(f_new);
                fld_fix_new_list(cache);
 
        } else if (f_curr->fce_range.lsr_start < new_start &&
 
        LASSERT(range_is_sane(range));
 
-       OBD_ALLOC_PTR(f_new);
+       f_new = kzalloc(sizeof(*f_new), GFP_NOFS);
        if (!f_new)
                return ERR_PTR(-ENOMEM);
 
        rc = fld_cache_insert_nolock(cache, flde);
        write_unlock(&cache->fci_lock);
        if (rc)
-               OBD_FREE_PTR(flde);
+               kfree(flde);
 
        return rc;
 }
 
        CDEBUG(D_INFO, "%s: Adding target %s (idx %llu)\n",
                        fld->lcf_name, name, tar->ft_idx);
 
-       OBD_ALLOC_PTR(target);
+       target = kzalloc(sizeof(*target), GFP_NOFS);
        if (target == NULL)
                return -ENOMEM;
 
        list_for_each_entry(tmp, &fld->lcf_targets, ft_chain) {
                if (tmp->ft_idx == tar->ft_idx) {
                        spin_unlock(&fld->lcf_lock);
-                       OBD_FREE_PTR(target);
+                       kfree(target);
                        CERROR("Target %s exists in FLD and known as %s:#%llu\n",
                               name, fld_target_name(tmp), tmp->ft_idx);
                        return -EEXIST;
                        if (target->ft_exp != NULL)
                                class_export_put(target->ft_exp);
 
-                       OBD_FREE_PTR(target);
+                       kfree(target);
                        return 0;
                }
        }
                list_del(&target->ft_chain);
                if (target->ft_exp != NULL)
                        class_export_put(target->ft_exp);
-               OBD_FREE_PTR(target);
+               kfree(target);
        }
        spin_unlock(&fld->lcf_lock);