Commit graph

592669 commits

Author SHA1 Message Date
Linux Build Service Account
1b6a7f7ebb Merge "defconfig: msm: enable fstack-protector-strong" 2017-08-08 09:02:18 -07:00
Linux Build Service Account
cb10479cfa Merge "Merge android-4.4@59ff2e1 (v4.4.78) into msm-4.4" 2017-08-08 09:02:16 -07:00
Linux Build Service Account
0257f99a4d Merge "defconfig: msm: Disable DEVPORT config for msm8998" 2017-08-08 09:02:15 -07:00
Linux Build Service Account
f43cc12df0 Merge "msm: sensor: ois: add conditional check for ioctl" 2017-08-08 09:02:14 -07:00
Linux Build Service Account
7dbbe1224f Merge "msm: ipa3: Fix IPA aggregation force close call" 2017-08-08 09:02:12 -07:00
Linux Build Service Account
7195c28d78 Merge "USB: f_ccid: Unblock ccid_ctrl_read() during disconnect" 2017-08-08 09:02:11 -07:00
Linux Build Service Account
6757ffb0b5 Merge "icnss: Delay Shutdown/reinit sequence for all cases" 2017-08-08 09:02:10 -07:00
Linux Build Service Account
6f1a42cbc9 Merge "qcom: qpnp-haptic: Disable haptics when enable time specified is zero" 2017-08-08 09:02:09 -07:00
Linux Build Service Account
a42bc74491 Merge "drm/msm: reset TMDS clock ratio bit when disabling scrambler" 2017-08-08 09:02:08 -07:00
Linux Build Service Account
6d76f20002 Merge "ARM: dts: msm: Set FDE key size to 256bit for sdm630" 2017-08-08 09:02:07 -07:00
Linux Build Service Account
c75201c442 Merge "ARM: dts: msm: Config sleep state for wlan bootstrap pin for msm8996" 2017-08-08 09:02:05 -07:00
Linux Build Service Account
e9249c8420 Merge "msm: ipa3: fix compatibility with ipa kernel tests" 2017-08-08 09:02:04 -07:00
Ghanim Fodi
4858b46db0 msm: ipa3: Fix IPA aggregation force close call
Core IPA driver passes wrong end-point index to HAL
when generating aggregation force close parameters
values. Fixed the call to pass the correct index.

CRs-Fixed: 2082839
Change-Id: Icc0fd2ce8a23bf0e3334f54b27b850ebf92b58a1
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
2017-08-07 23:00:37 -07:00
Anirudh Ghayal
7eb49b3251 qcom: qpnp-haptic: Disable haptics when enable time specified is zero
The vibrator HAL expects vibration to be disabled when the 'enable'
time specified is 0. Fix this.

CRs-Fixed: 2083994
Change-Id: I12843233da5429ed2fd53f33617952b1dd0ddcd5
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2017-08-08 06:02:48 +05:30
Abhinav Kumar
ee79d2fe34 drm/msm: reset TMDS clock ratio bit when disabling scrambler
Currently, when scrambler is disabled the TMDS clock ratio bit
is left untouched. Ideally the sink should reset this bit during
hot plug OR no-signal cases. However, the HDMI spec requires this
bit to be explicitly reset by the source.

Add support to reset this bit during scrambler disable.

Change-Id: I092f6cae84653940e2bdb9100df5e384084cf938
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
2017-08-07 15:54:50 -07:00
Linux Build Service Account
0c4cf52730 Merge "soc: qcom: scm: fix boot issue when compiled with clang" 2017-08-07 15:48:18 -07:00
Satya Durga Srinivasu Prabhala
1b81606bf7 soc: qcom: scm: fix boot issue when compiled with clang
As per SMC Calling Convention, X4/W4, X5/W5 & X6/W6 registers
return state is unpredictable. But, inline assembly in scm
driver did not correctly specify output markers, which is
causing compiler to move instructions around when clang is
used to compile, which inturn causing deadlock and boot issue
during firmware loading. Add X4/W4, X5/W5 & X6/W6 registers
to output operand list to fix the deadlock during firmware
loading.

