summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-09-24backport: add ktime_get_raw_ts64() backport for < 3.19Luca Coelho
The getrawmonotonic64() function that is used by the ktime_get_raw_ts64() backport was only introduced in 3.19. To fix compilation with earlier kernels, do the convertion from getrawmonotonic() manually if the kernel is < 3.19. Additionally, add timespec_to_timespec64() that we need for this conversion (and which was only introduced in 3.17). Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24patches: make coredump support conditional on 4.17Johannes Berg
On 4.16, the coredump method returns int rather than void. It would be possible to fix that up, but so far I'm too lazy. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24patches: fix "disable" typo in patch filenameJohannes Berg
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24patches: Do not remove linux/kmemleak.h includeHauke Mehrtens
This driver has to include linux/kmemleak.h to get kmemleak_not_leak in kernel 4.19. I haven't seen any problem when compiling against multiple other kernels, but didn't test all the 3.X versions. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backports: Make netdev destructor spatch apply correctly againHauke Mehrtens
The netdev destructor spatch did not apply to the wil6210 driver any more, because there the calls were done in a different order compared to the spatch. Add an additional rule which applies when the order is changed. Fixes: 30a378636e47 ("backports: speed up netdev destructor spatch by two orders of magnitude") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24patches: remove .coredump from struct driver for kernel < 4.16Hauke Mehrtens
Kernel 4.16 added a new .coredump member to the driver structure which can be implemented by drivers. Remove this member on older kernel versions as they do not support this feature. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24patches: make mt76 use skb_pad() instead of __skb_pad()Hauke Mehrtens
__skb_pad() was only added with kernel 4.13. The free_on_error parameter of __skb_pad() is set to constant true, which is also the setting used by skb_pad() so it should be save to use skb_pad() instead. This patch should be added to the mainline Linux kernel. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24dependencies: make hostap and atmel depend on kernel >= 4.18Hauke Mehrtens
The hostap and atmel wireless driver now make use of the proc_create_single_data() function which can not easily be backported. As these drivers are not used too often just deactivate them on older kernel versions for now. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24dependencies: Make WIL6210 depend on kernel >= 4.8Hauke Mehrtens
The WIL6210 driver now uses pci_alloc_irq_vectors() which is only available in kernel >= 4.8, only build this driver against such kernel versions. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [backporting the function doesn't seem too hard, but unless somebody complains we're too lazy] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24dependencies: Make RSI_COEX coexistence depend on kernel >= 4.17Hauke Mehrtens
When RSI_COEX is activated the driver wants to link against the rsi_bt_ops symbol from the bluetooth driver btrsi. This driver was only added in kernel 4.17. Deactivate bluetooth coexistence support for older kernel versions. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24copy: Add crc32poly.hHauke Mehrtens
This is used by the rtl8723bs driver. The implementation is completely in this header file, so it is save to copy it Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backports: Remove NFC supportHauke Mehrtens
I am not aware of any user of the NFC coded in backports, at least I haven't seen any patches regarding this. Remove this code to reduce the efforts needed in the backports project. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backports: Remove ssb and bcmaHauke Mehrtens
Use the versions shipped with the kernel instead. bcma and ssb didn't change much in the last few years, most of the changes were related to code only used on embedded devices. Removing this reduces the number of parts we have to backport. b43, b43legacy and brcmsmac work well with the in kernel version. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backports: add __alloc_bucket_spinlocks() for < 4.19Luca Coelho
Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: convert int led activate op to void when neededLuca Coelho
In kernel v4.19-rc1, the activate op in struct led_trigger, changed from void to int. To solve this, add a semantic patch to insert a wrapper function that returns void and calls the function that returns int. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> [use <+... ...+> as suggested by Hauke] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backports: improve skb->xmit_more handlingJohannes Berg
Replace the existing skb->xmit_more semantic patch rule with a more generic one that uses a helper inline function. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: update u64_stats_init() to a new version in kernels < 4.2Luca Coelho
The u64_stats_init() macro was turned into a static inline function in v4.2 to prevent warnings that happen when its argument is not used elsewhere. Since we started hitting these warnings, undefine the macro and define the static inline to prevent them. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: make ktime_get_boottime_seconds() non-inlineLuca Coelho
With kernels < 3.17, we need to include hrtimer.h to get ktime_divns() for the ktime_get_boottime_seconds() backport. But we can't just include htrtimer.h in the backport timekeeping.h because we run into some cyclical inclusions that cause problems. To solve that make ktime_get_boottime_seconds() non-inline and add it to a new backport-4.18.c file. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: prevent unused subclass variable warning in < 3.18Luca Coelho
In kernels earlier than 3.18, the raw_spin_lock defininition when CONFIG_DEBUG_LOCK_ALLOC is not enabled, was dropping one of the parameters, which caused a few "unused variable" warnings at places where this argument was only used in the call to raw_spin_lock_nested(). Take the latest definition which evaluates the argument to avoid compiler warnings. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: remove duplicate leds.h inclusion from backport-4.5.cLuca Coelho
We were including leds.h twice in backport-4.5.c and one of them was very early, which caused inclusion conflicts at least with < 3.16 kernels. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: add rhashtable-types.hLuca Coelho
This was introduced in 4.18 and is needed by rhashtable.h, that we copy. So copy it as well. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: convert tree section names to asciiLuca Coelho
For some reason, sometimes when the git logs contain non-ascii characters, we get some conversion errors. This only happens if one of the strings we use is explicitly unicode, otherwise everything is fine. The only string we use that is of unicode type is the tree names that comes from the configuration sections. To avoid issues, convert the strings we get from the config file into ascii before using it. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: add patch to ignore iwlwifi removal on < 3.14 kernelsLuca Coelho
The iwlwifi driver has a workaround for some PCI bugs that require it to be removed and reinserted. Unfortunately, this doesn'w work on kernels < 3.14, so ignore the actual work function in that case and print out a message instead. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> [rename patch to have a number prefix] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: introduce match_string() for kernels < 4.6Luca Coelho
This function was introduced in v4.6 and now the iwlwifi driver uses it. Add the function for kernels older than v4.6. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backports: add wait_event_killable_timeout backport supportShahar S Matityahu
Allow using wait_event_killable_timeout function in kernel older then 4.13 Signed-off-by: Shahar S Matityahu <shahar.s.matityahu@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backport: fix compilation with IPV6 not setLuca Coelho
At least in some older kernel versions (e.g. 3.10), the tcp.h header file is not implicitly included from other headers if CONFIG_IPV6 is not set, so we need to include it in backport-4.4.c. Also, there is an IPv6 structure that is used, so we should ifdef it away when IPv6 is not enabled. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backports: add strreplace()Winnie Chang
wireless-drivers-next.git commit cb18e2e9ec71 (brcmfmac: fix wrong strnchr usage) used strreplace(), which is not available in kernel prior to v4.2. Before this commit proprgates to linux-stable.git, add strreplace() to avoid gentree failure. Signed-off-by: Winnie Chang <winnie.chang@cypress.com> Signed-off-by: Chi-Hsien Lin <chi-hsien.lin@cypress.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-24backports: use := assignment for subdir-ccflags-y using cc-optionJohannes Berg
In newer kernels, calling cc-option will use KBUILD_CFLAGS, which itself gets subdir-ccflags-y added to it. Thus, we get it referencing itself, since nothing here is evaluated until KBUILD_CFLAGS is used: KBUILD_CFLAGS contains subdir-ccflags-y, that in turn contains cc-option call, containing KBUILD_CFLAGS. To avoid that, use := assignment to subdir-ccflags-y, meaning the cc-option call is done right away and we don't end up with KBUILD_CFLAGS referencing itself. Note that this is the first assignment to subdir-ccflags-y, so the += was never necessary. This fixes build of the driver on kernels 4.15 and higher. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-19header: Add ktime_get_raw_ts64()Hauke Mehrtens
ktime_get_raw_ts64() uses the old function which was renamed. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [fix typo in commit message] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-19header: Add u64_stats_update_{begin,end}_irqsave()Hauke Mehrtens
These functions are currently used by the usbnet driver. These functions were introduced in upstream commit 2695578b896ae ("net: usbnet: fix potential deadlock on 32bit hosts") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-19header: Add NL_SET_BAD_ATTRHauke Mehrtens
This is used by the mac80211_hwsim driver. The code was copied from the mainline kernel. This was introduced in mainline kernel commit c3ab2b4ec8f7 ("net: ipv4: Add extack messages for route add failures") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-19patches: make patches apply with kernel 4.19Hauke Mehrtens
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-19patches: Adapt to new select queue APIHauke Mehrtens
The select queue API was changed in upstream commit 4f49dec9075a ("net: allow ndo_select_queue to pass netdev"). This patch adds a new version of the API for kernel < 4.19 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-19header: Add kvzalloc()Hauke Mehrtens
This adds the kvzalloc() function and allows it to remove the lib-rhashtable.patch patch. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [fix commit message kzalloc -> kvzalloc] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-19backports: Remove unused partsHauke Mehrtens
This removes parts which were only used by subsystems which are not included in backports any more, for example media, bluetooth and Ethernet. The patches which are removed in this commit are not applied to the kernel tree anyway with the default configuration because non of the files get copied. The freezer, media, regulator and sound parts were only used by the already removed media drivers. The flow dissector file is not copied any more. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-19backports: speed up netdev destructor spatch by two orders of magnitudeJohannes Berg
As reported by Hauke, and analyzed by Julia, the netdev destructor spatch is really slow because <... ...> means 0 or more hits, and thus the spatch has to be applied on all files. However, we don't really need it to be this way, so use <+... ...+> which allows it to reject almost all files immediately, cutting down the processing time by more than two orders of magnitude as it only has to touch a handful of files, rather than all. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-12gentree: bump coccinelle/spatch requirement to 1.0.7Johannes Berg
The 1.0.6 release was actually not compatible with the attribute name syntax we use, and the confusion around 1.0.7 finally got cleared up, and that should work. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-10backports: crypto_memneq has been backported to 3.12 and 3.10Alban Bedel
crypto_memneq has been backported in 3.12.59 and 3.10.106, it shouldn't be built for these kernels. Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-10backports: backport sg_init_marker()Felix Fietkau
It is used by new mt76 changes Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-10backport: add firmware_request_nowarn and firmware_request_cacheFelix Fietkau
Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-10backport: copy net/rsi_91x.hFelix Fietkau
Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-10backport-include: backport ktime_get_boottime_secondsFelix Fietkau
Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-10patches: remove lib-bucket_locks.patchFelix Fietkau
Obsoleted by kvmalloc/kvmalloc_array backport Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-10backport-include: backport kvmalloc and kvmalloc_arrayFelix Fietkau
Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-09-10backports: copy linux/overflow.hFelix Fietkau
Overflow macros are useful for further backports Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-08-22backports: add header file for function memcmpWinnie Chang
Function memcmp is implicit declaration on kernel 4.9.88 ARM platform. backport-include/keys/asymmetric-type.h uses function memcmp but its caller compat/verification/verify.c and all its related header files do not include string.h. The header file is usually included from arch/arm/include/asm, but in this configuration, it doesn't. We need to be safe and insure string.h is there. Signed-off-by: Winnie Chang <winnie.chang@cypress.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-06-25backports: genl: fix family->family.id accessJohannes Berg
If compiling on 3.13, struct genl_family isn't actually struct backport_genl_family, and then family->family doesn't exist. In other cases, it's actually necessary to update it, so add an #ifdef with the same logic as the override from genl_family -> backport_genl_family. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-06-04backports: update id field in backports genl familyAaron Komisar
Family ID from the original family struct will be used when building genl messages (sent as nlmsg_type), so the new id should be updated in the original (older kernel format) family struct too Signed-off-by: Aaron Komisar <aaron.komisar@tandemg.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-05-09spatch: adjust to and require 1.0.6Johannes Berg
The spatch tool made an incompatible change in the attribute syntax, adjust to that and require the new version. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2018-05-02backport-include: deal with struct sock::sk_pacing_shiftArend Van Spriel
In kernel 4.15 the field sk_pacing_shift was introduced to allow (wifi) drivers to change the behaviour of TSQ. In 4.16 a helper function was added which mac80211 is using. So backport the helper which is just a stub for kernels prior to 4.15. Cc: Eric Dumazet <edumazet@google.com> Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>