drm/sis: track obj->drm_fd relations in the driver

By attach a driver private struct to each open drm fd.

Because we steal the owner_list from drm_sman until things settle,
use list_move instead of list_add.

This requires to export a drm_sman function temporarily before
drm_sman will die for real completely.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Daniel Vetter
2011-10-25 16:32:34 +02:00
parent 4cf73129cb
commit fdc0b8a63c
5 changed files with 46 additions and 9 deletions

View File

@@ -146,6 +146,7 @@ extern struct drm_memblock_item *drm_sman_alloc(struct drm_sman * sman,
*/
extern int drm_sman_free_key(struct drm_sman * sman, unsigned int key);
extern void drm_sman_free(struct drm_memblock_item *item);
/*
* returns 1 iff there are no stale memory blocks associated with this owner.

View File

@@ -64,4 +64,8 @@ typedef struct {
unsigned int offset, size;
} drm_sis_fb_t;
struct sis_file_private {
struct list_head obj_list;
};
#endif /* __SIS_DRM_H__ */