Преглед изворни кода

package/blockmount: simplify extroot module loading logic

SVN-Revision: 28650
Nicolas Thill пре 14 година
родитељ
комит
3bcb16b305
3 измењених фајлова са 9 додато и 7 уклоњено
  1. 2 1
      include/kernel.mk
  2. 3 3
      package/block-mount/Makefile
  3. 4 3
      package/block-mount/files/extmount.sh

+ 2 - 1
include/kernel.mk

@@ -90,7 +90,8 @@ define ModuleAutoLoad
 		done; \
 		if [ -e $(2)/etc/modules.d/$$$$$$$$priority-$(1) ]; then \
 			if [ "$$$$$$$$boot" = "1" ]; then \
-				echo '# May be required for rootfs' >> $(2)/etc/modules.d/$$$$$$$$priority-$(1); \
+				mkdir -p $(2)/etc/modules-boot.d; \
+				ln -s ../modules.d/$$$$$$$$priority-$(1) $(2)/etc/modules-boot.d/; \
 			fi; \
 			modules="$$$$$$$${modules:+$$$$$$$$modules }$$$$$$$$priority-$(1)"; \
 		fi; \

+ 3 - 3
package/block-mount/Makefile

@@ -1,6 +1,6 @@
 #
-# Copyright (C) 2006-2009 OpenWrt.org
-# Copyright 2010 Vertical Communications
+# Copyright (C) 2006-2011 OpenWrt.org
+# Copyright (C) 2010 Vertical Communications
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=block-mount
 PKG_VERSION:=0.2.0
-PKG_RELEASE:=6
+PKG_RELEASE:=7
 
 include $(INCLUDE_DIR)/package.mk
 

+ 4 - 3
package/block-mount/files/extmount.sh

@@ -1,5 +1,6 @@
 #!/bin/sh
-# Copyright 2010 Vertical Communications
+# Copyright (C) 2006-2011 OpenWrt.org
+# Copyright (C) 2010 Vertical Communications
 
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -15,9 +16,9 @@ set_jffs_mp() {
 er_load_modules() {
 	mkdir -p /tmp/extroot_modules/modules.d
 	mkdir -p /tmp/extroot_modules/modules
-	ln -sf /etc/modules.d/* /tmp/overlay/etc/modules.d/* /tmp/extroot_modules/modules.d
+	cp -L /etc/modules-boot.d/* /tmp/overlay/etc/modules-boot.d/* /tmp/extroot_modules/modules.d
 	ln -sf /lib/modules/*/* /tmp/overlay/lib/modules/*/* /tmp/extroot_modules/modules
-    	local modules="$(grep -l '# May be required for rootfs' /tmp/extroot_modules/modules.d/* 2>/dev/null)"
+	local modules="$(cat /tmp/extroot_modules/modules.d/* 2>/dev/null)"
 	cd /tmp/extroot_modules/modules && [ -n "$modules" ] && {
 		cat $modules | sed -e 's/^\([^#].*\)/insmod \.\/\1.ko/'| sh 2>&- || :
 	}