All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christian Lamparter <chunkeey@googlemail.com>
To: "Luis R. Rodriguez" <rodrigue@qca.qualcomm.com>
Cc: kgiori@qca.qualcomm.com, ath9k-devel@lists.ath9k.org,
	linux-wireless@vger.kernel.org,
	Zefir Kurtisi <zefir.kurtisi@neratec.com>
Subject: Re: [ath9k-devel] [RFC 5/6] ath9k: enable DFS pulse detection
Date: Thu, 6 Oct 2011 18:49:48 +0200	[thread overview]
Message-ID: <201110061849.48838.chunkeey@googlemail.com> (raw)
In-Reply-To: <CAB=NE6VC3txpDh4SdDKDxKWKKZVtGQXKVH8opszKDnZeeZTjUQ@mail.gmail.com>

On Thursday, October 06, 2011 12:27:03 AM Luis R. Rodriguez wrote:
> On Tue, Oct 4, 2011 at 6:38 AM, Christian Lamparter
> <chunkeey@googlemail.com> wrote:
> > On Monday, October 03, 2011 09:31:12 PM Luis R. Rodriguez wrote:
> >> On Mon, Oct 3, 2011 at 12:24 PM, Christian Lamparter
> >> <chunkeey@googlemail.com> wrote:
> >> > On Monday, October 03, 2011 08:27:39 PM Luis R. Rodriguez wrote:
> >> >> On Mon, Oct 3, 2011 at 3:29 AM, Zefir Kurtisi <zefir.kurtisi@neratec.com> wrote:
> >> >> >
> >> >> > Signed-off-by: Zefir Kurtisi <zefir.kurtisi@neratec.com>
> >> >> > ---
> >> >> >  drivers/net/wireless/ath/ath9k/main.c |   12 ++++++++++++
> >> >> >  1 files changed, 12 insertions(+), 0 deletions(-)
> >> >> >
> >> >> > diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
> >> >> > index e8aeb98..5defebe 100644
> >> >> > --- a/drivers/net/wireless/ath/ath9k/main.c
> >> >> > +++ b/drivers/net/wireless/ath/ath9k/main.c
> >> >> > [...]
> >> >> > +#ifdef CONFIG_ATH9K_DFS
> >> >>
> >> >> Please spare the #ifdef and just call something within dfs.c, then
> >> >> dfs.h would wrap it to nothing if DFS is disabled.
> >> > Why would anyone want to disable DFS driver support?
> >> > I would say: drop the ifdefs altogether since DFS
> >> > is and will be "required".
> >>
> >> Because DFS requires to be properly tested before being enabled.
> > Testing if a driver detects a pulse is "trivial" compared to the
> > stuff mac80211/cfg80211 and hostapd will have to do to make a
> > channel-change as smooth as possible. I think if there's a DFS
> > "OFF" switch, it should be in hostapd and I hope more people
> > agree on this one.
> 
> You do have a good point, but I disagree that you do not need to test
> / regress test hardware / driver code for DFS.

Actually, you are sort of contradicting yourself here.

Take a look at your "wireless: add DFS master support" patch
series. I don't see any IFDEFs to select between the old
and the new "way" even though you know full well that there's
some black magic going on.

http://permalink.gmane.org/gmane.linux.kernel.wireless.general/78455
Quote:
"Here's a puzzle though... If we change this series to use the other
pad byte that was available, the first pad byte, instead of the last
one, we loose backward compatibility support and I cannot figure out
why."

[Note: This is just an recent enough example. I do think I could come
up with a better one, e.g.: why didn't athXk have a compile-time
switch to disable ANI when it was introduced because it can(and has?)
caused some regressions as well?]

so, why do you want a useless compile-time for *this option* *now*?
Is this something about politics/laws I don't know about [I'm just
curious, because I don't really buy "testing" here, since Zefir
obviously has a working prototype and Atheros has a working and
certificated codebase as well which he can access and base his
work on. So I don't think its that unstable and needs added
ugliness.]
> This is what I'm talking about. But yes, userspace also submits
> itself to the same criteria.
> >> You may also want to simply disable DFS if you do not want to
> >> deal with the regulatory test implications of having it enabled.
> > AFAIK you can't "simply" disable the DFS requirement: hostapd
> > (hw_features.c), [cfg80211] (checks if tx on secondary channel
> > is possible) and mac80211 (tx.c) all have checks. Indeed, the
> > easiest way is to modify crda's database. So there's no need
> > for an extra compile-time option.
> 
> No, DFS is set for certain channels on wireless-regdb/CRDA, I just
> posted DFS master region support for wireless-regdb and CRDA. Apart
> from this we then need driver support. To get DFS you need all of
> these + hostapd part. Each one has its own set of components and does
> deserve its own set of tests and review.
This "deserve its own set of tests and review". Does it translate in:
"ath9k [every driver], mac80211, cfg80211 and hostapd need extra
DFS IFDEFS?". In fact, ifdefs make it harder to do reviews, because
sometimes you just forget the IFDEF/ELSIF/ELSE context of the code.
And regression testing can be done by "git bisect". In fact, isn't
this what git bisect is for?

Regards,
	Chr

WARNING: multiple messages have this Message-ID (diff)
From: Christian Lamparter <chunkeey@googlemail.com>
To: ath9k-devel@lists.ath9k.org
Subject: [ath9k-devel] [RFC 5/6] ath9k: enable DFS pulse detection
Date: Thu, 6 Oct 2011 18:49:48 +0200	[thread overview]
Message-ID: <201110061849.48838.chunkeey@googlemail.com> (raw)
In-Reply-To: <CAB=NE6VC3txpDh4SdDKDxKWKKZVtGQXKVH8opszKDnZeeZTjUQ@mail.gmail.com>

On Thursday, October 06, 2011 12:27:03 AM Luis R. Rodriguez wrote:
> On Tue, Oct 4, 2011 at 6:38 AM, Christian Lamparter
> <chunkeey@googlemail.com> wrote:
> > On Monday, October 03, 2011 09:31:12 PM Luis R. Rodriguez wrote:
> >> On Mon, Oct 3, 2011 at 12:24 PM, Christian Lamparter
> >> <chunkeey@googlemail.com> wrote:
> >> > On Monday, October 03, 2011 08:27:39 PM Luis R. Rodriguez wrote:
> >> >> On Mon, Oct 3, 2011 at 3:29 AM, Zefir Kurtisi <zefir.kurtisi@neratec.com> wrote:
> >> >> >
> >> >> > Signed-off-by: Zefir Kurtisi <zefir.kurtisi@neratec.com>
> >> >> > ---
> >> >> >  drivers/net/wireless/ath/ath9k/main.c |   12 ++++++++++++
> >> >> >  1 files changed, 12 insertions(+), 0 deletions(-)
> >> >> >
> >> >> > diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
> >> >> > index e8aeb98..5defebe 100644
> >> >> > --- a/drivers/net/wireless/ath/ath9k/main.c
> >> >> > +++ b/drivers/net/wireless/ath/ath9k/main.c
> >> >> > [...]
> >> >> > +#ifdef CONFIG_ATH9K_DFS
> >> >>
> >> >> Please spare the #ifdef and just call something within dfs.c, then
> >> >> dfs.h would wrap it to nothing if DFS is disabled.
> >> > Why would anyone want to disable DFS driver support?
> >> > I would say: drop the ifdefs altogether since DFS
> >> > is and will be "required".
> >>
> >> Because DFS requires to be properly tested before being enabled.
> > Testing if a driver detects a pulse is "trivial" compared to the
> > stuff mac80211/cfg80211 and hostapd will have to do to make a
> > channel-change as smooth as possible. I think if there's a DFS
> > "OFF" switch, it should be in hostapd and I hope more people
> > agree on this one.
> 
> You do have a good point, but I disagree that you do not need to test
> / regress test hardware / driver code for DFS.

Actually, you are sort of contradicting yourself here.

Take a look at your "wireless: add DFS master support" patch
series. I don't see any IFDEFs to select between the old
and the new "way" even though you know full well that there's
some black magic going on.

http://permalink.gmane.org/gmane.linux.kernel.wireless.general/78455
Quote:
"Here's a puzzle though... If we change this series to use the other
pad byte that was available, the first pad byte, instead of the last
one, we loose backward compatibility support and I cannot figure out
why."

[Note: This is just an recent enough example. I do think I could come
up with a better one, e.g.: why didn't athXk have a compile-time
switch to disable ANI when it was introduced because it can(and has?)
caused some regressions as well?]

