rate.c (c316cf670491def52a396d3bdc5a63ad01f7fefa) rate.c (484a54c2e597dbc4ace79c1687022282905afba0)
1/*
2 * Copyright 2002-2005, Instant802 Networks, Inc.
3 * Copyright 2005-2006, Devicescape Software, Inc.
4 * Copyright (c) 2006 Jiri Benc <jbenc@suse.cz>
5 * Copyright 2017 Intel Deutschland GmbH
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as

--- 929 unchanged lines hidden (view full) ---

938 */
939 old = rcu_dereference_protected(pubsta->rates, true);
940 rcu_assign_pointer(pubsta->rates, rates);
941 if (old)
942 kfree_rcu(old, rcu_head);
943
944 drv_sta_rate_tbl_update(hw_to_local(hw), sta->sdata, pubsta);
945
1/*
2 * Copyright 2002-2005, Instant802 Networks, Inc.
3 * Copyright 2005-2006, Devicescape Software, Inc.
4 * Copyright (c) 2006 Jiri Benc <jbenc@suse.cz>
5 * Copyright 2017 Intel Deutschland GmbH
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as

--- 929 unchanged lines hidden (view full) ---

938 */
939 old = rcu_dereference_protected(pubsta->rates, true);
940 rcu_assign_pointer(pubsta->rates, rates);
941 if (old)
942 kfree_rcu(old, rcu_head);
943
944 drv_sta_rate_tbl_update(hw_to_local(hw), sta->sdata, pubsta);
945
946 ieee80211_sta_set_expected_throughput(pubsta, sta_get_expected_throughput(sta));
947
946 return 0;
947}
948EXPORT_SYMBOL(rate_control_set_rates);
949
950int ieee80211_init_rate_ctrl_alg(struct ieee80211_local *local,
951 const char *name)
952{
953 struct rate_control_ref *ref;

--- 32 unchanged lines hidden (view full) ---

986 ref = local->rate_ctrl;
987
988 if (!ref)
989 return;
990
991 local->rate_ctrl = NULL;
992 rate_control_free(local, ref);
993}
948 return 0;
949}
950EXPORT_SYMBOL(rate_control_set_rates);
951
952int ieee80211_init_rate_ctrl_alg(struct ieee80211_local *local,
953 const char *name)
954{
955 struct rate_control_ref *ref;

--- 32 unchanged lines hidden (view full) ---

988 ref = local->rate_ctrl;
989
990 if (!ref)
991 return;
992
993 local->rate_ctrl = NULL;
994 rate_control_free(local, ref);
995}
994