diff --git a/package/system/ubox/Makefile b/package/system/ubox/Makefile
index 2ed4c6336ecebf736d12941a2bf7db3c1b7d7e65..68ad3b66cdb524dc4e5cd04e15b6c3bc0b0c89ac 100644
--- a/package/system/ubox/Makefile
+++ b/package/system/ubox/Makefile
@@ -1,13 +1,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=ubox
-PKG_VERSION:=2014-01-17
+PKG_VERSION:=2014-01-19
 PKG_RELEASE=$(PKG_SOURCE_VERSION)
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=git://nbd.name/luci2/ubox.git
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_VERSION:=6a5ff020909d005ad014810b2b7b60aabe9d7ed0
+PKG_SOURCE_VERSION:=dee0eafbf7de74b45f90631b7c807395e0a0bc4b
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
 CMAKE_INSTALL:=1
 
diff --git a/package/system/ubox/files/log.init b/package/system/ubox/files/log.init
index 548f9632bfaded2735da7c30029b37139cdc9a9c..a00f73de108bc5091a75d07cbadab132c1ad9875 100644
--- a/package/system/ubox/files/log.init
+++ b/package/system/ubox/files/log.init
@@ -21,6 +21,29 @@ validate_log_section()
 	return $?
 }
 
+validate_log_daemon()
+{
+	uci_validate_section system system "${1}" \
+		'log_size:uinteger'
+	return $?
+}
+
+start_service_daemon()
+{
+	local log_size
+
+	validate_log_daemon "${1}" || {
+		echo "validation failed"
+		return 1
+	}
+
+	procd_open_instance
+	procd_set_param command "/sbin/logd"
+	[ -n "${log_size}" ] && procd_append_param command -S "$log_size"
+	procd_set_param respawn
+	procd_close_instance
+}
+
 start_service_file()
 {
 	PIDCOUNT="$(( ${PIDCOUNT} + 1))"
@@ -66,12 +89,8 @@ service_triggers()
 
 start_service()
 {
-	procd_open_instance
-	procd_set_param command "/sbin/logd"
-	procd_set_param respawn
-	procd_close_instance
-
 	config_load system
+	config_foreach start_service_daemon system
 	config_foreach start_service_file system
 	config_foreach start_service_remote system
 }