[OpenWrt-Devel] kernel changes on recompilation?
Hello members, Although, I am compiling and using custom OpenWRT images since 8 months now, but I am still confused with this particular behaviour. I am using it primarily on x86 Alix APU devices. Everytime I run a make and kernel gets recompiled, it changes the hex value appended to the kernel package name which makes a lot of packages or new modules compiled uninstallable on existing systems through opkg. What is the best practice for doing these kind of things or is there any workaround? Thanks in advance. Regards, Nishant ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] netifd: IPIP tunnel support
Adds IPIP tunnel support to netifd. Following IPIP tunnel parameters can be configured : -peeraddr (IPv4 remote address) -ipaddr (IPv4 local address) -mtu (IPIP tunnel mtu) -ttl (time to live of encapsulting packets) -tos (type of service either inherit (outer header inherits the value of the inner header) or hex value) -df (don't fragment flag of encapsulating packets) -tunlink (bind tunnel to this interface) Signed-off-by: Hans Dedecker dedec...@gmail.com --- system-linux.c | 65 +++--- 1 file changed, 62 insertions(+), 3 deletions(-) diff --git a/system-linux.c b/system-linux.c index aca30ca..36657d7 100644 --- a/system-linux.c +++ b/system-linux.c @@ -204,6 +204,18 @@ system_rtn_aton(const char *src, unsigned int *dst) return true; } +static bool +system_tos_aton(const char *src, unsigned *dst) +{ + char *e; + + *dst = strtoul(src, e, 16); + if (e == src || *e || *dst 255) + return false; + + return true; +} + int system_init(void) { static struct event_socket rtnl_event; @@ -1709,13 +1721,12 @@ static int system_add_gre_tunnel(const char *name, const char *kind, char *str = blobmsg_get_string(cur); if (strcmp(str, inherit)) { unsigned uval; - char *e; - uval = strtoul(str, e, 16); - if (e == str || *e || uval 255) { + if (!system_tos_aton(str, uval)) { ret = -EINVAL; goto failure; } + if (v6) flowinfo |= htonl(uval 20) IP6_FLOWINFO_TCLASS; else @@ -1842,6 +1853,52 @@ failure: } #endif +static int system_add_ipip_tunnel(const char *name, const unsigned int link, struct blob_attr **tb) +{ + struct blob_attr *cur; + bool set_df = true; + struct ip_tunnel_parm p = { + .link = link, + .iph = { + .version = 4, + .ihl = 5, + .protocol = IPPROTO_IPIP, + } + }; + + if ((cur = tb[TUNNEL_ATTR_LOCAL]) + inet_pton(AF_INET, blobmsg_data(cur), p.iph.saddr) 1) + return -EINVAL; + + if ((cur = tb[TUNNEL_ATTR_REMOTE]) + inet_pton(AF_INET, blobmsg_data(cur), p.iph.daddr) 1) + return -EINVAL; + + if ((cur = tb[TUNNEL_ATTR_DF])) + set_df = blobmsg_get_bool(cur); + + if ((cur = tb[TUNNEL_ATTR_TTL])) + p.iph.ttl = blobmsg_get_u32(cur); + + if ((cur = tb[TUNNEL_ATTR_TOS])) { + char *str = blobmsg_get_string(cur); + if (strcmp(str, inherit)) { + unsigned uval; + + if (!system_tos_aton(str, uval)) + return -EINVAL; + + p.iph.tos = uval; + } else + p.iph.tos = 1; + } + + p.iph.frag_off = set_df ? htons(IP_DF) : 0; + strncpy(p.name, name, sizeof(p.name)); + + return tunnel_ioctl(tunl0, SIOCADDTUNNEL, p); +} + static int __system_del_ip_tunnel(const char *name, struct blob_attr **tb) { struct blob_attr *cur; @@ -2092,6 +2149,8 @@ failure: } else if (!strcmp(str, gretapip6)) { return system_add_gre_tunnel(name, ip6gretap, link, tb, true); #endif + } else if (!strcmp(str, ipip)) { + return system_add_ipip_tunnel(name, link, tb); } else return -EINVAL; -- 1.9.1 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] IPIP: IP in IP package support
The package supports IP in IP by registering the ipip protocol handler Following options are configurable -peeraddr (IPv4 remote address) -ipaddr (IPv4 local address) -ttl (time to live of encapsulating packet) -tos (type of service of encapsulating packet either inherit (outer header inherits the value of the inner header) or hex value) -df (don't fragment flag of encapsulating packet) -mtu (IPIP tunnel mtu) -tunlink (bind tunnel to this interface) -zone (firewall zone to which the IPIP tunnel will be added) Signed-off-by: Hans Dedecker dedec...@gmail.com --- package/network/config/ipip/Makefile | 39 +++ package/network/config/ipip/files/ipip.sh | 80 +++ 2 files changed, 119 insertions(+) create mode 100644 package/network/config/ipip/Makefile create mode 100755 package/network/config/ipip/files/ipip.sh diff --git a/package/network/config/ipip/Makefile b/package/network/config/ipip/Makefile new file mode 100644 index 000..98f7b78 --- /dev/null +++ b/package/network/config/ipip/Makefile @@ -0,0 +1,39 @@ +# +# Copyright (C) 2014 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=ipip +PKG_VERSION:=1 +PKG_RELEASE:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/ipip + SECTION:=net + CATEGORY:=Network + MAINTAINER:=Hans Dedecker dedec...@gmail.com + TITLE:=IP in IP Tunnel config support + DEPENDS:= +kmod-ipip +endef + +define Package/ipip/description + IP in IP Tunnel config support in /etc/config/network. +endef + +define Build/Compile +endef + +define Build/Configure +endef + +define Package/ipip/install + $(INSTALL_DIR) $(1)/lib/netifd/proto + $(INSTALL_BIN) ./files/ipip.sh $(1)/lib/netifd/proto/ipip.sh +endef + +$(eval $(call BuildPackage,ipip)) diff --git a/package/network/config/ipip/files/ipip.sh b/package/network/config/ipip/files/ipip.sh new file mode 100755 index 000..51c503f --- /dev/null +++ b/package/network/config/ipip/files/ipip.sh @@ -0,0 +1,80 @@ +#!/bin/sh + +[ -n $INCLUDE_ONLY ] || { + . /lib/functions.sh + . /lib/functions/network.sh + . ../netifd-proto.sh + init_proto $@ +} + +proto_ipip_setup() { + local cfg=$1 + + local df ipaddr peeraddr tunlink ttl tos zone mtu + json_get_vars df ipaddr peeraddr tunlink ttl tos zone mtu + + [ -z $peeraddr ] { + proto_notify_error $cfg MISSING_ADDRESS + proto_block_restart $cfg + return + } + + ( proto_add_host_dependency $cfg $peeraddr $tunlink ) + + [ -z $ipaddr ] { + local wanif=$tunlink + if [ -z $wanif ] ! network_find_wan wanif; then + proto_notify_error $cfg NO_WAN_LINK + return + fi + + if ! network_get_ipaddr ipaddr $wanif; then + proto_notify_error $cfg NO_WAN_LINK + return + fi + } + + [ -z $zone ] zone=wan + + proto_init_update ipip-$cfg 1 + + proto_add_tunnel + json_add_string mode ipip + json_add_int mtu ${mtu:-1280} + json_add_int ttl ${ttl:-64} + [ -n $tos ] json_add_string tos $tos + json_add_string local $ipaddr + json_add_string remote $peeraddr + [ -n $tunlink ] json_add_string link $tunlink + json_add_boolean df ${df:-1} + + proto_close_tunnel + + proto_add_data + [ -n $zone ] json_add_string zone $zone + proto_close_data + + proto_send_update $cfg +} + +proto_ipip_teardown() { + local cfg=$1 +} + +proto_ipip_init_config() { + no_device=1 + available=1 + + proto_config_add_int mtu + proto_config_add_int ttl + proto_config_add_string tos + proto_config_add_string tunlink + proto_config_add_string zone + proto_config_add_string ipaddr + proto_config_add_string peeraddr + proto_config_add_boolean df +} + +[ -n $INCLUDE_ONLY ] || { + add_protocol ipip +} -- 1.9.1 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [RFC PATCH] packages: Smart Queue Management for AQM Packet Scheduling and Qos from CeroWrt
On 30/03/14 06:29 PM, Dave Taht wrote: On Sun, Mar 30, 2014 at 02:24:44PM -0400, Weedy wrote: On Sat, Mar 29, 2014 at 2:56 PM, Dave Täht dave.t...@bufferbloat.netwrote: From: Dave Taht dave.t...@bufferbloat.net This adds support for the bufferbloat project's Smart Queue Management (SQM) system, which improves over openwrt's qos-scripts in the following ways + Uses HTB with two models for managing traffic a simplest one that merely uses fq_codel, and a three tier one that does some basic and tunable packet prioritization. + Works with ipv6 and ipv4 correctly (unlike qos-scripts) + extensive support for fixing ADSL and PPOe framing problems + Partial support for key diffserv markings + highly tuned fq_codel implementation especially for low bandwidths + Tested heavily on cable modems and on dsl devices It is a disimprovement in that: - There are no built-in tricks for doing l7 classification, or other forms of packet inspection. - We haven't explored hfsc all that much, prefering to rely on the predictable behavior of htb + fq_codel for everything - And there is support for a few qdiscs that are not in the linux kernel mainline that remain experimental. --- net/sqm-scripts/Makefile | 48 +++ net/sqm-scripts/files/etc/config/sqm | 11 + net/sqm-scripts/files/etc/init.d/sqm | 23 ++ net/sqm-scripts/files/usr/lib/sqm/functions.sh | 335 net/sqm-scripts/files/usr/lib/sqm/run.sh | 67 net/sqm-scripts/files/usr/lib/sqm/simple.qos | 187 +++ net/sqm-scripts/files/usr/lib/sqm/simple.qos.help |1 + net/sqm-scripts/files/usr/lib/sqm/simplest.qos | 84 + .../files/usr/lib/sqm/simplest.qos.help|1 + net/sqm-scripts/files/usr/lib/sqm/stop.sh | 22 ++ 10 files changed, 779 insertions(+) create mode 100644 net/sqm-scripts/Makefile create mode 100644 net/sqm-scripts/files/etc/config/sqm create mode 100755 net/sqm-scripts/files/etc/init.d/sqm create mode 100644 net/sqm-scripts/files/usr/lib/sqm/functions.sh create mode 100755 net/sqm-scripts/files/usr/lib/sqm/run.sh create mode 100755 net/sqm-scripts/files/usr/lib/sqm/simple.qos create mode 100644 net/sqm-scripts/files/usr/lib/sqm/simple.qos.help create mode 100755 net/sqm-scripts/files/usr/lib/sqm/simplest.qos create mode 100644 net/sqm-scripts/files/usr/lib/sqm/simplest.qos.help create mode 100755 net/sqm-scripts/files/usr/lib/sqm/stop.sh diff --git a/net/sqm-scripts/files/etc/config/sqm b/net/sqm-scripts/files/etc/config/sqm new file mode 100644 index 000..547d321 --- /dev/null +++ b/net/sqm-scripts/files/etc/config/sqm @@ -0,0 +1,11 @@ + +config queue 'ge00' +option enabled '0' +option interface 'ge00' +option download '2' +option upload '4000' +option qdisc 'fq_codel' +option script 'simple.qos' +option qdisc_advanced '0' +option linklayer 'none' + How hard is this to config from the command line/vim? There are a few more options than this (for DSL compensation, ecn and advanced configuration), the above would work if you changed enabled to '1' and the device from ge00 to your wan device. (not the wan firewall rule, presently. ) It does help to have a sane long term and realistic measurement of your network using something like the rrul test rather than the oft-gamed speedtest. http://www.bufferbloat.net/projects/cerowrt/wiki/Setting_up_SQM_for_CeroWrt_310 You are right, we should fully document all the variables in this file. Until recently they were kind of in flux. I've never needed or really wanted luci on my box, I just use vim. Going by this patch, there is either nothing to config or no examples. I would think shipping a roughly equivalent config to what ships in qos-scripts would be a good start to get people testing. /etc/init.d/sqm start,stop etc work as expected. IE: highest priority: small ARP, DNS, and SSH packets The SQM default is local DNS and ntp. fq_codel automagically optimizes for other sparse flows like arp, ssh, mosh, tcp syn, synack, etc, no need to do that via classification. normal: HTTP, HTTPS So you want to deprioritize vpn, smtp, rsync, dropbox, http on odd ports, caching servers, etc, all in favor of the web gods? we just toss all that into the normal (best effort bin) and let fq_codel sort it out. bulk: everything else. We do respect the diffserv marking of CS1 (background) and toss it into the background queue. Side note: Will SQM do bandwidth slicing? Or at least handle hostile environments better? I say hostile as in roommates or maybe teenage kids. Multiple people/devices thinking they are entitled to the entire WAN bandwidth at all times. fq_codel does fair (well, we call it flow) queuing.
Re: [OpenWrt-Devel] kernel changes on recompilation?
On Wed, Oct 1, 2014 at 4:13 AM, Nishant Sharma codemarau...@gmail.com wrote: Although, I am compiling and using custom OpenWRT images since 8 months now, but I am still confused with this particular behaviour. I am using it primarily on x86 Alix APU devices. Everytime I run a make and kernel gets recompiled, it changes the hex value appended to the kernel package name which makes a lot of packages or new modules compiled uninstallable on existing systems through opkg. What is the best practice for doing these kind of things or is there any workaround? I'd love to know the answer to this as well. Thanks. -- Brent ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] uqmi - Specifying Link Protocol (libqmi --device-open-net=net-802-3 option)
I'm trying to use uqmi with a Sierra Wireless MC7354 and MC7750. On both modules I'm able to bring up a connection to the cell network, but cannot send or receive anything on the wwan0 interface. After much digging I found an option for libqmi that specifies using ethernet headers instead of raw IP (--device-open-net=net-802-3). When I specified this option with libqmi, both modules came up with an IP address immediately and allowed traffic to pass without issue. Is there an equivalent parameter I can use for uqmi? Or maybe even a compilation flag to have it always requested?I'll only be using LTE mode, so the firmware bug where 3G and 4G behave differently shouldn't affect me (I think). If the functionality's not already in uqmi for requesting ethernet headers, then I'd gladly donate .25BTC (~ $100) to someone for implementing this. Thanks in Advance, Aaron ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] uqmi - Specifying Link Protocol (libqmi --device-open-net=net-802-3 option)
we noticed that qmi is not working properly today and are working on a fix. John On 01/10/2014 21:12, Spam Catcher wrote: I'm trying to use uqmi with a Sierra Wireless MC7354 and MC7750. On both modules I'm able to bring up a connection to the cell network, but cannot send or receive anything on the wwan0 interface. After much digging I found an option for libqmi that specifies using ethernet headers instead of raw IP (--device-open-net=net-802-3). When I specified this option with libqmi, both modules came up with an IP address immediately and allowed traffic to pass without issue. Is there an equivalent parameter I can use for uqmi? Or maybe even a compilation flag to have it always requested? I'll only be using LTE mode, so the firmware bug where 3G and 4G behave differently shouldn't affect me (I think). If the functionality's not already in uqmi for requesting ethernet headers, then I'd gladly donate .25BTC (~ $100) to someone for implementing this. Thanks in Advance, Aaron ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH] netifd: IPIP tunnel support
Hi Steven, Thx for the feedback. I will create a new patch which unifies the creation of both tunnel types; my initial approach was a bit conservative as I did not want to impact the feature set of the sit type (eg TOS support) Br, Hans On Wed, Oct 1, 2014 at 2:59 PM, Steven Barth cy...@openwrt.org wrote: Hello Hans, thanks for the patch. However can't you rather reuse some of the code provided by the sit tunnel-type of system_add_ip_tunnel? The current patch looks like duplicating a lot of that. Cheers, Steven Am 01.10.2014 um 13:41 schrieb Hans Dedecker: Adds IPIP tunnel support to netifd. Following IPIP tunnel parameters can be configured : -peeraddr (IPv4 remote address) -ipaddr (IPv4 local address) -mtu (IPIP tunnel mtu) -ttl (time to live of encapsulting packets) -tos (type of service either inherit (outer header inherits the value of the inner header) or hex value) -df (don't fragment flag of encapsulating packets) -tunlink (bind tunnel to this interface) Signed-off-by: Hans Dedecker dedec...@gmail.com --- system-linux.c | 65 +++--- 1 file changed, 62 insertions(+), 3 deletions(-) diff --git a/system-linux.c b/system-linux.c index aca30ca..36657d7 100644 --- a/system-linux.c +++ b/system-linux.c @@ -204,6 +204,18 @@ system_rtn_aton(const char *src, unsigned int *dst) return true; } +static bool +system_tos_aton(const char *src, unsigned *dst) +{ + char *e; + + *dst = strtoul(src, e, 16); + if (e == src || *e || *dst 255) + return false; + + return true; +} + int system_init(void) { static struct event_socket rtnl_event; @@ -1709,13 +1721,12 @@ static int system_add_gre_tunnel(const char *name, const char *kind, char *str = blobmsg_get_string(cur); if (strcmp(str, inherit)) { unsigned uval; - char *e; - uval = strtoul(str, e, 16); - if (e == str || *e || uval 255) { + if (!system_tos_aton(str, uval)) { ret = -EINVAL; goto failure; } + if (v6) flowinfo |= htonl(uval 20) IP6_FLOWINFO_TCLASS; else @@ -1842,6 +1853,52 @@ failure: } #endif +static int system_add_ipip_tunnel(const char *name, const unsigned int link, struct blob_attr **tb) +{ + struct blob_attr *cur; + bool set_df = true; + struct ip_tunnel_parm p = { + .link = link, + .iph = { + .version = 4, + .ihl = 5, + .protocol = IPPROTO_IPIP, + } + }; + + if ((cur = tb[TUNNEL_ATTR_LOCAL]) + inet_pton(AF_INET, blobmsg_data(cur), p.iph.saddr) 1) + return -EINVAL; + + if ((cur = tb[TUNNEL_ATTR_REMOTE]) + inet_pton(AF_INET, blobmsg_data(cur), p.iph.daddr) 1) + return -EINVAL; + + if ((cur = tb[TUNNEL_ATTR_DF])) + set_df = blobmsg_get_bool(cur); + + if ((cur = tb[TUNNEL_ATTR_TTL])) + p.iph.ttl = blobmsg_get_u32(cur); + + if ((cur = tb[TUNNEL_ATTR_TOS])) { + char *str = blobmsg_get_string(cur); + if (strcmp(str, inherit)) { + unsigned uval; + + if (!system_tos_aton(str, uval)) + return -EINVAL; + + p.iph.tos = uval; + } else + p.iph.tos = 1; + } + + p.iph.frag_off = set_df ? htons(IP_DF) : 0; + strncpy(p.name, name, sizeof(p.name)); + + return tunnel_ioctl(tunl0, SIOCADDTUNNEL, p); +} + static int __system_del_ip_tunnel(const char *name, struct blob_attr **tb) { struct blob_attr *cur; @@ -2092,6 +2149,8 @@ failure: } else if (!strcmp(str, gretapip6)) { return system_add_gre_tunnel(name, ip6gretap, link, tb, true); #endif + } else if (!strcmp(str, ipip)) { + return system_add_ipip_tunnel(name, link, tb); } else return -EINVAL; ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] why does make clean or make dirclean prep tmp/, only to remove it?
messing around earlier and it seems that running either of make clean or make dirclean first does a prepare-tmpinfo and loads up the tmp/ directory, only to remove it all immediately afterwards. as Exhibit A, i have a totally clean openwrt checkout, in which i did the following: $ make V=s clean Checking 'non-root'... ok. Checking 'working-make'... ok. Checking 'case-sensitive-fs'... ok. Checking 'getopt'... ok. Checking 'fileutils'... ok. Checking 'working-gcc'... ok. Checking 'working-g++'... ok. Checking 'ncurses'... ok. Checking 'zlib'... ok. Checking 'gawk'... ok. Checking 'unzip'... ok. Checking 'bzip2'... ok. Checking 'perl'... ok. Checking '/usr/bin/python2.7'... ok. Checking 'wget'... ok. Checking 'git'... ok. Checking 'gnutar'... ok. Checking 'svn'... ok. Checking 'openssl'... ok. Checking 'gnu-find'... ok. Checking 'getopt-extended'... ok. Checking 'file'... ok. ... etc etc ... i killed that command while it was in the middle of make prepare-tmpinfo. why do those two cleaning targets do all that work, only to remove it right away? this is not the case with make distclean, which seems to be defined differently so it doesn't have this issue. rday p.s. a wild guess, but it seems that there are weird side effects to using FORCE instead of simply declaring targets as .PHONY. -- Robert P. J. Day Ottawa, Ontario, CANADA http://crashcourse.ca Twitter: http://twitter.com/rpjday LinkedIn: http://ca.linkedin.com/in/rpjday ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] Open source open process
Hi, OpenWRT is a wonderfull piece of open source code, and it would be really great if the project management could be as open as the code. BB should be out now but for an unknow reason, it's not, and it's frustating. If some feature are missing, let people know. If some bugs need to be killed, let the community help. If buildbots are broken, let someone provide new ones. Open a TODO list on an etherpad, involve people. Whatever the reasons are, i'm sure some people can help. When you open the process, you get more work done (see new packages feed). Please communicate!!! Thanks Etienne ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] kernel changes on recompilation?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 01/10/14 14:31, Baptiste Jonglez wrote: When you activate/deactivate packages in menuconfig, it may modify what gets compiled into the kernel, to add/remove support for the various subsystems needed by the packages you build. This will cause the kernel to be rebuilt with a different package number. If you just rebuild the image without changing anything in menuconfig, I think the kernel package will not be rebuilt. Not sure though, just try and see for yourself :) Hm.. i can contribute a datapoint: if you make a dirclean, without changing anything in the makeconfig or anything else (say, make dirclean ; make ; make dirclean; make) you'll end up with two different kernel-hashes (after step 2 and 4) so there's (in addition to selected-kernel-features and such) some kind of build-date being taken into account for calculating the hash, which gets lost when doing dirclean, somewhere inside build_dir i suppose. cheers! gui Baptiste On Wed, Oct 01, 2014 at 03:43:20PM +0530, Nishant Sharma wrote: Hello members, Although, I am compiling and using custom OpenWRT images since 8 months now, but I am still confused with this particular behaviour. I am using it primarily on x86 Alix APU devices. Everytime I run a make and kernel gets recompiled, it changes the hex value appended to the kernel package name which makes a lot of packages or new modules compiled uninstallable on existing systems through opkg. What is the best practice for doing these kind of things or is there any workaround? Thanks in advance. Regards, Nishant ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.12 (GNU/Linux) iQIcBAEBAgAGBQJULIsaAAoJEIJqNBvBfxrIX9wQAI987g9ibT2DYo2LoTdGKjrt 1w6m8AHT5xAKLJRlbOLZ0eDeArtryOh+s+rZzOdSAd/++Yh/8cjx3KlX6rI0tqQY cTW49Ghbm23VZaPhIq86y3pJOYN1VdYhk/ZYR4hTHER1lJwiJYl/Ikrhb4X7mhFv m2NXwye+aIAruXlTo4MJ5hGYxxV5XgeAtwgtuaZDW8MtkxBIiNceSziOyaoU6mC0 DBuslTnwNqZbkGoqRuZlkzJRjTtqKtG1CbkDRk9jWJmAhXCfEve5zqkI0wB5dwIi c1F7/+a4SKW8iEQLEDELPEFqW/8rSO5QJL7O+d98LqO/b7kJiYuRfsAeMAdITMGD TX4WPHyE47LSP5DdVolEOkX9YBwRMVFEiC594/unsHx7186k3h/84I0ZYtCs6WBo 106AuOzxcktnLycPPvR4Gj2pUbY0cGMeTgD+Z5+1sBAFDgKMwqUmVGy5NxCFQ39I Va1z0ihqVey1+Bh3YJ86mJ6L02kdaEvc7+vpbtdJnXSRQGSjSK8wmvNjzCkvslJO d3aQa39urJAgZ/flfk+SPvU1ZTr1ohjsmzcCwMq2KZFdr7wcBcQE2YZ1b77UhUcl jdDqGaSUFbjy504UpQaGscjMwZctwT8IWcbePnBsutlNue0a5A1kVnhQoSgPeFCi hxPIp54tbwYZ41YvJyPb =HY70 -END PGP SIGNATURE- ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] kernel changes on recompilation?
On 2 October 2014 04:45:38 GMT+05:30, Gui Iribarren g...@altermundi.net wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 01/10/14 14:31, Baptiste Jonglez wrote: When you activate/deactivate packages in menuconfig, it may modify what gets compiled into the kernel, to add/remove support for the various subsystems needed by the packages you build. This will cause the kernel to be rebuilt with a different package number. If you just rebuild the image without changing anything in menuconfig, I think the kernel package will not be rebuilt. Not sure though, just try and see for yourself :) Hm.. i can contribute a datapoint: if you make a dirclean, without changing anything in the makeconfig or anything else (say, make dirclean ; make ; make dirclean; make) you'll end up with two different kernel-hashes (after step 2 and 4) so there's (in addition to selected-kernel-features and such) some kind of build-date being taken into account for calculating the hash, which gets lost when doing dirclean, somewhere inside build_dir i suppose. I never did a clean or dir clean but yes I enabled a few packages and modules with new requirements. Which is fine by my own thinking. And just for adding e.g. batman-adv to existing devices in the field, it becomes a pain to reflash them due to kernel hash change. Any more pointers please? Regards, Nishant cheers! gui Baptiste On Wed, Oct 01, 2014 at 03:43:20PM +0530, Nishant Sharma wrote: Hello members, Although, I am compiling and using custom OpenWRT images since 8 months now, but I am still confused with this particular behaviour. I am using it primarily on x86 Alix APU devices. Everytime I run a make and kernel gets recompiled, it changes the hex value appended to the kernel package name which makes a lot of packages or new modules compiled uninstallable on existing systems through opkg. What is the best practice for doing these kind of things or is there any workaround? Thanks in advance. Regards, Nishant ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.12 (GNU/Linux) iQIcBAEBAgAGBQJULIsaAAoJEIJqNBvBfxrIX9wQAI987g9ibT2DYo2LoTdGKjrt 1w6m8AHT5xAKLJRlbOLZ0eDeArtryOh+s+rZzOdSAd/++Yh/8cjx3KlX6rI0tqQY cTW49Ghbm23VZaPhIq86y3pJOYN1VdYhk/ZYR4hTHER1lJwiJYl/Ikrhb4X7mhFv m2NXwye+aIAruXlTo4MJ5hGYxxV5XgeAtwgtuaZDW8MtkxBIiNceSziOyaoU6mC0 DBuslTnwNqZbkGoqRuZlkzJRjTtqKtG1CbkDRk9jWJmAhXCfEve5zqkI0wB5dwIi c1F7/+a4SKW8iEQLEDELPEFqW/8rSO5QJL7O+d98LqO/b7kJiYuRfsAeMAdITMGD TX4WPHyE47LSP5DdVolEOkX9YBwRMVFEiC594/unsHx7186k3h/84I0ZYtCs6WBo 106AuOzxcktnLycPPvR4Gj2pUbY0cGMeTgD+Z5+1sBAFDgKMwqUmVGy5NxCFQ39I Va1z0ihqVey1+Bh3YJ86mJ6L02kdaEvc7+vpbtdJnXSRQGSjSK8wmvNjzCkvslJO d3aQa39urJAgZ/flfk+SPvU1ZTr1ohjsmzcCwMq2KZFdr7wcBcQE2YZ1b77UhUcl jdDqGaSUFbjy504UpQaGscjMwZctwT8IWcbePnBsutlNue0a5A1kVnhQoSgPeFCi hxPIp54tbwYZ41YvJyPb =HY70 -END PGP SIGNATURE- ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel -- Sent from my Android device with K-9 Mail. Please excuse my brevity. ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [RFC PATCH] packages: Smart Queue Management for AQM Packet Scheduling and Qos from CeroWrt
How good is the throughput on CeroWrt compared to OpenWrt ? On Oct 2, 2014 9:55 AM, Dave Taht dave.t...@bufferbloat.net wrote: On Wed, Oct 01, 2014 at 12:10:46PM -0400, Weedy wrote: On 30/03/14 06:29 PM, Dave Taht wrote: On Sun, Mar 30, 2014 at 02:24:44PM -0400, Weedy wrote: On Sat, Mar 29, 2014 at 2:56 PM, Dave Täht dave.t...@bufferbloat.net wrote: From: Dave Taht dave.t...@bufferbloat.net This adds support for the bufferbloat project's Smart Queue Management (SQM) system, which improves over openwrt's qos-scripts in the following ways + Uses HTB with two models for managing traffic a simplest one that merely uses fq_codel, and a three tier one that does some basic and tunable packet prioritization. + Works with ipv6 and ipv4 correctly (unlike qos-scripts) + extensive support for fixing ADSL and PPOe framing problems + Partial support for key diffserv markings + highly tuned fq_codel implementation especially for low bandwidths + Tested heavily on cable modems and on dsl devices It is a disimprovement in that: - There are no built-in tricks for doing l7 classification, or other forms of packet inspection. - We haven't explored hfsc all that much, prefering to rely on the predictable behavior of htb + fq_codel for everything - And there is support for a few qdiscs that are not in the linux kernel mainline that remain experimental. --- net/sqm-scripts/Makefile | 48 +++ net/sqm-scripts/files/etc/config/sqm | 11 + net/sqm-scripts/files/etc/init.d/sqm | 23 ++ net/sqm-scripts/files/usr/lib/sqm/functions.sh | 335 net/sqm-scripts/files/usr/lib/sqm/run.sh | 67 net/sqm-scripts/files/usr/lib/sqm/simple.qos | 187 +++ net/sqm-scripts/files/usr/lib/sqm/simple.qos.help |1 + net/sqm-scripts/files/usr/lib/sqm/simplest.qos | 84 + .../files/usr/lib/sqm/simplest.qos.help|1 + net/sqm-scripts/files/usr/lib/sqm/stop.sh | 22 ++ 10 files changed, 779 insertions(+) create mode 100644 net/sqm-scripts/Makefile create mode 100644 net/sqm-scripts/files/etc/config/sqm create mode 100755 net/sqm-scripts/files/etc/init.d/sqm create mode 100644 net/sqm-scripts/files/usr/lib/sqm/functions.sh create mode 100755 net/sqm-scripts/files/usr/lib/sqm/run.sh create mode 100755 net/sqm-scripts/files/usr/lib/sqm/simple.qos create mode 100644 net/sqm-scripts/files/usr/lib/sqm/simple.qos.help create mode 100755 net/sqm-scripts/files/usr/lib/sqm/simplest.qos create mode 100644 net/sqm-scripts/files/usr/lib/sqm/simplest.qos.help create mode 100755 net/sqm-scripts/files/usr/lib/sqm/stop.sh diff --git a/net/sqm-scripts/files/etc/config/sqm b/net/sqm-scripts/files/etc/config/sqm new file mode 100644 index 000..547d321 --- /dev/null +++ b/net/sqm-scripts/files/etc/config/sqm @@ -0,0 +1,11 @@ + +config queue 'ge00' +option enabled '0' +option interface 'ge00' +option download '2' +option upload '4000' +option qdisc 'fq_codel' +option script 'simple.qos' +option qdisc_advanced '0' +option linklayer 'none' + How hard is this to config from the command line/vim? There are a few more options than this (for DSL compensation, ecn and advanced configuration), the above would work if you changed enabled to '1' and the device from ge00 to your wan device. (not the wan firewall rule, presently. ) It does help to have a sane long term and realistic measurement of your network using something like the rrul test rather than the oft-gamed speedtest. http://www.bufferbloat.net/projects/cerowrt/wiki/Setting_up_SQM_for_CeroWrt_310 You are right, we should fully document all the variables in this file. Until recently they were kind of in flux. I've never needed or really wanted luci on my box, I just use vim. Going by this patch, there is either nothing to config or no examples. I would think shipping a roughly equivalent config to what ships in qos-scripts would be a good start to get people testing. /etc/init.d/sqm start,stop etc work as expected. IE: highest priority: small ARP, DNS, and SSH packets The SQM default is local DNS and ntp. fq_codel automagically optimizes for other sparse flows like arp, ssh, mosh, tcp syn, synack, etc, no need to do that via classification. normal: HTTP, HTTPS So you want to deprioritize vpn, smtp, rsync, dropbox, http on odd ports, caching servers, etc, all in favor of the web gods? we just toss all that into the normal (best effort bin) and let fq_codel sort it out. bulk: everything else. We do respect the diffserv marking of CS1
Re: [OpenWrt-Devel] Open source open process
no its certainly farting. i have you 2 and about 1 other person complain. the other 95% sent me mails with nice and simple questions and input and so forth. i just had a look, yesterday i got related to BB * 8 thank you mails * 6 mails asking for various support things * 4 pkg maintainers ask for help/logs * 2 devs asking for root on the build server * 2 people reminded me that now BB is out of the way that i promised to fix NCM, hwdetect, ... * 2 mails of people voicing wishes for CC * 2 driver fixes for i2c on mediatek . * and etiennes mails and your reply sorry but looking at those numbers it is farting that you are doing. John On 02/10/2014 07:01, Hanno Schupp wrote: I think this is his point, mate: You work hard (in isolation), but don't communicate. If you want to avoid emails that smell like farts to you, why not tell people what's going on? On 2 October 2014 17:51, John Crispin blo...@openwrt.org mailto:blo...@openwrt.org wrote: nice rant, what happened at mignight that you got so angry that you feel you needed to vent it out on us ? i would like to point out that the BB-final binaries have been online for over a day. currently the root filesystems only hold a opkg.conf with base and luci. last night we regenerated the files so that the opkg.conf holds all feeds. while you were busy farting we were busy working. but thanks for the nice mail. On 01/10/2014 23:59, Etienne Champetier wrote: Hi, OpenWRT is a wonderfull piece of open source code, and it would be really great if the project management could be as open as the code. BB should be out now but for an unknow reason, it's not, and it's frustating. If some feature are missing, let people know. If some bugs need to be killed, let the community help. If buildbots are broken, let someone provide new ones. Open a TODO list on an etherpad, involve people. Whatever the reasons are, i'm sure some people can help. When you open the process, you get more work done (see new packages feed). Please communicate!!! Thanks Etienne ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org mailto:openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org mailto:openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel