Message ID | 1450946006-7498-1-git-send-email-bjorn.andersson@sonymobile.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Johannes Berg |
Headers | show |
HI Bjorn, On Thu, Dec 24, 2015 at 2:03 PM, Bjorn Andersson <bjorn@kryo.se> wrote: > Make the addr parameter const in SET_IEEE80211_PERM_ADDR() to save > clients from having to cast away a const qualifier. > > Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com> > --- > include/net/mac80211.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/net/mac80211.h b/include/net/mac80211.h > index 7c30faff245f..a6f3c9c4b7c2 100644 > --- a/include/net/mac80211.h > +++ b/include/net/mac80211.h > @@ -2167,7 +2167,7 @@ static inline void SET_IEEE80211_DEV(struct ieee80211_hw *hw, struct device *dev > * @hw: the &struct ieee80211_hw to set the MAC address for > * @addr: the address to set > */ > -static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, u8 *addr) > +static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, const u8 *addr) I guess without const or with const doesn't make much difference here. Correct me if I am wrong. > { > memcpy(hw->wiphy->perm_addr, addr, ETH_ALEN); > } > -- > 2.5.0 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -Souptick -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Dec 30, 2015 at 8:47 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote: > > HI Bjorn, > > On Thu, Dec 24, 2015 at 2:03 PM, Bjorn Andersson <bjorn@kryo.se> wrote: > > Make the addr parameter const in SET_IEEE80211_PERM_ADDR() to save > > clients from having to cast away a const qualifier. > > > > Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com> > > --- > > include/net/mac80211.h | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/include/net/mac80211.h b/include/net/mac80211.h > > index 7c30faff245f..a6f3c9c4b7c2 100644 > > --- a/include/net/mac80211.h > > +++ b/include/net/mac80211.h > > @@ -2167,7 +2167,7 @@ static inline void SET_IEEE80211_DEV(struct ieee80211_hw *hw, struct device *dev > > * @hw: the &struct ieee80211_hw to set the MAC address for > > * @addr: the address to set > > */ > > -static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, u8 *addr) > > +static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, const u8 *addr) > > I guess without const or with const doesn't make much difference here. > Correct me if I am wrong. For most cases it doesn't make any difference, but in my driver I acquire the mac address as a const u8 *. Therefor I need to cast away the const part when calling this API. There's an existing example of this in drivers/net/wireless/st/cw1200/main.c line 601. I think it's safe to assume that this API won't ever modify the passed addr buffer, so there would be no future issues of marking the parameter const either. > > > { > > memcpy(hw->wiphy->perm_addr, addr, ETH_ALEN); > > } > Regards, Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Dec 30, 2015 at 10:35 PM, Bjorn Andersson <bjorn@kryo.se> wrote: > On Wed, Dec 30, 2015 at 8:47 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote: >> >> HI Bjorn, >> >> On Thu, Dec 24, 2015 at 2:03 PM, Bjorn Andersson <bjorn@kryo.se> wrote: >> > Make the addr parameter const in SET_IEEE80211_PERM_ADDR() to save >> > clients from having to cast away a const qualifier. >> > >> > Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com> >> > --- >> > include/net/mac80211.h | 2 +- >> > 1 file changed, 1 insertion(+), 1 deletion(-) >> > >> > diff --git a/include/net/mac80211.h b/include/net/mac80211.h >> > index 7c30faff245f..a6f3c9c4b7c2 100644 >> > --- a/include/net/mac80211.h >> > +++ b/include/net/mac80211.h >> > @@ -2167,7 +2167,7 @@ static inline void SET_IEEE80211_DEV(struct ieee80211_hw *hw, struct device *dev >> > * @hw: the &struct ieee80211_hw to set the MAC address for >> > * @addr: the address to set >> > */ >> > -static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, u8 *addr) >> > +static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, const u8 *addr) >> >> I guess without const or with const doesn't make much difference here. >> Correct me if I am wrong. > > For most cases it doesn't make any difference, but in my driver I > acquire the mac address as a const u8 *. Therefor I need to cast away > the const part when calling this API. > > There's an existing example of this in > drivers/net/wireless/st/cw1200/main.c line 601. Is the path correct ? I think path is drivers/net/wireless/cw1200/main.c line 334 > I think it's safe to assume that this API won't ever modify the passed > addr buffer, so there would be no future issues of marking the > parameter const either. I agree with you. > >> >> > { >> > memcpy(hw->wiphy->perm_addr, addr, ETH_ALEN); >> > } >> > > Regards, > Bjorn -Souptick -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Dec 30, 2015 at 10:30 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote: > On Wed, Dec 30, 2015 at 10:35 PM, Bjorn Andersson <bjorn@kryo.se> wrote: >> On Wed, Dec 30, 2015 at 8:47 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote: >>> >>> HI Bjorn, >>> >>> On Thu, Dec 24, 2015 at 2:03 PM, Bjorn Andersson <bjorn@kryo.se> wrote: >>> > Make the addr parameter const in SET_IEEE80211_PERM_ADDR() to save >>> > clients from having to cast away a const qualifier. >>> > >>> > Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com> >>> > --- >>> > include/net/mac80211.h | 2 +- >>> > 1 file changed, 1 insertion(+), 1 deletion(-) >>> > >>> > diff --git a/include/net/mac80211.h b/include/net/mac80211.h >>> > index 7c30faff245f..a6f3c9c4b7c2 100644 >>> > --- a/include/net/mac80211.h >>> > +++ b/include/net/mac80211.h >>> > @@ -2167,7 +2167,7 @@ static inline void SET_IEEE80211_DEV(struct ieee80211_hw *hw, struct device *dev >>> > * @hw: the &struct ieee80211_hw to set the MAC address for >>> > * @addr: the address to set >>> > */ >>> > -static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, u8 *addr) >>> > +static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, const u8 *addr) >>> >>> I guess without const or with const doesn't make much difference here. >>> Correct me if I am wrong. >> >> For most cases it doesn't make any difference, but in my driver I >> acquire the mac address as a const u8 *. Therefor I need to cast away >> the const part when calling this API. >> >> There's an existing example of this in >> drivers/net/wireless/st/cw1200/main.c line 601. > > Is the path correct ? I think path is > drivers/net/wireless/cw1200/main.c line 334 > It's apparently being relocated in linux-next, and I'm not sure where I got that line number from. But that's the example I tried to refer to ;) Sorry about that. Regards, Bjorn >> I think it's safe to assume that this API won't ever modify the passed >> addr buffer, so there would be no future issues of marking the >> parameter const either. > > I agree with you. > >> >>> >>> > { >>> > memcpy(hw->wiphy->perm_addr, addr, ETH_ALEN); >>> > } >>> >> >> Regards, >> Bjorn > > -Souptick -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 7c30faff245f..a6f3c9c4b7c2 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -2167,7 +2167,7 @@ static inline void SET_IEEE80211_DEV(struct ieee80211_hw *hw, struct device *dev * @hw: the &struct ieee80211_hw to set the MAC address for * @addr: the address to set */ -static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, u8 *addr) +static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, const u8 *addr) { memcpy(hw->wiphy->perm_addr, addr, ETH_ALEN); }
Make the addr parameter const in SET_IEEE80211_PERM_ADDR() to save clients from having to cast away a const qualifier. Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com> --- include/net/mac80211.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)