Commit graph

892,914 commits

Author SHA1 Message Date
Indira Biruduraju
af6de62c2f msm: kgsl: Remove VM_MAYWRITE flag to restrict mprotect
When VM_MAYWRITE flag is used during mmap(), mprotect()
can be used later to change the protection of memstore
to allow write. Make sure this does not happen by
removing VM_MAYWRITE from the vm_flags of vma.

Change-Id: I6f69f05858ea40611d512cfa796caabeaa88cdb5
Signed-off-by: Indira Biruduraju <ibirudur@codeaurora.org>
2020-08-13 13:04:33 +05:30
Greg Kroah-Hartman
be8320cc17 ANDROID: GKI: add some padding to some driver core structures
It was requested that the following structures get some padding in order
to be able to handle future issues/bugs/fixes that might arise:

	struct dev_links_info
	struct device_link
	struct fwnode_handle

Leaf changes summary: 2989 artifacts changed (4 filtered out)
Changed leaf types summary: 71 leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 2896 Changed (4 filtered out), 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 22 Changed, 0 Added variable

Bug: 163662096
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ie26f422c590f9ddbe99f0885f36da3feec64e9a6
2020-08-13 09:08:01 +02:00
Sarthak Garg
67118b3a92 arm64: defconfig: Enable eMMC/SD card on holi
Enable eMMC/SD card driver to be build as a loadable module
in the holi GKI defconfig file.

Change-Id: Ic13088afeaa70b9c0fddbbe03f5ca1545a1d4db5
Signed-off-by: Sarthak Garg <sartgarg@codeaurora.org>
2020-08-13 10:43:30 +05:30
Sarthak Garg
1e927745f8 arm64: defconfig: Enable eMMC/SD card driver for holi QGKI defconfig
Enable eMMC/SD card driver as a inbuilt module for holi
QGKI defconfig.

Also Enable a config flag to add Qualcomm specific code to upstream
MMC drivers.

Change-Id: Ic98253109fe656ee78c95ae21290210305f5ec4b
Signed-off-by: Sarthak Garg <sartgarg@codeaurora.org>
2020-08-13 10:38:52 +05:30
Vivek Aknurwar
8ea693da82 clk: qcom: clk-debug: Fix clk measurement algorithm
Due to measurement counter does not self-clear reliably, explicitly
clearing CLR_CNT in SW instead of relying on self-clear HW sequence.
SW/HW CLR_CNT enable and disable sequence requires ~1us delay to allow
clearing the count.
Increasing sample rate to 27ms to get more accurate measurement for low
frequency clocks which allows to keep logic simpler than implementing
different logic for higher vs slows clocks with respect to sample rate.

Change-Id: I054083358305124406294511b2d03554ee586557
Signed-off-by: Vivek Aknurwar <viveka@codeaurora.org>
2020-08-12 21:40:57 -07:00
Guru Das Srinagesh
08189eda69 leds: qti-flash: Fix early return in qti_flash_led_disable()
When attempting to disable a flash node that is not configured, return
gracefully as it is not an error condition.

Change-Id: I3cf82eddc4ac078384a5278bd2832f7adceba853
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2020-08-12 16:51:52 -07:00
Mayank Rana
8beb58f702 sound: usb: Add NULL check against udev with uaudio_dev_cleanup() API
uaudio_dev_cleanup() API can be called from ADSP SSR context (from work
context) and USB headset disconnect context. When USB headset is being
removed, driver sends disconnect notification to ADSP firmware and it can
be blocked for 10 seconds (timeout) before calling uaudio_dev_cleanup().
If this thread is block (possibly due to ADSP SSR), and in parallel driver
is handling ADSP SSR notification, driver is releasing all resource
including secondary event ring. Once above thread unblocks or timeout, it
goes try to release secondary USB event ring. As uaudio_dev_cleanup() is
already being called, and release secondary USB event ring, it shall see
udev->dev as NULL. Fix this issue by adding explicit check against udev
with uaudio_dev_cleanup() API.

