linux/drivers/staging
Arve Hjønnevåg da49889deb staging: binder: Support concurrent 32 bit and 64 bit processes.
For 64bit systems we want to use the same binder interface for 32bit and
64bit processes. Thus the size and the layout of the structures passed
between the kernel and the userspace has to be the same for both 32 and
64bit processes.

This change replaces all the uses of void* and size_t with
binder_uintptr_t and binder_size_t. These are then typedefed to specific
sizes depending on the use of the interface, as follows:
       * __u32 - on legacy 32bit only userspace
       * __u64 - on mixed 32/64bit userspace where all processes use the same
interface.

This change also increments the BINDER_CURRENT_PROTOCOL_VERSION to 8 and
hooks the compat_ioctl entry for the mixed 32/64bit Android userspace.

This patch also provides a CONFIG_ANDROID_BINDER_IPC_32BIT option for
compatability, which if set which enables the old protocol, setting
BINDER_CURRENT_PROTOCOL_VERSION to 7, on 32 bit systems.

Please note that all 64bit kernels will use the 64bit Binder ABI.

Cc: Colin Cross <ccross@android.com>
Cc: Arve Hjønnevåg <arve@android.com>
Cc: Serban Constantinescu <serban.constantinescu@arm.com>
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: Arve Hjønnevåg <arve@android.com>
[jstultz: Merged with upstream type changes. Various whitespace fixes
and longer Kconfig description for checkpatch. Included improved commit
message from Serban (with a few tweaks).]
Signed-off-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-02-24 16:29:40 -08:00
..
android staging: binder: Support concurrent 32 bit and 64 bit processes. 2014-02-24 16:29:40 -08:00
bcm Merge 3.14-rc4 into staging-next. 2014-02-24 12:33:52 -08:00
ced1401 staging: ced1401: Fix dev_<level> messages 2014-02-07 09:59:44 -08:00
comedi staging: comedi: pcl816: tidy up pcl818_check() 2014-02-21 12:39:38 -08:00
cptm1217
crystalhd staging: crystalhd: remove unnecessary parenthesis 2014-02-07 10:06:03 -08:00
cxt1e1 staging: cxt1e1: remove unnecessary function, VMETRO_TRACE 2014-02-07 10:44:30 -08:00
dgap staging: dgap: removes version.h dependency 2014-02-07 10:05:00 -08:00
dgnc drivers: dgnc: Include appropriate header file in dgnc_trace.c 2014-01-08 15:47:35 -08:00
dgrp Revert "Staging: dgrp: Refactor the function dgrp_receive() in drrp_net_ops.c" 2014-02-07 09:16:38 -08:00
echo
et131x staging: et131x: fix allocation failures 2014-02-18 12:15:19 -08:00
frontier staging: delete non-required instances of include <linux/init.h> 2013-12-17 10:08:14 -08:00
ft1000 staging: delete non-required instances of include <linux/init.h> 2013-12-17 10:08:14 -08:00
fwserial
gdm72xx staging: gdm72xx: fix leaks at failure path in gdm_usb_probe() 2014-02-07 09:19:30 -08:00
gdm724x staging: gdm724x: cleanup alloc_tx_sdu_struct() 2014-02-18 11:16:56 -08:00
goldfish staging: delete non-required instances of include <linux/init.h> 2013-12-17 10:08:14 -08:00
gs_fpgaboot staging: fpgaboot: fix coccinelle warnings 2014-02-14 09:26:16 -08:00
iio staging:iio:ad799x use regulator for vref 2014-02-18 08:43:33 +00:00
imx-drm Merge branch 'imx-drm-staging' of git://ftp.arm.linux.org.uk/~rmk/linux-arm into staging-next 2014-02-24 12:39:56 -08:00
keucr staging: keucr: Fix typo in keucr driver 2013-12-17 13:10:40 -08:00
line6 staging: line6: Add support for POD HD400 to line6usb driver 2013-12-21 16:03:34 -08:00
lustre staging/lustre: fix coccinelle warnings 2014-02-14 09:27:10 -08:00
media [media] go7007-loader: fix usb_dev leak 2014-02-04 06:28:00 -02:00
mt29f_spinand
netlogic Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-18 15:52:43 -08:00
nokia_h4p staging/bluetooth: Add hci_h4p driver 2014-02-07 10:13:53 -08:00
nvec ARM: SoC cleanups for 3.14 2014-01-23 18:36:55 -08:00
octeon staging: delete non-required instances of include <linux/init.h> 2013-12-17 10:08:14 -08:00
octeon-usb staging: octeon-usb: Probe via device tree populated platform device. 2014-02-07 09:11:28 -08:00
olpc_dcon staging: olpc_dcon: Trivial: Remove space before indentation. 2014-02-07 10:35:30 -08:00
ozwpan Staging: ozwpan: Change kmalloc() to kzalloc() 2014-02-07 10:59:38 -08:00
panel staging: panel: fix interruptible_sleep_on race 2014-01-09 10:41:44 -08:00
phison staging: delete non-required instances of include <linux/init.h> 2013-12-17 10:08:14 -08:00
quickstart
rtl8187se Staging: rtl8187se: ieee80211: ieee80211_softmac.c: mark symbols as static 2014-01-11 12:37:58 -08:00
rtl8188eu Merge 3.14-rc4 into staging-next. 2014-02-24 12:33:52 -08:00
rtl8192e Staging rtl8192e: Correcting wrong usage of macro in r8192E_phy.c and removing corresponding warning in rtllib_debug.h 2014-01-09 10:32:18 -08:00
rtl8192u staging: rtl8192u: remove unused files 2014-02-07 10:35:30 -08:00
rtl8712 staging: r8712u: delete unnecessary field initialization 2014-02-15 12:32:55 -08:00
rtl8821ae Merge 3.14-rc3 into staging-next 2014-02-17 14:45:02 -08:00
rts5139 Staging: rts5139: rts51x_card: fixed style issues 2014-01-13 15:24:18 -08:00
rts5208 staging: delete non-required instances of include <linux/init.h> 2013-12-17 10:08:14 -08:00
sb105x staging: delete non-required instances of include <linux/init.h> 2013-12-17 10:08:14 -08:00
sbe-2t3e3 staging: sbe-2t3e3: Fix possible reuse of freed memory in timer function 2014-02-11 12:43:44 -08:00
sep staging: sep: add missing destroy_workqueue() in sep_crypto.c 2013-12-20 11:45:09 -08:00
serqt_usb2 staging: serqt_usb2: don't use sleep_on 2014-01-09 10:41:44 -08:00
silicom drivers:staging:silicom fixed checkpatch coding style error on macros 2014-02-12 09:32:17 -08:00
slicoss staging: slicoss: Add MAINTAINERS entry, break README into TODO & README 2014-02-11 12:37:27 -08:00
sm7xxfb drivers: sm7xxfb: Mark function as static in sm7xxfb.c 2014-01-08 15:45:24 -08:00
speakup
ste_rmi4
tidspbridge staging: tidspbridge: Remove OMAP_PM_SRF 2014-02-14 09:24:27 -08:00
usbip staging: usbip: prevent possible buffer overflow reading port records 2014-02-14 09:32:40 -08:00
vme vme_user: Use __u64 and __u32 in userspace structs 2013-12-18 16:20:13 -08:00
vt6655 staging: vt6655: Fix memory leak in wpa_ioctl() 2014-01-13 15:19:41 -08:00
vt6656 staging: vt6656: clean up s_nsInterruptUsbIoCompleteRead 2014-02-18 11:01:01 -08:00
winbond Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2014-01-25 11:17:34 -08:00
wlags49_h2 wlags49_h2: Fix overflow in wireless_set_essid() 2014-02-07 11:10:08 -08:00
wlags49_h25
wlan-ng staging: wlan-ng: replace function ieee80211_dsss_chan_to_freq() 2014-02-18 11:16:56 -08:00
xgifb
xillybus staging: xillybus: Open Firmware driver supporting coherent DMA 2014-01-09 10:42:36 -08:00
Kconfig staging/bluetooth: Add hci_h4p driver 2014-02-07 10:13:53 -08:00
Makefile staging/bluetooth: Add hci_h4p driver 2014-02-07 10:13:53 -08:00
staging.c