Change-Id: I1e4d51a58cd34c31fc63bcd21a20bfd15498bdc3
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2017-08-07 11:31:12 -07:00
Anurag Chouhan
21d31ab5eb icnss: Delay Shutdown/reinit sequence for all cases
PD down notifications reaches APPS only after WLAN HW is
reset. Because of this, there is a small window of time
in which APPS may try to access WLAN HW Copy Engine
registers and get into exception. To avoid this, FW has
implemented 2 stage reset sequence in which first HW is
halted rather than reset and then when FW PD is started
again, reset sequence is executed. Because of the 2
stage reset sequence, WLAN shutdown call back also needs
to be delayed as there may be some buffers submitted to
hardware and if they are freed then again HW exception
may be seen. Delay the shutdown call back till FW ready
happens at this time HW should be reset and clean state.

CRs-fixed: 2056443
Change-Id: Ie587f98d574f7c0a49a8480449fed44c1f4ab816
Signed-off-by: Anurag Chouhan <achouhan@codeaurora.org>
2017-08-07 04:27:56 -07:00
Linux Build Service Account
58274ed8f1 Merge "msm: wlan: Update regulatory database" 2017-08-07 04:11:20 -07:00
Linux Build Service Account
d982ce36ca Merge "msm: wlan: Update regulatory database" 2017-08-07 04:11:19 -07:00
Linux Build Service Account
d304dfa6f9 Merge "ath10k: Disconnect QMI client in case of load failure" 2017-08-07 04:11:18 -07:00
Linux Build Service Account
7ac4b34c4b Merge "leds: qpnp-flash-v2: Calculate the IRES current dynamically" 2017-08-07 04:11:17 -07:00
Linux Build Service Account
515486b0bf Merge "msm: usb_bam: replace %p with %pK" 2017-08-07 04:11:15 -07:00
Linux Build Service Account
61dac4648d Merge "drm/edid: add colorimetry block parsing support" 2017-08-07 04:11:14 -07:00
Linux Build Service Account
de64b55406 Merge "drm/edid: add support for parsing quantization select field" 2017-08-07 04:11:13 -07:00
Linux Build Service Account
3f5958b23f Merge "msm: mdss: Add VIG double buffered CSC capability" 2017-08-07 04:11:12 -07:00
Linux Build Service Account
32504b6a41 Merge "msm: wlan: Update regulatory database" 2017-08-07 04:11:11 -07:00
Linux Build Service Account
865caab613 Merge "msm: kgsl: Disable VPC all flat shading optimization for A5XX" 2017-08-07 04:11:10 -07:00
Linux Build Service Account
ee6cbb5f25 Merge "msm: kgsl: Protect the event->handle with spinlock" 2017-08-07 04:11:09 -07:00
Linux Build Service Account
d64a04c285 Merge "msm: ais: Bound check for num_of_stream" 2017-08-07 04:11:08 -07:00
Mohammed Khajapasha
e2ecce0bc0 defconfig: msm: Disable DEVPORT config for msm8998
Disable CONFIG_DEVPORT config for msm8998.
As selinux policy requires this node to be not
accessible to userspace.


Change-Id: I302d71a56764504ec246ddb6a98d8c07094846e4
Signed-off-by: Mohammed Khajapasha <mkhaja@codeaurora.org>
2017-08-07 14:23:31 +05:30
Neeraj Soni
cab4692597 ARM: dts: msm: Set FDE key size to 256bit for sdm630
Set FDE encryption key size to 256bit for sdm630
target.

Change-Id: I4314c1408fb6cadcdb8d81a02a4dccb55f3f9065
Signed-off-by: Neeraj Soni <neersoni@codeaurora.org>
2017-08-07 13:29:14 +05:30
Kiran Gunda
04a9881aa7 leds: qpnp-flash-v2: Calculate the IRES current dynamically
Fix the out of bound ITARGET register programming by calculating the
LED_IRESOLUTION current dynamically based on the flash current requested
by the client.

CRs-Fixed: 2066263
Change-Id: Ifba232ab4af5493feef53e331bccdc55c6109246
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
2017-08-06 22:35:57 -07:00
Linux Build Service Account
d843c02a78 Merge "power: qpnp-fg-gen3: improve cycle counter algorithm" 2017-08-06 20:32:57 -07:00
Linux Build Service Account
977b2f7055 Merge "msm: kgsl: Fix integer overflow in _load_gpmu_firmware" 2017-08-06 07:43:00 -07:00
Amir Levy
86555dde84 msm: ipa3: fix compatibility with ipa kernel tests
Add several defines and structs to allow IPA kernel tests running.

