aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWANG Cong <xiyou.wangcong@gmail.com>2014-06-02 18:55:22 -0400
committerDavid S. Miller <davem@davemloft.net>2014-06-05 03:49:51 -0400
commit4cb28970a23ff209199b0a4358d68efe82c8f493 (patch)
tree6fddc9391d7803318fb0903ffd101dc7837f5a30
parent9638f6713ff556bdc34e9d18eeb7c1b25b35e5ce (diff)
net: use the new API kvfree()
It is available since v3.15-rc5. Cc: Pablo Neira Ayuso <pablo@netfilter.org> Cc: "David S. Miller" <davem@davemloft.net> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/core/dev.c10
-rw-r--r--net/ipv4/tcp_metrics.c5
-rw-r--r--net/netfilter/ipset/ip_set_core.c5
-rw-r--r--net/netfilter/nft_hash.c5
-rw-r--r--net/netfilter/xt_recent.c5
-rw-r--r--net/sched/sch_choke.c7
-rw-r--r--net/sched/sch_fq.c5
-rw-r--r--net/sched/sch_fq_codel.c7
-rw-r--r--net/sched/sch_hhf.c7
-rw-r--r--net/sched/sch_netem.c7
-rw-r--r--net/sched/sch_sfq.c7
11 files changed, 12 insertions, 58 deletions
diff --git a/net/core/dev.c b/net/core/dev.c
index 5367bfba0947..a9a08e4a4857 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -5933,10 +5933,7 @@ static void netdev_init_one_queue(struct net_device *dev,
5933 5933
5934static void netif_free_tx_queues(struct net_device *dev) 5934static void netif_free_tx_queues(struct net_device *dev)
5935{ 5935{
5936 if (is_vmalloc_addr(dev->_tx)) 5936 kvfree(dev->_tx);
5937 vfree(dev->_tx);
5938 else
5939 kfree(dev->_tx);
5940} 5937}
5941 5938
5942static int netif_alloc_netdev_queues(struct net_device *dev) 5939static int netif_alloc_netdev_queues(struct net_device *dev)
@@ -6410,10 +6407,7 @@ void netdev_freemem(struct net_device *dev)
6410{ 6407{
6411 char *addr = (char *)dev - dev->padded; 6408 char *addr = (char *)dev - dev->padded;
6412 6409
6413 if (is_vmalloc_addr(addr)) 6410 kvfree(addr);
6414 vfree(addr);
6415 else
6416 kfree(addr);
6417} 6411}
6418 6412
6419/** 6413/**
diff --git a/net/ipv4/tcp_metrics.c b/net/ipv4/tcp_metrics.c
index dcaf72f10216..4fe041805989 100644
--- a/net/ipv4/tcp_metrics.c
+++ b/net/ipv4/tcp_metrics.c
@@ -1159,10 +1159,7 @@ static void __net_exit tcp_net_metrics_exit(struct net *net)
1159 tm = next; 1159 tm = next;
1160 } 1160 }
1161 } 1161 }
1162 if (is_vmalloc_addr(net->ipv4.tcp_metrics_hash)) 1162 kvfree(net->ipv4.tcp_metrics_hash);
1163 vfree(net->ipv4.tcp_metrics_hash);
1164 else
1165 kfree(net->ipv4.tcp_metrics_hash);
1166} 1163}
1167 1164
1168static __net_initdata struct pernet_operations tcp_net_metrics_ops = { 1165static __net_initdata struct pernet_operations tcp_net_metrics_ops = {
diff --git a/net/netfilter/ipset/ip_set_core.c b/net/netfilter/ipset/ip_set_core.c
index 117208321f16..ec8114fae50b 100644
--- a/net/netfilter/ipset/ip_set_core.c
+++ b/net/netfilter/ipset/ip_set_core.c
@@ -271,10 +271,7 @@ ip_set_free(void *members)
271{ 271{
272 pr_debug("%p: free with %s\n", members, 272 pr_debug("%p: free with %s\n", members,
273 is_vmalloc_addr(members) ? "vfree" : "kfree"); 273 is_vmalloc_addr(members) ? "vfree" : "kfree");
274 if (is_vmalloc_addr(members)) 274 kvfree(members);
275 vfree(members);
276 else
277 kfree(members);
278} 275}
279EXPORT_SYMBOL_GPL(ip_set_free); 276EXPORT_SYMBOL_GPL(ip_set_free);
280 277
diff --git a/net/netfilter/nft_hash.c b/net/netfilter/nft_hash.c
index 1dfeb6786832..4080ed6a072b 100644
--- a/net/netfilter/nft_hash.c
+++ b/net/netfilter/nft_hash.c
@@ -76,10 +76,7 @@ static bool nft_hash_lookup(const struct nft_set *set,
76 76
77static void nft_hash_tbl_free(const struct nft_hash_table *tbl) 77static void nft_hash_tbl_free(const struct nft_hash_table *tbl)
78{ 78{
79 if (is_vmalloc_addr(tbl)) 79 kvfree(tbl);
80 vfree(tbl);
81 else
82 kfree(tbl);
83} 80}
84 81
85static unsigned int nft_hash_tbl_size(unsigned int nelem) 82static unsigned int nft_hash_tbl_size(unsigned int nelem)
diff --git a/net/netfilter/xt_recent.c b/net/netfilter/xt_recent.c
index 1e657cf715c4..a9faae89f955 100644
--- a/net/netfilter/xt_recent.c
+++ b/net/netfilter/xt_recent.c
@@ -313,10 +313,7 @@ out:
313 313
314static void recent_table_free(void *addr) 314static void recent_table_free(void *addr)
315{ 315{
316 if (is_vmalloc_addr(addr)) 316 kvfree(addr);
317 vfree(addr);
318 else
319 kfree(addr);
320} 317}
321 318
322static int recent_mt_check(const struct xt_mtchk_param *par, 319static int recent_mt_check(const struct xt_mtchk_param *par,
diff --git a/net/sched/sch_choke.c b/net/sched/sch_choke.c
index 2aee02802c27..ed30e436128b 100644
--- a/net/sched/sch_choke.c
+++ b/net/sched/sch_choke.c
@@ -391,12 +391,7 @@ static const struct nla_policy choke_policy[TCA_CHOKE_MAX + 1] = {
391 391
392static void choke_free(void *addr) 392static void choke_free(void *addr)
393{ 393{
394 if (addr) { 394 kvfree(addr);
395 if (is_vmalloc_addr(addr))
396 vfree(addr);
397 else
398 kfree(addr);
399 }
400} 395}
401 396
402static int choke_change(struct Qdisc *sch, struct nlattr *opt) 397static int choke_change(struct Qdisc *sch, struct nlattr *opt)
diff --git a/net/sched/sch_fq.c b/net/sched/sch_fq.c
index 23c682b42f99..ba32c2b005d0 100644
--- a/net/sched/sch_fq.c
+++ b/net/sched/sch_fq.c
@@ -591,10 +591,7 @@ static void *fq_alloc_node(size_t sz, int node)
591 591
592static void fq_free(void *addr) 592static void fq_free(void *addr)
593{ 593{
594 if (addr && is_vmalloc_addr(addr)) 594 kvfree(addr);
595 vfree(addr);
596 else
597 kfree(addr);
598} 595}
599 596
600static int fq_resize(struct Qdisc *sch, u32 log) 597static int fq_resize(struct Qdisc *sch, u32 log)
diff --git a/net/sched/sch_fq_codel.c b/net/sched/sch_fq_codel.c
index 0bf432c782c1..063b726bf1f8 100644
--- a/net/sched/sch_fq_codel.c
+++ b/net/sched/sch_fq_codel.c
@@ -365,12 +365,7 @@ static void *fq_codel_zalloc(size_t sz)
365 365
366static void fq_codel_free(void *addr) 366static void fq_codel_free(void *addr)
367{ 367{
368 if (addr) { 368 kvfree(addr);
369 if (is_vmalloc_addr(addr))
370 vfree(addr);
371 else
372 kfree(addr);
373 }
374} 369}
375 370
376static void fq_codel_destroy(struct Qdisc *sch) 371static void fq_codel_destroy(struct Qdisc *sch)
diff --git a/net/sched/sch_hhf.c b/net/sched/sch_hhf.c
index 6aab8619bbb0..d85b6812a7d4 100644
--- a/net/sched/sch_hhf.c
+++ b/net/sched/sch_hhf.c
@@ -494,12 +494,7 @@ static void *hhf_zalloc(size_t sz)
494 494
495static void hhf_free(void *addr) 495static void hhf_free(void *addr)
496{ 496{
497 if (addr) { 497 kvfree(addr);
498 if (is_vmalloc_addr(addr))
499 vfree(addr);
500 else
501 kfree(addr);
502 }
503} 498}
504 499
505static void hhf_destroy(struct Qdisc *sch) 500static void hhf_destroy(struct Qdisc *sch)
diff --git a/net/sched/sch_netem.c b/net/sched/sch_netem.c
index f1669a00f571..111d70fddaea 100644
--- a/net/sched/sch_netem.c
+++ b/net/sched/sch_netem.c
@@ -648,12 +648,7 @@ static void netem_reset(struct Qdisc *sch)
648 648
649static void dist_free(struct disttable *d) 649static void dist_free(struct disttable *d)
650{ 650{
651 if (d) { 651 kvfree(d);
652 if (is_vmalloc_addr(d))
653 vfree(d);
654 else
655 kfree(d);
656 }
657} 652}
658 653
659/* 654/*
diff --git a/net/sched/sch_sfq.c b/net/sched/sch_sfq.c
index 87317ff0b4ec..1af2f73906d0 100644
--- a/net/sched/sch_sfq.c
+++ b/net/sched/sch_sfq.c
@@ -716,12 +716,7 @@ static void *sfq_alloc(size_t sz)
716 716
717static void sfq_free(void *addr) 717static void sfq_free(void *addr)
718{ 718{
719 if (addr) { 719 kvfree(addr);
720 if (is_vmalloc_addr(addr))
721 vfree(addr);
722 else
723 kfree(addr);
724 }
725} 720}
726 721
727static void sfq_destroy(struct Qdisc *sch) 722static void sfq_destroy(struct Qdisc *sch)