Change-Id: I1e2e4a61dcbea4c0570ac97677bf74b453fac82c
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2020-08-12 15:52:27 -07:00
Bhaumik Bhatt
31bcfbf6ec msm: pcie: fix race between DRV suspend/resume and RPMSG operations
There can exist a possible race between a DRV suspend/resume and
the RPMSG probe/remove operations leading to a use after free
scenario from the RC driver. To avoid this, introduce a mutex to
lock RPMSG specific areas and mainly block GLINK from freeing the
rpdev if RC driver is currently performing any DRV suspend/resume
operation using rpmsg_trysend() or rpmsg_send().

Change-Id: If46d5af3a924bee8360fae5bfc3d42bb494f620d
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
2020-08-12 15:36:34 -07:00
Bhaumik Bhatt
b7973a46f5 mhi: core: Add missing EXPORT_SYMBOL for some public APIs
There was a missing EXPORT_SYMBOL() for some public APIs. Add
those statements to ensure clean builds so KOs can use them.

Change-Id: Iaac851ddad0b729208804320f02133d0fa039615
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
2020-08-12 14:04:43 -07:00
Sangmoon Kim
b519ac4237 ANDROID: vendor_hooks: add waiting information for blocked tasks
- Add the hook to get mutex/rwsem information that the tasks
   are waiting for.

 - Add the hook to print messages for sched_show_task.

 - ANDROID_VENDOR_DATA_ARRAY added to task_struct

Bug: 162776704

Signed-off-by: Sangmoon Kim <sangmoon.kim@samsung.com>
Change-Id: Ib436fbd8d0ad509c3b5a73ea8f5170e0761a13fd
2020-08-12 19:30:03 +00:00
Channagoud Kadabi
dca86b7f36 kernel: time: Fix accuracy for low resolution timer
timer wheel calculates the index for any timer based on the expiry
value and level granularity of the timer. Due to the level granularity
timer will not fire at the exact time instead expire at a time value
expires + granularity. This is done in the timer code when the index for
each timer is calculated based on the expiry and granularity at each
level:

 expires = (expires + LVL_GRAN(lvl)) >> LVL_SHIFT(lvl);

For devfreq drivers the requirement is to fire the timer at the exact
time. If the timer does not expire at the exact time then it'll take
much longer to react and increase the device frequency. Devfreq driver
registers timer for 10ms expiry and due to slack in timer code the
expirty happens at 20 ms. For eg: Frame rendering time is 16ms.
If devfreq driver reacts after 20ms instead of 10ms, that's
way past a frame rendering time.

Timers with 10ms to 630ms expiry fall under level 0, to overcome the
granularity issue for level 0 with low expirty values do not add the
granularity by introducing a new function calc_index_min_granularity.

Change-Id: I60f6f4394de4b5f409829de9734645e1a0d7659e
Signed-off-by: Channagoud Kadabi <ckadabi@codeaurora.org>
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
[eberman@codeaurora.org: simplify to one function]
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2020-08-12 10:53:10 -07:00
hajun.sung
0d875fbc0a ANDROID: GKI: Update abi_gki_aarch64_exynos
Leaf changes summary: 39 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 35 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 4 Added variables

