How can I prevent the kernel from limiting TX power as advertised by APProblem with wireless networkingLinux...

Why didn't Tom Riddle take the presence of Fawkes and the Sorting Hat as more of a threat?

Is there a way to not have to poll the UART of an AVR?

Does an Eldritch Knight's Weapon Bond protect him from losing his weapon to a Telekinesis spell?

I have trouble understanding this fallacy: "If A, then B. Therefore if not-B, then not-A."

What to do with threats of blacklisting?

Renting a 2CV in France

In harmony: key or the flow?

Equivalent of "illegal" for violating civil law

What can I do to encourage my players to use their consumables?

Are the positive and negative planes inner or outer planes in the Great Wheel cosmology model?

Article. The word "Respect"

What is a good reason for every spaceship to carry a weapon on board?

What makes papers publishable in top-tier journals?

Should I cite R or RStudio?

What's this assembly doing?

How do I prevent a homebrew Grappling Hook feature from trivializing Tomb of Annihilation?

How to politely refuse in-office gym instructor for steroids and protein

Custom shape shows unwanted extra line

Can we "borrow" our answers to populate our own websites?

What species should be used for storage of human minds?

Is there a way to store 9th-level spells in a Glyph of Warding or similar method?

Midterm in Mathematics Courses

Is there a file that always exists and a 'normal' user can't lstat it?

How to write cases in LaTeX?



How can I prevent the kernel from limiting TX power as advertised by AP


Problem with wireless networkingLinux I2C Communication from Kernel Spaceubuntu (linuxmint) not reconnecting to wireless after router rebootWhere can I find the Linux kernel file?Kernel hacking methodology - how to find out where to hack the linux kernelwhich module of linux kernel can be loaded dynamicUDP packets from kernelHow to get config from a EFISTUB kernel?How can I safely delete the old kernel version from the /boot partition on Ubuntu?Replacing linux kernel from outside of system













5















I am connecting to eduroam over a distance of about 150m using an external 23dBm Antenna and an Ubiquiti SR71-E with an Atheros AR9285 chip. My system is Debian Jessie server - so the connection is managed by wpa_supplicant. Authentication timeouts caused stability issues with the connection. Migrating to the backports Kernel 4.7.0 solved these.



But now the kernel is reducing tx-power as advertised by the (Cisco) AP. This function can be found under "has_80211h_pwr" and "has_cisco_pwr" in



http://lxr.free-electrons.com/source/net/mac80211/mlme.c



The problem is that

iwconfig wlan0 txpower XX
iw dev wlan0 set txpower fixed XXXX

only allow setting the txpower between 0 and the new limit. As the AP advertises a limit of 8dbm the connection is forced to go to 1 Mb/s and still has high counts on "Tx excessive retries" and "Invalid misc".










