[PATCH xf86-video-amdgpu 1/2] Refactor amdgpu_kernel_close_fd helper
Michel Dänzer
michel at daenzer.net
Mon Mar 6 10:02:54 UTC 2017
From: Michel Dänzer <michel.daenzer at amd.com>
Preparation for the following change.
Assign pAMDGPUEnt->fd = -1 instead of 0 when we're not using the file
descriptor anymore.
Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
---
src/amdgpu_kms.c | 7 +------
src/amdgpu_probe.c | 10 ++++++++++
src/amdgpu_probe.h | 2 ++
3 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/src/amdgpu_kms.c b/src/amdgpu_kms.c
index 31c2e86f2..92bf5fadf 100644
--- a/src/amdgpu_kms.c
+++ b/src/amdgpu_kms.c
@@ -132,12 +132,7 @@ static void AMDGPUFreeRec(ScrnInfoPtr pScrn)
pAMDGPUEnt->fd_ref--;
if (!pAMDGPUEnt->fd_ref) {
amdgpu_device_deinitialize(pAMDGPUEnt->pDev);
-#ifdef XF86_PDEV_SERVER_FD
- if (!(pAMDGPUEnt->platform_dev &&
- pAMDGPUEnt->platform_dev->flags & XF86_PDEV_SERVER_FD))
-#endif
- drmClose(pAMDGPUEnt->fd);
- pAMDGPUEnt->fd = 0;
+ amdgpu_kernel_close_fd(pAMDGPUEnt);
}
}
diff --git a/src/amdgpu_probe.c b/src/amdgpu_probe.c
index 94da7f623..fc93ac6a2 100644
--- a/src/amdgpu_probe.c
+++ b/src/amdgpu_probe.c
@@ -134,6 +134,16 @@ static int amdgpu_kernel_open_fd(ScrnInfoPtr pScrn, char *busid,
return fd;
}
+void amdgpu_kernel_close_fd(AMDGPUEntPtr pAMDGPUEnt)
+{
+#ifdef XF86_PDEV_SERVER_FD
+ if (!(pAMDGPUEnt->platform_dev &&
+ pAMDGPUEnt->platform_dev->flags & XF86_PDEV_SERVER_FD))
+#endif
+ drmClose(pAMDGPUEnt->fd);
+ pAMDGPUEnt->fd = -1;
+}
+
static Bool amdgpu_open_drm_master(ScrnInfoPtr pScrn, AMDGPUEntPtr pAMDGPUEnt,
char *busid)
{
diff --git a/src/amdgpu_probe.h b/src/amdgpu_probe.h
index 0f43233c3..9e4a9a451 100644
--- a/src/amdgpu_probe.h
+++ b/src/amdgpu_probe.h
@@ -71,6 +71,8 @@ typedef struct {
char *render_node;
} AMDGPUEntRec, *AMDGPUEntPtr;
+extern void amdgpu_kernel_close_fd(AMDGPUEntPtr pAMDGPUEnt);
+
extern const OptionInfoRec *AMDGPUOptionsWeak(void);
extern Bool AMDGPUPreInit_KMS(ScrnInfoPtr, int);
--
2.11.0
More information about the amd-gfx
mailing list