From: Kees Cook <keescook@chromium.org>
To: "David S. Miller" <davem@davemloft.net>
Cc: Kees Cook <keescook@chromium.org>,
Johannes Berg <johannes.berg@intel.com>,
David Ahern <dsa@cumulusnetworks.com>,
linux-decnet-user@lists.sourceforge.net, netdev@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
linux-kernel@vger.kernel.org
Subject: [PATCH 01/58] net/decnet: Convert timers to use timer_setup()
Date: Mon, 16 Oct 2017 17:28:45 -0700 [thread overview]
Message-ID: <1508200182-104605-2-git-send-email-keescook@chromium.org> (raw)
In-Reply-To: <1508200182-104605-1-git-send-email-keescook@chromium.org>
In preparation for unconditionally passing the struct timer_list pointer to
all timer callbacks, switch to using the new timer_setup() and from_timer()
to pass the timer pointer explicitly.
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Johannes Berg <johannes.berg@intel.com>
Cc: David Ahern <dsa@cumulusnetworks.com>
Cc: linux-decnet-user@lists.sourceforge.net
Cc: netdev@vger.kernel.org
Signed-off-by: Kees Cook <keescook@chromium.org>
---
include/net/dn.h | 7 -------
include/net/dn_nsp.h | 1 -
net/decnet/af_decnet.c | 4 ----
net/decnet/dn_dev.c | 12 +++++-------
net/decnet/dn_nsp_out.c | 11 -----------
5 files changed, 5 insertions(+), 30 deletions(-)
diff --git a/include/net/dn.h b/include/net/dn.h
index 913b73d239f5..4394f7d5cfe8 100644
--- a/include/net/dn.h
+++ b/include/net/dn.h
@@ -122,13 +122,6 @@ struct dn_scp /* Session Control Port */
unsigned long keepalive;
void (*keepalive_fxn)(struct sock *sk);
- /*
- * This stuff is for the fast timer for delayed acks
- */
- struct timer_list delack_timer;
- int delack_pending;
- void (*delack_fxn)(struct sock *sk);
-
};
static inline struct dn_scp *DN_SK(struct sock *sk)
diff --git a/include/net/dn_nsp.h b/include/net/dn_nsp.h
index 3a3e33d18456..413a15e5339c 100644
--- a/include/net/dn_nsp.h
+++ b/include/net/dn_nsp.h
@@ -17,7 +17,6 @@
void dn_nsp_send_data_ack(struct sock *sk);
void dn_nsp_send_oth_ack(struct sock *sk);
-void dn_nsp_delayed_ack(struct sock *sk);
void dn_send_conn_ack(struct sock *sk);
void dn_send_conn_conf(struct sock *sk, gfp_t gfp);
void dn_nsp_send_disc(struct sock *sk, unsigned char type,
diff --git a/net/decnet/af_decnet.c b/net/decnet/af_decnet.c
index 73a0399dc7a2..d4c9a8bbad3e 100644
--- a/net/decnet/af_decnet.c
+++ b/net/decnet/af_decnet.c
@@ -533,10 +533,6 @@ static struct sock *dn_alloc_sock(struct net *net, struct socket *sock, gfp_t gf
scp->keepalive = 10 * HZ;
scp->keepalive_fxn = dn_keepalive;
- init_timer(&scp->delack_timer);
- scp->delack_pending = 0;
- scp->delack_fxn = dn_nsp_delayed_ack;
-
dn_start_slow_timer(sk);
out:
return sk;
diff --git a/net/decnet/dn_dev.c b/net/decnet/dn_dev.c
index 4d339de56862..92dbaa3f1eae 100644
--- a/net/decnet/dn_dev.c
+++ b/net/decnet/dn_dev.c
@@ -1038,14 +1038,14 @@ static void dn_eth_down(struct net_device *dev)
static void dn_dev_set_timer(struct net_device *dev);
-static void dn_dev_timer_func(unsigned long arg)
+static void dn_dev_timer_func(struct timer_list *t)
{
- struct net_device *dev = (struct net_device *)arg;
- struct dn_dev *dn_db;
+ struct dn_dev *dn_db = from_timer(dn_db, t, timer);
+ struct net_device *dev;
struct dn_ifaddr *ifa;
rcu_read_lock();
- dn_db = rcu_dereference(dev->dn_ptr);
+ dev = dn_db->dev;
if (dn_db->t3 <= dn_db->parms.t2) {
if (dn_db->parms.timer3) {
for (ifa = rcu_dereference(dn_db->ifa_list);
@@ -1070,8 +1070,6 @@ static void dn_dev_set_timer(struct net_device *dev)
if (dn_db->parms.t2 > dn_db->parms.t3)
dn_db->parms.t2 = dn_db->parms.t3;
- dn_db->timer.data = (unsigned long)dev;
- dn_db->timer.function = dn_dev_timer_func;
dn_db->timer.expires = jiffies + (dn_db->parms.t2 * HZ);
add_timer(&dn_db->timer);
@@ -1100,7 +1098,7 @@ static struct dn_dev *dn_dev_create(struct net_device *dev, int *err)
rcu_assign_pointer(dev->dn_ptr, dn_db);
dn_db->dev = dev;
- init_timer(&dn_db->timer);
+ timer_setup(&dn_db->timer, dn_dev_timer_func, 0);
dn_db->uptime = jiffies;
diff --git a/net/decnet/dn_nsp_out.c b/net/decnet/dn_nsp_out.c
index 66f035e476ea..e50a4adfcf7e 100644
--- a/net/decnet/dn_nsp_out.c
+++ b/net/decnet/dn_nsp_out.c
@@ -491,17 +491,6 @@ void dn_send_conn_ack (struct sock *sk)
dn_nsp_send(skb);
}
-void dn_nsp_delayed_ack(struct sock *sk)
-{
- struct dn_scp *scp = DN_SK(sk);
-
- if (scp->ackxmt_oth != scp->numoth_rcv)
- dn_nsp_send_oth_ack(sk);
-
- if (scp->ackxmt_dat != scp->numdat_rcv)
- dn_nsp_send_data_ack(sk);
-}
-
static int dn_nsp_retrans_conn_conf(struct sock *sk)
{
struct dn_scp *scp = DN_SK(sk);
--
2.7.4
next prev parent reply other threads:[~2017-10-17 0:30 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-17 0:28 [PATCH 00/58] networking: " Kees Cook
2017-10-17 0:28 ` Kees Cook [this message]
2017-10-17 0:28 ` [PATCH 02/58] net/lapb: " Kees Cook
2017-10-17 0:28 ` [PATCH 03/58] net/rose: " Kees Cook
2017-10-17 0:28 ` [PATCH 04/58] net/irda-usb: " Kees Cook
2017-10-17 0:28 ` [PATCH 05/58] net/irda/bfin_sir: " Kees Cook
2017-10-17 0:28 ` [PATCH 06/58] net/ti/tlan: " Kees Cook
2017-10-17 0:28 ` [PATCH 07/58] net/usb/usbnet: " Kees Cook
2017-10-17 10:30 ` Oliver Neukum
2017-10-17 0:28 ` [PATCH 08/58] net/wireless/ray_cs: " Kees Cook
2017-10-27 7:31 ` [08/58] " Kalle Valo
2017-10-17 0:28 ` [PATCH 09/58] net/irda: " Kees Cook
2018-03-02 21:29 ` Marcelo Ricardo Leitner
2018-03-02 22:30 ` Kees Cook
2018-03-02 23:08 ` Marcelo Ricardo Leitner
2017-10-17 0:28 ` [PATCH 10/58] isdn/hisax: " Kees Cook
2017-10-17 0:28 ` [PATCH 11/58] net/hamradio/6pack: " Kees Cook
2017-10-17 0:28 ` [PATCH 12/58] xfrm: " Kees Cook
2017-10-17 0:28 ` [PATCH 13/58] ethernet/broadcom: " Kees Cook
2017-10-17 0:28 ` [PATCH 14/58] net: tulip: de2104x: " Kees Cook
2017-10-17 0:28 ` [PATCH 15/58] pcmcia/electra_cf: " Kees Cook
2017-10-17 0:29 ` [PATCH 16/58] net: ethernet: stmmac: " Kees Cook
2017-10-17 0:29 ` [PATCH 17/58] net/cw1200: " Kees Cook
2017-10-17 0:29 ` [PATCH 18/58] net: vxge: " Kees Cook
2017-10-17 0:29 ` [PATCH 19/58] drivers/atm/suni: " Kees Cook
2017-10-17 0:29 ` [PATCH 20/58] atm: idt77252: " Kees Cook
2017-10-17 0:29 ` [PATCH 21/58] net: tulip: " Kees Cook
2017-10-17 0:29 ` [PATCH 22/58] net: can: " Kees Cook
2017-10-17 0:29 ` [PATCH 23/58] drivers/net/3com: " Kees Cook
2017-10-17 0:29 ` [PATCH 24/58] chelsio: " Kees Cook
2017-10-17 0:29 ` [PATCH 25/58] net: amd8111e: " Kees Cook
2017-10-17 0:29 ` [PATCH 26/58] bna: " Kees Cook
2017-10-17 0:29 ` [PATCH 27/58] net: dl2k: " Kees Cook
2017-10-17 0:29 ` [PATCH 28/58] net: ksz884x: " Kees Cook
2017-10-17 0:29 ` [PATCH 29/58] forcedeth: " Kees Cook
2017-10-17 0:29 ` [PATCH 30/58] mISDN: " Kees Cook
2017-10-17 0:29 ` [PATCH 31/58] isdn/gigaset: Use kzalloc instead of open-coded field zeroing Kees Cook
2017-10-19 20:46 ` Paul Bolle
2017-10-17 0:29 ` [PATCH 32/58] isdn/gigaset: Convert timers to use timer_setup() Kees Cook
2017-10-19 21:03 ` Paul Bolle
2017-10-19 21:20 ` Paul Bolle
2017-10-19 21:31 ` Thomas Gleixner
2017-10-19 21:51 ` Paul Bolle
2017-10-19 22:28 ` Thomas Gleixner
2017-10-19 23:31 ` Paul Bolle
2017-10-19 21:31 ` Kees Cook
2017-10-19 22:16 ` Paul Bolle
2017-10-17 0:29 ` [PATCH 33/58] net: sched: " Kees Cook
2017-10-17 0:29 ` [PATCH 34/58] netfilter: ipset: " Kees Cook
2017-10-17 0:29 ` [PATCH 35/58] inet/connection_sock: " Kees Cook
2017-10-17 0:29 ` [PATCH 36/58] inet: frags: " Kees Cook
2017-10-17 0:29 ` [PATCH 37/58] net/core: Collapse redundant sk_timer callback data assignments Kees Cook
2017-10-17 0:29 ` [PATCH 38/58] hdlc: Convert timers to use timer_setup() Kees Cook
2017-10-17 0:29 ` [PATCH 39/58] appletalk: Remove unneeded synchronization Kees Cook
2017-10-17 0:29 ` [PATCH 40/58] drivers/net/appletalk: Convert timers to use timer_setup() Kees Cook
2017-10-17 0:29 ` [PATCH 41/58] net/atm/mpc: Stop using open-coded timer .data field Kees Cook
2017-10-17 0:29 ` [PATCH 42/58] isdnloop: Convert timers to use timer_setup() Kees Cook
2017-10-17 0:29 ` [PATCH 43/58] net: ethernet: apple: " Kees Cook
2017-10-17 0:29 ` [PATCH 44/58] net: ethernet: sun: " Kees Cook
2017-10-17 16:27 ` Shannon Nelson
2017-10-17 0:29 ` [PATCH 45/58] net: seeq: " Kees Cook
2017-10-17 0:29 ` [PATCH 46/58] hamradio/scc: " Kees Cook
2017-10-17 0:29 ` [PATCH 47/58] net/ethernet/sgi: " Kees Cook
2017-10-17 0:29 ` [PATCH 48/58] net: usb: " Kees Cook
2017-10-17 0:29 ` [PATCH 49/58] net: neterion: " Kees Cook
2017-10-17 0:29 ` [PATCH 50/58] net: hns: " Kees Cook
2017-10-17 0:29 ` [PATCH 51/58] ethernet/intel: " Kees Cook
2017-10-17 0:29 ` [PATCH 52/58] net/core: Convert sk_timer users " Kees Cook
2017-10-17 0:29 ` [PATCH 53/58] net: atm: Convert timers " Kees Cook
2017-10-17 0:29 ` [PATCH 54/58] net/xen-netback: " Kees Cook
2017-10-20 16:16 ` Wei Liu
2017-10-17 0:29 ` [PATCH 55/58] net: fs_enet: Remove unused timer Kees Cook
2017-10-17 0:29 ` [PATCH 56/58] um: net: Convert timers to use timer_setup() Kees Cook
2017-10-17 0:29 ` [PATCH 57/58] ipv4: timewait: " Kees Cook
2017-10-17 0:29 ` [PATCH 58/58] sunrpc: " Kees Cook
2017-10-17 14:18 ` [PATCH 00/58] networking: " Kalle Valo
2017-10-17 19:47 ` Kees Cook
2017-10-18 5:44 ` Kalle Valo
2017-10-18 19:45 ` Kees Cook
2017-10-18 11:42 ` David Miller
2017-10-18 19:42 ` Kees Cook
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1508200182-104605-2-git-send-email-keescook@chromium.org \
--to=keescook@chromium.org \
--cc=davem@davemloft.net \
--cc=dsa@cumulusnetworks.com \
--cc=johannes.berg@intel.com \
--cc=linux-decnet-user@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®