Hauke Mehrtens [Sun, 15 Jun 2014 12:40:30 +0000 (14:40 +0200)]
backports: add i2c_add_mux_adapter()
This adds i2c_add_mux_adapter() also for kernel < 3.5. This is needed
for some newly activated media driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sun, 15 Jun 2014 12:02:44 +0000 (14:02 +0200)]
backports: remove backport of DMA shared buffers
This DMA shared buffer backport was used for kernel < 3.5, more recent
kernel versions already have a working version of the DMA shared
buffers.
The DMA shared buffers are only used by some media drivers, but non of
these media drivers, which are actually using this API, are compiled on
kernel < 3.5. The DMA shared buffer part would need some more attention
in the next backports version, because there are some bigger changes
and instead we removed it.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sun, 15 Jun 2014 12:15:05 +0000 (14:15 +0200)]
backports: disable DMA shared buffer support for kernel < 3.5 in v4l2
v4l2 uses the DMA shared buffers API of kernel >= 3.5. When the v4l2
backport is be compiled against older kernel versions a backport of the
DMA shared buffers is used. Instead of using this backport this patch
will remove usage of the DMA shared buffers on these old kernel
versions. This allows us to remove DMA shared buffers from backports.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 7 Jun 2014 14:16:48 +0000 (16:16 +0200)]
backports: refresh patches on next-
20140516
== ckmake-report.log ==
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.59 [ OK ]
4 3.3.8 [ OK ]
5 3.4.91 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.40 [ OK ]
12 3.11.10 [ OK ]
13 3.12.20 [ OK ]
14 3.13.11 [ OK ]
15 3.14.4 [ OK ]
16 3.15-rc7 [ OK ]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 7 Jun 2014 17:09:14 +0000 (19:09 +0200)]
backports: add RSI driver
This adds Redpine Signals Inc 91x WLAN driver support
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 7 Jun 2014 17:50:05 +0000 (19:50 +0200)]
backports: add mmc_card_hs()
This is needed by the RSI driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 7 Jun 2014 17:49:45 +0000 (19:49 +0200)]
backports: add ether_addr_copy()
This is needed by the rsi driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 7 Jun 2014 18:32:57 +0000 (20:32 +0200)]
backports: rename irq_get_trigger_type()
This should avoid possible name conflicts.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 7 Jun 2014 14:15:59 +0000 (16:15 +0200)]
backports: handle changes to vlan_rx_add/kill pointers in cdc_mbim.c
These callback pointers are now also used in cdc_mbim.c
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 7 Jun 2014 14:08:55 +0000 (16:08 +0200)]
backports: revert rename of __vlan_find_dev_deep()
This function was renamed in this commit in mainline linux:
commit
f06c7f9f92295faf701a9628b383156c4efb6119
Author: dingtianhong <dingtianhong@huawei.com>
Date: Fri May 9 14:58:05 2014 +0800
vlan: rename __vlan_find_dev_deep() to __vlan_find_dev_deep_rcu()
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Johannes Berg [Fri, 9 May 2014 06:23:16 +0000 (08:23 +0200)]
backports: fix class/bus attribute group spatch conversion
The spatch conversion (commit
05d44557c6a83b4ecb935cb6306f62,
"backports: transform group attribute backport to SmPL form")
added an #ifdef that shouldn't be there - remove it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sun, 1 Jun 2014 21:30:01 +0000 (23:30 +0200)]
backports: set defconfig media to m
Set the default option to module.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sun, 1 Jun 2014 21:22:09 +0000 (23:22 +0200)]
backports: update default configs
Remove some config options which were not available in the kernel any
more and add some missing new options.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 15:29:08 +0000 (17:29 +0200)]
backports: update test kernel versions
This updates the kernel versions to test against to the most recent
versions.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 15:23:22 +0000 (17:23 +0200)]
backports: refresh patches on next-
20140501
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.59 [ OK ]
4 3.3.8 [ OK ]
5 3.4.91 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.40 [ OK ]
12 3.11.10 [ OK ]
13 3.12.20 [ OK ]
14 3.13.11 [ OK ]
15 3.14.4 [ OK ]
16 3.15-rc7 [ OK ]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 15:21:40 +0000 (17:21 +0200)]
backports: remove unused functions from bluetooth
hidp_set_raw_report() and hidp_output_report() are not used with kernel
< 3.15.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 15:19:48 +0000 (17:19 +0200)]
backports: add irq_get_trigger_type()
This function is needed by some drivers.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 15:18:28 +0000 (17:18 +0200)]
backports: add devm_gpio_request{_one}()
These two functions are used by some drivers, but not available in all
kernel versions.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 15:17:05 +0000 (17:17 +0200)]
backports: add patch to prevent section mismatch again
This patch was removed in:
commit
be4a0f9ad7e17670d7a30c9e94d5dd918425f90a
Author: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Date: Fri Apr 11 01:45:20 2014 +0000
backports: nuke support for kernels < 3.0
It is still needed for some still supported kernel versions.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 14:11:24 +0000 (16:11 +0200)]
backports: move net_device_priv_flags
These flags are now defined in linux/netdevice.h and not in linux/if.h
any more. This patch also removed some defined in all kernel versions
since 3.0.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 13:52:42 +0000 (15:52 +0200)]
backports: only add net_get_random_once() when not available
net_get_random_once() was added unconditionally also when the kernel we
are compiling against already provided this function, this patch checks
that first.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 13:34:55 +0000 (15:34 +0200)]
backports: fix build if CONFIG_PTP_1588_CLOCK=m
ifdef just checked if this was build into the kernel and not if it was
build as a module.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 13:33:41 +0000 (15:33 +0200)]
backports: raise kernel minimal kernel version for some regulator drivers
Compiling with older kernel versions causes some problems.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 13:31:29 +0000 (15:31 +0200)]
backports: select_queue patch: fix callback kernel version
The patch changing the callback function signature was backported to
kernel 3.14, this was already fixed in backports for mac80211, but that
commit missed mwifiex.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 31 May 2014 13:24:18 +0000 (15:24 +0200)]
backports: add smp_mb__after_atomic()
smp_mb__after_clear_bit() was renamed to smp_mb__after_atomic() in more
recent kernel version, this patch adds compatibility for older kernel
versions.
In addition it also removes a useless include of asm/atomic.h which
would include this same file.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Jonathan DE CESCO [Mon, 26 May 2014 14:15:36 +0000 (17:15 +0300)]
backports: Avoid multiple definition of DEVICE_ATTR_RW for older kernels
This definition may exists on non-vanilla kernels.
Signed-off-by: Jonathan DE CESCO <jonathan.de.cesco@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Johannes Berg [Wed, 21 May 2014 07:44:43 +0000 (09:44 +0200)]
git-tracker: remove shortlog for empty changes
When the input tree had changes but the output doesn't get
any changes at all, then the shortlog was being generated
over all commits since no files were specified.
Catch this special case and instead of generating a shortlog
just add a note that no commits changed generated code.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:24 +0000 (13:21 +0200)]
backports: handle pci_error_handlers change to const
In kernel 3.7 struct pci_driver changed pci_error_handlers to const.
Address this by putting ifdef around the code.
commit
494530284f16298050ab99f54b7b12dd7d1418a1
Author: Stephen Hemminger <shemminger@vyatta.com>
Date: Fri Sep 7 09:33:14 2012 -0700
PCI: Make pci_error_handlers const
git describe --contains
494530284f16298050ab99f54b7b12dd7d1418a1
v3.7-rc1~177^2~9^2~3
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:23 +0000 (13:21 +0200)]
backports: handle hwmon_device_register_with_groups API calls
The new hwmon_device_register_with_groups API has not been backported yet.
Address this by putting ifdef around the code using the API.
commit
74188cba088192e14cd7fd5433876e8c947bcdd8
Author: Guenter Roeck <linux@roeck-us.net>
Date: Thu Jul 11 20:00:12 2013 -0700
hwmon: Provide managed hwmon registration
git describe --contains
74188cba088192e14cd7fd5433876e8c947bcdd8
v3.13-rc1~126^2~30
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:22 +0000 (13:21 +0200)]
backports: handle struct ethtool_cmd MDI changes
In kernel 3.7 struct ethtool_cmd received eth_tp_mdix and eth_tp_mdix_ctrl.
Address this by putting ifdef around the code using these struct components.
commit
6f6bbc186dc8e4e0c628db7decbd1a5e02cb5fd8
Author: Jesse Brandeburg <jesse.brandeburg@intel.com>
Date: Thu Jul 26 02:30:53 2012 +0000
ethtool.h: MDI setting support
git describe --contains
6f6bbc186dc8e4e0c628db7decbd1a5e02cb5fd8
v3.7-rc1~145^2~300^2~5
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:21 +0000 (13:21 +0200)]
backports: handle argument type change of get_rxnfc in struct ethtool_ops
In kernel 3.2 an argument type of function pointer get_rxnfc in
struct ethtool_ops changed from void to u32.
Address this by putting ifdef around the code.
commit
815c7db5c809ea3d5735de3131ecdf758b0e14ff
Author: Ben Hutchings <bhutchings@solarflare.com>
Date: Tue Sep 6 13:49:12 2011 +0000
ethtool: Clean up definitions of rule location arrays in RX NFC
git describe --contains
815c7db5c809ea3d5735de3131ecdf758b0e14ff
v3.2-rc1~129^2~272
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:20 +0000 (13:21 +0200)]
backports: handle new rxfh_ndir pointers in struct ethtool_ops
In kernel 3.3 struct ethtool_ops received 3 new function pointers
get_rxfh_indir_size, get_rxfh_indir, set_rxfh_indir.
Address this by putting ifdef around the code.
commit
7850f63f1620512631445b901ae11cd149e7375c
Author: Ben Hutchings <bhutchings@solarflare.com>
Date: Thu Dec 15 13:55:01 2011 +0000
ethtool: Centralise validation of ETHTOOL_{G, S}RXFHINDIR parameters
git describe --contains
7850f63f1620512631445b901ae11cd149e7375c
v3.3-rc1~182^2~192
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:19 +0000 (13:21 +0200)]
backports: handle new get_module_info and get_module_eeprom pointers in struct ethtool_ops
In kernel 3.5 struct ethtool_ops received 2 new function pointers
get_module_info and get_module_eeprom. Address this by putting ifdef around
the code.
commit
41c3cb6d20f0252308e9796fa4f3dacb4960de91
Author: Stuart Hodgson <smhodgson@solarflare.com>
Date: Thu Apr 19 09:44:42 2012 +0100
ethtool: Extend the ethtool API to obtain plugin module eeprom data
git describe --contains
41c3cb6d20f0252308e9796fa4f3dacb4960de91
v3.5-rc1~109^2~124^2~2
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:18 +0000 (13:21 +0200)]
backports: handle new get_ts_info pointer in struct ethtool_ops
In kernel 3.5 struct ethtool_ops received a new function pointer
get_ts_info. Address this by putting ifdef around the code.
commit
c8f3a8c31069137fe0100e6920558f1a7487ef3c
Author: Richard Cochran <richardcochran@gmail.com>
Date: Tue Apr 3 22:59:17 2012 +0000
ethtool: Introduce a method for getting time stamping capabilities.
git describe --contains
c8f3a8c31069137fe0100e6920558f1a7487ef3c
v3.5-rc1~109^2~632
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:17 +0000 (13:21 +0200)]
backports: handle new get_eee and set_eee pointers in struct ethtool_ops
In kernel 3.6 struct ethtool_ops received 2 new function pointers get_eee
and set_eee. Address this by putting ifdef around the code.
commit
80f12eccce775dc6bb93dba9b52529740f929237
Author: Yuval Mintz <yuvalmin@broadcom.com>
Date: Wed Jun 6 17:13:06 2012 +0000
Added kernel support in EEE Ethtool commands
git describe --contains
80f12eccce775dc6bb93dba9b52529740f929237
v3.6-rc1~125^2~587
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:16 +0000 (13:21 +0200)]
backports: handle no_fcs change in struct sk_buff
In kernel 3.4 a new field no_fcs was introduced to struct sk_buff.
Address this by putting ifdef around the code.
commit
3bdc0eba0b8b47797f4a76e377dd8360f317450f
Author: Ben Greear <greearb@candelatech.com>
Date: Sat Feb 11 15:39:30 2012 +0000
net: Add framework to allow sending packets with customized CRC.
git describe --contains
3bdc0eba0b8b47797f4a76e377dd8360f317450f
v3.4-rc1~177^2~207
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:15 +0000 (13:21 +0200)]
backports: handle new ndo_set_vf_spoofchk pointer in struct net_device_ops
In kernel 3.2 struct net_device_ops got a new function pointer
ndo_set_vf_spoofchk. Address this by putting ifdef around the code.
commit
5f8444a3fa617076f8da51a3e8ecce01a5d7f738
Author: Greg Rose <gregory.v.rose@intel.com>
Date: Sat Oct 8 03:05:24 2011 +0000
if_link: Add additional parameter to IFLA_VF_INFO for spoof checking
git describe --contains
5f8444a3fa617076f8da51a3e8ecce01a5d7f738
v3.2-rc1~129^2~87
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:14 +0000 (13:21 +0200)]
backports: handle changes to vlan_rx_add/kill pointers in struct net_device_ops
In kernel 3.3 and 3.10 struct net_device_ops function pointers
ndo_vlan_rx_add_vid and ndo_vlan_rx_kill_vid changed.
Address this by putting ifdef around the code.
commit
8e586137e6b63af1e881b328466ab5ffbe562510
Author: Jiri Pirko <jpirko@redhat.com>
Date: Thu Dec 8 19:52:37 2011 -0500
net: make vlan ndo_vlan_rx_[add/kill]_vid return error value
git describe --contains
8e586137e6b63af1e881b328466ab5ffbe562510
v3.3-rc1~182^2~291
commit
80d5c3689b886308247da295a228a54df49a44f6
Author: Patrick McHardy <kaber@trash.net>
Date: Fri Apr 19 02:04:28 2013 +0000
net: vlan: prepare for 802.1ad VLAN filtering offload
git describe --contains
80d5c3689b886308247da295a228a54df49a44f6
v3.10-rc1~66^2~97^2~4
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:13 +0000 (13:21 +0200)]
backports: handle new sriov_configure pointer in struct pci_driver
In kernel 3.8 struct pci_driver got a new function pointer sriov_configure.
Address this by putting ifdef around the code.
commit
1789382a72a537447d65ea4131d8bcc1ad85ce7b
Author: Donald Dutile <ddutile@redhat.com>
Date: Mon Nov 5 15:20:36 2012 -0500
PCI: SRIOV control and status via sysfs
git describe --contains
1789382a72a537447d65ea4131d8bcc1ad85ce7b
v3.8-rc1~128^2~6^2~4
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Stefan Assmann [Fri, 16 May 2014 11:21:12 +0000 (13:21 +0200)]
backports: remove old igb patches
Reworking the igb patches and thus removing the old ones.
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Johannes Berg [Thu, 15 May 2014 09:22:06 +0000 (11:22 +0200)]
backport: CCM: set correct dependencies
If these aren't actually compiled in, then the mac80211
code will fail at runtime. Add these dependencies so we
at least get a warning at compile time about this.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Johannes Berg [Mon, 5 May 2014 12:46:11 +0000 (14:46 +0200)]
backports: provide net_ieee802154_lowpan only when needed
If 802.15.4 isn't configured, there's no need to provide the
network namespace support for it, so don't.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
[use IS_ENABLED to hanle CPTCFG_IEEE802154_6LOWPAN=m]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Johannes Berg [Mon, 5 May 2014 14:58:38 +0000 (16:58 +0200)]
gentree: remove stray print
My previous commit to restrict the defconfig files left
a debugging print statement, remove it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Richard Röjfors [Sat, 3 May 2014 14:09:37 +0000 (16:09 +0200)]
backports: backport-3.15: Include fix
In this version the correct linux string.h is included.
Include string.h to avoid compile issues if warnings are treated as errors:
backports-3.14-1/compat/backport-3.15.c: In function 'backport_devm_kstrdup':
backports-3.14-1/compat/backport-3.15.c:33:2: error: implicit declaration of function 'strlen' [-Werror=implicit-function-declaration]
size = strlen(s) + 1;
^
backports-3.14-1/compat/backport-3.15.c:33:9: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]
size = strlen(s) + 1;
^
backports-3.14-1/compat/backport-3.15.c:36:3: error: implicit declaration of function 'memcpy' [-Werror=implicit-function-declaration]
memcpy(buf, s, size);
^
backports-3.14-1/compat/backport-3.15.c:36:3: warning: incompatible implicit declaration of built-in function 'memcpy' [enabled by default]
Signed-off-by: Richard Röjfors <richard@puffinpack.se>
[refreshed patch on current master]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Johannes Berg [Wed, 30 Apr 2014 22:10:25 +0000 (00:10 +0200)]
backports: select_queue patch: fix callback kernel version
The callback argument has been passed since kernel 3.14, not
only 3.15 - fix that.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Arend van Spriel [Fri, 2 May 2014 01:03:37 +0000 (18:03 -0700)]
backports: lib: remove raising ExecutionError exception
In spatch a ExecutionError was raised, but that causes the thread
to finish without closing the outfile and more importantly without
putting (ret, fn) tuple on the return queue. This results in the
threaded_spatch routine to get stuck on the ret_q.get() call. This
patch removes raising the ExecutionError and just return the tuple.
The non-zero return code will result in ExecutionErrorThread exception
anyway.
Signed-off-by: Arend van Spriel <arend@broadcom.com>
[mcgrof]: rebased to fit into pycocci
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Luis R. Rodriguez [Thu, 1 May 2014 20:48:23 +0000 (13:48 -0700)]
backports: fix igb patch for next-
20140501
Manual fixes were needed for:
patches/the-way-not-to-do-backports/0001-ethernet-igb/0001-igb_net_device_ops.patch
We currently hit a compile error as of next-
20140501 because of the
introduction of smp_mb__after_atomic(). This is not yet addressed.
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Luis R. Rodriguez [Thu, 1 May 2014 20:45:19 +0000 (13:45 -0700)]
backports: devel/backports-update-manager: fix for older shutil.move
Older shutil.move does not seem to like it when there are
symlinks on a target, to account for this and to make things
clearer just split up the work on the lib/modules and usr/src
directory.
This fixes running devel/backports-update-manager on OpenSUSE 13.1
base install.
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Luis R. Rodriguez [Thu, 1 May 2014 16:25:38 +0000 (09:25 -0700)]
backports: remove two upstream patches
Two changes to help with backports were merged upstream so nuke 'em.
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Luis R. Rodriguez [Thu, 1 May 2014 16:04:58 +0000 (09:04 -0700)]
backports: add ckmake binary requirements
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Luis R. Rodriguez [Thu, 1 May 2014 16:02:06 +0000 (09:02 -0700)]
backports: run autopep8 on ckmake
This converts rel-html.py to conform to the PEP 8 style
guide using autopep8. If using vi, consider adding this to
your .vimrc:
filetype indent plugin on
au FileType python setlocal tabstop=8 expandtab shiftwidth=4 softtabstop=4
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Luis R. Rodriguez [Thu, 1 May 2014 15:30:34 +0000 (08:30 -0700)]
backports: add gentree.py binary requirements
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Luis R. Rodriguez [Thu, 1 May 2014 15:11:03 +0000 (08:11 -0700)]
backports: add backports-update-manager binary requirements
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Luis R. Rodriguez [Thu, 1 May 2014 14:58:04 +0000 (07:58 -0700)]
backports: add a Python binary package dependency library
This lets us use this in our python scripts for
program dependencies that they might have, instead
of getting nasty stack traces you get output that's
a very useful and clear. This is also important as
we move along with Coccinelle and require newer
versions with new bells and whisteles added upstream
to Coccinelle.
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Avery Pennarun [Wed, 30 Apr 2014 01:29:06 +0000 (21:29 -0400)]
Makefile: add savedefconfig target.
This writes a file called 'defconfig' which contains only the deltas from
the default configuration. It's suitable for use as an input defconfig file
for later builds.
Signed-off-by: Avery Pennarun <apenwarr@gmail.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Johannes Berg [Tue, 29 Apr 2014 09:31:28 +0000 (11:31 +0200)]
gentree: strip useless defconfig files
If a defconfig file has symbols that can't be satisfied
with the given copy-list file, then there's no point in
shipping it, so just copy selectively the ones needed.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Johannes Berg [Tue, 29 Apr 2014 09:31:27 +0000 (11:31 +0200)]
backports: remove IWLWIFI_P2P from iwlwifi defconfig
This symbol is obsolete, it was removed upstream, so just
remove it from the defconfig file as well.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Johannes Berg [Mon, 28 Apr 2014 13:12:15 +0000 (15:12 +0200)]
backports: remove more old ifdef/compat code
Since support for kernels < 3.0 was removed, there's now a bunch
of dead code that can be removed - do it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Johannes Berg [Mon, 28 Apr 2014 12:06:58 +0000 (14:06 +0200)]
backports: remove mac80211.h
As support for old kernels has been removed, there's no need to keep
around the mac80211.h file that redefines the ieee80211_rx() symbol;
In 2.6.32 this name was changed to belong to mac80211.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Stefan Assmann [Fri, 25 Apr 2014 07:14:30 +0000 (09:14 +0200)]
backports: ifdef code already present in RHEL7.0
Avoid conflicts with RHEL7.0 as DEVICE_ATTR_* defines,
enum pkt_hash_types, skb_set_hash(), dma_common_get_sgtable()
are already present.
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Stefan Assmann [Fri, 25 Apr 2014 07:14:29 +0000 (09:14 +0200)]
backports: add linux/of_graph.h to copy-list
Required by CONFIG_VIDEO_ADV7343 and others.
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Stefan Assmann [Fri, 25 Apr 2014 07:14:28 +0000 (09:14 +0200)]
backports: wrap dma_set_mask_and_coherent in LINUX_BACKPORT()
To avoid conflicts with any distribution kernel wrap
dma_set_mask_and_coherent with LINUX_BACKPORT().
Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Johannes Berg [Thu, 24 Apr 2014 19:19:38 +0000 (21:19 +0200)]
git-tracker: restrict shortlog to existing files
When the git-tracker updates through a merge commit or
otherwise multiple kernel commits, it appends a shortlog
of all the changes. That's fine, but is often unhelpful
since it's so large - restrict it to the files that are
actually backported to make it more readable.
While at it, rewrite the bpgit.status() helper function
to actually do something useful.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 15 Apr 2014 20:07:36 +0000 (20:07 +0000)]
backports: refresh patches for next-
20140415
This update required one collateral evolution to be addressed,
the rest was just a patch refresh.
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
--refresh /home/mcgrof/linux-next /home/mcgrof/build/next-
20140415
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m16.527s
user 10m47.068s
sys 0m37.412s
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.54 [ OK ]
4 3.3.8 [ OK ]
5 3.4.79 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.29 [ OK ]
12 3.11.10 [ OK ]
13 3.12.10 [ OK ]
14 3.13.2 [ OK ]
15 3.14-rc1 [ OK ]
real 18m42.577s
user 498m48.572s
sys 64m0.560s
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 15 Apr 2014 21:03:31 +0000 (21:03 +0000)]
backports: formalize struct sock sk_data_ready() backport with SmPL
Commit
676d2369 by David removed the skb->len arguments passed onto
the struct sock sk_data_ready() callback. This was done as its racy,
a few drivers were passing 0 to it, and it was not really used.
By removing it the raciness is addresed but to backport this we are
going to have to deal with the races as-is on older kernels. This was
merged as of v3.15:
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
676d2369
v3.15-rc1~8^2~10
Since this is not a define or static inline we can't easily replace this with
the backports module or header files, instead we use SmPL grammar to generalize
the backport for all use cases. Note that in order to backport this we won't
know what older kernel drivers were using before this change, it could have
been 0 or skb->len for the length parameter, since we have to infer something
we choose skb->len *iff* skb_queue_tail() was used right before it, otherwise
we infer to throw 0.
Adding this SmPL patch to our series only incurs an additional ~9 seconds
on run time code generation.
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
/home/mcgrof/linux-next /home/mcgrof/build/next-
20140415-clean
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m25.128s
user 12m49.380s
sys 0m44.892s
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.54 [ OK ]
4 3.3.8 [ OK ]
5 3.4.79 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.29 [ OK ]
12 3.11.10 [ OK ]
13 3.12.10 [ OK ]
14 3.13.2 [ OK ]
15 3.14-rc1 [ OK ]
real 18m42.577s
user 498m48.572s
sys 64m0.560s
commit
676d23690fb62b5d51ba5d659935e9f7d9da9f8e
Author: David S. Miller <davem@davemloft.net>
Date: Fri Apr 11 16:15:36 2014 -0400
net: Fix use after free by removing length arg from sk_data_ready callbacks.
Several spots in the kernel perform a sequence like:
skb_queue_tail(&sk->s_receive_queue, skb);
sk->sk_data_ready(sk, skb->len);
But at the moment we place the SKB onto the socket receive queue it
can be consumed and freed up. So this skb->len access is potentially
to freed up memory.
Furthermore, the skb->len can be modified by the consumer so it is
possible that the value isn't accurate.
And finally, no actual implementation of this callback actually uses
the length argument. And since nobody actually cared about it's
value, lots of call sites pass arbitrary values in such as '0' and
even '1'.
So just remove the length argument from the callback, that way there
is no confusion whatsoever and all of these use-after-free cases get
fixed as a side effect.
Based upon a patch by Eric Dumazet and his suggestion to audit this
issue tree-wide.
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: David S. Miller <davem@davemloft.net>
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 15 Apr 2014 22:48:26 +0000 (22:48 +0000)]
backports: pycocci - make the Coccinelle wrapper a standalone tool
This lets us share it for general use as a generic tool, we'll upkeep
it here for now and if Coccinelle picks it up we can drop it and just
require folks to install it.
This lets us use the same solution for standard testing / regular
development and also for backports without any discrepencies.
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 15 Apr 2014 19:52:02 +0000 (19:52 +0000)]
backports: add a 120 second timeout rule to Coccinelle
Our current overall run time is less than 120 seconds so lets
add a trigger to fail if we have a rule taking longer. Adding
this has no extra incurred overhead cost.
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
/home/mcgrof/linux-next /home/mcgrof/build/next-
20140411
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m15.463s
user 10m49.100s
sys 0m37.100s
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 15 Apr 2014 19:28:38 +0000 (19:28 +0000)]
backports: Use Coccinelle --relax-include-path
This will provide wider coverage on include paths for our Coccinelle
rule interpretation, at a very lower cost incurred, about 1 second,
for code generation. Coccinelle makes an effort to infer types but
with a wider coverage of header files it can do a better job at that.
You want to use both --recursive-includes (which we already enable) and
--relax-include-path to get the most possible type information.
You will want at least Coccinelle 1.0.0-rc20 which had an increase
of performance of over 30% when using both --recursive-includes and
--relax-include path.
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
/home/mcgrof/linux-next /home/mcgrof/build/next-
20140411
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m15.370s
user 10m47.232s
sys 0m36.980s
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 15 Apr 2014 19:01:17 +0000 (19:01 +0000)]
backports: use --use-coccigrep for Coccinelle
This uses --use-coccigrep on our Cocccinelle library and removes
the CPU adjustments depending on whether we are testing or not.
The flag --use-coccigrep will tell Coccinelle to only kick off a
worker on a file until it has determined that a rule being
evaluated applies to a file. This does however mean that all files
on its bucket list will be evaluated first, but this yields better
CPU usage without having us to ramp up on the number of threads
depending on the situation. Without this patch we were kicking off
more threads to account for the fact that a Coccinelle thread will
stop working on a file if it had little or nothing to do on a file.
Possible work improvement: see how we can do away with tmp files
for Coccinelle output and just use memory to for the ouput, or
perhaps even disregard the stdout and only care for it if
--debug-cocci is provided.
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
/home/mcgrof/linux-next /home/mcgrof/build/next-
20140411
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m14.880s
user 10m47.824s
sys 0m36.796s
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sat, 12 Apr 2014 04:59:32 +0000 (04:59 +0000)]
backports: transform group attribute backport to SmPL form
The struct attribute_group collateral evolution by Greg and Oliver
was introduced as of v3.11:
mcgrof@ergon ~/linux (git::master)$ git describe --contains
f2f37f58b
v3.11-rc2~18^2~9
mcgrof@ergon ~/linux (git::master)$ git describe --contains
3493f69f4
v3.11-rc2~18^2~2
We backport them with our own respective set of helpers. Each new data
structure that gets an attribute group needs a respective SmPL set of
rules for the transformation, specially if they were introduced in
different kernel versions, which in this case we have two which were.
By using SmPL we can automatically backport the collateral evolutions
moving forward for *any* driver that makes use of these group
attributes on both data structure we are addressing in these SmPL
patches. This is a great example of the level of atomicity that we
want to ideally strive to reach for backporting, as it lets us
automatically backport a collateral evolution through grammer for
*any* device driver we backport, and lets us be lazier.
We provided backports of introduction of the group attribute onto
two data structures:
* struct class: added via commit
d05a6f96c
* struct bus_type: added via commit
fa6fdb33b
mcgrof@ergon ~/linux (git::master)$ git describe --contains
d05a6f96c
v3.11-rc2~18^2~3
mcgrof@ergon ~/linux (git::master)$ git describe --contains
fa6fdb33b
v3.12-rc1~184^2~89
This patch generalizes the backport the introduction of the group
attribute to each data structure into separate SmPL patch files.
One change the SmPL patches pick up on was #ifdef'ing over the
init_foogroup_attrs() calls which would only have been introduced when
ATTRIBUTE_GROUPS_BACKPORT() was used, which *is* #idefd's.
The changes that added the new APIs are below, the respective commits
for each data structure change are documented on each SmPL patch.
commit
f2f37f58b1b933b06d6d84e80a31a1b500fb0db2
Author: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: Sun Jul 14 16:05:52 2013 -0700
sysfs.h: add ATTRIBUTE_GROUPS() macro
To make it easier for driver subsystems to work with attribute groups,
create the ATTRIBUTE_GROUPS macro to remove some of the repetitive
typing for the most common use for attribute groups.
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
commit
3493f69f4c4e8703961919a9a56c2d2e6a25b46f
Author: Oliver Schinagl <oliver@schinagl.nl>
Date: Sun Jul 14 16:05:59 2013 -0700
sysfs: add more helper macro's for (bin_)attribute(_groups)
With the recent changes to sysfs there's various helper macro's.
However there's no RW, RO BIN_ helper macro's. This patch adds them.
Signed-off-by: Oliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
mcgrof@drvbp1 ~/backports (git::master)$ time \
./gentree.py --clean /home/mcgrof/linux-next /home/mcgrof/build/next-
20140411
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m14.635s
user 5m17.308s
sys 0m39.216s
== ckmake-report.log ==
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.54 [ OK ]
4 3.3.8 [ OK ]
5 3.4.79 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.29 [ OK ]
12 3.11.10 [ OK ]
13 3.12.10 [ OK ]
14 3.13.2 [ OK ]
15 3.14-rc1 [ OK ]
real 28m18.533s
user 785m28.844s
sys 86m25.548s
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Oliver Schinagl <oliver@schinagl.nl>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sat, 12 Apr 2014 16:23:08 +0000 (16:23 +0000)]
backports: revert unification of cocci files
This optimization was introduced by Johannes to help with
performance before we had parallelism. With parallelism
we get better results by splitting rules up. Also some
feedback from Julia on this:
===
I don't think this is a good idea. You would have to be careful about
naming. And You may lose on some performance benefits of the prefiltering.
Suppose you have an easy semantic patch that references function A and a
hard semantic patch that references function B. The hard semantic patch
specifically contains one rule that is very complicated but that does not
use B. That very complicated rule will now be applied to the 5000 files
that use A as well as to the 3 files that use B. So you get a big
performance slowdown.
===
The performance before this change:
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
--refresh \
/home/mcgrof/linux-next /home/mcgrof/build/next-
20140409
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m30.186s
user 9m25.180s
sys 0m24.428s
After:
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
/home/mcgrof/linux-next /home/mcgrof/build/next-
20140411
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m3.071s
user 3m39.388s
sys 0m21.812s
commit
3c71184d3a2843c9a1d5a289c71bfbbc126d71fd
Author: Johannes Berg <johannes.berg@intel.com>
Date: Wed Jan 1 20:37:13 2014 +0100
gentree: combine spatches (unless using --gitdebug)
Since spatch is rather slow, but can handle multiple spatches
concatenated in a single file, just do that and run it only
once rather than for each spatch. That shaves off some of the
runtime (startup etc. and finding affected files.)
On my system, I go from
real 9m42.616s
user 8m48.352s
sys 0m22.884s
to
real 9m1.948s
user 8m40.108s
sys 0m12.088s
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sat, 12 Apr 2014 00:09:09 +0000 (00:09 +0000)]
backports: refresh patches for next-
20140409 and next-
20140411
We were required to refresh patches for next-
20140409 but for next-
20140411
no changes were required. Since no actual commit is necessary next time
this happens (which can often, hence -- automatic backports --) I'll
just peg the results on the PGP signed tag for the release. I'll peg
this commit with both next tags because of this. Just run git describe
to find out the respective linux-next tag you should be using as that is
the latest validated one.
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean --refresh \
/home/mcgrof/linux-next /home/mcgrof/build/next-
20140409
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m30.186s
user 9m25.180s
sys 0m24.428s
mcgrof@drvbp1 ~/build/next-
20140409 $ time ckmake --allyesconfig
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.54 [ OK ]
4 3.3.8 [ OK ]
5 3.4.79 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.29 [ OK ]
12 3.11.10 [ OK ]
13 3.12.10 [ OK ]
14 3.13.2 [ OK ]
15 3.14-rc1 [ OK ]
real 26m54.859s
user 744m15.764s
sys 83m47.440s
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
--refresh /home/mcgrof/linux-next /home/mcgrof/build/next-
20140411
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m30.437s
user 9m22.812s
sys 0m24.484s
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.54 [ OK ]
4 3.3.8 [ OK ]
5 3.4.79 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.29 [ OK ]
12 3.11.10 [ OK ]
13 3.12.10 [ OK ]
14 3.13.2 [ OK ]
15 3.14-rc1 [ OK ]
real 28m21.215s
user 786m8.468s
sys 86m46.564s
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Fri, 11 Apr 2014 01:45:20 +0000 (01:45 +0000)]
backports: nuke support for kernels < 3.0
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
/home/mcgrof/linux-next /home/mcgrof/build/next-
20140409
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m30.186s
user 9m25.180s
sys 0m24.428s
mcgrof@drvbp1 ~/build/next-
20140409 $ time ckmake --allyesconfig
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.54 [ OK ]
4 3.3.8 [ OK ]
5 3.4.79 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.29 [ OK ]
12 3.11.10 [ OK ]
13 3.12.10 [ OK ]
14 3.13.2 [ OK ]
15 3.14-rc1 [ OK ]
real 26m54.859s
user 744m15.764s
sys 83m47.440s
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Wed, 9 Apr 2014 22:57:46 +0000 (22:57 +0000)]
backports: backport define of SIOCGHWTSTAMP
Ben added ioctl support for the unprivileged SIOCGHWTSTAMP
which is designed to just get the configuration, unlike
SIOCSHWTSTAMP which requires you to set it and only after
it returns the configuration.
Since we are carrying over a small addition to a UAPI header
without carrying it over completely (we use copy-list to
carry over full UAPI headers) its worth making a design note
about this.
We carry UAPI headers for backports to enable compilation
of kernel / driver code to compile without any changes. If
it so happens that a feature is backported it can be added
here but notice that if full subsystems are backported you
should just include the respective full header onto the
copy-list file so that its copied intact. The strategy on this
patch can be used to either backport a specific feature or
to just avoid having to do ifdef changes to compile kernel
or driver carried over by backports.
Userspace is *not expected* to copy over backports headers
to compile userspace programs, userspace programs can
and should consider carrying over a respective copy-list
of the latest UAPI kernel headers they need in their
upstream sources, the kernel the user uses, whether with
backports or not should be able to return -EOPNOTSUPP if
the feature is not available and let it through if its
supported and meats the expected form.
In this particular case if userspace tries to send the
SIOCGHWTSTAMP they'd end up with -ENOTTY.
mcgrof@ergon ~/linux (git::master)$ git describe --contains
fd468c74
v3.14-rc1~94^2~622^2~12
commit
fd468c74bd4d6949736810a80d6ca05eb20fba84
Author: Ben Hutchings <bhutchings@solarflare.com>
Date: Thu Nov 14 01:19:29 2013 +0000
net_tstamp: Add SIOCGHWTSTAMP ioctl to match SIOCSHWTSTAMP
SIOCSHWTSTAMP returns the real configuration to the application
using it, but there is currently no way for any other
application to find out the configuration non-destructively.
Add a new ioctl for this, making it unprivileged.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Wed, 9 Apr 2014 22:21:35 +0000 (22:21 +0000)]
backports: backport dev_consume_skb_any()
dev_consume_skb_any() was added by Eric via commit
e6247027e
added as of v3.14 to help do analysis on the different reasons
why an skbs are free'd in particular to let us know how many get
dropped or consumed. The new dev_consume_skb_any() spawned the
inception of an optimization for dev_kfree_skb_irq() which was
implemented through __dev_kfree_skb_irq() which dev_kfree_skb_irq()
now uses. We could have taken advantage of both if kernels had
exported raise_softirq_irqoff() but they don't and as such we
can't reimplement that on backports as it stands right now.
If we'd be building backports in-kernel we could just take the
new implementation of __dev_kfree_skb_irq() as raise_softirq_irqoff()
would be available and we could reap the benefits of the change.
That implemention can be seen as a reference - for now - here:
http://drvbp1.linux-foundation.org/~mcgrof/patches/2014/04/11/pend-2014-04-07.patch
For older kernels for now we just use the singular old version of
dev_kfree_skb_irq() and dev_kfree_skb_any().
mcgrof@ergon ~/linux (git::master)$ git describe --contains
e6247027e
v3.14-rc1~94^2~585
commit
e6247027e5173c00efb2084d688d06ff835bc3b0
Author: Eric Dumazet <edumazet@google.com>
Date: Thu Dec 5 04:45:08 2013 -0800
net: introduce dev_consume_skb_any()
Some network drivers use dev_kfree_skb_any() and dev_kfree_skb_irq()
helpers to free skbs, both for dropped packets and TX completed ones.
We need to separate the two causes to get better diagnostics
given by dropwatch or "perf record -e skb:kfree_skb"
This patch provides two new helpers, dev_consume_skb_any() and
dev_consume_skb_irq() to be used for consumed skbs.
__dev_kfree_skb_irq() is slightly optimized to remove one
atomic_dec_and_test() in fast path, and use this_cpu_{r|w} accessors.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Wed, 9 Apr 2014 20:39:24 +0000 (20:39 +0000)]
backports: adjust flow_dissector.patch
We copy over the net/core/flow_dissector.c code from
the kernel through the backports Kconfig magic for
our backport of NET_SCH_FQ_CODE:
config BACKPORT_USERSEL_NET_SCH_FQ_CODEL
tristate "Fair Queue Controlled Delay AQM (FQ_CODEL)"
depends on m
depends on !BACKPORT_KERNEL_2_6_25
default m if NET_SCH_FQ_CODEL=n
default m if BACKPORT_USERSEL_BUILD_ALL
#module-name sch_fq_codel
#c-file net/sched/sch_fq_codel.c
#c-file net/core/flow_dissector.c
This pulls net/core/flow_dissector.c into the backports
module as compat/net-core-flow_dissector.c. We don't need
all the code there. Patches under patches/backport-adjustments/
can be used to adjust that type of code. Some changes have
been made to code we delete which means we need to manually
adjust the patch we carry. This is a hint as one area we could
look to enhance better to do more automatic backport work.
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Wed, 9 Apr 2014 20:25:05 +0000 (20:25 +0000)]
backports: drop display output class support
Jean nuked display output class support so we won't
be needing the respective headers for compilation on
backports now. This is as seen on next-
20140409.
commit
f167a64e9d67ebd03d304e369c12011cf2bffaf5
Author: Jean Delvare <jdelvare@suse.de>
Date: Mon Mar 17 15:49:10 2014 +0100
video / output: Drop display output class support
It was only ever used by the ACPI video driver, and that only use case
vanished over 3 years ago (see commit
677bd810, "ACPI video: remove
output switching control".) So this is dead code and I guess we can
remove it now.
Signed-off-by: Jean Delvare <jdelvare@suse.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Arik Nemtsov [Wed, 9 Apr 2014 12:04:13 +0000 (15:04 +0300)]
backports: device: don't redefine DEVICE_ATTR_RO
Some old custom kernels have it defined.
Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Johannes Berg [Wed, 9 Apr 2014 12:03:27 +0000 (15:03 +0300)]
backports: add napi_gro_flush()
napi_gro_flush() got a second argument in kernel 3.7, but it
can be ignored for prior kernel versions.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Johannes Berg [Wed, 9 Apr 2014 11:56:12 +0000 (13:56 +0200)]
backports: add hwsim defconfig
This can be useful for pure testing scenarios.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sat, 5 Apr 2014 22:56:09 +0000 (22:56 +0000)]
backports: refresh patches for next-
20140320
The wil6210 driver gets NETIF_F_GRO but not that we haven't
been backporting this feature, which was added as of v2.6.29
via commit
d565b0a1a. The driver is only enabled on the
dependencies file down to 2.6.31 though so we simply reuse the
check against kernels >= 2.6.39 to use the netdev->hw_features.
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
d565b0a1a
v2.6.29-rc1~581^2~181
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean
--refresh /home/mcgrof/linux-next /home/mcgrof/build/next-
20140320
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m59.391s
user 19m26.468s
sys 0m45.128s
mcgrof@drvbp1 ~/build/next-
20140320 $ time ckmake --allyesconfig
1 2.6.25 [ OK ]
2 2.6.26 [ OK ]
3 2.6.27 [ OK ]
4 2.6.28 [ OK ]
5 2.6.29 [ OK ]
6 2.6.30 [ OK ]
7 2.6.31 [ OK ]
8 2.6.32 [ OK ]
9 2.6.33 [ OK ]
10 2.6.34 [ OK ]
11 2.6.35 [ OK ]
12 2.6.36 [ OK ]
13 2.6.37 [ OK ]
14 2.6.38 [ OK ]
15 2.6.39 [ OK ]
16 3.0.101 [ OK ]
17 3.1.10 [ OK ]
18 3.2.54 [ OK ]
19 3.3.8 [ OK ]
20 3.4.79 [ OK ]
21 3.5.7 [ OK ]
22 3.6.11 [ OK ]
23 3.7.10 [ OK ]
24 3.8.13 [ OK ]
25 3.9.11 [ OK ]
26 3.10.29 [ OK ]
27 3.11.10 [ OK ]
28 3.12.10 [ OK ]
29 3.13.2 [ OK ]
30 3.14-rc1 [ OK ]
real 36m11.856s
user 994m29.360s
sys 124m49.936s
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 8 Apr 2014 15:36:13 +0000 (15:36 +0000)]
backports: backport 3.6 fix on non CONFIG_COMMON_CLK kernels
Commit
93abe8e4 by Viresh added non CONFIG_COMMON_CLK static inlines
that should have gone in for 3.5 as 3.5 assumed some declared routines
would be exproted by the architecture, which was not true. We backport
only the non CONFIG_COMMON_CLK case as CONFIG_COMMON_CLK requires
core kernel architecture specific backport support which we currently do
not support (and perhaps shouldn't). Since 3.5 is not a supported kernel
there is no need to fix this there upstream but this then does require
a paper wrap work around for those kernels of providing an export symbol
for clk_enable() and clk_disable() for the !CONFIG_COMMON_CLK case which
older kernels failed to address.
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
93abe8e4
v3.6-rc1~41^2~117
Cc: Viresh Kumar <viresh.kumar@st.com>
Cc: Wolfram Sang <w.sang@pengutronix.de>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 8 Apr 2014 02:49:37 +0000 (02:49 +0000)]
backports: add kernel base requirement of 3.5 to IR_IMG
IR_IMG is a new driver added by James via
160a8f8a and letter
integrated into the build via commit
54b29120 as of linux-next
tag next-
20140320 which may make it to Linux through v3.15. This
new driver makes use of devm_clk_get() but this was added via
a8a97db9 and that get merged as of v3.5. It seems we can easily
backport
a8a97db9 but these days I'm starting to leave this up to the
folks interested in the drivers to choose / participate and only
they would know if this is worth it. Is 3.5 a good starting point
kernel to require for drivers which depend on the new clock APIs?
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
a8a97db9
v3.5-rc1~183^2~2
Cc: James Hogan <james.hogan@imgtec.com>
Cc: Mauro Carvalho Chehab <m.chehab@samsung.com>
Cc: Mark Brown <broonie@linaro.org>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 8 Apr 2014 02:39:14 +0000 (02:39 +0000)]
backports: make IEEE802154_AT86RF230 depend require 3.3.
IEEE802154_AT86RF230 has gotten some gpio changes lately
and since we are not backporting all those gpio changes in
practice this driver only compiles down to 3.3 so add that
requirement.
Cc: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 8 Apr 2014 02:34:48 +0000 (02:34 +0000)]
backports: bump NFC_TRF7970A requirements to 3.5
NFC_TRF7970A requires devm_gpio_request_one() but since
gpio infrastructure has been strongly shuffled around
we require drivers to use the in-kernel gpio
infrastructure so just bump NFC_TRF7970A to 3.5.
CC: Erick Macias <emacias@ti.com>
CC: Felipe Balbi <balbi@ti.com>
Cc: Mark A. Greer <mgreer@animalcreek.com>
Cc: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 8 Apr 2014 02:24:55 +0000 (02:24 +0000)]
backports: disable DVB_RTL2832 and DVB_USB_RTL28XXU
Commit
bcf43393 as of linux-next next-
20140320 added this Makefile
header extension:
ccflags-y += -I$(srctree)/drivers/staging/media/rtl2832u_sdr
This ends up calling a staging exported symbol rtl2832_sdr_attach().
Let's not pollute driver code with staging code or dependencies.
Folks, can this be cleaned up? This sets a precedent for doing more
of this, and this can get hairy. Its also not fair for folks who
don't want to carry over any staging code. This forces them to, and
its not just a header file, its a full exported symbol. What about
synchronization with differen trees? Was this addressed with Greg?
commit
bcf43393579e3d4069e75a9200a87703185bcf11
Author: Antti Palosaari <crope@iki.fi>
Date: Tue Sep 10 00:13:57 2013 -0300
[media] rtl28xxu: attach SDR extension module
With that extension module it supports SDR.
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Cc: Antti Palosaari <crope@iki.fi>
Cc: Mauro Carvalho Chehab <m.chehab@samsung.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 8 Apr 2014 02:14:07 +0000 (02:14 +0000)]
backports: bump kernel requirements for drivers that use s2mps14.h
These depend on include/linux/mfd/samsung/s2mps14.h which
other mfd drivers / platform code can depend on, skip
unless we backport all the dependencies which we don't
right now.
The affected drivers are:
* REGULATOR_S2MPS11
* REGULATOR_S2MPA01
* REGULATOR_TPS65217
The mfd files which we don't backport that uses this are:
* drivers/mfd/sec-core.c
* drivers/mfd/sec-irq.c
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 8 Apr 2014 02:04:51 +0000 (02:04 +0000)]
backports: add GRO_* enums, and its new gro_result_t typedef
This backports commit
d1c76af9e added by Herbert which added the first
enums and then commit
5b252f0c2 added by Ben which gave the enums a
label and then pegged a typedef onto these. This backports these commits
in a forward compatible way upkeeping the introduction and then the
typedef. In order to make this work we use make backported code use
enums with the BACKPORT_prefix but upkeep the same values, this lets
us declare the typedef and peg it to a similar set.
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 8 Apr 2014 02:01:42 +0000 (02:01 +0000)]
backports: complete backport of translation of MMD EEE registers
Commit
b32607dd was already partially backported, this complets that
backport.
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
b32607dd
v3.7-rc1~145^2~292
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sun, 6 Apr 2014 21:57:27 +0000 (21:57 +0000)]
backports: complete backport of frag size accessors
These are just helpers so carry them over, this was added via commit
9e903e0852 through v3.2. The skb frag size was in place for a long time but
was changed from __u16 to __u32 via commit
a309bb072b through v2.6.23 and
since we backport for >= 2.6.25 just leave this as is. This was already
only partly backported, this adds the missing helpers.
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
9e903e0852
v3.2-rc1~182^2~85
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
a309bb072b
v2.6.23-rc2~35^2~11
commit
9e903e085262ffbf1fc44a17ac06058aca03524a
Author: Eric Dumazet <eric.dumazet@gmail.com>
Date: Tue Oct 18 21:00:24 2011 +0000
net: add skb frag size accessors
To ease skb->truesize sanitization, its better to be able to localize
all references to skb frags size.
Define accessors : skb_frag_size() to fetch frag size, and
skb_frag_size_{set|add|sub}() to manipulate it.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sun, 6 Apr 2014 21:14:27 +0000 (21:14 +0000)]
backports: backport skb_set_hash()
This backports skb_set_hash(). Two skb data structures are used
introduced at different points in time, so ifdef around that as well.
For older kernels this is a nop.
mcgrof@ergon ~/linux (git::master)$ git describe --contains
bdeab99191
v3.2-rc1~129^2~458
mcgrof@ergon ~/linux (git::master)$ git describe --contains
4031ae6edb
v3.4-rc1~177^2~333^2
mcgrof@ergon ~/linux (git::master)$ git describe --contains
09323cc479
v3.14-rc1~94^2~474^2~1
Cc: Tom Herbert <therbert@google.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sun, 6 Apr 2014 19:45:11 +0000 (19:45 +0000)]
backports: backport APIs for manipulating skb page fragments
This backports the APIs for manipulating skb page fragments
introduced by Ian via commit
131ea6675c on v3.2. Use the
LINUX_BACKPORT() namespace to avoid clashes with similar ports.
We skip skb_frag_dma_map() as that was already backported.
We also don't backport skb_frag_page() as that was already
backported before.
Since the skb fragment page was moved into its own struct as
part of the fragment our backport ends up using the old access
mechanisms for the framgement page. For details see
a8605c6063.
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
131ea6675c
v3.2-rc1~129^2~421
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
a8605c6063
v3.2-rc1~182^2~29
commit
131ea6675c761f655d43b808dd0fe83d15d5cdd3
Author: Ian Campbell <Ian.Campbell@citrix.com>
Date: Fri Aug 19 06:25:00 2011 +0000
net: add APIs for manipulating skb page fragments.
The primary aim is to add skb_frag_(ref|unref) in order to remove the use of
bare get/put_page on SKB pages fragments and to isolate users from subsequent
changes to the skb_frag_t data structure.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Cc: "Michał Mirosław" <mirq-linux@rere.qmqm.pl>
Cc: netdev@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sat, 5 Apr 2014 23:21:15 +0000 (23:21 +0000)]
backports: backport u64_stats_fetch_begin_irq() and u64_stats_fetch_retry_irq()
The bh version u64_stats_fetch_begin_bh() and u64_stats_fetch_retry_bh()
got dropped in favor for an IRQ safe variant. We can now remove
u64_stats_fetch_begin_bh() and u64_stats_fetch_retry_bh() as we work
carrying over what is upstream and no drivers upstream use this anymore.
Cc: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sat, 5 Apr 2014 06:49:16 +0000 (06:49 +0000)]
backports: enhance 0001-netdev_ops.cocci with data structure specifics
The 0001-netdev_ops.cocci is fine but is uses Expression which
makes the interpretation loose. We can reduce the namespace of
the change by using struct. We have to keep expression on the
right hand side as that can even be macros.
For a full example test coverage of this change see the test netdev-ops
github tree and run:
make test1
git checkout -f
make test2
The benefits should be clear, we are *not* modifying data structures
that have similar names. This increases accuracy and security of our
changes. The added run time penalty however is 50 seconds since we had
to use --recursive-includes. The time penatly is worth it for the
accuracy provided and since we'll likley need this flag elsewhere for
other rules.
mcgrof@drvbp1 ~/backports (git::master)$ time \
./gentree.py --clean --refresh \
/home/mcgrof/linux-next \
/home/mcgrof/build/next-
20140311
Copy original source files ...
Apply patches ...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m56.339s
user 19m31.428s
sys 0m50.100s
1 2.6.25 [ OK ]
2 2.6.26 [ OK ]
3 2.6.27 [ OK ]
4 2.6.28 [ OK ]
5 2.6.29 [ OK ]
6 2.6.30 [ OK ]
7 2.6.31 [ OK ]
8 2.6.32 [ OK ]
9 2.6.33 [ OK ]
10 2.6.34 [ OK ]
11 2.6.35 [ OK ]
12 2.6.36 [ OK ]
13 2.6.37 [ OK ]
14 2.6.38 [ OK ]
15 2.6.39 [ OK ]
16 3.0.101 [ OK ]
17 3.1.10 [ OK ]
18 3.2.54 [ OK ]
19 3.3.8 [ OK ]
20 3.4.79 [ OK ]
21 3.5.7 [ OK ]
22 3.6.11 [ OK ]
23 3.7.10 [ OK ]
24 3.8.13 [ OK ]
25 3.9.11 [ OK ]
26 3.10.29 [ OK ]
27 3.11.10 [ OK ]
28 3.12.10 [ OK ]
29 3.13.2 [ OK ]
30 3.14-rc1 [ OK ]
[0] https://github.com/mcgrof/netdev-ops
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sat, 21 Dec 2013 19:40:20 +0000 (11:40 -0800)]
backports: convert threaded IRQ suport into an SmPL patch
We leave two patches under the 09-threaded-irq series, but there
are six things worth mentioning on this commit that are important.
I'll clarify that this SmPL port is simply done as a proof of
concept on testing the complexity of a backport for with Coccinelle,
this backport is only relevant for kernels older than 2.6.31 which
at this point is ancient and we should probably stop caring for soon.
1) patches/collateral-evolutions/network/0015-threaded-irq.cocci
We rename the collateral evolution backport from the 09-threaded-irq as
this backport is now formalized and properly atomically split up. We
use 4 digit prefixes for formalized and atomically split up collateral
evolutions. The rest of the patch series that do not have 4 digits
imply that those series could use some love to be formally split up
atomically.
2) 0015-threaded-irq/
We keep a directory for backported collateral evolutions for either
legacy backports without SmPL Coccinelle patches *or* for series that
are addressed with SmPL but that had some shortcomings with Coccinelle
that we are looking to address. Legacy backports also had an INFO file
in its directory, we keep it around for now for this series as we have
one legacy patch lingering around still but since Coccinelle lets us
put comments on top and the series is for all drivers we can just rely
on the comment section of an SmPL patch for this as patches get
translated.
3) Rename of 09-threaded-irq/drivers_net_wireless_ti_wlcore_main_extra.patch
to
0016-threaded-irq-one-shot.patch
This patch is kept as it deals with driver specific IRQ changes
which are completely unrelated to the 09-threaded-irq series but that
we had tucked under in the older legacy backport. Because of this
we make emphasis by moving out out under the series. This can be
generalized as another backport series if other drivers wish to
backport.
This new seires backports commit
b25c340c1 added by Thomas through kernel
v2.6.32 which added support for IRQF_ONESHOT. This lets drivers that use
threaded IRQ support to request that the IRQ is not masked after the
hard interrupt handler as this requires device access in hard IRQ
context and for buses such as i2c and spi this at times is not
possible.
Note that the TI driver uses this when a platform quirk with
WL12XX_PLATFORM_QUIRK_EDGE_IRQ is detected. In retrospect this quirk
does not seem backportable unless IRQF_ONESHOT is really not a requirement,
but desired. If WL12XX_PLATFORM_QUIRK_EDGE_IRQ is indeed a requirement
for IRQF_ONESHOT then we should not probe complete. Its unclear
if this is a universal thing or not.
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
b25c340c1
v2.6.32-rc1~722^2~3
4) 0015-threaded-irq/drivers_net_wireless_iwlwifi_iwl-trans.patch
A data structure change to struct iwl_trans is not being done
by Coccinelle given that the driver's Makefile for iwlwifi uses
this for its includes:
ccflags-y += -D__CHECK_ENDIAN__ -I$(src)
Coccinelle doesn't pick up on this even if we use --recursive-includes.
This issue has been reported. An interesting thing about this is that
struct iwl_trans was *not* used before this patch which is why you see
the removal of the file drivers_net_wireless_iwlwifi_pcie_internal.patch
and as a replacement have added drivers_net_wireless_iwlwifi_iwl-trans.patch.
What happened is Coccinelle is consistent and the change, as expressed
in grammar, which reveleas that we were *not* consistent with our manual
backport! The older backport still worked though as it did not really
matter what data structure got changed so long as its an internal data
structure. This also means this backport could be modified to use
a generic backport data structure, which we don't yet have but could
be a good idea to stuff in general backport data structure extensions,
which we typically have not been able to address through backports
unless we use #ifdef's. This would however require some sort of driver
specific backport_device_alloc(), backport_device_init() and a respective
backport_device_free(). The overhead would need to be considered unless
some fancy trickery is introduced. Since 09-threaded-irq is a backport
for kernels >= 2.6.31 I don't recommend we consider this now. The effort
for using SmPL for this series was done simply as a way to demonstrate
the power of Coccinelle.
5) Space fixes for extra code on Coccinelle modified branches:
This SmPL patch does some space modifications on the wil6210 [0], the reason
could be that Coccinelle is introducing some code on a branch and when it
detects this it puts the code it is adding with braces. This is another
great feature of Coccinelle but the space fixes that Julia has completed
may not be treated in that situation yet.
6) This requires at least spatch 1.0.0-rc20.
[0] hunk in question shown below:
@@ -499,11 +518,21 @@ int wil6210_init_irq(struct wil6210_priv *wil, int irq)
int rc;
if (wil->n_msi == 3)
rc = wil6210_request_3msi(wil, irq);
- else
+ else {
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,31)
rc = request_threaded_irq(irq, wil6210_hardirq,
- wil6210_thread_irq,
- wil->n_msi ? 0 : IRQF_SHARED,
- WIL_NAME, wil);
+ wil6210_thread_irq,
+ wil->n_msi ? 0 : IRQF_SHARED,
+ WIL_NAME, wil);
+#else
+ rc = compat_request_threaded_irq(&wil->irq_compat, irq,
+ wil6210_hardirq,
+ wil6210_thread_irq,
+ wil->n_msi ? 0 :
IRQF_SHARED,
+ WIL_NAME,
+ wil);
+#endif
+ }
if (rc)
return rc;
Code generation time:
real 1m6.023s
user 10m0.276s
sys 0m26.196s
$ time ckmake --allyesconfig
1 2.6.25 [ OK ]
2 2.6.26 [ OK ]
3 2.6.27 [ OK ]
4 2.6.28 [ OK ]
5 2.6.29 [ OK ]
6 2.6.30 [ OK ]
7 2.6.31 [ OK ]
8 2.6.32 [ OK ]
9 2.6.33 [ OK ]
10 2.6.34 [ OK ]
11 2.6.35 [ OK ]
12 2.6.36 [ OK ]
13 2.6.37 [ OK ]
14 2.6.38 [ OK ]
15 2.6.39 [ OK ]
16 3.0.101 [ OK ]
17 3.1.10 [ OK ]
18 3.2.54 [ OK ]
19 3.3.8 [ OK ]
20 3.4.79 [ OK ]
21 3.5.7 [ OK ]
22 3.6.11 [ OK ]
23 3.7.10 [ OK ]
24 3.8.13 [ OK ]
25 3.9.11 [ OK ]
26 3.10.29 [ OK ]
27 3.11.10 [ OK ]
28 3.12.10 [ OK ]
29 3.13.2 [ OK ]
30 3.14-rc1 [ OK ]
real 41m12.052s
user 1125m30.996s
sys 151m39.096s
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Thu, 3 Apr 2014 23:30:16 +0000 (23:30 +0000)]
backports: backports: reshufle the threaded IRQ backport series
This reshufles the patches that deal with backported threaded
IRQ support. The purpose of this reshufle is to try get them
into a consistent style. Only the b43 driver takes a major
change in that the the workqueue used for threading work
is now also destroyed upon its b43_wireless_core_stop() call.
This change was tested by pkgadd from #linux-wireless on b43 on
an older kernel. The b43 driver just fails to unload but that
issue was present before this change.
The non-general changes to the b43 driver are also moved
out to a helper patch to help separate the general
collateral evolution changes from driver specific required
changes.
Cc: Peter Senna <peter.senna@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Gilles Muller <Gilles.Muller@lip6.fr>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sat, 29 Mar 2014 22:09:57 +0000 (22:09 +0000)]
backports: refresh patches based on next-
20140311
1 2.6.25 [ OK ]
2 2.6.26 [ OK ]
3 2.6.27 [ OK ]
4 2.6.28 [ OK ]
5 2.6.29 [ OK ]
6 2.6.30 [ OK ]
7 2.6.31 [ OK ]
8 2.6.32 [ OK ]
9 2.6.33 [ OK ]
10 2.6.34 [ OK ]
11 2.6.35 [ OK ]
12 2.6.36 [ OK ]
13 2.6.37 [ OK ]
14 2.6.38 [ OK ]
15 2.6.39 [ OK ]
16 3.0.101 [ OK ]
17 3.1.10 [ OK ]
18 3.2.54 [ OK ]
19 3.3.8 [ OK ]
20 3.4.79 [ OK ]
21 3.5.7 [ OK ]
22 3.6.11 [ OK ]
23 3.7.10 [ OK ]
24 3.8.13 [ OK ]
25 3.9.11 [ OK ]
26 3.10.29 [ OK ]
27 3.11.10 [ OK ]
28 3.12.10 [ OK ]
29 3.13.2 [ OK ]
30 3.14-rc1 [ OK ]
Generation time:
real 1m32.523s
user 23m51.796s
sys 0m28.872s
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Mon, 31 Mar 2014 07:20:25 +0000 (07:20 +0000)]
backports: backport ieee802154 6lowpan support down to 3.5
Commit
633fc86ff62 added the ieee802154_6lowpan namespace
and
7240cdec60b extended it (as on linux-next next-
20140311).
Its important to note though that
633fc86ff62 also extends the
global net namespace. Since we cannot extend the global net
namespace we define our own backport namespace for 6lowpan
that can be used only be used by our backported subsystems,
nothing more. Since ieee802154_6lowpan requires support for
net_get_random_once() which uses static keys and a slew of
new skb fragment support we simply require at least 3.5 to
use 6lowpan. I did my best effort to backport this to kernels
older than 3.5 but quickly ran into a slew of hairy issues.
The last thing we needed to address was usage of the helper
inet_frag_evictor() added by Alexander via commit
6b102865e7
through v3.7. Since we can't backport that with macros or
inline helpers we add a patch to carry the changes there. If
that grows we can consider using Coccinelle.
If you are going to try to backport 6lowpan to kernels older
than 3.5 be warned that the litmus test for patches will be
to pass ckmake --allyesconfig for all supported kernels for
every patch you provide.
Cc: Alexander Aring <alex.aring@gmail.com>
Cc: Alexander Smirnov <alex.bluesman.smirnov@gmail.com>
Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: Amerigo Wang <amwang@redhat.com>
Cc: linux-zigbee-devel@lists.sourceforge.net
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Tue, 1 Apr 2014 22:30:43 +0000 (22:30 +0000)]
backports: 6lowpan domain specific backport of inet_frag_lru_move()
We can't generalize a backport of inet_frag_lru_move() as
it requires modifying an internal struct netns_frags struct.
We work around this by extending the parent struct used within
6lowpan. We have two changes, one data structure change
and then a domain specific defines. Other subsystems which
require similar work can backport usage through similar
techniques.
The respective change upstream that put the lock on
struct netns_frags is commit
3ef0eb0db4 added by
through v3.9.
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
3ef0eb0db4
v3.9-rc1~139^2~232^2
commit
3ef0eb0db4bf92c6d2510fe5c4dc51852746f206
Author: Jesper Dangaard Brouer <brouer@redhat.com>
Date: Mon Jan 28 23:45:51 2013 +0000
net: frag, move LRU list maintenance outside of rwlock
Updating the fragmentation queues LRU (Least-Recently-Used) list,
required taking the hash writer lock. However, the LRU list isn't
tied to the hash at all, so we can use a separate lock for it.
Original-idea-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: Jesper Dangaard Brouer <brouer@redhat.com>
Cc: Alexander Smirnov <alex.bluesman.smirnov@gmail.com>
Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: linux-zigbee-devel@lists.sourceforge.net
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Luis R. Rodriguez [Sun, 30 Mar 2014 00:26:26 +0000 (00:26 +0000)]
backports: backport net_get_random_once()
Commit
a48e4292 introduced as of v3.13 is used by 6lowpan which
we backport. We carry this over for older kernels that don't
define it -- but we remain sane by requiring at least 3.5 which is
where tons of the jump label / static key stuff seems to have last
settled. Backporting this to any older kernel than 3.5 has a huge
string of dependencies which although I was able to resovle the
other depdendencies on 6lowpan on new net core re-architecture on
skb fragment reassembly makes it pointless to carry. Mark my words:
!! do not try to backport this to kernels older than 3.5 !!
mcgrof@ergon ~/linux (git::master)$ git describe --contains
a48e4292
v3.13-rc1~105^2~157^2~4
commit
a48e42920ff38bc90bbf75143fff4555723d4540
Author: Hannes Frederic Sowa <hannes@stressinduktion.org>
Date: Sat Oct 19 21:48:55 2013 +0200
net: introduce new macro net_get_random_once
Cc: Hannes Frederic Sowa <hannes@stressinduktion.org>
Cc: Alexander Smirnov <alex.bluesman.smirnov@gmail.com>
Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: linux-zigbee-devel@lists.sourceforge.net
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>