From owner-svn-src-all@FreeBSD.ORG Thu Aug 29 22:46:22 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id EB396F57; Thu, 29 Aug 2013 22:46:22 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BFB1E201E; Thu, 29 Aug 2013 22:46:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r7TMkMD7051861; Thu, 29 Aug 2013 22:46:22 GMT (envelope-from jkim@svn.freebsd.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r7TMkMR6051858; Thu, 29 Aug 2013 22:46:22 GMT (envelope-from jkim@svn.freebsd.org) Message-Id: <201308292246.r7TMkMR6051858@svn.freebsd.org> From: Jung-uk Kim Date: Thu, 29 Aug 2013 22:46:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r255044 - head/sys/dev/drm2/ttm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Aug 2013 22:46:23 -0000 Author: jkim Date: Thu Aug 29 22:46:21 2013 New Revision: 255044 URL: http://svnweb.freebsd.org/changeset/base/255044 Log: Partially revert r254880. The bitmap operations actually use long type now. Modified: head/sys/dev/drm2/ttm/ttm_bo.c head/sys/dev/drm2/ttm/ttm_bo_util.c head/sys/dev/drm2/ttm/ttm_bo_vm.c Modified: head/sys/dev/drm2/ttm/ttm_bo.c ============================================================================== --- head/sys/dev/drm2/ttm/ttm_bo.c Thu Aug 29 21:25:27 2013 (r255043) +++ head/sys/dev/drm2/ttm/ttm_bo.c Thu Aug 29 22:46:21 2013 (r255044) @@ -1723,8 +1723,7 @@ int ttm_bo_wait(struct ttm_buffer_object if (driver->sync_obj_signaled(bo->sync_obj)) { void *tmp_obj = bo->sync_obj; bo->sync_obj = NULL; - atomic_clear_long(&bo->priv_flags, - 1UL << TTM_BO_PRIV_FLAG_MOVING); + clear_bit(TTM_BO_PRIV_FLAG_MOVING, &bo->priv_flags); mtx_unlock(&bdev->fence_lock); driver->sync_obj_unref(&tmp_obj); mtx_lock(&bdev->fence_lock); @@ -1747,8 +1746,8 @@ int ttm_bo_wait(struct ttm_buffer_object if (likely(bo->sync_obj == sync_obj)) { void *tmp_obj = bo->sync_obj; bo->sync_obj = NULL; - atomic_clear_long(&bo->priv_flags, - 1UL << TTM_BO_PRIV_FLAG_MOVING); + clear_bit(TTM_BO_PRIV_FLAG_MOVING, + &bo->priv_flags); mtx_unlock(&bdev->fence_lock); driver->sync_obj_unref(&sync_obj); driver->sync_obj_unref(&tmp_obj); Modified: head/sys/dev/drm2/ttm/ttm_bo_util.c ============================================================================== --- head/sys/dev/drm2/ttm/ttm_bo_util.c Thu Aug 29 21:25:27 2013 (r255043) +++ head/sys/dev/drm2/ttm/ttm_bo_util.c Thu Aug 29 22:46:21 2013 (r255044) @@ -637,8 +637,7 @@ int ttm_bo_move_accel_cleanup(struct ttm * operation has completed. */ - atomic_set_long(&bo->priv_flags, - 1UL << TTM_BO_PRIV_FLAG_MOVING); + set_bit(TTM_BO_PRIV_FLAG_MOVING, &bo->priv_flags); mtx_unlock(&bdev->fence_lock); if (tmp_obj) driver->sync_obj_unref(&tmp_obj); Modified: head/sys/dev/drm2/ttm/ttm_bo_vm.c ============================================================================== --- head/sys/dev/drm2/ttm/ttm_bo_vm.c Thu Aug 29 21:25:27 2013 (r255043) +++ head/sys/dev/drm2/ttm/ttm_bo_vm.c Thu Aug 29 22:46:21 2013 (r255044) @@ -153,8 +153,7 @@ reserve: */ mtx_lock(&bdev->fence_lock); - if ((atomic_load_acq_long(&bo->priv_flags) & - (1UL << TTM_BO_PRIV_FLAG_MOVING)) != 0) { + if (test_bit(TTM_BO_PRIV_FLAG_MOVING, &bo->priv_flags)) { /* * Here, the behavior differs between Linux and FreeBSD. *