35 Added functions:

  [A] 'function int __devm_irq_alloc_descs(device*, int, unsigned int, unsigned int, int, module*, const irq_affinity_desc*)'
  [A] 'function void __irq_set_handler(unsigned int, irq_flow_handler_t, int, const char*)'
  [A] 'function void bitmap_to_arr32(u32*, const unsigned long int*, unsigned int)'
  [A] 'function void devm_extcon_dev_unregister(device*, extcon_dev*)'
  [A] 'function void devm_phy_put(device*, phy*)'
  [A] 'function pid* find_get_pid(int)'
  [A] 'function unsigned long int gen_pool_first_fit_align(unsigned long int*, unsigned long int, unsigned long int, unsigned int, void*, gen_pool*, unsigned long int)'
  [A] 'function long long unsigned int get_cpu_idle_time(unsigned int, long long unsigned int*, int)'
  [A] 'function thermal_instance* get_thermal_instance(thermal_zone_device*, thermal_cooling_device*, int)'
  [A] 'function int irq_domain_xlate_onetwocell(irq_domain*, device_node*, const u32*, unsigned int, unsigned long int*, unsigned int*)'
  [A] 'function int irq_set_chip(unsigned int, irq_chip*)'
  [A] 'function bool irq_work_queue(irq_work*)'
  [A] 'function int kstrtoull_from_user(const char*, unsigned long int, unsigned int, long long unsigned int*)'
  [A] 'function int of_alias_get_highest_id(const char*)'
  [A] 'function int of_get_videomode(device_node*, videomode*, int)'
  [A] 'function int param_set_uint(const char*, const kernel_param*)'
  [A] 'function int phy_configure(phy*, phy_configure_opts*)'
  [A] 'function void proc_set_size(proc_dir_entry*, long long int)'
  [A] 'function proc_dir_entry* proc_symlink(const char*, proc_dir_entry*, const char*)'
  [A] 'function void regcache_cache_bypass(regmap*, bool)'
  [A] 'function void smp_call_function_many(const cpumask*, void (void*)*, void*, bool)'
  [A] 'function int smp_call_on_cpu(unsigned int, int (void*)*, void*, bool)'
  [A] 'function int snd_vendor_set_ops(snd_usb_audio_vendor_ops*)'
  [A] 'function int trace_output_call(trace_iterator*, char*, char*, ...)'
  [A] 'function int tracepoint_probe_register(tracepoint*, void*, void*)'
  [A] 'function int usb_choose_configuration(usb_device*)'
  [A] 'function void usb_deregister_dev(usb_interface*, usb_class_driver*)'
  [A] 'function usb_interface* usb_find_interface(usb_driver*, int)'
  [A] 'function void usb_kill_anchored_urbs(usb_anchor*)'
  [A] 'function void usb_poison_anchored_urbs(usb_anchor*)'
  [A] 'function int usb_register_dev(usb_interface*, usb_class_driver*)'
  [A] 'function void usb_unanchor_urb(urb*)'
  [A] 'function int v4l2_device_set_name(v4l2_device*, const char*, atomic_t*)'
  [A] 'function bool v4l2_match_dv_timings(const v4l2_dv_timings*, const v4l2_dv_timings*, unsigned int, bool)'
  [A] 'function void v4l2_print_dv_timings(const char*, const char*, const v4l2_dv_timings*, bool)'

4 Added variables:

  [A] 'tracepoint __tracepoint_device_pm_callback_end'
  [A] 'tracepoint __tracepoint_device_pm_callback_start'
  [A] 'tracepoint __tracepoint_pelt_cfs_tp'
  [A] 'tracepoint __tracepoint_suspend_resume'

Bug: 159342895
Change-Id: I718b5cd3182b71188cc73372d2c0c9111dfb9529
Signed-off-by: hajun.sung <hajun.sung@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-08-12 16:59:22 +00:00
Manikandan Mohan
0edb6e7866 cnss_utils: Increase unsafe channel max num for 6G
2G+5G+6G, total channel num is 157 until now, increase unsafe channel max
num to avoid out of buffer.

Change-Id: I1e433c0bd88290bb5493b2c4b0bda86e17b04a01
CRs-Fixed: 2752689
Signed-off-by: Jianmin Zhu <jianminz@codeaurora.org>
Signed-off-by: Manikandan Mohan <manikand@codeaurora.org>
2020-08-12 09:58:24 -07:00
Ronak Vijay Raheja
9ffbd89c4a USB: gadget: composite: Allow bMaxPower=0 if self-powered
Currently the composite driver encodes the MaxPower field of the
configuration descriptor by reading the c->MaxPower of the
usb_configuration only if it is non-zero, otherwise it falls back to using
the value hard-coded in CONFIG_USB_GADGET_VBUS_DRAW. However, there may be
times when a configuration may need to explicitly set the bMaxPower to 0,
particularly if its bmAttributes also has the Self-Powered bit set, which
is a legal combination.