Change-Id: I9c8f114b28aa617bdf1bfe56b44b73852a178ece
Acked-by: Dmitry Kogan <dmitryk@qti.qualcomm.com>
Signed-off-by: Amir Levy <alevy@codeaurora.org>
2017-08-06 01:10:29 -07:00
Linux Build Service Account
ca652b3d74 Merge "power: qcom-step-chg: Add temperature based step-charging" 2017-08-05 05:27:02 -07:00
Sarada Prasanna Garnayak
45bdc1b602 ARM: dts: msm: Config sleep state for wlan bootstrap pin for msm8996
Configure the sleep state for the wlan bootstrap pin for
msm8996. This configuration helps in power saving during
device sleep state.

CRs-Fixed: 1040537
Change-Id: Ia35f8bba901826b55722cb140c953f32b18610de
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-08-04 11:28:10 -07:00
Sarada Prasanna Garnayak
b094306e99 ARM: dts: msm: add fixed regulator support for wlan_en for msm8996
The QCA wlan chipset uses tlmm, msm and pmic gpio for the WLAN_EN
signal pin. The tlmm or msm gpio uses pinctrl or gpio library for
configuring the sleep/active state runtime.

The pmic gpio runtime configuration is not feasible using gpio
library or pinctrl framework. Convert the pmic gpio to fixed
regulator to runtime control(enable/disable) via regulator framework.

CRs-Fixed: 1040537
Change-Id: I4963c2753b463d5852a847a20fe280107abca337
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-08-04 11:28:03 -07:00
Sarada Prasanna Garnayak
2329e5a6ad net: cnss: add fixed regulator support for wlan enable pin
The QCA wlan chipset uses tlmm, msm and pmic gpio for the WLAN_EN
signal pin. The tlmm or msm gpio uses pinctrl or gpio library for
configuring the sleep/active state runtime.

The pmic gpio runtime configuration is not feasible using gpio
library or pinctrl framework. Convert the pmic gpio to fixed
regulator to runtime control(enable/disable) via regulator framework.

CRs-Fixed: 1040537
Change-Id: Ie74a659f309f248d335e03ca7a0a00244e9715b4
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-08-04 11:27:37 -07:00
Subbaraman Narayanamurthy
183bc63f12 power: qpnp-fg-gen3: improve cycle counter algorithm
Currently, when the charging status transitions to a state other
than charging, cycle counter algorithm stores the cycle count for
all the buckets for which the counting had started. This is fine
with respect to the algorithm.

However with qnovo enabled charging, this can cause issues when
charging status can go to not charging intermittently causing the
cycle count to be stored multiple times for a bucket. Modify the
logic to check for the charge termination or the presence of
input to go through all the buckets for storing the count. Also,
increment and store the counter only if battery SOC had increased
more than 2 LSBs for that SOC bucket.

While at it, run cycle_counter algorithm as a function instead
of a work. Also, keep the usage of cycle counter feature enable
flag inside the cycle counter APIs.

Change-Id: I62a92964ccbc6b965af09696deddc6fa8366a841
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-08-04 11:17:04 -07:00
Nicholas Troast
96168e19d4 power: qpnp-fg-gen3: make TTF monotonic by limiting slope
Currently if there is a spike in system load or a thermal event which
causes the battery current to change dramatically then the TTF can jump.

While a battery is charging the TTF should be monotonically decreasing.

Track the TTF starting with the first estimate and set hard bounds of -2
and -0.1 on the slope. The negative slope ensures the TTF is
monotonically decreasing and the hard bounds on the slope smooth out
significant changes in the TTF.

Change-Id: I68a934599ff25bc5a9eb67b372b28a723532a540
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-08-04 11:17:03 -07:00
Nicholas Troast
811a8bd2ef power: qpnp-fg-gen3: optimize TTF for QNOVO
QNOVO provides a table of expected charge current settings across the
charge cycle. Use this table to calculate the time it will take to
charge in each step. The sum of these steps is the total time it will
take to fully charge a battery.

