1
在Android中,我遇到了在用戶空間中工作的hwcomposer打開設備節點(dev/dri/card0)的問題。我試圖打開設備,如:無法打開設備節點android
fd_ = open("/dev/dri/card0", O_RDWR);
if (fd_ < 0) {
ALOGE("Failed to open dri- %s", strerror(-errno));
return -ENODEV;
}
錯誤:
hwc-drm-resources: Failed to open dri- Unknown error -13
錯誤13是允許訪問的問題。對於我已經在ueventd.rc配置的權限在android系統:
/dev/dri/* 0666 root graphics
我自己也嘗試了許可設置的系統體系。它仍然沒有工作。
當我在/ dev/dri中運行ls -la。它顯示以下輸出,它具有用戶模式的權限。
crw-rw-rw- root graphics 226, 0 2015-01-01 00:26 card0
crw-rw-rw- root graphics 226, 64 2015-01-01 00:26 controlD64
我不明白爲什麼hwcomposer將無法訪問設備節點,因爲權限是爲設備節點設置的。
提示:正確使用'strerror'會將'errno'的* unmodified *(not negated)值傳遞給它:'sterror(errno)'。至於訪問問題,設備本身可能會拒絕來自用戶的所有訪問,而沒有某些功能。 – Tsyvarev
**/dev/dri **(即目錄)的權限是什麼? – sawdust