904-debloat_dma_buf.patch 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. From e3692cb2fcd5ba1244512a0f43b8118f65f1c375 Mon Sep 17 00:00:00 2001
  2. From: Felix Fietkau <[email protected]>
  3. Date: Sat, 8 Jul 2017 08:20:43 +0200
  4. Subject: debloat: dmabuf
  5. Signed-off-by: Felix Fietkau <[email protected]>
  6. ---
  7. drivers/base/Kconfig | 2 +-
  8. drivers/dma-buf/Makefile | 10 +++++++---
  9. drivers/dma-buf/dma-buf.c | 4 +++-
  10. kernel/sched/core.c | 1 +
  11. 4 files changed, 12 insertions(+), 5 deletions(-)
  12. --- a/drivers/base/Kconfig
  13. +++ b/drivers/base/Kconfig
  14. @@ -198,7 +198,7 @@ config SOC_BUS
  15. source "drivers/base/regmap/Kconfig"
  16. config DMA_SHARED_BUFFER
  17. - bool
  18. + tristate
  19. default n
  20. select IRQ_WORK
  21. help
  22. --- a/drivers/dma-buf/heaps/Makefile
  23. +++ b/drivers/dma-buf/heaps/Makefile
  24. @@ -1,3 +1,3 @@
  25. # SPDX-License-Identifier: GPL-2.0
  26. -obj-$(CONFIG_DMABUF_HEAPS_SYSTEM) += system_heap.o
  27. -obj-$(CONFIG_DMABUF_HEAPS_CMA) += cma_heap.o
  28. +dma-buf-objs-$(CONFIG_DMABUF_HEAPS_SYSTEM) += system_heap.o
  29. +dma-buf-objs-$(CONFIG_DMABUF_HEAPS_CMA) += cma_heap.o
  30. --- a/drivers/dma-buf/Makefile
  31. +++ b/drivers/dma-buf/Makefile
  32. @@ -1,12 +1,14 @@
  33. # SPDX-License-Identifier: GPL-2.0-only
  34. -obj-y := dma-buf.o dma-fence.o dma-fence-array.o dma-fence-chain.o \
  35. +obj-$(CONFIG_DMA_SHARED_BUFFER) := dma-shared-buffer.o
  36. +
  37. +dma-buf-objs-y := dma-buf.o dma-fence.o dma-fence-array.o dma-fence-chain.o \
  38. dma-fence-unwrap.o dma-resv.o
  39. -obj-$(CONFIG_DMABUF_HEAPS) += dma-heap.o
  40. -obj-$(CONFIG_DMABUF_HEAPS) += heaps/
  41. -obj-$(CONFIG_SYNC_FILE) += sync_file.o
  42. -obj-$(CONFIG_SW_SYNC) += sw_sync.o sync_debug.o
  43. -obj-$(CONFIG_UDMABUF) += udmabuf.o
  44. -obj-$(CONFIG_DMABUF_SYSFS_STATS) += dma-buf-sysfs-stats.o
  45. +dma-buf-objs-$(CONFIG_DMABUF_HEAPS) += dma-heap.o
  46. +obj-$(CONFIG_DMABUF_HEAPS) += heaps/
  47. +dma-buf-objs-$(CONFIG_SYNC_FILE) += sync_file.o
  48. +dma-buf-objs-$(CONFIG_SW_SYNC) += sw_sync.o sync_debug.o
  49. +dma-buf-objs-$(CONFIG_UDMABUF) += udmabuf.o
  50. +dma-buf-objs-$(CONFIG_DMABUF_SYSFS_STATS) += dma-buf-sysfs-stats.o
  51. dmabuf_selftests-y := \
  52. selftest.o \
  53. @@ -15,4 +17,6 @@ dmabuf_selftests-y := \
  54. st-dma-fence-unwrap.o \
  55. st-dma-resv.o
  56. -obj-$(CONFIG_DMABUF_SELFTESTS) += dmabuf_selftests.o
  57. +dma-buf-objs-$(CONFIG_DMABUF_SELFTESTS) += dmabuf_selftests.o
  58. +
  59. +dma-shared-buffer-objs := $(dma-buf-objs-y)
  60. --- a/drivers/dma-buf/dma-buf.c
  61. +++ b/drivers/dma-buf/dma-buf.c
  62. @@ -1636,4 +1636,5 @@ static void __exit dma_buf_deinit(void)
  63. kern_unmount(dma_buf_mnt);
  64. dma_buf_uninit_sysfs_statistics();
  65. }
  66. -__exitcall(dma_buf_deinit);
  67. +module_exit(dma_buf_deinit);
  68. +MODULE_LICENSE("GPL");
  69. --- a/kernel/sched/core.c
  70. +++ b/kernel/sched/core.c
  71. @@ -4367,6 +4367,7 @@ int wake_up_state(struct task_struct *p,
  72. {
  73. return try_to_wake_up(p, state, 0);
  74. }
  75. +EXPORT_SYMBOL_GPL(wake_up_state);
  76. /*
  77. * Perform scheduler related setup for a newly forked process p.
  78. --- a/fs/d_path.c
  79. +++ b/fs/d_path.c
  80. @@ -313,6 +313,7 @@ char *dynamic_dname(char *buffer, int bu
  81. buffer += buflen - sz;
  82. return memcpy(buffer, temp, sz);
  83. }
  84. +EXPORT_SYMBOL_GPL(dynamic_dname);
  85. char *simple_dname(struct dentry *dentry, char *buffer, int buflen)
  86. {