CONTRIBUTING.rst 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. Contributing to libdrm
  2. ======================
  3. Submitting Patches
  4. ------------------
  5. Patches should be sent to dri-devel@lists.freedesktop.org, using git
  6. send-email. For patches only touching driver specific code one of the driver
  7. mailing lists (like amd-gfx@lists.freedesktop.org) is also appropriate. See git
  8. documentation for help:
  9. http://git-scm.com/documentation
  10. Since dri-devel is a very busy mailing list please use --subject-prefix="PATCH
  11. libdrm" to make it easier to find libdrm patches. This is best done by running
  12. git config --local format.subjectprefix "PATCH libdrm"
  13. The first line of a commit message should contain a prefix indicating what part
  14. is affected by the patch followed by one sentence that describes the change. For
  15. examples:
  16. amdgpu: Use uint32_t i in amdgpu_find_bo_by_cpu_mapping
  17. The body of the commit message should describe what the patch changes and why,
  18. and also note any particular side effects. For a recommended reading on
  19. writing commit messages, see:
  20. http://who-t.blogspot.de/2009/12/on-commit-messages.html
  21. Your patches should also include a Signed-off-by line with your name and email
  22. address. If you're not the patch's original author, you should also gather
  23. S-o-b's by them (and/or whomever gave the patch to you.) The significance of
  24. this is that it certifies that you created the patch, that it was created under
  25. an appropriate open source license, or provided to you under those terms. This
  26. lets us indicate a chain of responsibility for the copyright status of the code.
  27. For more details:
  28. https://developercertificate.org/
  29. We won't reject patches that lack S-o-b, but it is strongly recommended.
  30. Review and Merging
  31. ------------------
  32. Patches should have at least one positive review (Reviewed-by: tag) or
  33. indication of approval (Acked-by: tag) before merging. For any code shared
  34. between drivers this is mandatory.
  35. Please note that kernel/userspace API header files have special rules, see
  36. include/drm/README.
  37. Coding style in the project loosely follows the CodingStyle of the linux kernel:
  38. https://www.kernel.org/doc/html/latest/process/coding-style.html?highlight=coding%20style
  39. Commit Rights
  40. -------------
  41. Commit rights will be granted to anyone who requests them and fulfills the
  42. below criteria:
  43. - Submitted a few (5-10 as a rule of thumb) non-trivial (not just simple
  44. spelling fixes and whitespace adjustment) patches that have been merged
  45. already. Since libdrm is just a glue library between the kernel and userspace
  46. drivers, merged patches to those components also count towards the commit
  47. criteria.
  48. - Are actively participating on discussions about their work (on the mailing
  49. list or IRC). This should not be interpreted as a requirement to review other
  50. peoples patches but just make sure that patch submission isn't one-way
  51. communication. Cross-review is still highly encouraged.
  52. - Will be regularly contributing further patches. This includes regular
  53. contributors to other parts of the open source graphics stack who only
  54. do the oddball rare patch within libdrm itself.
  55. - Agrees to use their commit rights in accordance with the documented merge
  56. criteria, tools, and processes.
  57. To apply for commit rights ("Developer" role in gitlab) send a mail to
  58. dri-devel@lists.freedesktop.org and please ping the maintainers if your request
  59. is stuck.
  60. Committers are encouraged to request their commit rights get removed when they
  61. no longer contribute to the project. Commit rights will be reinstated when they
  62. come back to the project.
  63. Maintainers and committers should encourage contributors to request commit
  64. rights, as especially junior contributors tend to underestimate their skills.
  65. Code of Conduct
  66. ---------------
  67. Please be aware the fd.o Code of Conduct also applies to libdrm:
  68. https://www.freedesktop.org/wiki/CodeOfConduct/
  69. See the gitlab project owners for contact details of the libdrm maintainers.
  70. Abuse of commit rights, like engaging in commit fights or willfully pushing
  71. patches that violate the documented merge criteria, will also be handled through
  72. the Code of Conduct enforcement process.
  73. Happy hacking!