Deleted Added
full compact
ttm_bo_driver.h (254861) ttm_bo_driver.h (254863)
1/**************************************************************************
2 *
3 * Copyright (c) 2006-2009 Vmware, Inc., Palo Alto, CA., USA
4 * All Rights Reserved.
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a
7 * copy of this software and associated documentation files (the
8 * "Software"), to deal in the Software without restriction, including

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

22 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
23 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
24 * USE OR OTHER DEALINGS IN THE SOFTWARE.
25 *
26 **************************************************************************/
27/*
28 * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
29 */
1/**************************************************************************
2 *
3 * Copyright (c) 2006-2009 Vmware, Inc., Palo Alto, CA., USA
4 * All Rights Reserved.
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a
7 * copy of this software and associated documentation files (the
8 * "Software"), to deal in the Software without restriction, including

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

22 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
23 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
24 * USE OR OTHER DEALINGS IN THE SOFTWARE.
25 *
26 **************************************************************************/
27/*
28 * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
29 */
30/* $FreeBSD: head/sys/dev/drm2/ttm/ttm_bo_driver.h 254861 2013-08-25 14:39:51Z dumbbell $ */
30/* $FreeBSD: head/sys/dev/drm2/ttm/ttm_bo_driver.h 254863 2013-08-25 14:47:22Z dumbbell $ */
31
32#ifndef _TTM_BO_DRIVER_H_
33#define _TTM_BO_DRIVER_H_
34
35#include <dev/drm2/drmP.h>
36#include <dev/drm2/ttm/ttm_bo_api.h>
37#include <dev/drm2/ttm/ttm_memory.h>
38#include <dev/drm2/ttm/ttm_module.h>

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

817 * -EBUSY: The function needed to sleep, but @no_wait was true
818 * -EDEADLK: Bo already reserved using @sequence. This error code will only
819 * be returned if @use_sequence is set to true.
820 */
821extern int ttm_bo_reserve(struct ttm_buffer_object *bo,
822 bool interruptible,
823 bool no_wait, bool use_sequence, uint32_t sequence);
824
31
32#ifndef _TTM_BO_DRIVER_H_
33#define _TTM_BO_DRIVER_H_
34
35#include <dev/drm2/drmP.h>
36#include <dev/drm2/ttm/ttm_bo_api.h>
37#include <dev/drm2/ttm/ttm_memory.h>
38#include <dev/drm2/ttm/ttm_module.h>

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

817 * -EBUSY: The function needed to sleep, but @no_wait was true
818 * -EDEADLK: Bo already reserved using @sequence. This error code will only
819 * be returned if @use_sequence is set to true.
820 */
821extern int ttm_bo_reserve(struct ttm_buffer_object *bo,
822 bool interruptible,
823 bool no_wait, bool use_sequence, uint32_t sequence);
824
825/**
826 * ttm_bo_reserve_slowpath_nolru:
827 * @bo: A pointer to a struct ttm_buffer_object.
828 * @interruptible: Sleep interruptible if waiting.
829 * @sequence: Set (@bo)->sequence to this value after lock
830 *
831 * This is called after ttm_bo_reserve returns -EAGAIN and we backed off
832 * from all our other reservations. Because there are no other reservations
833 * held by us, this function cannot deadlock any more.
834 *
835 * Will not remove reserved buffers from the lru lists.
836 * Otherwise identical to ttm_bo_reserve_slowpath.
837 */
838extern int ttm_bo_reserve_slowpath_nolru(struct ttm_buffer_object *bo,
839 bool interruptible,
840 uint32_t sequence);
825
841
842
826/**
843/**
844 * ttm_bo_reserve_slowpath:
845 * @bo: A pointer to a struct ttm_buffer_object.
846 * @interruptible: Sleep interruptible if waiting.
847 * @sequence: Set (@bo)->sequence to this value after lock
848 *
849 * This is called after ttm_bo_reserve returns -EAGAIN and we backed off
850 * from all our other reservations. Because there are no other reservations
851 * held by us, this function cannot deadlock any more.
852 */
853extern int ttm_bo_reserve_slowpath(struct ttm_buffer_object *bo,
854 bool interruptible, uint32_t sequence);
855
856/**
827 * ttm_bo_reserve_nolru:
828 *
829 * @bo: A pointer to a struct ttm_buffer_object.
830 * @interruptible: Sleep interruptible if waiting.
831 * @no_wait: Don't sleep while trying to reserve, rather return -EBUSY.
832 * @use_sequence: If @bo is already reserved, Only sleep waiting for
833 * it to become unreserved if @sequence < (@bo)->sequence.
834 *

--- 173 unchanged lines hidden ---
857 * ttm_bo_reserve_nolru:
858 *
859 * @bo: A pointer to a struct ttm_buffer_object.
860 * @interruptible: Sleep interruptible if waiting.
861 * @no_wait: Don't sleep while trying to reserve, rather return -EBUSY.
862 * @use_sequence: If @bo is already reserved, Only sleep waiting for
863 * it to become unreserved if @sequence < (@bo)->sequence.
864 *

--- 173 unchanged lines hidden ---