diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2012-12-18 17:53:53 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2012-12-18 17:53:53 +0000 |
commit | db831511d2091907eef52519ebcc47f54cfd6d33 (patch) | |
tree | 9f9c7fba156b00e4bc76030988ecf32839f622ce /target/linux/goldfish/patches-2.6.30/0082-sysfs_net_ipv4-Add-sysfs-based-knobs-for-controllin.patch | |
parent | 979bc5536dd4960748cc7a96426abdc8ace15131 (diff) | |
download | mtk-20170518-db831511d2091907eef52519ebcc47f54cfd6d33.zip mtk-20170518-db831511d2091907eef52519ebcc47f54cfd6d33.tar.gz mtk-20170518-db831511d2091907eef52519ebcc47f54cfd6d33.tar.bz2 |
goldfish: R.I.P.
It is broken and it is not maintained by anyone since long time.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 34766
Diffstat (limited to 'target/linux/goldfish/patches-2.6.30/0082-sysfs_net_ipv4-Add-sysfs-based-knobs-for-controllin.patch')
-rw-r--r-- | target/linux/goldfish/patches-2.6.30/0082-sysfs_net_ipv4-Add-sysfs-based-knobs-for-controllin.patch | 128 |
1 files changed, 0 insertions, 128 deletions
diff --git a/target/linux/goldfish/patches-2.6.30/0082-sysfs_net_ipv4-Add-sysfs-based-knobs-for-controllin.patch b/target/linux/goldfish/patches-2.6.30/0082-sysfs_net_ipv4-Add-sysfs-based-knobs-for-controllin.patch deleted file mode 100644 index f1fce08..0000000 --- a/target/linux/goldfish/patches-2.6.30/0082-sysfs_net_ipv4-Add-sysfs-based-knobs-for-controllin.patch +++ /dev/null @@ -1,128 +0,0 @@ -From 75090d40ffbd9b4863238e1d62b43f8598da5e5e Mon Sep 17 00:00:00 2001 -From: Robert Love <rlove@google.com> -Date: Thu, 31 Jul 2008 11:12:44 -0400 -Subject: [PATCH 082/134] sysfs_net_ipv4: Add sysfs-based knobs for controlling TCP window size - -Add a family of knobs to /sys/kernel/ipv4 for controlling the TCP window size: - - tcp_wmem_min - tcp_wmem_def - tcp_wmem_max - tcp_rmem_min - tcp_rmem_def - tcp_rmem_max - -This six values mirror the sysctl knobs in /proc/sys/net/ipv4/tcp_wmem and -/proc/sys/net/ipv4/tcp_rmem. - -Sysfs, unlike sysctl, allows us to set and manage the files' permissions and -owners. - -Signed-off-by: Robert Love <rlove@google.com> ---- - net/ipv4/Makefile | 1 + - net/ipv4/sysfs_net_ipv4.c | 88 +++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 89 insertions(+), 0 deletions(-) - create mode 100644 net/ipv4/sysfs_net_ipv4.c - ---- a/net/ipv4/Makefile -+++ b/net/ipv4/Makefile -@@ -14,6 +14,7 @@ obj-y := route.o inetpeer.o protocol - inet_fragment.o - - obj-$(CONFIG_SYSCTL) += sysctl_net_ipv4.o -+obj-$(CONFIG_SYSFS) += sysfs_net_ipv4.o - obj-$(CONFIG_IP_FIB_HASH) += fib_hash.o - obj-$(CONFIG_IP_FIB_TRIE) += fib_trie.o - obj-$(CONFIG_PROC_FS) += proc.o ---- /dev/null -+++ b/net/ipv4/sysfs_net_ipv4.c -@@ -0,0 +1,88 @@ -+/* -+ * net/ipv4/sysfs_net_ipv4.c -+ * -+ * sysfs-based networking knobs (so we can, unlike with sysctl, control perms) -+ * -+ * Copyright (C) 2008 Google, Inc. -+ * -+ * Robert Love <rlove@google.com> -+ * -+ * This software is licensed under the terms of the GNU General Public -+ * License version 2, as published by the Free Software Foundation, and -+ * may be copied, distributed, and modified under those terms. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ */ -+ -+#include <linux/kobject.h> -+#include <linux/string.h> -+#include <linux/sysfs.h> -+#include <linux/init.h> -+#include <net/tcp.h> -+ -+#define CREATE_IPV4_FILE(_name, _var) \ -+static ssize_t _name##_show(struct kobject *kobj, \ -+ struct kobj_attribute *attr, char *buf) \ -+{ \ -+ return sprintf(buf, "%d\n", _var); \ -+} \ -+static ssize_t _name##_store(struct kobject *kobj, \ -+ struct kobj_attribute *attr, \ -+ const char *buf, size_t count) \ -+{ \ -+ int val, ret; \ -+ ret = sscanf(buf, "%d", &val); \ -+ if (ret != 1) \ -+ return -EINVAL; \ -+ if (val < 0) \ -+ return -EINVAL; \ -+ _var = val; \ -+ return count; \ -+} \ -+static struct kobj_attribute _name##_attr = \ -+ __ATTR(_name, 0644, _name##_show, _name##_store) -+ -+CREATE_IPV4_FILE(tcp_wmem_min, sysctl_tcp_wmem[0]); -+CREATE_IPV4_FILE(tcp_wmem_def, sysctl_tcp_wmem[1]); -+CREATE_IPV4_FILE(tcp_wmem_max, sysctl_tcp_wmem[2]); -+ -+CREATE_IPV4_FILE(tcp_rmem_min, sysctl_tcp_rmem[0]); -+CREATE_IPV4_FILE(tcp_rmem_def, sysctl_tcp_rmem[1]); -+CREATE_IPV4_FILE(tcp_rmem_max, sysctl_tcp_rmem[2]); -+ -+static struct attribute *ipv4_attrs[] = { -+ &tcp_wmem_min_attr.attr, -+ &tcp_wmem_def_attr.attr, -+ &tcp_wmem_max_attr.attr, -+ &tcp_rmem_min_attr.attr, -+ &tcp_rmem_def_attr.attr, -+ &tcp_rmem_max_attr.attr, -+ NULL -+}; -+ -+static struct attribute_group ipv4_attr_group = { -+ .attrs = ipv4_attrs, -+}; -+ -+static __init int sysfs_ipv4_init(void) -+{ -+ struct kobject *ipv4_kobject; -+ int ret; -+ -+ ipv4_kobject = kobject_create_and_add("ipv4", kernel_kobj); -+ if (!ipv4_kobject) -+ return -ENOMEM; -+ -+ ret = sysfs_create_group(ipv4_kobject, &ipv4_attr_group); -+ if (ret) { -+ kobject_put(ipv4_kobject); -+ return ret; -+ } -+ -+ return 0; -+} -+ -+subsys_initcall(sysfs_ipv4_init); |