Deleted Added
full compact
i915_gem.c (254141) i915_gem.c (254649)
1/*-
2 * Copyright �� 2008 Intel Corporation
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the

--- 38 unchanged lines hidden (view full) ---

47 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
48 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
49 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
50 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
51 * SUCH DAMAGE.
52 */
53
54#include <sys/cdefs.h>
1/*-
2 * Copyright �� 2008 Intel Corporation
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the

--- 38 unchanged lines hidden (view full) ---

47 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
48 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
49 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
50 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
51 * SUCH DAMAGE.
52 */
53
54#include <sys/cdefs.h>
55__FBSDID("$FreeBSD: head/sys/dev/drm2/i915/i915_gem.c 254141 2013-08-09 11:28:55Z attilio $");
55__FBSDID("$FreeBSD: head/sys/dev/drm2/i915/i915_gem.c 254649 2013-08-22 07:39:53Z kib $");
56
57#include <dev/drm2/drmP.h>
58#include <dev/drm2/drm.h>
59#include <dev/drm2/i915/i915_drm.h>
60#include <dev/drm2/i915/i915_drv.h>
61#include <dev/drm2/i915/intel_drv.h>
62#include <dev/drm2/i915/intel_ringbuffer.h>
63#include <sys/resourcevar.h>

--- 2030 unchanged lines hidden (view full) ---

2094 goto search_free;
2095 }
2096 ret = i915_gem_object_get_pages_gtt(obj, 0);
2097 if (ret != 0) {
2098 drm_mm_put_block(obj->gtt_space);
2099 obj->gtt_space = NULL;
2100 /*
2101 * i915_gem_object_get_pages_gtt() cannot return
56
57#include <dev/drm2/drmP.h>
58#include <dev/drm2/drm.h>
59#include <dev/drm2/i915/i915_drm.h>
60#include <dev/drm2/i915/i915_drv.h>
61#include <dev/drm2/i915/intel_drv.h>
62#include <dev/drm2/i915/intel_ringbuffer.h>
63#include <sys/resourcevar.h>

--- 2030 unchanged lines hidden (view full) ---

2094 goto search_free;
2095 }
2096 ret = i915_gem_object_get_pages_gtt(obj, 0);
2097 if (ret != 0) {
2098 drm_mm_put_block(obj->gtt_space);
2099 obj->gtt_space = NULL;
2100 /*
2101 * i915_gem_object_get_pages_gtt() cannot return
2102 * ENOMEM, since we use vm_page_grab(VM_ALLOC_RETRY)
2103 * (which does not support operation without a flag
2104 * anyway).
2102 * ENOMEM, since we use vm_page_grab().
2105 */
2106 return (ret);
2107 }
2108
2109 ret = i915_gem_gtt_bind_object(obj);
2110 if (ret != 0) {
2111 i915_gem_object_put_pages_gtt(obj);
2112 drm_mm_put_block(obj->gtt_space);

--- 398 unchanged lines hidden (view full) ---

2511
2512static vm_page_t
2513i915_gem_wire_page(vm_object_t object, vm_pindex_t pindex)
2514{
2515 vm_page_t m;
2516 int rv;
2517
2518 VM_OBJECT_ASSERT_WLOCKED(object);
2103 */
2104 return (ret);
2105 }
2106
2107 ret = i915_gem_gtt_bind_object(obj);
2108 if (ret != 0) {
2109 i915_gem_object_put_pages_gtt(obj);
2110 drm_mm_put_block(obj->gtt_space);

--- 398 unchanged lines hidden (view full) ---

2509
2510static vm_page_t
2511i915_gem_wire_page(vm_object_t object, vm_pindex_t pindex)
2512{
2513 vm_page_t m;
2514 int rv;
2515
2516 VM_OBJECT_ASSERT_WLOCKED(object);
2519 m = vm_page_grab(object, pindex, VM_ALLOC_NORMAL | VM_ALLOC_RETRY);
2517 m = vm_page_grab(object, pindex, VM_ALLOC_NORMAL);
2520 if (m->valid != VM_PAGE_BITS_ALL) {
2521 if (vm_pager_has_page(object, pindex, NULL, NULL)) {
2522 rv = vm_pager_get_pages(object, &m, 1, 0);
2523 m = vm_page_lookup(object, pindex);
2524 if (m == NULL)
2525 return (NULL);
2526 if (rv != VM_PAGER_OK) {
2527 vm_page_lock(m);

--- 1260 unchanged lines hidden ---
2518 if (m->valid != VM_PAGE_BITS_ALL) {
2519 if (vm_pager_has_page(object, pindex, NULL, NULL)) {
2520 rv = vm_pager_get_pages(object, &m, 1, 0);
2521 m = vm_page_lookup(object, pindex);
2522 if (m == NULL)
2523 return (NULL);
2524 if (rv != VM_PAGER_OK) {
2525 vm_page_lock(m);

--- 1260 unchanged lines hidden ---