This is specifically called out in the USB PD specification section 9.1,
where a PDUSB device "shall report zero in the bMaxPower field after
negotiating a mutually agreeable Contract", and is also verified by the
USB Type-C Functional Test TD.4.10.2 Sink Power Precedence Test.

This fix allows the c->MaxPower to be used for encoding the bMaxPower even
if it is 0, if the self-powered bit is also set. A typical usage of this
would be for the configFS gadget to be dynamically updated by userspace
when the Type-C connection is determined to be operating in Power Delivery
mode.

Change-Id: I9fce2123b23ca3fe250940757002669ab92cb21f
Signed-off-by: Ronak Vijay Raheja <rraheja@codeaurora.org>
2020-08-12 09:42:51 -07:00
Chandan Uddaraju
f4bf3eae80 ANDROID: include/linux: add low power mode and fps to notifier
Introduce low power mode so that listeners are aware when display is
going into low power mode. This requires moving notifier inside sde code
to be able to retrieve the low power state.

Add mode for fps change so that clients can be
notified whenever there is a change in fps.

Include the current vrefresh in the msm_drm_notifier data provided to
registered clients.

Include the index id in the drm_panel_notifier data
provided to registered clients.

Bug: 155453628
Co-Developed-by: Adrian Salido <salidoa@google.com>
Co-Developed-by: Steve Pfetsch <spfetsch@google.com>
Co-Developed-by: Krishna Manikandan <mkrishn@codeaurora.org>
Co-Developed-by: Samantha Tran <samtran@codeaurora.org>
Co-Developed-by: Dhaval Patel <pdhaval@codeaurora.org>
[chandanu@codeaurora.org: Squashed four different gerrits
into one change]
Change-Id: I8e29ab65991b5777c3bd64182ce989e80d2462bf
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2020-08-12 15:43:27 +00:00
qctecmdr
b490abfe54 Merge "spi: spi-msm-geni: Propagate change form 4.14 to 5.4" 2020-08-12 08:32:00 -07:00
qctecmdr
96b195bfea Merge "RTC6226: send the SEEK COMPLETE event when seek cancel" 2020-08-12 08:31:59 -07:00
qctecmdr
6f029619c3 Merge "drivers: edac: Add panic notifier for kryo EDAC device" 2020-08-12 08:31:59 -07:00
qctecmdr
5c1ecb0982 Merge "msm: kgsl: Use the correct pointer for preemption records" 2020-08-12 08:31:59 -07:00
qctecmdr
7a70f58db5 Merge "RTC6226: disable the RDS during scan operation" 2020-08-12 08:31:58 -07:00
qctecmdr
ce658c97e0 Merge "soc: qcom: Add support to enable eud if enabled in xbl" 2020-08-12 08:31:58 -07:00
qctecmdr
6cd4d00ca9 Merge "firmware: qcom_scm: Set DMA coherent mask as well as the streaming mask" 2020-08-12 08:31:57 -07:00
qctecmdr
8a6bfe1047 Merge "scsi: ufs: Add workaround to bypass cfgready signal for UFS gear4" 2020-08-12 08:31:57 -07:00
qctecmdr
0ab5a5fc61 Merge "Merge android11-5.4.57 (3f413d0) into msm-5.4" 2020-08-12 08:31:57 -07:00
Jeya R
7bb35d6695 msm: ADSPRPC: Size check before allocating memory from DMA
For allocating memory from DMA we need to do a size check.
This validation is required to avoid any improper paging
request. We already have the range in which the size is
expected to be.

Change-Id: I20a843366a7f3e3e21cef89cf1ea5bec3f93ab2d
Acked-by: Ekansh Gupta <ekangupt@qti.qualcomm.com>
Signed-off-by: Jeya R <jeyr@codeaurora.org>
2020-08-12 08:25:56 -07:00
nanich.lee
7d9aa46031 BACKPORT: scsi: ufs: Fix and simplify setup_xfer_req variant operation
Add missing setup_xfer_req() call in ufshcd_issue_devman_upiu_cmd() in
ufs-bsg path. Relocate existing setup_xfer_req() calls to a common place,
i.e., ufshcd_send_command(), to simplify the driver.

