904-debloat_dma_buf.patch 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  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. @@ -187,7 +187,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,16 +1,20 @@
  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-resv.o seqno-fence.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) += udmabuf.o
  51. dmabuf_selftests-y := \
  52. selftest.o \
  53. st-dma-fence.o \
  54. st-dma-fence-chain.o
  55. -obj-$(CONFIG_DMABUF_SELFTESTS) += dmabuf_selftests.o
  56. +dma-buf-objs-$(CONFIG_DMABUF_SELFTESTS) += dmabuf_selftests.o
  57. +
  58. +dma-shared-buffer-objs := $(dma-buf-objs-y)
  59. --- a/drivers/dma-buf/dma-buf.c
  60. +++ b/drivers/dma-buf/dma-buf.c
  61. @@ -1513,4 +1513,5 @@ static void __exit dma_buf_deinit(void)
  62. kern_unmount(dma_buf_mnt);
  63. dma_buf_uninit_sysfs_statistics();
  64. }
  65. -__exitcall(dma_buf_deinit);
  66. +module_exit(dma_buf_deinit);
  67. +MODULE_LICENSE("GPL");
  68. --- a/kernel/sched/core.c
  69. +++ b/kernel/sched/core.c
  70. @@ -4220,6 +4220,7 @@ int wake_up_state(struct task_struct *p,
  71. {
  72. return try_to_wake_up(p, state, 0);
  73. }
  74. +EXPORT_SYMBOL_GPL(wake_up_state);
  75. /*
  76. * Perform scheduler related setup for a newly forked process p.
  77. --- a/fs/d_path.c
  78. +++ b/fs/d_path.c
  79. @@ -316,6 +316,7 @@ char *dynamic_dname(struct dentry *dentr
  80. buffer += buflen - sz;
  81. return memcpy(buffer, temp, sz);
  82. }
  83. +EXPORT_SYMBOL_GPL(dynamic_dname);
  84. char *simple_dname(struct dentry *dentry, char *buffer, int buflen)
  85. {