Change-Id: I0ed48a2a63886531e761e7ce1d175a600060eaf8
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-08-04 11:17:02 -07:00
Nicholas Troast
e55198f9ef power: qpnp-fg-gen3: prepare for QNOVO TTF
Micro resolution and 64-bit division is unnecessary; use milli
resolution instead. Measuring the IBATT and VBATT periodically during
sleep is necessary for accuracy. Don't clear the IBATT and VBATT buffers
on suspend to account for the higher charge current during suspend.
Prime the IBATT and VBATT buffers with 10 samples to get a more accurate
first estimate. Introduce a ttf mode to separate the differences in the
QNOVO version of TTF.

Change-Id: Ibc591dd5d38d4bbb712d8906755040d59181f008
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-08-04 11:16:53 -07:00
Linux Build Service Account
8b13ff9487 Merge "mmc: card: Fix NULL pointer dereference in mmc_blk_ioctl_rpmb_cmd()" 2017-08-04 09:12:20 -07:00
Linux Build Service Account
0588796708 Merge "msm: mhi: initialize variables to default values" 2017-08-04 09:12:19 -07:00
Rajeev Kumar Sirasanagandla
0a155e2560 msm: wlan: Update regulatory database
Update tx power of lower 5GHz band of US country according
to master sheet.

