Author: nbd
Date: 2016-01-20 11:32:18 +0100 (Wed, 20 Jan 2016)
New Revision: 48392

Added:
   
branches/chaos_calmer/target/linux/generic/patches-3.18/904-debloat_dma_buf.patch
Modified:
   branches/chaos_calmer/package/kernel/linux/modules/other.mk
   branches/chaos_calmer/package/kernel/linux/modules/video.mk
Log:
kernel: modularize dma shared buffer code to eliminate kernel bloat

Signed-off-by: Felix Fietkau <[email protected]>

Backport of r48371

Modified: branches/chaos_calmer/package/kernel/linux/modules/other.mk
===================================================================
--- branches/chaos_calmer/package/kernel/linux/modules/other.mk 2016-01-20 
10:15:29 UTC (rev 48391)
+++ branches/chaos_calmer/package/kernel/linux/modules/other.mk 2016-01-20 
10:32:18 UTC (rev 48392)
@@ -101,6 +101,16 @@
 $(eval $(call KernelPackage,bluetooth-hci-h4p))
 
 
+define KernelPackage/dma-buf
+  TITLE:=DMA shared buffer support
+  HIDDEN:=1
+  KCONFIG:=CONFIG_DMA_SHARED_BUFFER
+  FILES:=$(LINUX_DIR)/drivers/dma-buf/dma-shared-buffer.ko
+  AUTOLOAD:=$(call AutoLoad,20,dma-shared-buffer)
+endef
+$(eval $(call KernelPackage,dma-buf))
+
+
 define KernelPackage/eeprom-93cx6
   SUBMENU:=$(OTHER_MENU)
   TITLE:=EEPROM 93CX6 support

Modified: branches/chaos_calmer/package/kernel/linux/modules/video.mk
===================================================================
--- branches/chaos_calmer/package/kernel/linux/modules/video.mk 2016-01-20 
10:15:29 UTC (rev 48391)
+++ branches/chaos_calmer/package/kernel/linux/modules/video.mk 2016-01-20 
10:32:18 UTC (rev 48392)
@@ -121,6 +121,7 @@
 
 define KernelPackage/video-videobuf2
   TITLE:=videobuf2 lib
+  DEPENDS:=+kmod-dma-buf
   KCONFIG:= \
        CONFIG_VIDEOBUF2_CORE \
        CONFIG_VIDEOBUF2_MEMOPS \

Added: 
branches/chaos_calmer/target/linux/generic/patches-3.18/904-debloat_dma_buf.patch
===================================================================
--- 
branches/chaos_calmer/target/linux/generic/patches-3.18/904-debloat_dma_buf.patch
                           (rev 0)
+++ 
branches/chaos_calmer/target/linux/generic/patches-3.18/904-debloat_dma_buf.patch
   2016-01-20 10:32:18 UTC (rev 48392)
@@ -0,0 +1,35 @@
+--- a/drivers/base/Kconfig
++++ b/drivers/base/Kconfig
+@@ -229,7 +229,7 @@ config SOC_BUS
+ source "drivers/base/regmap/Kconfig"
+ 
+ config DMA_SHARED_BUFFER
+-      bool
++      tristate
+       default n
+       select ANON_INODES
+       help
+--- a/drivers/dma-buf/Makefile
++++ b/drivers/dma-buf/Makefile
+@@ -1 +1,2 @@
+-obj-y := dma-buf.o fence.o reservation.o seqno-fence.o
++obj-$(CONFIG_DMA_SHARED_BUFFER) := dma-shared-buffer.o
++dma-shared-buffer-objs := dma-buf.o fence.o reservation.o seqno-fence.o
+--- a/drivers/dma-buf/dma-buf.c
++++ b/drivers/dma-buf/dma-buf.c
+@@ -904,4 +904,4 @@ static void __exit dma_buf_deinit(void)
+ {
+       dma_buf_uninit_debugfs();
+ }
+-__exitcall(dma_buf_deinit);
++module_exit(dma_buf_deinit);
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1801,6 +1801,7 @@ int wake_up_state(struct task_struct *p,
+ {
+       return try_to_wake_up(p, state, 0);
+ }
++EXPORT_SYMBOL_GPL(wake_up_state);
+ 
+ /*
+  * This function clears the sched_dl_entity static params.
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits

Reply via email to