Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6
[safe/jmp/linux-2.6] / drivers / gpu / drm / drm_debugfs.c
index 6ce0e26..677b275 100644 (file)
@@ -32,6 +32,7 @@
 
 #include <linux/debugfs.h>
 #include <linux/seq_file.h>
+#include <linux/slab.h>
 #include "drmP.h"
 
 #if defined(CONFIG_DEBUG_FS)
@@ -100,15 +101,17 @@ int drm_debugfs_create_files(struct drm_info_list *files, int count,
                    (dev->driver->driver_features & features) != features)
                        continue;
 
-               tmp = drm_alloc(sizeof(struct drm_info_node),
-                               _DRM_DRIVER);
+               tmp = kmalloc(sizeof(struct drm_info_node), GFP_KERNEL);
+               if (tmp == NULL) {
+                       ret = -1;
+                       goto fail;
+               }
                ent = debugfs_create_file(files[i].name, S_IFREG | S_IRUGO,
                                          root, tmp, &drm_debugfs_fops);
                if (!ent) {
                        DRM_ERROR("Cannot create /sys/kernel/debug/dri/%s/%s\n",
                                  name, files[i].name);
-                       drm_free(tmp, sizeof(struct drm_info_node),
-                                _DRM_DRIVER);
+                       kfree(tmp);
                        ret = -1;
                        goto fail;
                }
@@ -196,8 +199,7 @@ int drm_debugfs_remove_files(struct drm_info_list *files, int count,
                        if (tmp->info_ent == &files[i]) {
                                debugfs_remove(tmp->dent);
                                list_del(pos);
-                               drm_free(tmp, sizeof(struct drm_info_node),
-                                        _DRM_DRIVER);
+                               kfree(tmp);
                        }
                }
        }