Bug: 163100328
Link: https://lore.kernel.org/r/20200706060707.32608-3-stanley.chu@mediatek.com
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Change-Id: Ibe16a421e5f3f003529379b1ac96b0a9306b0fe0
(cherry picked from commit 6edfdcfe285e499994b94a0f93e1f46ab2398162)
Signed-off-by: nanich.lee <nanich.lee@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-08-12 13:24:05 +00:00
Anmolpreet Kaur
e88247afe7 qseecom : Fixes to enable shmbridge
Fixes in qseecom driver to support shmbridge and
change parameters as hypervisor expects them to
be.

Change-Id: I57dc5d6fe7b74b45da2dee6de32c1251d77275ee
Signed-off-by: Anmolpreet Kaur <anmolpre@codeaurora.org>
2020-08-12 05:55:34 -07:00
Kaushal Kumar
9f42a85e97 defconfig: msm: enable event sharing in kernel for lahaina/holi
Enable sharing of pmu counters between kernel clients for the
QGKI images of lahaina and holi.

Change-Id: I1f4ab232f78a37737f9110c7155a4443c8243ece
Signed-off-by: Kaushal Kumar <kaushalk@codeaurora.org>
2020-08-12 17:42:41 +05:30
Greg Kroah-Hartman
e1c8b315a8 ANDROID: GKI: enable USB UVC drivers
Some devices need the USB UVC drivers built in, so enable the following
config options to do so:
	CONFIG_MEDIA_USB_SUPPORT=y
	CONFIG_USB_VIDEO_CLASS=y
	CONFIG_USB_GSPCA=y

Bug: 163679730
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I2e1a80eceef8d3effe4efe452c94f1e98d1a3bdc
2020-08-12 13:40:02 +02:00
Fei Mao
ab1543314b input: touchscreen: st: increase LDO load
Its maximal load is about 20mA, so change it by measure.

Change-Id: I1184ac5db5aa067a10cb0accbfda3da7111b4fc3
Signed-off-by: Fei Mao <feim1@codeaurora.org>
2020-08-12 18:54:32 +08:00
Greg Kroah-Hartman
90fe836c58 ANDROID: GKI: enabled CONFIG_USB_CONFIGFS_NCM=y
It's needed by devices, so add it to the gki defconfig files

Bug: 163679730
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ia9c77c07e7e4c590b2f82355a9db24e9bd8ab1b2
2020-08-12 12:16:29 +02:00
qctecmdr
227e7597cb Merge "arm64: defconfig: Enable GENI and slimbus drivers" 2020-08-12 01:56:15 -07:00
qctecmdr
913ca7122f Merge "defconfig: holi: enable recommended memory configs" 2020-08-12 01:56:14 -07:00
Akash Asthana
b53e2a331c arm64: defconfig: Enable GENI and slimbus drivers
Enable GENI and slimbus drivers.

Change-Id: I01ccd2126efb31d7cf03725add8159692f05ff84
Signed-off-by: Akash Asthana <akashast@codeaurora.org>
2020-08-11 22:21:27 -07:00
Subbaraman Narayanamurthy
f5ab798784 leds: qti-flash: Handle error return path properly
Currently if qti_flash_lmh_mitigation_config() returns an error
in qti_flash_led_strobe(), spin_unlock() is not called in the
error return path. Fix it.

Fixes: 42bdecad7c ("leds: qti-flash: Fix LMH mitigation configuration")
Change-Id: I1bede93873a151cc9bab7f2000d8f058e1890fda
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2020-08-11 19:50:04 -07:00
Can Guo
a24461d3b1 scsi: ufs: Fix some racing problems in ufshcd_shutdown()
Currently I/O requests could be still submitted to UFS device while
UFS is working on shutdown flow. This may lead to racing as below
scenarios and finally system may crash due to unclocked register
accesses.

