O desenvolvedor do KDE, Xaver Hugl, escreveu um post no blog como o back-end DRM do compositor KWin tem trabalhado para se mover das superfícies GBM (gbm_surfaces) para, em vez disso, alocar buffers diretamente e importá-los para o EGL. Isso, em última análise, deve ser uma vitória para o compositor KWin, uma vez que tudo esteja completo. Sendo assim, o KDE KWin apresenta novidades sobre GBM.
Devido ao KWin atingir várias limitações em torno de gbm_surface, tem havido um esforço para o KWin alocar buffers manualmente. Então, em seguida, importá-los para EGL como um EGLImage. No entanto, neste novo caminho, a KWin acaba por perder o suporte para EGL_KHR_partial_update como uma otimização de desempenho e economia de energia para dispositivos móveis. Eles esperam ser capazes de restaurar o suporte EGL_KHR_partial_update no futuro.
KDE KWin apresenta novidades sobre GBM
Os desenvolvedores do KWin também têm lutado contra outros obstáculos em sua mudança de gbm_surface. No entanto,a principal conclusão do post do blog de Xavier é:
“O plano de longo prazo é fazer com que os backends lidem exclusivamente com buffers e nunca interajam com APIs gráficas. No momento, o suporte existente para o Xorg torna isso impossível de fazer bem, mas com planos de dividir a base de código para X11 e Wayland e, eventualmente, remover o suporte para o Xorg completamente, isso mudará. Mesmo sem isso, no entanto, há um monte de código nos back-ends que tem o potencial de ser compartilhado e simplificado com essa mudança, e alguns recursos que podem ser implementados mais facilmente ou de todo, como o já mencionado screencasting de cópia zero.”
Espero que essas melhorias do KWin abordem alguns dos obstáculos e bugs e aborrecimentos que os usuários do KDE tiveram com o compositor KWin que também levou a vários forks sendo criados ao longo dos anos.