so, why do you want a useless compile-time for *this option* *now*?
Is this something about politics/laws I don't know about [I'm just
curious, because I don't really buy "testing" here, since Zefir
obviously has a working prototype and Atheros has a working and
certificated codebase as well which he can access and base his
work on. So I don't think its that unstable and needs added
ugliness.]
> This is what I'm talking about. But yes, userspace also submits
> itself to the same criteria.
> >> You may also want to simply disable DFS if you do not want to
> >> deal with the regulatory test implications of having it enabled.
> > AFAIK you can't "simply" disable the DFS requirement: hostapd
> > (hw_features.c), [cfg80211] (checks if tx on secondary channel
> > is possible) and mac80211 (tx.c) all have checks. Indeed, the
> > easiest way is to modify crda's database. So there's no need
> > for an extra compile-time option.
> 
> No, DFS is set for certain channels on wireless-regdb/CRDA, I just
> posted DFS master region support for wireless-regdb and CRDA. Apart
> from this we then need driver support. To get DFS you need all of
> these + hostapd part. Each one has its own set of components and does
> deserve its own set of tests and review.
This "deserve its own set of tests and review". Does it translate in:
"ath9k [every driver], mac80211, cfg80211 and hostapd need extra
DFS IFDEFS?". In fact, ifdefs make it harder to do reviews, because
sometimes you just forget the IFDEF/ELSIF/ELSE context of the code.
And regression testing can be done by "git bisect". In fact, isn't
this what git bisect is for?

Regards,
	Chr

  reply	other threads:[~2011-10-06 16:50 UTC|newest]