To fix this kind of issues, in ufshcd_shutdown(),

1. Use pm_runtime_get_sync() instead of resuming UFS device by
   ufshcd_runtime_resume() "internally" to let runtime PM framework
   manage and prevent concurrent runtime operations by incoming I/O
   requests.

2. Specifically quiesce the SCSI device of UFS Device well known LU
   so that ufshcd_suspend() can still send the SSU cmd, and remove
   all the other SCSI devices to block all I/O requests to those
   SCSI devices.

Example of racing scenario: While UFS device is runtime-suspended

Thread #1: Executing UFS shutdown flow, e.g.,
           ufshcd_suspend(UFS_SHUTDOWN_PM)

Thread #2: Executing runtime resume flow triggered by I/O request,
           e.g., ufshcd_resume(UFS_RUNTIME_PM)

This breaks the assumption that UFS PM flows can not be running
concurrently and some unexpected racing behavior may happen.

Change-Id: I83345e6b48a832ec7962fc016f4fdf128c9a5bd1
Signed-off-by: Can Guo <cang@codeaurora.org>
2020-08-12 10:39:52 +08:00
Naman Padhiar
4bb5a23e62 icnss2: Send SMMU IOVA range only when SMMU S1 is enabled
Send SMMU IOVA range to Firmware only when SMMU S1 stage is
enabled.

Change-Id: I3d0d0b6ad3db18aded0d921f79337cf845ceb5f4
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
2020-08-12 07:29:27 +05:30
Todd Kjos
fdfa334093 ANDROID: GKI: enable LEDS_CLASS_FLASH
Set CONFIG_LEDS_CLASS_FLASH=y to enable the
flash LED sysfs class in /sys/class/leds

Bug: 163582665
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: I19fa50c328ed0ddda7a11a0ab49f878544ac9b46
2020-08-12 00:31:57 +00:00
Walter Yang
4f36922db2 ASoC: Add backend user count check
Add backend user count check to protect the index
boundary.

Change-Id: Ic1b61d1f7130252cc54da0b16553858714988dbd
CRs-Fixed: 2009216
Signed-off-by: Walter Yang <yandongy@codeaurora.org>
2020-08-12 08:00:26 +08:00
qctecmdr
eacbc69c72 Merge "msm: adsprpc: Put upper limit on IOMMU mapping size" 2020-08-11 15:30:43 -07:00
qctecmdr
be08d2a05d Merge "leds: qti-flash: Fix error logging in qti_flash_led_symmetry_config()" 2020-08-11 15:30:43 -07:00
qctecmdr
75ffc40f70 Merge "usb: dwc3: gadget: Prevent core from processing stale TRBs" 2020-08-11 15:30:43 -07:00
qctecmdr
b55b0200a9 Merge "clk: qcom: gpucc-lahaina: Fix "stuck at on" warning" 2020-08-11 15:30:43 -07:00
qctecmdr
79f084ee9e Merge "icnss2: Do not clear SHUTDOWN_DONE flag until reinit is done" 2020-08-11 15:30:42 -07:00
qctecmdr
6b3e33ff9a Merge "usb: dwc3-msm: Add orientation setting capability via sysfs" 2020-08-11 15:30:42 -07:00
qctecmdr
3f51b8647d Merge "icnss2: Add support for Runtime PM" 2020-08-11 15:30:42 -07:00
qctecmdr
50ea7fd3ee Merge "cnss2: Add support for PCIE gen switch" 2020-08-11 15:30:41 -07:00
qctecmdr
f1c8a01984 Merge "defconfig: sdxlemur: add support for qdss" 2020-08-11 15:30:41 -07:00
qctecmdr
327618025b Merge "usb: u_ether: Add null pointer check for sk_buff in eth_start_xmit" 2020-08-11 15:30:41 -07:00
qctecmdr
139febc37f Merge "Add support for returning power sources status" 2020-08-11 15:30:40 -07:00