CRs-Fixed: 2084867
Change-Id: I18c500d5d125ef73b47c6cda120541df98881537
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
2017-08-04 20:30:09 +05:30
Blagovest Kolenichev
b65ef47237 Merge android-4.4@59ff2e1 (v4.4.78) into msm-4.4
* refs/heads/tmp-59ff2e1
  Linux 4.4.78
  kvm: vmx: allow host to access guest MSR_IA32_BNDCFGS
  kvm: vmx: Check value written to IA32_BNDCFGS
  kvm: x86: Guest BNDCFGS requires guest MPX support
  kvm: vmx: Do not disable intercepts for BNDCFGS
  KVM: x86: disable MPX if host did not enable MPX XSAVE features
  tracing: Use SOFTIRQ_OFFSET for softirq dectection for more accurate results
  PM / QoS: return -EINVAL for bogus strings
  PM / wakeirq: Convert to SRCU
  sched/topology: Optimize build_group_mask()
  sched/topology: Fix overlapping sched_group_mask
  crypto: caam - fix signals handling
  crypto: sha1-ssse3 - Disable avx2
  crypto: atmel - only treat EBUSY as transient if backlog
  crypto: talitos - Extend max key length for SHA384/512-HMAC and AEAD
  mm: fix overflow check in expand_upwards()
  tpm: Issue a TPM2_Shutdown for TPM2 devices.
  Add "shutdown" to "struct class".
  tpm: Provide strong locking for device removal
  tpm: Get rid of chip->pdev
  selftests/capabilities: Fix the test_execve test
  mnt: Make propagate_umount less slow for overlapping mount propagation trees
  mnt: In propgate_umount handle visiting mounts in any order
  mnt: In umount propagation reparent in a separate pass
  vt: fix unchecked __put_user() in tioclinux ioctls
  exec: Limit arg stack to at most 75% of _STK_LIM
  s390: reduce ELF_ET_DYN_BASE
  powerpc: move ELF_ET_DYN_BASE to 4GB / 4MB
  arm64: move ELF_ET_DYN_BASE to 4GB / 4MB
  arm: move ELF_ET_DYN_BASE to 4MB
  binfmt_elf: use ELF_ET_DYN_BASE only for PIE
  checkpatch: silence perl 5.26.0 unescaped left brace warnings
  fs/dcache.c: fix spin lockup issue on nlru->lock
  mm/list_lru.c: fix list_lru_count_node() to be race free
  kernel/extable.c: mark core_kernel_text notrace
  tools/lib/lockdep: Reduce MAX_LOCK_DEPTH to avoid overflowing lock_chain/: Depth
  parisc/mm: Ensure IRQs are off in switch_mm()
  parisc: DMA API: return error instead of BUG_ON for dma ops on non dma devs
  parisc: use compat_sys_keyctl()
  parisc: Report SIGSEGV instead of SIGBUS when running out of stack
  irqchip/gic-v3: Fix out-of-bound access in gic_set_affinity
  cfg80211: Check if PMKID attribute is of expected size
  cfg80211: Validate frequencies nested in NL80211_ATTR_SCAN_FREQUENCIES
  cfg80211: Define nla_policy for NL80211_ATTR_LOCAL_MESH_POWER_MODE
  brcmfmac: fix possible buffer overflow in brcmf_cfg80211_mgmt_tx()
  rds: tcp: use sock_create_lite() to create the accept socket
  vrf: fix bug_on triggered by rx when destroying a vrf
  net: ipv6: Compare lwstate in detecting duplicate nexthops
  ipv6: dad: don't remove dynamic addresses if link is down
  net: handle NAPI_GRO_FREE_STOLEN_HEAD case also in napi_frags_finish()
  bpf: prevent leaking pointer via xadd on unpriviledged
  net: prevent sign extension in dev_get_stats()
  tcp: reset sk_rx_dst in tcp_disconnect()
  net: dp83640: Avoid NULL pointer dereference.
  ipv6: avoid unregistering inet6_dev for loopback
  net/phy: micrel: configure intterupts after autoneg workaround
  net: sched: Fix one possible panic when no destroy callback
  net_sched: fix error recovery at qdisc creation
  ANDROID: android-verity: mark dev as rw for linear target
  ANDROID: sdcardfs: Remove unnecessary lock
  ANDROID: binder: don't check prio permissions on restore.
  Add BINDER_GET_NODE_DEBUG_INFO ioctl
  UPSTREAM: cpufreq: schedutil: Trace frequency only if it has changed
  UPSTREAM: cpufreq: schedutil: Avoid reducing frequency of busy CPUs prematurely
  UPSTREAM: cpufreq: schedutil: Refactor sugov_next_freq_shared()
  UPSTREAM: cpufreq: schedutil: Fix per-CPU structure initialization in sugov_start()
  UPSTREAM: cpufreq: schedutil: Pass sg_policy to get_next_freq()
  UPSTREAM: cpufreq: schedutil: move cached_raw_freq to struct sugov_policy
  UPSTREAM: cpufreq: schedutil: Rectify comment in sugov_irq_work() function
  UPSTREAM: cpufreq: schedutil: irq-work and mutex are only used in slow path
  UPSTREAM: cpufreq: schedutil: enable fast switch earlier
  UPSTREAM: cpufreq: schedutil: Avoid indented labels
  Linux 4.4.77
  saa7134: fix warm Medion 7134 EEPROM read
  x86/mm/pat: Don't report PAT on CPUs that don't support it
  ext4: check return value of kstrtoull correctly in reserved_clusters_store
  staging: comedi: fix clean-up of comedi_class in comedi_init()
  staging: vt6556: vnt_start Fix missing call to vnt_key_init_table.
  tcp: fix tcp_mark_head_lost to check skb len before fragmenting
  md: fix super_offset endianness in super_1_rdev_size_change
  md: fix incorrect use of lexx_to_cpu in does_sb_need_changing
  perf tools: Use readdir() instead of deprecated readdir_r() again
  perf tests: Remove wrong semicolon in while loop in CQM test
  perf trace: Do not process PERF_RECORD_LOST twice
  perf dwarf: Guard !x86_64 definitions under #ifdef else clause
  perf pmu: Fix misleadingly indented assignment (whitespace)
  perf annotate browser: Fix behaviour of Shift-Tab with nothing focussed
  perf tools: Remove duplicate const qualifier
  perf script: Use readdir() instead of deprecated readdir_r()
  perf thread_map: Use readdir() instead of deprecated readdir_r()
  perf tools: Use readdir() instead of deprecated readdir_r()
  perf bench numa: Avoid possible truncation when using snprintf()
  perf tests: Avoid possible truncation with dirent->d_name + snprintf
  perf scripting perl: Fix compile error with some perl5 versions
  perf thread_map: Correctly size buffer used with dirent->dt_name
  perf intel-pt: Use __fallthrough
  perf top: Use __fallthrough
  tools strfilter: Use __fallthrough
  tools string: Use __fallthrough in perf_atoll()
  tools include: Add a __fallthrough statement
  mqueue: fix a use-after-free in sys_mq_notify()
  RDMA/uverbs: Check port number supplied by user verbs cmds
  KEYS: Fix an error code in request_master_key()
  ath10k: override CE5 config for QCA9377
  x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings
  x86/tools: Fix gcc-7 warning in relocs.c
  gfs2: Fix glock rhashtable rcu bug
  USB: serial: qcserial: new Sierra Wireless EM7305 device ID
  USB: serial: option: add two Longcheer device ids
  pinctrl: sh-pfc: Update info pointer after SoC-specific init
  pinctrl: mxs: atomically switch mux and drive strength config
  pinctrl: sunxi: Fix SPDIF function name for A83T
  pinctrl: meson: meson8b: fix the NAND DQS pins
  pinctrl: sh-pfc: r8a7791: Fix SCIF2 pinmux data
  sysctl: report EINVAL if value is larger than UINT_MAX for proc_douintvec
  sysctl: don't print negative flag for proc_douintvec
  mac80211_hwsim: Replace bogus hrtimer clockid
  usb: Fix typo in the definition of Endpoint[out]Request
  usb: usbip: set buffer pointers to NULL after free
  Add USB quirk for HVR-950q to avoid intermittent device resets
  USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick
  usb: dwc3: replace %p with %pK
  drm/virtio: don't leak bo on drm_gem_object_init failure
  tracing/kprobes: Allow to create probe with a module name starting with a digit
  mm: fix classzone_idx underflow in shrink_zones()
  bgmac: reset & enable Ethernet core before using it
  driver core: platform: fix race condition with driver_override
  fs: completely ignore unknown open flags
  fs: add a VALID_OPEN_FLAGS
  ANDROID: binder: add RT inheritance flag to node.
  ANDROID: binder: improve priority inheritance.
  ANDROID: binder: add min sched_policy to node.
  ANDROID: binder: add support for RT prio inheritance.
  ANDROID: binder: push new transactions to waiting threads.
  ANDROID: binder: remove proc waitqueue
  FROMLIST: binder: remove global binder lock
  FROMLIST: binder: fix death race conditions
  FROMLIST: binder: protect against stale pointers in print_binder_transaction
  FROMLIST: binder: protect binder_ref with outer lock
  FROMLIST: binder: use inner lock to protect thread accounting
  FROMLIST: binder: protect transaction_stack with inner lock.
  FROMLIST: binder: protect proc->threads with inner_lock
  FROMLIST: binder: protect proc->nodes with inner lock
  FROMLIST: binder: add spinlock to protect binder_node
  FROMLIST: binder: add spinlocks to protect todo lists
  FROMLIST: binder: use inner lock to sync work dq and node counts
  FROMLIST: binder: introduce locking helper functions
  FROMLIST: binder: use node->tmp_refs to ensure node safety
  FROMLIST: binder: refactor binder ref inc/dec for thread safety
  FROMLIST: binder: make sure accesses to proc/thread are safe
  FROMLIST: binder: make sure target_node has strong ref
  FROMLIST: binder: guarantee txn complete / errors delivered in-order
  FROMLIST: binder: refactor binder_pop_transaction
  FROMLIST: binder: use atomic for transaction_log index
  FROMLIST: binder: add more debug info when allocation fails.
  FROMLIST: binder: protect against two threads freeing buffer
  FROMLIST: binder: remove dead code in binder_get_ref_for_node
  FROMLIST: binder: don't modify thread->looper from other threads
  FROMLIST: binder: avoid race conditions when enqueuing txn
  FROMLIST: binder: refactor queue management in binder_thread_read
  FROMLIST: binder: add log information for binder transaction failures
  FROMLIST: binder: make binder_last_id an atomic
  FROMLIST: binder: change binder_stats to atomics
  FROMLIST: binder: add protection for non-perf cases
  FROMLIST: binder: remove binder_debug_no_lock mechanism
  FROMLIST: binder: move binder_alloc to separate file
  FROMLIST: binder: separate out binder_alloc functions
  FROMLIST: binder: remove unneeded cleanup code
  FROMLIST: binder: separate binder allocator structure from binder proc
  FROMLIST: binder: Use wake up hint for synchronous transactions.
  Revert "android: binder: move global binder state into context struct."
  sched: walt: fix window misalignment when HZ=300
  ANDROID: android-base.cfg: remove CONFIG_CGROUP_DEBUG
  ANDROID: sdcardfs: use mount_nodev and fix a issue in sdcardfs_kill_sb