share|improve this question





























    5















    I am connecting to eduroam over a distance of about 150m using an external 23dBm Antenna and an Ubiquiti SR71-E with an Atheros AR9285 chip. My system is Debian Jessie server - so the connection is managed by wpa_supplicant. Authentication timeouts caused stability issues with the connection. Migrating to the backports Kernel 4.7.0 solved these.



    But now the kernel is reducing tx-power as advertised by the (Cisco) AP. This function can be found under "has_80211h_pwr" and "has_cisco_pwr" in



    http://lxr.free-electrons.com/source/net/mac80211/mlme.c



    The problem is that

    iwconfig wlan0 txpower XX
    iw dev wlan0 set txpower fixed XXXX

    only allow setting the txpower between 0 and the new limit. As the AP advertises a limit of 8dbm the connection is forced to go to 1 Mb/s and still has high counts on "Tx excessive retries" and "Invalid misc".










    share|improve this question



























      5












      5








      5


      4






      I am connecting to eduroam over a distance of about 150m using an external 23dBm Antenna and an Ubiquiti SR71-E with an Atheros AR9285 chip. My system is Debian Jessie server - so the connection is managed by wpa_supplicant. Authentication timeouts caused stability issues with the connection. Migrating to the backports Kernel 4.7.0 solved these.



      But now the kernel is reducing tx-power as advertised by the (Cisco) AP. This function can be found under "has_80211h_pwr" and "has_cisco_pwr" in



      http://lxr.free-electrons.com/source/net/mac80211/mlme.c



      The problem is that

      iwconfig wlan0 txpower XX
      iw dev wlan0 set txpower fixed XXXX

      only allow setting the txpower between 0 and the new limit. As the AP advertises a limit of 8dbm the connection is forced to go to 1 Mb/s and still has high counts on "Tx excessive retries" and "Invalid misc".










      share|improve this question
















      I am connecting to eduroam over a distance of about 150m using an external 23dBm Antenna and an Ubiquiti SR71-E with an Atheros AR9285 chip. My system is Debian Jessie server - so the connection is managed by wpa_supplicant. Authentication timeouts caused stability issues with the connection. Migrating to the backports Kernel 4.7.0 solved these.



      But now the kernel is reducing tx-power as advertised by the (Cisco) AP. This function can be found under "has_80211h_pwr" and "has_cisco_pwr" in



      http://lxr.free-electrons.com/source/net/mac80211/mlme.c



      The problem is that

      iwconfig wlan0 txpower XX
      iw dev wlan0 set txpower fixed XXXX

      only allow setting the txpower between 0 and the new limit. As the AP advertises a limit of 8dbm the connection is forced to go to 1 Mb/s and still has high counts on "Tx excessive retries" and "Invalid misc".







      linux wireless-networking linux-kernel debian-jessie






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 7 '16 at 12:31







      Felix

















      asked Nov 7 '16 at 11:27









      FelixFelix

      265




      265






















          1 Answer
          1






          active

          oldest

          votes


















          0














          Here's a patch that should ignore annoying 802.11h frames from AP's when setting txpower to "fixed".



          diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
          index d6a1a46..f3ee9ab 100644
          --- a/net/mac80211/iface.c
          +++ b/net/mac80211/iface.c
          @@ -61,7 +61,8 @@ bool __ieee80211_recalc_txpower(struct ieee80211_sub_if_data *sdata)
          if (sdata->user_power_level != IEEE80211_UNSET_POWER_LEVEL)
          power = min(power, sdata->user_power_level);

          - if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL)
          + if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL &&
          + sdata->vif.bss_conf.txpower_type != NL80211_TX_POWER_FIXED)
          power = min(power, sdata->ap_power_level);

          if (power != sdata->vif.bss_conf.txpower) {





          share|improve this answer








          New contributor




          Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.




















            Your Answer








            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "3"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1143229%2fhow-can-i-prevent-the-kernel-from-limiting-tx-power-as-advertised-by-ap%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Here's a patch that should ignore annoying 802.11h frames from AP's when setting txpower to "fixed".



            diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
            index d6a1a46..f3ee9ab 100644
            --- a/net/mac80211/iface.c
            +++ b/net/mac80211/iface.c
            @@ -61,7 +61,8 @@ bool __ieee80211_recalc_txpower(struct ieee80211_sub_if_data *sdata)
            if (sdata->user_power_level != IEEE80211_UNSET_POWER_LEVEL)
            power = min(power, sdata->user_power_level);

            - if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL)
            + if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL &&
            + sdata->vif.bss_conf.txpower_type != NL80211_TX_POWER_FIXED)
            power = min(power, sdata->ap_power_level);

            if (power != sdata->vif.bss_conf.txpower) {





            share|improve this answer








            New contributor




            Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
            Check out our Code of Conduct.

























              0














              Here's a patch that should ignore annoying 802.11h frames from AP's when setting txpower to "fixed".



              diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
              index d6a1a46..f3ee9ab 100644
              --- a/net/mac80211/iface.c
              +++ b/net/mac80211/iface.c
              @@ -61,7 +61,8 @@ bool __ieee80211_recalc_txpower(struct ieee80211_sub_if_data *sdata)
              if (sdata->user_power_level != IEEE80211_UNSET_POWER_LEVEL)
              power = min(power, sdata->user_power_level);

              - if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL)
              + if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL &&
              + sdata->vif.bss_conf.txpower_type != NL80211_TX_POWER_FIXED)
              power = min(power, sdata->ap_power_level);

              if (power != sdata->vif.bss_conf.txpower) {





              share|improve this answer








              New contributor




              Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
              Check out our Code of Conduct.























                0












                0








                0







                Here's a patch that should ignore annoying 802.11h frames from AP's when setting txpower to "fixed".



                diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
                index d6a1a46..f3ee9ab 100644
                --- a/net/mac80211/iface.c
                +++ b/net/mac80211/iface.c
                @@ -61,7 +61,8 @@ bool __ieee80211_recalc_txpower(struct ieee80211_sub_if_data *sdata)
                if (sdata->user_power_level != IEEE80211_UNSET_POWER_LEVEL)
                power = min(power, sdata->user_power_level);

                - if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL)
                + if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL &&
                + sdata->vif.bss_conf.txpower_type != NL80211_TX_POWER_FIXED)
                power = min(power, sdata->ap_power_level);

                if (power != sdata->vif.bss_conf.txpower) {





                share|improve this answer








                New contributor




                Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                Check out our Code of Conduct.










                Here's a patch that should ignore annoying 802.11h frames from AP's when setting txpower to "fixed".



                diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
                index d6a1a46..f3ee9ab 100644
                --- a/net/mac80211/iface.c
                +++ b/net/mac80211/iface.c
                @@ -61,7 +61,8 @@ bool __ieee80211_recalc_txpower(struct ieee80211_sub_if_data *sdata)
                if (sdata->user_power_level != IEEE80211_UNSET_POWER_LEVEL)
                power = min(power, sdata->user_power_level);

                - if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL)
                + if (sdata->ap_power_level != IEEE80211_UNSET_POWER_LEVEL &&
                + sdata->vif.bss_conf.txpower_type != NL80211_TX_POWER_FIXED)
                power = min(power, sdata->ap_power_level);

                if (power != sdata->vif.bss_conf.txpower) {






                share|improve this answer








                New contributor




                Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                Check out our Code of Conduct.









                share|improve this answer



                share|improve this answer






                New contributor




                Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                Check out our Code of Conduct.









                answered 6 hours ago









                Andreas Søvik NilsenAndreas Søvik Nilsen

                1




                1




                New contributor




                Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                Check out our Code of Conduct.





                New contributor





                Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                Check out our Code of Conduct.






                Andreas Søvik Nilsen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                Check out our Code of Conduct.






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Super User!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1143229%2fhow-can-i-prevent-the-kernel-from-limiting-tx-power-as-advertised-by-ap%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Cannot install PyQt5 The Next CEO of Stack OverflowCannot install tcpreplay 3.4.4cannot...

                    Kapp-Putsch Acontecimentos | Outros artigos | Menu de navegação

                    Why did early computer designers eschew integers? The Next CEO of Stack OverflowWhat register...