OSDN Git Service

[FreeBSD] Use M_WAITOK when allocating driver memory.
authorRobert Noland <rnoland@2hip.net>
Fri, 3 Oct 2008 18:05:45 +0000 (14:05 -0400)
committerRobert Noland <rnoland@2hip.net>
Fri, 3 Oct 2008 18:05:45 +0000 (14:05 -0400)
We don't explicitly check for error here and M_WAITOK will just put the
process to sleep waiting on resources to become available.

Suggested by John Baldwin

bsd-core/i915_drv.c
bsd-core/mach64_drv.c
bsd-core/mga_drv.c
bsd-core/r128_drv.c
bsd-core/radeon_drv.c
bsd-core/savage_drv.c
bsd-core/sis_drv.c
bsd-core/tdfx_drv.c
bsd-core/via_drv.c

index def35f0..b2658f0 100644 (file)
@@ -111,7 +111,9 @@ i915_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        i915_configure(dev);
 
        return drm_attach(nbdev, i915_pciidlist);
index adb83d3..dcf35bb 100644 (file)
@@ -85,7 +85,9 @@ mach64_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        mach64_configure(dev);
 
        return drm_attach(nbdev, mach64_pciidlist);
index 5554236..dfb4b71 100644 (file)
@@ -129,7 +129,9 @@ mga_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        mga_configure(dev);
 
        return drm_attach(nbdev, mga_pciidlist);
index 4c20af4..f325114 100644 (file)
@@ -84,7 +84,9 @@ r128_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        r128_configure(dev);
 
        return drm_attach(nbdev, r128_pciidlist);
index 8ab3e99..6b90dd6 100644 (file)
@@ -89,7 +89,9 @@ radeon_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        radeon_configure(dev);
 
        return drm_attach(nbdev, radeon_pciidlist);
index 35fcdfa..7f406e0 100644 (file)
@@ -75,7 +75,9 @@ savage_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        savage_configure(dev);
 
        return drm_attach(nbdev, savage_pciidlist);
index 2ae1bff..c69a093 100644 (file)
@@ -69,7 +69,9 @@ sis_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        sis_configure(dev);
 
        return drm_attach(nbdev, sis_pciidlist);
index 44948b5..8c10ea8 100644 (file)
@@ -71,7 +71,9 @@ tdfx_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        tdfx_configure(dev);
 
        return drm_attach(nbdev, tdfx_pciidlist);
index e5f7d49..d2a1e67 100644 (file)
@@ -82,7 +82,9 @@ via_attach(device_t nbdev)
 
        bzero(dev, sizeof(struct drm_device));
 
-       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM, M_NOWAIT | M_ZERO);
+       dev->driver = malloc(sizeof(struct drm_driver_info), M_DRM,
+           M_WAITOK | M_ZERO);
+
        via_configure(dev);
 
        return drm_attach(nbdev, via_pciidlist);