Thread overview: 110+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-03 10:29 [RFC 0/6] ath9k: DFS pattern detection Zefir Kurtisi
2011-10-03 10:29 ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 10:29 ` [RFC 1/6] ath9k: add DFS statistics to debugfs Zefir Kurtisi
2011-10-03 10:29   ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 18:14   ` Luis R. Rodriguez
2011-10-03 18:14     ` [ath9k-devel] " Luis R. Rodriguez
2011-10-04  8:27     ` Zefir Kurtisi
2011-10-04  8:27       ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 10:29 ` [RFC 2/6] ath9k: add DFS debug flag Zefir Kurtisi
2011-10-03 10:29   ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 18:15   ` Luis R. Rodriguez
2011-10-03 18:15     ` [ath9k-devel] " Luis R. Rodriguez
2011-10-04  8:31     ` Zefir Kurtisi
2011-10-04  8:31       ` [ath9k-devel] " Zefir Kurtisi
2011-10-04  9:40       ` Mohammed Shafi
2011-10-04  9:40         ` [ath9k-devel] " Mohammed Shafi
2011-10-03 10:29 ` [RFC 3/6] ath9k: initial radar pulse detection for DFS Zefir Kurtisi
2011-10-03 10:29   ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 11:57   ` Adrian Chadd
2011-10-03 11:57     ` [ath9k-devel] " Adrian Chadd
2011-10-03 12:23     ` Zefir Kurtisi
2011-10-03 12:23       ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 12:43       ` Adrian Chadd
2011-10-03 12:43         ` [ath9k-devel] " Adrian Chadd
2011-10-03 14:21         ` Zefir Kurtisi
2011-10-03 14:21           ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 14:23           ` Adrian Chadd
2011-10-03 14:23             ` [ath9k-devel] " Adrian Chadd
2011-10-03 10:29 ` [RFC 4/6] ath9k: add DFS build parameter Zefir Kurtisi
2011-10-03 10:29   ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 18:26   ` Luis R. Rodriguez
2011-10-03 18:26     ` [ath9k-devel] " Luis R. Rodriguez
2011-10-04  9:55     ` Zefir Kurtisi
2011-10-04  9:55       ` [ath9k-devel] " Zefir Kurtisi
2011-10-04 10:37       ` Felix Fietkau
2011-10-04 10:37         ` [ath9k-devel] " Felix Fietkau
2011-10-04 12:25         ` Adrian Chadd
2011-10-04 12:25           ` [ath9k-devel] " Adrian Chadd
2011-10-05 22:20         ` Luis R. Rodriguez
2011-10-05 22:20           ` [ath9k-devel] " Luis R. Rodriguez
2011-10-03 10:29 ` [RFC 5/6] ath9k: enable DFS pulse detection Zefir Kurtisi
2011-10-03 10:29   ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 18:27   ` Luis R. Rodriguez
2011-10-03 18:27     ` [ath9k-devel] " Luis R. Rodriguez
2011-10-03 19:24     ` Christian Lamparter
2011-10-03 19:24       ` [ath9k-devel] " Christian Lamparter
2011-10-03 19:31       ` Luis R. Rodriguez
2011-10-03 19:31         ` [ath9k-devel] " Luis R. Rodriguez
2011-10-04 13:38         ` Christian Lamparter
2011-10-04 13:38           ` [ath9k-devel] " Christian Lamparter
2011-10-04 14:17           ` Zefir Kurtisi
2011-10-04 14:17             ` [ath9k-devel] " Zefir Kurtisi
2011-10-04 14:34             ` Adrian Chadd
2011-10-04 14:34               ` [ath9k-devel] " Adrian Chadd
2011-10-05 22:31               ` Luis R. Rodriguez
2011-10-05 22:31                 ` [ath9k-devel] " Luis R. Rodriguez
2011-10-05 22:53                 ` Peter Stuge
2011-10-05 23:02                   ` Luis R. Rodriguez
2011-10-04 14:42             ` Christian Lamparter
2011-10-04 14:42               ` [ath9k-devel] " Christian Lamparter
2011-10-04 14:50               ` Adrian Chadd
2011-10-04 14:50                 ` [ath9k-devel] " Adrian Chadd
2011-10-04 15:26                 ` Christian Lamparter
2011-10-04 15:26                   ` [ath9k-devel] " Christian Lamparter
2011-10-04 15:57                   ` Adrian Chadd
2011-10-04 15:57                     ` [ath9k-devel] " Adrian Chadd
2011-10-04 16:42                     ` Christian Lamparter
2011-10-04 16:42                       ` [ath9k-devel] " Christian Lamparter
2011-10-04 17:03                       ` Adrian Chadd
2011-10-04 17:03                         ` [ath9k-devel] " Adrian Chadd
2011-10-04 17:49                         ` Christian Lamparter
2011-10-04 17:49                           ` [ath9k-devel] " Christian Lamparter
2011-10-05 22:37                 ` Luis R. Rodriguez
2011-10-05 22:37                   ` [ath9k-devel] " Luis R. Rodriguez
2011-10-04 16:26               ` Zefir Kurtisi
2011-10-04 16:26                 ` [ath9k-devel] " Zefir Kurtisi
2011-10-05 22:30             ` Luis R. Rodriguez
2011-10-05 22:30               ` [ath9k-devel] " Luis R. Rodriguez
2011-10-05 22:27           ` Luis R. Rodriguez
2011-10-05 22:27             ` Luis R. Rodriguez
2011-10-06 16:49             ` Christian Lamparter [this message]
2011-10-06 16:49               ` Christian Lamparter
2011-10-06 18:36               ` Luis R. Rodriguez
2011-10-06 18:36                 ` Luis R. Rodriguez
2011-10-06 18:41                 ` Luis R. Rodriguez
2011-10-06 18:41                   ` Luis R. Rodriguez
2011-10-06 20:32                 ` Zefir Kurtisi
2011-10-06 20:32                   ` Zefir Kurtisi
2011-10-06 20:41                   ` Luis R. Rodriguez
2011-10-06 20:41                     ` Luis R. Rodriguez
2011-10-06 21:08                     ` Zefir Kurtisi
2011-10-06 21:08                       ` Zefir Kurtisi
2011-10-06 21:12                       ` Luis R. Rodriguez
2011-10-06 21:12                         ` Luis R. Rodriguez
2011-10-07  3:06                       ` Adrian Chadd
2011-10-07  3:06                         ` Adrian Chadd
2011-10-07  7:54                         ` Luis R. Rodriguez
2011-10-07  7:54                           ` Luis R. Rodriguez
2011-10-07  8:48                         ` Zefir Kurtisi
2011-10-07  8:48                           ` Zefir Kurtisi
2011-10-07 11:43                           ` Adrian Chadd
2011-10-07 11:43                             ` Adrian Chadd
2011-10-04 10:11     ` Zefir Kurtisi
2011-10-04 10:11       ` [ath9k-devel] " Zefir Kurtisi
2011-10-05 22:23       ` Luis R. Rodriguez
2011-10-05 22:23         ` [ath9k-devel] " Luis R. Rodriguez
2011-10-03 10:29 ` [RFC 6/6] ath9k: handle pulse data reported by DFS HW Zefir Kurtisi
2011-10-03 10:29   ` [ath9k-devel] " Zefir Kurtisi
2011-10-03 18:30   ` Luis R. Rodriguez
2011-10-03 18:30     ` [ath9k-devel] " Luis R. Rodriguez

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=201110061849.48838.chunkeey@googlemail.com \
    --to=chunkeey@googlemail.com \
    --cc=ath9k-devel@lists.ath9k.org \
    --cc=kgiori@qca.qualcomm.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=rodrigue@qca.qualcomm.com \
    --cc=zefir.kurtisi@neratec.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.