Hello.

Currently, transmission daemon allows you to set the max number of open files, 
but it can be more than allowed by the system, thus resulting in errors if 
transmission uses more than set in ulimit. The following is a patch to compare 
ulimit vs open_file_limit from /etc/config/transmission. If the open_file_limit 
is greater than `ulimit -n`, then invoke ulimit -n open_file_limit + 8 (since 
transmission's open file limit any seems to pertain only to open torrent files)

Signed-off-by: Joe Roback <j...@roback.cc>

---

Index: feeds/packages/net/transmission/files/transmission.init
===================================================================
--- feeds/packages/net/transmission/files/transmission.init     (revision 25880)
+++ feeds/packages/net/transmission/files/transmission.init     (working copy)
@@ -40,6 +40,8 @@
        local enable=0
        local enabled=0
        local run_as_usr='root'
+       local open_file_limit=0
+       local ulimit_files=`ulimit -n`
 
        # disabled?
        config_get_bool enable "$s" enable 0 # compatibility with prev version
@@ -75,6 +77,13 @@
 
        chown -R $run_as_usr $config_dir
 
+       config_get open_file_limit "$s" open_file_limit
+       let open_limit_files="$open_file_limit + 8"
+
+       if [ ${open_file_limit} -gt ${ulimit_files} ]; then
+               ulimit -n $open_limit_files
+       fi
+
        eval "$SSD -c $run_as_usr -q -b -x $BIN -S -- -g $config_dir"
 }
 

Attachment: transmission-open_file_limit.patch
Description: Binary data

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to