Conflicts:
	drivers/android/binder.c
	drivers/net/wireless/ath/ath10k/pci.c

Change-Id: Ic6f82c2ec9929733a16a03bb3b745187e002f4f6
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
2017-08-04 07:53:32 -07:00
Blagovest Kolenichev
6ce32a69b7 android: binder: Revert duplicated changes for next binder merge
This is a preparation change for merging binder from
  android-4.4@59ff2e1 (v4.4.78).

  Code matching changes below will be re-added properly with
  upcoming change:

  0cebb40 FROMLIST: binder: Use wake up hint for synchronous transactions.

Reverted changes:
=================

  e3ba00c android: binder: Don't use sched_preempt_enable_no_resched.

  The correct function is prempt_enable_no_resched(). The other
  function is reserved for the scheduler core.

  Change-Id: Ib36697de003f6a59a608a0024d5351dc15ff8715
  Signed-off-by: Todd Kjos <tkjos@google.com>
  Git-commit: 776e5bca6446b3aac03b4685b4f4f72446ddcba0
  Git-repo: https://android.googlesource.com/kernel/msm
  [odhyade@codeaurora.org: resolve trivial merge conflicts]
  Signed-off-by: Omprakash Dhyade <odhyade@codeaurora.org>

  3956eab android: binder: Use wake up hint for synchronous transactions.

  Use wake_up_interruptible_sync() to hint to the scheduler binder
  transactions are synchronous wakeups. Disable premption while waking
  to avoid ping-ponging on the binder lock.

  Change-Id: Ic406a232d0873662f80148e37acefe5243d912a0
  Signed-off-by: Todd Kjos <tkjos@google.com>
  Git-commit: 443c026e90820170aa3db2c21d2933ae5922f900
  Git-repo: https://android.googlesource.com/kernel/msm
  Signed-off-by: Omprakash Dhyade <odhyade@codeaurora.org>

