02 Nov, 2017

1 commit

  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

13 Jan, 2017

1 commit

  • With 78, 111 and 85 bytes respectively (on x86-64), the
    functions iwe_stream_add_event(), iwe_stream_add_point()
    and iwe_stream_add_value() really shouldn't be inlines.

    It appears that at least my compiler already decided
    the same, and created a single instance of each one
    of them for each file using it, but that's still a
    number of instances in the system overall, which this
    reduces.

    Signed-off-by: Johannes Berg

    Johannes Berg
     

12 Jan, 2017

1 commit

  • gcc-7 complains that wl3501_cs passes NULL into a function that
    then uses the argument as the input for memcpy:

    drivers/net/wireless/wl3501_cs.c: In function 'wl3501_get_scan':
    include/net/iw_handler.h:559:3: error: argument 2 null where non-null expected [-Werror=nonnull]
    memcpy(stream + point_len, extra, iwe->u.data.length);

    This works fine here because iwe->u.data.length is guaranteed to be 0
    and the memcpy doesn't actually have an effect.

    Making the length check explicit avoids the warning and should have
    no other effect here.

    Also check the pointer itself, since otherwise we get warnings
    elsewhere in the code.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Johannes Berg

    Arnd Bergmann
     

30 Jan, 2016

1 commit

  • Since cfg80211 frequently takes actions from its netdev notifier
    call, wireless extensions messages could still be ordered badly
    since the wext netdev notifier, since wext is built into the
    kernel, runs before the cfg80211 netdev notifier. For example,
    the following can happen:

    5: wlan1: mtu 1500 qdisc mq state DOWN group default
    link/ether 02:00:00:00:01:00 brd ff:ff:ff:ff:ff:ff
    5: wlan1:
    link/ether

    when setting the interface down causes the wext message.

    To also fix this, export the wireless_nlevent_flush() function
    and also call it from the cfg80211 notifier.

    Cc: stable@vger.kernel.org
    Signed-off-by: Johannes Berg

    Johannes Berg
     

01 Mar, 2015

1 commit


22 Sep, 2013

1 commit

  • There are a mix of function prototypes with and without extern
    in the kernel sources. Standardize on not using extern for
    function prototypes.

    Function prototypes don't need to be written with extern.
    extern is assumed by the compiler. Its use is as unnecessary as
    using auto to declare automatic/local variables in a block.

    Signed-off-by: Joe Perches
    Signed-off-by: David S. Miller

    Joe Perches
     

31 Mar, 2011

1 commit


01 Apr, 2010

1 commit


04 Nov, 2009

1 commit

  • This cleanup patch puts struct/union/enum opening braces,
    in first line to ease grep games.

    struct something
    {

    becomes :

    struct something {

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     

08 Oct, 2009

1 commit

  • Refactor wext to
    * split out iwpriv handling
    * split out iwspy handling
    * split out procfs support
    * allow cfg80211 to have wireless extensions compat code
    w/o CONFIG_WIRELESS_EXT

    After this, drivers need to
    - select WIRELESS_EXT - for wext support
    - select WEXT_PRIV - for iwpriv support
    - select WEXT_SPY - for iwspy support

    except cfg80211 -- which gets new hooks in wext-core.c
    and can then get wext handlers without CONFIG_WIRELESS_EXT.

    Wireless extensions procfs support is auto-selected
    based on PROC_FS and anything that requires the wext core
    (i.e. WIRELESS_EXT or CFG80211_WEXT).

    Signed-off-by: Johannes Berg
    Signed-off-by: John W. Linville

    Johannes Berg
     

29 Aug, 2009

1 commit


11 Jul, 2009

1 commit


17 Jun, 2008

2 commits

  • Three major portions to this change:

    1) Add IW_EV_COMPAT_LCP_LEN, IW_EV_COMPAT_POINT_OFF,
    and IW_EV_COMPAT_POINT_LEN helper defines.

    2) Delete iw_stream_check_add_*(), they are unused.

    3) Add iw_request_info argument to iwe_stream_add_*(), and use it to
    size the event and pointer lengths correctly depending upon whether
    IW_REQUEST_FLAG_COMPAT is set or not.

    4) The mechanical transformations to the drivers and wireless stack
    bits to get the iw_request_info passed down into the routines
    modified in #3. Also, explicit references to IW_EV_LCP_LEN are
    replaced with iwe_stream_lcp_len(info).

    With a lot of help and bug fixes from Masakazu Mokuno.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Now low-level WEXT ioctl handlers can do compat handling
    when necessary.

    Signed-off-by: David S. Miller

    David S. Miller
     

11 Oct, 2007

1 commit


27 Apr, 2007

1 commit


26 Apr, 2007

1 commit


28 Mar, 2007

1 commit


23 Mar, 2006

1 commit

  • This is version 20 of the Wireless Extensions. This is the
    completion of the RtNetlink work I started early 2004, it enables the
    full Wireless Extension API over RtNetlink.

    Few comments on the patch :
    o totally driver transparent, no change in drivers needed.
    o iwevent were already RtNetlink based since they were created
    (around 2.5.7). This adds all the regular SET and GET requests over
    RtNetlink, using the exact same mechanism and data format as iwevents.
    o This is a Kconfig option, as currently most people have no
    need for it. Surprisingly, patch is actually small and well
    encapsulated.
    o Tested on SMP, attention as been paid to make it 64 bits clean.
    o Code do probably too many checks and could be further
    optimised, but better safe than sorry.
    o RtNetlink based version of the Wireless Tools available on
    my web page for people inclined to try out this stuff.

    I would also like to thank Alexey Kuznetsov for his helpful
    suggestions to make this patch better.

    Signed-off-by: Jean Tourrilhes
    Signed-off-by: John W. Linville

    Jean Tourrilhes
     

17 Jan, 2006

1 commit


07 Sep, 2005

1 commit

  • Hi Jeff,

    This is version 19 of the Wireless Extensions. It was supposed
    to be the fallback of the WPA API changes, but people seem quite happy
    about it (especially Jouni), so the patch is rather small.
    The patch has been fully tested with 2.6.13 and various
    wireless drivers, and is in its final version. Would you mind pushing
    that into Linus's kernel so that the driver and the apps can take
    advantage ot it ?

    It includes :
    o iwstat improvement (explicit dBm). This is the result of
    long discussions with Dan Williams, the authors of
    NetworkManager. Thanks to him for all the fruitful feedback.
    o remove pointer from event stream. I was not totally sure if
    this pointer was 32-64 bits clean, so I'd rather remove it and be at
    peace with it.
    o remove linux header from wireless.h. This has long been
    requested by people writting user space apps, now it's done, and it
    was not even painful.
    o final deprecation of spy_offset. You did not like it, it's
    now gone for good.
    o Start deprecating dev->get_wireless_stats -> debloat netdev
    o Add "check" version of event macros for ieee802.11
    stack. Jiri Benc doesn't like the current macros, we aim to please ;-)
    All those changes, except the last one, have been bit-roting on
    my web pages for a while...

    Patches for most kernel drivers will follow. Patches for the
    Orinoco and the HostAP drivers have been sent to their respective
    maintainers.

    Have fun...

    Jean
    Signed-off-by: Jeff Garzik

    Jean Tourrilhes
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds