From patchwork Wed Sep 25 14:47:11 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ali MJ Al-Nasrawy X-Patchwork-Id: 1167332 X-Patchwork-Delegate: hauke@hauke-m.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="pJDqH4fw"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="Ysb4Abqz"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46dgsQ4nYMz9sNx for ; Thu, 26 Sep 2019 00:48:10 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:Message-Id:Date:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=cIiLh6nG7MxgUJ27QA/QWHzeFujMygsWphlIR+YN3Tg=; b=pJDqH4fwPssmQY gbtictdKhwt+G31V0n01pXPAPNgmlnogi01cf0VoljkH++kbiSyFpZ6B5FkekpuJHoryN/pkIHzRz HBpwSuCUFSDPLh5xQDhZYD0DAuTnob1r2vGSmKtEkid+QKKJQHQx8Y1OlqeSMbsO/kxQnIucM6O16 09gz8A4p43aJKFs0zhklaHqxIHg2hAvlVPHCeAy6QkGmwxqK6Uui03dzYrmuKHvESQ1qZMT4z2Hgr 37nc38++O+8bI6mcriabo4iHHPRKbN0quoqI6JXHN9IUhMDpdD3GsZDmWaQmXfpTFHTTsToq38WrD AsOAlejuxV7VL/gg5RnQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.2 #3 (Red Hat Linux)) id 1iD8aM-0006dJ-2r; Wed, 25 Sep 2019 14:48:06 +0000 Received: from mail-wr1-x444.google.com ([2a00:1450:4864:20::444]) by bombadil.infradead.org with esmtps (Exim 4.92.2 #3 (Red Hat Linux)) id 1iD8aI-0006ck-47 for openwrt-devel@lists.openwrt.org; Wed, 25 Sep 2019 14:48:03 +0000 Received: by mail-wr1-x444.google.com with SMTP id i1so7299742wro.4 for ; Wed, 25 Sep 2019 07:48:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=mRdrZHtG/HbFvkzi370itWp53xkheG38hSIpTE42utg=; b=Ysb4Abqz38IhYM+7nu21uqCn2xcdjLkRglqW15oc8/wIjqegK2cLcSBd/qNqC0t1vh 48s/LvM0aFUpxUlEMmBhXGmPIaxrgIaWJPLxCTphL4s17VQ2cBJebhel9sKsbqZgrHpd VRgsG0hn+HIkA5f9JqzqAyI+hCIIOthUWe33swm2jfmim93Jr3MoTd5Mg7t4y1/MmszW sKAMOwmCL0m9FP3H0GeO0vmiOgxA5BNy26fRRrj4QmeP30nxdxxbr7padh+zjOryczpM uc5Cc2KWYdb4M5iO2NMBNf6qKEpXeCdvSZ9E/NB8URjsr/hv+N2FnhCjRY5kCQFa2Jfx 5etg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=mRdrZHtG/HbFvkzi370itWp53xkheG38hSIpTE42utg=; b=LqV2F5+fuyoF0K930SYVkX4nCEmhd+Gi3zq50LriVXfz7RW2BPu87cbkvLehkn3gPV j5BUhWwm5Pr46rbhm8oz8pFLKp5av2h7HLfmvfIgldoFmh/qpj1uq143twGQgcEBrWd4 Q6ga4Utmd4fKl51rMPd65jRnXhXep8hTAb6PDDUwjvijs4ITq0/YqqKHlXRPwfcDDBik T8mE+7NDXGTVZd7x3gDwWXQ416oqV+VuD5J1b3IvPCWWw4PS/eEtApWRcJZcbY8tR68q J0si82AkyV2aI39PxCJxcBloz9hsG6n4m7ivpJBBbh5nP8Y8TFBW4/IUTQhMQ1tb+hR0 ZLMg== X-Gm-Message-State: APjAAAXtHE7O0Fp4Opr5mH0G7q+UPT6cYsjX0BYUX3jpgnHT49hL0GTz hPuHViAzIsu3vHCAN/Z2qdg= X-Google-Smtp-Source: APXvYqz2D8jdxZ2U70uXo8tGv7RrVrz9G5n254lsZKPMLbIhGFGHuL4TkxPId5AuhSy2WTFp4Hecow== X-Received: by 2002:adf:f343:: with SMTP id e3mr9854886wrp.268.1569422879250; Wed, 25 Sep 2019 07:47:59 -0700 (PDT) Received: from localhost.localdomain ([37.237.208.16]) by smtp.gmail.com with ESMTPSA id e20sm9646402wrc.34.2019.09.25.07.47.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Sep 2019 07:47:58 -0700 (PDT) From: Ali MJ Al-Nasrawy To: Felix Fietkau Date: Wed, 25 Sep 2019 17:47:11 +0300 Message-Id: <20190925144713.10632-1-alimjalnasrawy@gmail.com> X-Mailer: git-send-email 2.23.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190925_074802_193575_FF13A8A5 X-CRM114-Status: GOOD ( 10.22 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:444 listed in] [list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (alimjalnasrawy[at]gmail.com) -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain Subject: [OpenWrt-Devel] [PATCH 1/3] kernel: trelay: handle netdevice events correctly X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Ali MJ Al-Nasrawy , openwrt-devel@lists.openwrt.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org Since v3.11, netdevice notification data are of type "struct netdev_notifier_info". Handle it as such! This should fix a critical bug in which devices are unable get released because trelay does not release resources in response to UNREGISTER event spamming the log with something like: unregister_netdevice: waiting for eth0.1 to become free. Usage count = 1 Signed-off-by: Ali MJ Al-Nasrawy --- package/kernel/trelay/src/trelay.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/kernel/trelay/src/trelay.c b/package/kernel/trelay/src/trelay.c index 581a5cfd2f..6d9d9cc14b 100644 --- a/package/kernel/trelay/src/trelay.c +++ b/package/kernel/trelay/src/trelay.c @@ -86,7 +86,7 @@ static struct trelay *trelay_find(struct net_device *dev) static int tr_device_event(struct notifier_block *unused, unsigned long event, void *ptr) { - struct net_device *dev = ptr; + struct net_device *dev = ((struct netdev_notifier_info *)ptr)->dev; struct trelay *tr; if (event != NETDEV_UNREGISTER) From patchwork Wed Sep 25 14:47:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ali MJ Al-Nasrawy X-Patchwork-Id: 1167333 X-Patchwork-Delegate: hauke@hauke-m.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="pJd7IhgZ"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="PNzJ/9Yt"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46dgtL6Stmz9sPJ for ; Thu, 26 Sep 2019 00:48:58 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=S8IhRDqIjbMCgn6FKWUcxtfXx1GYxIFfptYXVB9rN30=; b=pJd7IhgZr9S+74 SxjCtbDFINKIvjmTfeOih/7uhZCXa25CyST0hLIPcCxl4m+qBmnEedDrPuJQ6/M4IAXckMi7a8YRy tY77LrhI9wD7il7AycLkC6wmkSRNYdNEpWPMwXlQORzgr/KDL6XkcAeaarlaWn7JTWOs/JrtlhlV/ IkQrVFPwtiD/3O2Wkd+D32JZOnLz7bHEhJu6JhZUpKdsUA+Rppi2X6qUA7NYQ/OCQ0SKNdSPYfQxj lxf00MOSo/jZRoYCB+pnkiM2hmp9zWPkNdY+2Ke4YAnZ6lMGxlCqqvJ596Z5Eo+eo9Lv1luX802N3 O+zWvjSTEeP9IlJI8bNA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.2 #3 (Red Hat Linux)) id 1iD8b5-0006pt-CO; Wed, 25 Sep 2019 14:48:52 +0000 Received: from mail-wm1-x344.google.com ([2a00:1450:4864:20::344]) by bombadil.infradead.org with esmtps (Exim 4.92.2 #3 (Red Hat Linux)) id 1iD8aL-0006d5-4c for openwrt-devel@lists.openwrt.org; Wed, 25 Sep 2019 14:48:06 +0000 Received: by mail-wm1-x344.google.com with SMTP id f22so5299489wmc.2 for ; Wed, 25 Sep 2019 07:48:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=X7yY8c/DY1tCwrfomCyvX2/pZrfoH3QHBpRzRCoM70U=; b=PNzJ/9Ytn5zlGeQx3/9iXr768SDUOMRQ2HJfy+UAQvezz+Jpxk89zP7T/MPCEu5Ie5 VUwoHIGSZo32JA9vIWXLXzyLnBQ0lEpp96R2ZtA0loKEBoLqHGTBvdth/4Sz2TRXYzUB if0HfsgEMeM69hO1h2pFj6JkvXKgWILjm03nnhUTP+lQzL9lai35C9LznKTI7C71WV9F hyPmEg0Acgv+h251v396RIryejvp+m69Ej+V9R0jrhsdaeOm0lqgPskTXFHKM/mRX6TN lQ+AGeoB0zzufWY+ri2UQRQEXtR+IraHU1wlBO9JuNbgEgSoKgLQMut6Yti614vmPCsW 8NHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=X7yY8c/DY1tCwrfomCyvX2/pZrfoH3QHBpRzRCoM70U=; b=W6LhvFswqan4BPvBah9KhPHBJBBQKnV3R/Va7PUUrzYLo/1VFtCW6UMjNo1Fj+Q3TP kiUkCbuXdCegY2diKB2JYDCV0feUhLK2gqIMclakeWiGFN2Wndt+k7xRV7mxHQijpQN3 Ixu9WHYM200Bx+cS1tUOE2CmVxpJFAVaAnhSzp4Nd7WXiQNDAqEIGWZ54E/V3ZCUZBiM NACKFdMdHD0wG+r5K9pupwbiJgM4IIYO3hTqFXhVaugY+AYw3mOS/ZUbgcYaS39X+v6H qCMw4tHgdVUq8+LRS+wbQ+T+ckfd60WcH/077sqOc4SKK55NUtB9qbv19qO8dEPLrs0q eQJQ== X-Gm-Message-State: APjAAAU0S0QdObYuMF+AYZbXtbJo7uqkNbQkoBjrDtWTwC2jikL+we/m WqKvLKpPrM1I9mphQ42femg= X-Google-Smtp-Source: APXvYqzmHoPwXmloFJVgaNgS4oIKdsad0YxPXDzySCBxqhB+IiSXSr5my7wlu30er93K3BYm3Pz4aw== X-Received: by 2002:a1c:4945:: with SMTP id w66mr8140194wma.40.1569422883326; Wed, 25 Sep 2019 07:48:03 -0700 (PDT) Received: from localhost.localdomain ([37.237.208.16]) by smtp.gmail.com with ESMTPSA id e20sm9646402wrc.34.2019.09.25.07.48.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Sep 2019 07:48:02 -0700 (PDT) From: Ali MJ Al-Nasrawy To: Felix Fietkau Date: Wed, 25 Sep 2019 17:47:12 +0300 Message-Id: <20190925144713.10632-2-alimjalnasrawy@gmail.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20190925144713.10632-1-alimjalnasrawy@gmail.com> References: <20190925144713.10632-1-alimjalnasrawy@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190925_074805_180597_B695A8C4 X-CRM114-Status: GOOD ( 13.77 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:344 listed in] [list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (alimjalnasrawy[at]gmail.com) -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain Subject: [OpenWrt-Devel] [PATCH 2/3] kernel: trelay: fix deadlock on remove X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Ali MJ Al-Nasrawy , openwrt-devel@lists.openwrt.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org Upon writing to "remove" file, debugfs_remove_recursive() blocks while holding rtnl_lock. This is because debugfs' file_ops callbacks are executed in debugfs_use_file_*() context which prevents file removal. Fix this by only flagging the device for removal and then do the cleanup in file_ops.release callback which is executed out of that context. Signed-off-by: Ali MJ Al-Nasrawy --- package/kernel/trelay/src/trelay.c | 32 +++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/package/kernel/trelay/src/trelay.c b/package/kernel/trelay/src/trelay.c index 6d9d9cc14b..0e3d85bfef 100644 --- a/package/kernel/trelay/src/trelay.c +++ b/package/kernel/trelay/src/trelay.c @@ -27,6 +27,7 @@ struct trelay { struct list_head list; struct net_device *dev1, *dev2; struct dentry *debugfs; + int to_remove; char name[]; }; @@ -60,13 +61,16 @@ static int trelay_do_remove(struct trelay *tr) { list_del(&tr->list); + /* First and before all, ensure that the debugfs file is removed + * to prevent dangling pointer in file->private_data */ + debugfs_remove_recursive(tr->debugfs); + dev_put(tr->dev1); dev_put(tr->dev2); netdev_rx_handler_unregister(tr->dev1); netdev_rx_handler_unregister(tr->dev2); - debugfs_remove_recursive(tr->debugfs); kfree(tr); return 0; @@ -106,23 +110,33 @@ static ssize_t trelay_remove_write(struct file *file, const char __user *ubuf, size_t count, loff_t *ppos) { struct trelay *tr = file->private_data; - int ret; - - rtnl_lock(); - ret = trelay_do_remove(tr); - rtnl_unlock(); - - if (ret < 0) - return ret; + tr->to_remove = 1; return count; } +static int trelay_remove_release(struct inode *inode, struct file *file) +{ + struct trelay *tr, *tmp; + + /* This is the only file op that is called outside debugfs_use_file_*() + * context which means that: (1) this file can be removed and + * (2) file->private_data may no longer be valid */ + rtnl_lock(); + list_for_each_entry_safe(tr, tmp, &trelay_devs, list) + if (tr->to_remove) + trelay_do_remove(tr); + rtnl_unlock(); + + return 0; +} + static const struct file_operations fops_remove = { .owner = THIS_MODULE, .open = trelay_open, .write = trelay_remove_write, .llseek = default_llseek, + .release = trelay_remove_release, }; From patchwork Wed Sep 25 14:47:13 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ali MJ Al-Nasrawy X-Patchwork-Id: 1167334 X-Patchwork-Delegate: hauke@hauke-m.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="trggd429"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="SiEFdMCH"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46dgv05dB4z9sNx for ; Thu, 26 Sep 2019 00:49:32 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=3Aq6o1zszUDIJtkGE+IjO+yyD6DmliC8um+2aqYgxek=; b=trggd429mznH71 QS9pZLK9VI+bRCMR+14fPU5F7+/HW4rJO8p/X8o4GBeaNEkYGEJNDK0TROsg5jgDJoNiiW/LHSf2R mcwVC5s76RnGIrxAZaJ2BLmu/ATXUzHW7Cwaf0if5xl9XdhlLY5SccY4WfqKUdAKRc6kH8/xPdJzY rR9CnJHzHD+yYCu7gXeM2xsmQNXvXtbK8cJ3ngzNeT8hnG8cag36pkro59PFXoZpoC7Zvyg6kMYNV sNyi3yd00wMkzNOtch++Y2HRUt7dOY097tT9ThenGbLCS6V6BPA++QzoOc85p9AibJmi1AgisSAmZ YMuNkWcvxzTKQT9bVtWw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.2 #3 (Red Hat Linux)) id 1iD8bh-00077H-N2; Wed, 25 Sep 2019 14:49:30 +0000 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]) by bombadil.infradead.org with esmtps (Exim 4.92.2 #3 (Red Hat Linux)) id 1iD8aO-0006dk-36 for openwrt-devel@lists.openwrt.org; Wed, 25 Sep 2019 14:48:09 +0000 Received: by mail-wm1-x341.google.com with SMTP id 3so5282074wmi.3 for ; Wed, 25 Sep 2019 07:48:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mZ6WJ29hobDMcqZDvU+YsfCco9vg1t13E77qX5RJEa8=; b=SiEFdMCHN2+uXzylq1G3Z9Jn0vlfME/O5wc4tg6lb3EhN5RAu/QHUTEUEkJJqFfJlU qahXirrWVkWSu5OWYWKe40admgsk38euAejtc/tIlgUwN8ABWVfxAehChbRHmq+B3STA jwzMft0EmZ9rDll6ha/XhMKIlihA+1anRqstxWdh3rsdSIPFnluiFnKmLDU1OYSy8MUv 8H7SBy6HEV6bZ2j6LQ1vNx+BzNwA3CcEeMFK7ht/vgkUYSAg6O37IqmgoF7QNuWNnCP/ evIPf7gGTAPBRDJHV5qAfur1pyLxHbhnvFGey4dHGtrubtlJLpLnqV88GW08Vemvi+V2 rnlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=mZ6WJ29hobDMcqZDvU+YsfCco9vg1t13E77qX5RJEa8=; b=CbqCXILbM0/W7fEJPWowggAiWK47V4QDox7B3XM/lhcOKXB8w3PIE1c4VwxG1t4Ld5 mpK5Jo/LMcLFGqtBYTdNLKjfKUUIgIWbEPF5bm2+/m084uFRU4ER4jsf8ZrN9xApgi5k KyvjKfzpWxbNySdKCUvYYy7iOR4Ar6UA1fHFE6Q7SlI+zZ1/4qavHpbXU00djEqYTw1/ ZUULIpV1Irq7N+REaLPjTUlA+o0OTL3hTutoJQqCp2GBUEjiwSD71C5fOWetLO4otnyD W2+XE6J9/6klVq9Q1dSfQ2TNkzCF+ynfP3JkTAwcUATyR8zf4EcN2k5FDZAoNh8AVtwM Fyeg== X-Gm-Message-State: APjAAAVcsuiW5radQ/Lxzcr83dUG5h+X80JhFRWo3RqDlwlK4JmEYORn F+ZpGiIUD+g965FGMxWV7rI= X-Google-Smtp-Source: APXvYqwRqyYfCy77Gq/0LpsQ0I4R4E+bDsi+KpUKH8clGT01XQjjRXHN0Fagl6nMZrdz7ZYd6qnsbA== X-Received: by 2002:a1c:c1cc:: with SMTP id r195mr8718680wmf.50.1569422886300; Wed, 25 Sep 2019 07:48:06 -0700 (PDT) Received: from localhost.localdomain ([37.237.208.16]) by smtp.gmail.com with ESMTPSA id e20sm9646402wrc.34.2019.09.25.07.48.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Sep 2019 07:48:05 -0700 (PDT) From: Ali MJ Al-Nasrawy To: Felix Fietkau Date: Wed, 25 Sep 2019 17:47:13 +0300 Message-Id: <20190925144713.10632-3-alimjalnasrawy@gmail.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20190925144713.10632-1-alimjalnasrawy@gmail.com> References: <20190925144713.10632-1-alimjalnasrawy@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190925_074808_140421_39D0BA68 X-CRM114-Status: UNSURE ( 8.01 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:341 listed in] [list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (alimjalnasrawy[at]gmail.com) -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain Subject: [OpenWrt-Devel] [PATCH 3/3] kernel: trelay: log "started" and "stopped" X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Ali MJ Al-Nasrawy , openwrt-devel@lists.openwrt.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org It is informative especially when using multiple device pairs. Signed-off-by: Ali MJ Al-Nasrawy --- package/kernel/trelay/src/trelay.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/package/kernel/trelay/src/trelay.c b/package/kernel/trelay/src/trelay.c index 0e3d85bfef..4c1cf706d7 100644 --- a/package/kernel/trelay/src/trelay.c +++ b/package/kernel/trelay/src/trelay.c @@ -20,6 +20,10 @@ #include #include +#define trelay_log(loglevel, tr, fmt, ...) \ + printk(loglevel "trelay: %s <-> %s: " fmt "\n", \ + tr->dev1->name, tr->dev2->name, ##__VA_ARGS__); + static LIST_HEAD(trelay_devs); static struct dentry *debugfs_dir; @@ -71,6 +75,8 @@ static int trelay_do_remove(struct trelay *tr) netdev_rx_handler_unregister(tr->dev1); netdev_rx_handler_unregister(tr->dev2); + trelay_log(KERN_INFO, tr, "stopped"); + kfree(tr); return 0; @@ -183,6 +189,8 @@ static int trelay_do_add(char *name, char *devn1, char *devn2) tr->dev2 = dev2; list_add_tail(&tr->list, &trelay_devs); + trelay_log(KERN_INFO, tr, "started"); + tr->debugfs = debugfs_create_dir(name, debugfs_dir); debugfs_create_file("remove", S_IWUSR, tr->debugfs, tr, &fops_remove); ret = 0;