Change-Id: I51a11f4325ce22aaa9666efedec1ce51d1d7036a
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
2017-08-04 07:44:11 -07:00
Blagovest Kolenichev
220bdae208 android: binder: Revert fixes for preemption and locking issues
These were hacks and no longer needed as next binder from
  android-4.4@59ff2e1 (v4.4.78) has been reworked to use
  fine-grained locking.

  This is a preparation for clean merge of binder changes from
  android-4.4@59ff2e1 (v4.4.78), which follows right after this
  commit.

Reverted changes:
=================

  773fc2f android: binder: use copy_from_user_preempt_disabled

  To keep the driver consistent, and until we have
  fine-grained locking in place.

  Change-Id: I90fe02cdedb8a5677b900a68528fb443b9204322
  Signed-off-by: Riley Andrews <riandrews@google.com>
  Git-repo: https://source.codeaurora.org/quic/la/kernel/msm-4.4
  Git-commit: 5c9ce54ca3a66a57e4ebfe3ae71c5733b6bcc579
  Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>

  821e02f CHROMIUM: android: binder: Fix potential scheduling-while-atomica

  Commit f1e7f0a724f6 ("android: binder: Disable preemption while holding
  the global binder lock.") re-enabled preemption around most of the sites
  where calls to potentially sleeping functions were made, but missed
  __alloc_fd(), which can sleep if the fdtable needs to be resized.
  Re-enable preemption around __alloc_fd() as well as __fd_install() which
  can now sleep in upstream kernels as of commit 8a81252b77 ("fs/file.c:
  don't acquire files->file_lock in fd_install()").

  BUG=chrome-os-partner:44012
  TEST=Build and boot on Smaug.

  Change-Id: I9819c4b95876f697e75b1b84810b6c520d9c33ec
  Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
  Reviewed-on: https://chromium-review.googlesource.com/308582
  Reviewed-by: Stephen Barber <smbarber@chromium.org>
  Reviewed-by: Riley Andrews <riandrews@google.com>
  Git-repo: https://source.codeaurora.org/quic/la/kernel/msm-4.4
  Git-commit: c267ff1d548ed1bdad6a08f1c70776c5e60d569e
  Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>

  e4045d6 android: binder: Disable preemption while holding the global binder lock.

  Change-Id: I90fe02cdedb8a5677b900a68528fb443b9204322
  Signed-off-by: Riley Andrews <riandrews@google.com>
  Git-repo: https://source.codeaurora.org/quic/la/kernel/msm-4.4
  Git-commit: 5c9ce54ca3a66a57e4ebfe3ae71c5733b6bcc579
  Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>

Change-Id: Id97e04f3694d76c2b6a1e7c0dc39da15d83c2867
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
2017-08-04 07:43:15 -07:00