Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
commit
bd3c36f75e
@ -1,6 +1,8 @@
|
||||
BPF_DEPENDS := @HAS_BPF_TOOLCHAIN
|
||||
LLVM_VER:=
|
||||
|
||||
CLANG_MIN_VER:=12
|
||||
|
||||
ifneq ($(CONFIG_USE_LLVM_HOST),)
|
||||
BPF_TOOLCHAIN_HOST_PATH:=$(call qstrip,$(CONFIG_BPF_TOOLCHAIN_HOST_PATH))
|
||||
ifneq ($(BPF_TOOLCHAIN_HOST_PATH),)
|
||||
@ -61,6 +63,14 @@ BPF_CFLAGS := \
|
||||
-Wno-unused-label \
|
||||
-O2 -emit-llvm -Xclang -disable-llvm-passes
|
||||
|
||||
ifeq ($(DUMP),)
|
||||
CLANG_VER:=$(shell clang -dM -E - < /dev/null | grep __clang_major__ | cut -d' ' -f3)
|
||||
CLANG_VER_VALID:=$(shell [ "$(CLANG_VER)" -ge "$(CLANG_MIN_VER)" ] && echo 1 )
|
||||
ifeq ($(CLANG_VER_VALID),)
|
||||
$(error ERROR: LLVM/clang version too old. Minimum required: $(CLANG_MIN_VER), found: $(CLANG_VER))
|
||||
endif
|
||||
endif
|
||||
|
||||
define CompileBPF
|
||||
$(CLANG) -g -target $(BPF_ARCH)-linux-gnu $(BPF_CFLAGS) $(2) \
|
||||
-c $(1) -o $(patsubst %.c,%.bc,$(1))
|
||||
|
||||
@ -0,0 +1,37 @@
|
||||
From: Felix Fietkau <nbd@nbd.name>
|
||||
Date: Wed, 10 Nov 2021 22:17:13 +0100
|
||||
Subject: [PATCH] mac80211: drop check for DONT_REORDER in
|
||||
__ieee80211_select_queue
|
||||
|
||||
When __ieee80211_select_queue is called, skb->cb has not been cleared yet,
|
||||
which means that info->control.flags can contain garbage.
|
||||
In some cases this leads to IEEE80211_TX_CTRL_DONT_REORDER being set, causing
|
||||
packets marked for other queues to randomly end up in BE instead.
|
||||
|
||||
This flag only needs to be checked in ieee80211_select_queue_80211, since
|
||||
the radiotap parser is the only piece of code that sets it
|
||||
|
||||
Fixes: 66d06c84730c ("mac80211: adhere to Tx control flag that prevents frame reordering")
|
||||
Cc: stable@vger.kernel.org
|
||||
Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
---
|
||||
|
||||
--- a/net/mac80211/wme.c
|
||||
+++ b/net/mac80211/wme.c
|
||||
@@ -143,7 +143,6 @@ u16 ieee80211_select_queue_80211(struct
|
||||
u16 __ieee80211_select_queue(struct ieee80211_sub_if_data *sdata,
|
||||
struct sta_info *sta, struct sk_buff *skb)
|
||||
{
|
||||
- struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
|
||||
struct mac80211_qos_map *qos_map;
|
||||
bool qos;
|
||||
|
||||
@@ -156,7 +155,7 @@ u16 __ieee80211_select_queue(struct ieee
|
||||
else
|
||||
qos = false;
|
||||
|
||||
- if (!qos || (info->control.flags & IEEE80211_TX_CTRL_DONT_REORDER)) {
|
||||
+ if (!qos) {
|
||||
skb->priority = 0; /* required for correct WPA/11i MIC */
|
||||
return IEEE80211_AC_BE;
|
||||
}
|
||||
@ -3,11 +3,11 @@ include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=nat46
|
||||
|
||||
PKG_MIRROR_HASH:=a74a9a84605bac6186adf37025b3880eb9cf5931791bb61d47e69b8898cac411
|
||||
PKG_MIRROR_HASH:=5e7ebe31311a7b79f9eda222e94170611b3e041e3a472f55b6a283d9b0093bd4
|
||||
PKG_SOURCE_URL:=https://github.com/ayourtch/nat46.git
|
||||
PKG_SOURCE_DATE:=2021-06-24
|
||||
PKG_SOURCE_DATE:=2021-11-08
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=9b3a8197421d987d77e1b9df4159cfe0b9820ee9
|
||||
PKG_SOURCE_VERSION:=1fdf2a3cf90843ef65b8e84ff25d5e0507eaa3fe
|
||||
|
||||
PKG_MAINTAINER:=Hans Dedecker <dedeckeh@gmail.com>
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
|
||||
11
package/network/services/dnsmasq/files/dnsmasq.init
Normal file → Executable file
11
package/network/services/dnsmasq/files/dnsmasq.init
Normal file → Executable file
@ -332,7 +332,7 @@ dhcp_match_add() {
|
||||
|
||||
dhcp_host_add() {
|
||||
local cfg="$1"
|
||||
local hosttag nametime addrs duids macs tags
|
||||
local hosttag nametime addrs duids macs tags mtags
|
||||
|
||||
config_get_bool force "$cfg" force 0
|
||||
|
||||
@ -357,6 +357,11 @@ dhcp_host_add() {
|
||||
config_get duid "$cfg" duid
|
||||
config_get tag "$cfg" tag
|
||||
|
||||
add_tag() {
|
||||
mtags="${mtags}tag:$1,"
|
||||
}
|
||||
config_list_foreach "$cfg" match_tag add_tag
|
||||
|
||||
if [ -n "$mac" ]; then
|
||||
# --dhcp-host=00:20:e0:3b:13:af,192.168.0.199,lap
|
||||
# many MAC are possible to track a laptop ON/OFF dock
|
||||
@ -394,9 +399,9 @@ dhcp_host_add() {
|
||||
|
||||
if [ $DNSMASQ_DHCP_VER -eq 6 ]; then
|
||||
addrs="${ip:+,$ip}${hostid:+,[::$hostid]}"
|
||||
xappend "--dhcp-host=$macs${duids:+,$duids}$hosttag$addrs$nametime"
|
||||
xappend "--dhcp-host=$mtags$macs${duids:+,$duids}$hosttag$addrs$nametime"
|
||||
else
|
||||
xappend "--dhcp-host=$macs$hosttag${ip:+,$ip}$nametime"
|
||||
xappend "--dhcp-host=$mtags$macs$hosttag${ip:+,$ip}$nametime"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@ -162,7 +162,7 @@
|
||||
ttl = find_soa(header, qlen, doctored);
|
||||
--- a/src/ubus.c
|
||||
+++ b/src/ubus.c
|
||||
@@ -72,6 +72,14 @@ static struct ubus_object ubus_object =
|
||||
@@ -72,6 +72,13 @@ static struct ubus_object ubus_object =
|
||||
.subscribe_cb = ubus_subscribe_cb,
|
||||
};
|
||||
|
||||
@ -170,23 +170,35 @@
|
||||
+ { .name = "dnsmasq.dns" };
|
||||
+
|
||||
+static struct ubus_object ubus_dns_object = {
|
||||
+ .name = "dnsmasq.dns",
|
||||
+ .type = &ubus_dns_object_type,
|
||||
+};
|
||||
+
|
||||
static void ubus_subscribe_cb(struct ubus_context *ctx, struct ubus_object *obj)
|
||||
{
|
||||
(void)ctx;
|
||||
@@ -112,6 +120,8 @@ char *ubus_init()
|
||||
@@ -105,13 +112,21 @@ static void ubus_disconnect_cb(struct ub
|
||||
char *ubus_init()
|
||||
{
|
||||
struct ubus_context *ubus = NULL;
|
||||
+ char *dns_name;
|
||||
int ret = 0;
|
||||
|
||||
if (!(ubus = ubus_connect(NULL)))
|
||||
return NULL;
|
||||
|
||||
+ dns_name = whine_malloc(strlen(daemon->ubus_name) + 5);
|
||||
+ sprintf(dns_name, "%s.dns", daemon->ubus_name);
|
||||
+
|
||||
ubus_object.name = daemon->ubus_name;
|
||||
+ ubus_dns_object.name = dns_name;
|
||||
+
|
||||
ret = ubus_add_object(ubus, &ubus_object);
|
||||
+ if (!ret)
|
||||
+ ret = ubus_add_object(ubus, &ubus_dns_object);
|
||||
if (ret)
|
||||
{
|
||||
ubus_destroy(ubus);
|
||||
@@ -181,6 +191,17 @@ void check_ubus_listeners()
|
||||
@@ -181,6 +196,17 @@ void check_ubus_listeners()
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
@ -204,7 +216,7 @@
|
||||
static int ubus_handle_metrics(struct ubus_context *ctx, struct ubus_object *obj,
|
||||
struct ubus_request_data *req, const char *method,
|
||||
struct blob_attr *msg)
|
||||
@@ -328,6 +349,50 @@ fail:
|
||||
@@ -328,6 +354,50 @@ fail:
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
|
||||
@ -12,9 +12,9 @@ PKG_RELEASE:=$(AUTORELEASE)
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/procd.git
|
||||
PKG_MIRROR_HASH:=0d51642d82d7bb4150355a6986e54504dce171c6fcb7eeff312d20a5d106bad8
|
||||
PKG_SOURCE_DATE:=2021-11-04
|
||||
PKG_SOURCE_VERSION:=0ee8e734a7f67220cf4a3412b60ff674b5fb20dd
|
||||
PKG_MIRROR_HASH:=0ff42d965b6c07fe9d1731395623b78967b83bbeb85deda900dd430a2883643f
|
||||
PKG_SOURCE_DATE:=2021-11-11
|
||||
PKG_SOURCE_VERSION:=9d1431e1309e1acee06c016acc08cb7650b1d0af
|
||||
CMAKE_INSTALL:=1
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
|
||||
Loading…
Reference in New Issue
Block a user