drm/i915: export error state ref handling
[deliverable/linux.git] / drivers / gpu / drm / ast / ast_fb.c
index fbc0823cfa18b9dbd35588d07d3c9322c58bc18d..7b33e14e44aa17a8026d4c1c33b8e2dbc529f93f 100644 (file)
@@ -51,7 +51,7 @@ static void ast_dirty_update(struct ast_fbdev *afbdev,
        struct ast_bo *bo;
        int src_offset, dst_offset;
        int bpp = (afbdev->afb.base.bits_per_pixel + 7)/8;
-       int ret;
+       int ret = -EBUSY;
        bool unmap = false;
        bool store_for_later = false;
        int x2, y2;
@@ -65,7 +65,8 @@ static void ast_dirty_update(struct ast_fbdev *afbdev,
         * then the BO is being moved and we should
         * store up the damage until later.
         */
-       ret = ast_bo_reserve(bo, true);
+       if (!in_interrupt())
+               ret = ast_bo_reserve(bo, true);
        if (ret) {
                if (ret != -EBUSY)
                        return;
This page took 0.026103 seconds and 5 git commands to generate.