backports: select_queue patch: fix callback kernel version

Upstream commit: 44554cd57d0016c52aeed2ce4f27081b9d9c915f

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>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
backports: select_queue patch: fix callback kernel version

Upstream commit: d260afa8c4aecde4abdecfa299713bc473c0dba4

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>
backports: wrap dma_set_mask_and_coherent in LINUX_BACKPORT()

Upstream commit: 3443187edd32767c838e5d4f654df474e77fb7ce

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>
Signed-off-by: Christian Ratzenhofer <christian.ratzenhofer@cdnm.at>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
backports: fix mconf compilation library assumptions

Upstream commit: de427857852e7194b9ae80571425ba0d2c29ef55

On OpenSUSE factory 'make menuconfig' fails to compile with:

cc -Wall -Wmissing-prototypes -Wstrict-prototypes -O2
-fomit-frame-pointer -DCURSES_LOC="<ncurses.h>" -DLOCALE   -c -o
lxdialog/yesno.o lxdialog/yesno.c
cc -Wl,--no-as-needed -lncursesw  mconf.o zconf.tab.o
lxdialog/checklist.o lxdialog/inputbox.o lxdialog/menubox.o
lxdialog/textbox.o lxdialog/util.o lxdialog/yesno.o   -o mconf
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld:
/lib64/libncursesw.so.5: undefined reference to symbol 'acs_map'
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../lib64/libtinfo.so:
error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Although this can be fixed by linking with -ltinfo after a bit
further investigation I've traced this issue down to how we speak
to the linker and ask it to link and when. For instance if one
were to compile and link mconf by specifying the linker requirements
before the final object file things fail and if we ask for it after
things work. For instance if we ask for the libraries before:

gcc  -lncursesw -o
	kconf/mconf
	kconf/mconf.o
	kconf/zconf.tab.o
	kconf/lxdialog/checklist.o
	kconf/lxdialog/util.o
	kconf/lxdialog/inputbox.o
	kconf/lxdialog/textbox.o
	kconf/lxdialog/yesno.o
	kconf/lxdialog/menubox.o  -lncursesw

Passing the linker requirements at the end makes the gcc happy:

gcc  -o kconf/mconf
	kconf/mconf.o
	kconf/zconf.tab.o
	kconf/lxdialog/checklist.o
	kconf/lxdialog/util.o
	kconf/lxdialog/inputbox.o
	kconf/lxdialog/textbox.o
	kconf/lxdialog/yesno.o
	kconf/lxdialog/menubox.o  -lncursesw

It seems that using -Wl,--no-as-needed does not do what we wish with regards
to the above requirements, this could be a bug but the kernel treats things
a bit differently so we need to adopt, fix this by being explicit by
using -Wl,--add-needed and letting it figure things out automagically.

This has been tested on Debian and OpenSUSE factory.

Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
backports: refresh on v3.14.22

1   3.0.101             [  OK  ]
2   3.1.10              [  OK  ]
3   3.2.62              [  OK  ]
4   3.3.8               [  OK  ]
5   3.4.104             [  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.58             [  OK  ]
12  3.11.10             [  OK  ]
13  3.12.31             [  OK  ]
14  3.13.11             [  OK  ]
15  3.14.22             [  OK  ]

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>