Commit Graph

1055057 Commits

Author SHA1 Message Date
Greg Kroah-Hartman
23c54dcf77 ANDROID: GKI: bio: add Android ABI padding to some structures
Try to mitigate potential future driver core api changes by adding a
padding to struct bio_integrity_payload and struct bio_set.

Based on a change made to the RHEL/CENTOS 8 kernel.

Bug: 151154716
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I0397ede2e11560ad9422cd7765434fcd4f7a6dd8
2022-05-04 13:39:12 -07:00
Greg Kroah-Hartman
976bb0ed77 ANDROID: GKI: ufs: add Android ABI padding to some structures
Try to mitigate potential future driver core api changes by adding
padding to struct ufs_hba_crypto_variant_ops, and struct ufs_hba.

Bug: 151154716
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ib881e531d87eae1f7a5ca312bd36086d62ccaf94
2022-05-04 13:39:12 -07:00
Greg Kroah-Hartman
1dd81ffe5e Revert "Revert "opp: Expose of-node's name in debugfs""
This reverts commit ee5fed1cef.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: If0ec2bbe712e7dfd5bf43f0f266ddc255a2d28b3
2022-05-04 13:39:12 -07:00
Greg Kroah-Hartman
aded190312 Revert "Revert "gpio: Restrict usage of GPIO chip irq members before initialization""
This reverts commit 34c16f1a20.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I2654f99101dc95994cb5cc3328f288401dfe389f
2022-05-04 13:39:12 -07:00
Greg Kroah-Hartman
574f2b7533 Revert "ANDROID: GKI: fix crc issue with commit 2e76c69c85 ("block: don't merge across cgroup boundaries if blkcg is enabled")"
This reverts commit 93d8bbeafb.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I965b9e7225127b5b0e58082e05d80bcebdb1e547
2022-05-04 13:39:12 -07:00
Greg Kroah-Hartman
6bfa0e0bc8 Revert "Revert "ALSA: pcm: Fix potential AB/BA lock with buffer_mutex and mmap_lock""
This reverts commit 990e8bd6d9.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Id685a5c9bca0cd0aa8bcc0d2da6288b9220456c8
2022-05-04 13:39:12 -07:00
Greg Kroah-Hartman
f817274eea Revert "Revert "scsi: ufs: Fix runtime PM messages never-ending cycle""
This reverts commit ab02bc73ec.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I5a655c83ddbb6b70841f91e74924504ea6c320ec
2022-05-04 13:39:12 -07:00
Greg Kroah-Hartman
87106f720f Revert "Revert "scsi: core: sd: Add silence_suspend flag to suppress some PM messages""
This reverts commit 240526f655.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ic76a90ab14c2e03b2e40a1e7385f3cf5cb562ec8
2022-05-04 13:39:11 -07:00
Greg Kroah-Hartman
7c41694559 Revert "Revert "fbdev: Hot-unplug firmware fb devices on forced removal""
This reverts commit 5cc70dfa47.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I8727d672ee887e1598d1661bbcd99061dcdae4d2
2022-05-04 13:39:11 -07:00
Greg Kroah-Hartman
87471644eb Revert "Revert "PCI: Reduce warnings on possible RW1C corruption""
This reverts commit 7be3754601.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I94e86dbe2ba7f2f860854cf1f7f825a9a8215853
2022-05-04 13:39:11 -07:00
Greg Kroah-Hartman
d953392f01 Revert "Revert "drm/connector: Fix typo in documentation""
This reverts commit a717ddfe1a.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ia97655771b9a074f4d0724dc5ca543f63d139af4
2022-05-04 13:39:11 -07:00
Greg Kroah-Hartman
991ac9cee9 Revert "Revert "drm/edid: Split deep color modes between RGB and YUV444""
This reverts commit 7f7da7f236.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ife780bae48b0b10e7502aa90a701f631f9b5a32f
2022-05-04 13:39:11 -07:00
Greg Kroah-Hartman
2014a9eea4 Revert "Revert "coredump: Use the vma snapshot in fill_files_note""
This reverts commit 0c5b51622c.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I5b2c6e89737a2ac647f19719a1ccf256c2794a02
2022-05-04 13:39:10 -07:00
Greg Kroah-Hartman
8b0bc3fc2a Revert "Revert "coredump: Remove the WARN_ON in dump_vma_snapshot""
This reverts commit c31598eb0b.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ia44bf70cb550e4840e3be1be7c8b2b0bea0a330e
2022-05-04 13:39:10 -07:00
Greg Kroah-Hartman
23dd13c9f9 Revert "Revert "coredump: Snapshot the vmas in do_coredump""
This reverts commit ff1561ac7f.

It is no longer needed as we are able to update the abi at this point in
time.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I20acdca0aa5b59436e890887c03f125f027a9d45
2022-05-04 13:39:10 -07:00
Prakruthi Deepak Heragu
b3c54971ba FROMLIST: arm64: paravirt: Use RCU read locks to guard stolen_time
During hotplug, the stolen time data structure is unmapped and memset.
There is a possibility of the timer IRQ being triggered before memset
and stolen time is getting updated as part of this timer IRQ handler. This
causes the below crash in timer handler -

  [ 3457.473139][    C5] Unable to handle kernel paging request at virtual address ffffffc03df05148
  ...
  [ 3458.154398][    C5] Call trace:
  [ 3458.157648][    C5]  para_steal_clock+0x30/0x50
  [ 3458.162319][    C5]  irqtime_account_process_tick+0x30/0x194
  [ 3458.168148][    C5]  account_process_tick+0x3c/0x280
  [ 3458.173274][    C5]  update_process_times+0x5c/0xf4
  [ 3458.178311][    C5]  tick_sched_timer+0x180/0x384
  [ 3458.183164][    C5]  __run_hrtimer+0x160/0x57c
  [ 3458.187744][    C5]  hrtimer_interrupt+0x258/0x684
  [ 3458.192698][    C5]  arch_timer_handler_virt+0x5c/0xa0
  [ 3458.198002][    C5]  handle_percpu_devid_irq+0xdc/0x414
  [ 3458.203385][    C5]  handle_domain_irq+0xa8/0x168
  [ 3458.208241][    C5]  gic_handle_irq.34493+0x54/0x244
  [ 3458.213359][    C5]  call_on_irq_stack+0x40/0x70
  [ 3458.218125][    C5]  do_interrupt_handler+0x60/0x9c
  [ 3458.223156][    C5]  el1_interrupt+0x34/0x64
  [ 3458.227560][    C5]  el1h_64_irq_handler+0x1c/0x2c
  [ 3458.232503][    C5]  el1h_64_irq+0x7c/0x80
  [ 3458.236736][    C5]  free_vmap_area_noflush+0x108/0x39c
  [ 3458.242126][    C5]  remove_vm_area+0xbc/0x118
  [ 3458.246714][    C5]  vm_remove_mappings+0x48/0x2a4
  [ 3458.251656][    C5]  __vunmap+0x154/0x278
  [ 3458.255796][    C5]  stolen_time_cpu_down_prepare+0xc0/0xd8
  [ 3458.261542][    C5]  cpuhp_invoke_callback+0x248/0xc34
  [ 3458.266842][    C5]  cpuhp_thread_fun+0x1c4/0x248
  [ 3458.271696][    C5]  smpboot_thread_fn+0x1b0/0x400
  [ 3458.276638][    C5]  kthread+0x17c/0x1e0
  [ 3458.280691][    C5]  ret_from_fork+0x10/0x20

As a fix, introduce rcu lock to update stolen time structure.

Fixes: 75df529bec ("arm64: paravirt: Initialize steal time when cpu is online")
Cc: stable@vger.kernel.org
Acked-by: Will Deacon <will@kernel.org>
Reviewed-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Prakruthi Deepak Heragu <quic_pheragu@quicinc.com>
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>

Bug: 231271475
Link: https://lore.kernel.org/all/20220428183536.2866667-1-quic_eberman@quicinc.com/
Change-Id: Iac533d6a361a3ddacff315f8d9916af72b301383
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-04 17:33:03 +00:00
Wesley Cheng
22e9215f1b UPSTREAM: usb: dwc3: gadget: Replace list_for_each_entry_safe() if using giveback
The list_for_each_entry_safe() macro saves the current item (n) and
the item after (n+1), so that n can be safely removed without
corrupting the list.  However, when traversing the list and removing
items using gadget giveback, the DWC3 lock is briefly released,
allowing other routines to execute.  There is a situation where, while
items are being removed from the cancelled_list using
dwc3_gadget_ep_cleanup_cancelled_requests(), the pullup disable
routine is running in parallel (due to UDC unbind).  As the cleanup
routine removes n, and the pullup disable removes n+1, once the
cleanup retakes the DWC3 lock, it references a request who was already
removed/handled.  With list debug enabled, this leads to a panic.
Ensure all instances of the macro are replaced where gadget giveback
is used.

Example call stack:

Thread#1:
__dwc3_gadget_ep_set_halt() - CLEAR HALT
  -> dwc3_gadget_ep_cleanup_cancelled_requests()
    ->list_for_each_entry_safe()
    ->dwc3_gadget_giveback(n)
      ->dwc3_gadget_del_and_unmap_request()- n deleted[cancelled_list]
      ->spin_unlock
      ->Thread#2 executes
      ...
    ->dwc3_gadget_giveback(n+1)
      ->Already removed!

Thread#2:
dwc3_gadget_pullup()
  ->waiting for dwc3 spin_lock
  ...
  ->Thread#1 released lock
  ->dwc3_stop_active_transfers()
    ->dwc3_remove_requests()
      ->fetches n+1 item from cancelled_list (n removed by Thread#1)
      ->dwc3_gadget_giveback()
        ->dwc3_gadget_del_and_unmap_request()- n+1 deleted[cancelled_list]
        ->spin_unlock

Fixes: d4f1afe5e8 ("usb: dwc3: gadget: move requests to cancelled_list")
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
Link: https://lore.kernel.org/r/20220414183521.23451-1-quic_wcheng@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 230843866
(cherry picked from commit bf594d1d0c)

Change-Id: I357028fb51441a7effe90d115f6faa3f2034d326
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
2022-05-03 16:17:19 +00:00
Wesley Cheng
5dfe5279ff UPSTREAM: usb: dwc3: Issue core soft reset before enabling run/stop
It is recommended by the Synopsis databook to issue a DCTL.CSftReset
when reconnecting from a device-initiated disconnect routine.  This
resolves issues with enumeration during fast composition switching
cases, which result in an unknown device on the host.

Reviewed-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
Link: https://lore.kernel.org/r/20220316011358.3057-1-quic_wcheng@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 230843866
(cherry picked from commit 0066472de1)

Change-Id: Idcfbb43e844c22cdfcb1362177e9c1a8e9a7e18e
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
2022-05-03 16:17:05 +00:00
Thinh Nguyen
c975869992 UPSTREAM: usb: dwc3: gadget: Wait for ep0 xfers to complete during dequeue
If a Setup packet is received but yet to DMA out, the controller will
not process the End Transfer command of any endpoint. Polling of its
DEPCMD.CmdAct may block setting up TRB for Setup packet, causing a
command timeout.

This may occur if the driver doesn’t service the completion interrupt of
the control status stage yet due to system latency, then it won’t
prepare TRB and start the transfer for the next Setup Stage. To the host
side, the control transfer had completed, and the host can send a new
Setup packet at this point.

In the meanwhile, if the driver receives an async call to dequeue a
request (triggering End Transfer) to any endpoint, then the driver will
service that End transfer first, blocking the control status stage
completion handler. Since no TRB is available for the Setup stage, the
Setup packet can’t be DMA’ed out and the End Transfer gets hung.

The driver must not block setting up of the Setup stage. So track and
only issue the End Transfer command only when there’s Setup TRB prepared
so that the controller can DMA out the Setup packet. Delay the End
transfer command if there's no Setup TRB available. This is applicable to
all DWC_usb3x IPs.

Co-developed-by: Wesley Cheng <quic_wcheng@quicinc.com>
Signed-off-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
Link: https://lore.kernel.org/r/20220309205402.4467-1-quic_wcheng@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 230843866
(cherry picked from commit e4cf6580ac)

Change-Id: I7f643ae340a20f12d5f86965674aa58df1be3979
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
2022-05-03 16:16:53 +00:00
Maciej Żenczykowski
7758f8b41a ANDROID: gki - set CONFIG_USB_NET_AX88179_178A=y (usb gbit ethernet dongle)
Per Kconfig:
  config USB_NET_AX88179_178A
    tristate "ASIX AX88179/178A USB 3.0/2.0 to Gigabit Ethernet"
  depends on USB_USBNET
  select CRC32
  select PHYLIB
  default y
  help
    This option adds support for ASIX AX88179 based USB 3.0/2.0
    to Gigabit Ethernet adapters.
    This driver should work with at least the following devices:
      * ASIX AX88179
      * ASIX AX88178A
      * Sitcomm LN-032
    This driver creates an interface named "ethX", where X depends on
    what other networking devices you have in use.

This was already enabled on 'db845c_gki.fragment',
which suggests this hardware is reasonably common
(even though I don't have a dongle that requires it).

Test: TreeHugger
Bug: 200269356
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I9915cfb54a324f007d508a8e3d2aad1d6fc9e5de
(cherry picked from commit 3ed683cb94)
2022-05-03 11:45:48 +00:00
Yi Kong
471dfd69fb ANDROID: clang: update to 14.0.7
Bug: 219872481
Change-Id: I3a3883547751ea2d52045e9a431f3e13f4755b1a
Signed-off-by: Yi Kong <yikong@google.com>
2022-05-03 09:14:49 +00:00
Will Deacon
f5216880de FROMGIT: KVM: arm64: Handle host stage-2 faults from 32-bit EL0
When pKVM is enabled, host memory accesses are translated by an identity
mapping at stage-2, which is populated lazily in response to synchronous
exceptions from 64-bit EL1 and EL0.

Extend this handling to cover exceptions originating from 32-bit EL0 as
well. Although these are very unlikely to occur in practice, as the
kernel typically ensures that user pages are initialised before mapping
them in, drivers could still map previously untouched device pages into
userspace and expect things to work rather than panic the system.

Cc: Quentin Perret <qperret@google.com>
Cc: Marc Zyngier <maz@kernel.org>
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220427171332.13635-1-will@kernel.org
(cherry picked from commit 2a50fc5fd0
 git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git fixes)
Bug: 216811181
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: I98ad9d9f0e2a78751ed73cc5d7c481d07a3ed1db
2022-05-03 08:30:42 +00:00
Gokul krishna Krishnakumar
98ab6de28b ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Functions changes summary: 0 Removed, 0 Changed, 1 Added function
Variables changes summary: 0 Removed, 0 Changed, 0 Added variable

1 Added function:

  [A] 'function extcon_dev* extcon_get_extcon_dev(const char*)'

Bug: 211744078
Change-Id: Ibe85507feee78b71e89c06a009bc3b80787e58f5
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
2022-05-02 21:32:43 +00:00
Chanho Park
fa81585b5d ANDROID: GKI: update exynosauto symbol list
This adds to update symbol list of Exynos Auto SoC after enabling
android kernel on top of type-1 hypervisor.

Leaf changes summary: 3 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 3 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

3 Added functions:

  [A] 'function unsigned long int devm_get_free_pages(device*, gfp_t, unsigned int)'
  [A] 'function int sigprocmask(int, sigset_t*, sigset_t*)'
  [A] 'function void uuid_gen(uuid_t*)'

Bug: 230822114
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Change-Id: Ibe58e693e2230a7adda07d48a7446a50a40f322f
2022-05-02 21:32:04 +00:00
Jian Gong
4b7d638447 ANDROID: ABI: Update symbols to unisoc whitelist for the 3th
Update whitelist for the symbols used by the unisoc device and
update the ABI representation accordingly.

Leaf changes summary: 11 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 2 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 9 Added variables

2 Added functions:

  [A] 'function int __traceiter_android_rvh_tk_based_time_sync(void*, timekeeper*)'
  [A] 'function block_device* blkdev_get_by_dev(dev_t, fmode_t, void*)'

9 Added variables:

  [A] 'tracepoint __tracepoint_android_rvh_effective_cpu_util'
  [A] 'tracepoint __tracepoint_android_vh_dma_buf_release'
  [A] 'tracepoint __tracepoint_android_vh_get_thermal_zone_device'
  [A] 'tracepoint __tracepoint_android_vh_psci_cpu_suspend'
  [A] 'tracepoint __tracepoint_android_vh_psci_tos_resident_on'
  [A] 'tracepoint __tracepoint_android_vh_regmap_update'
  [A] 'tracepoint __tracepoint_android_vh_thermal_register'
  [A] 'tracepoint __tracepoint_android_vh_thermal_unregister'
  [A] 'tracepoint __tracepoint_android_vh_usb_new_device_added'

Bug: 230843855
Change-Id: Ia507bb71b23a303140ddf979b692ce51bccacc92
Signed-off-by: Jian Gong <Jian.Gong@unisoc.com>
2022-05-01 10:37:42 +00:00
Todd Kjos
d7355d4294 ANDROID: fix kernelci build issue for configfs module
This fixes the kernelci error:

"ERROR: modpost: module configfs uses symbol kern_path from namespace
VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver, but does not import it."

Fixes: 0a77fca3aa ("ANDROID: GKI: set vfs-only exports into their own namespace")
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: Ib4ab1b83c8c8c996b1f15c419fb8ce0549832699
2022-04-30 00:08:48 +00:00
Joe Fradley
fbfc5c68b6 ANDROID: GKI: Disable CONFIG_KUNIT
Disabling KUNIT (and KUNIT_DEBUGFS) due to unresolved concerns.

Bug: 228892853
Signed-off-by: Joe Fradley <joefradley@google.com>
Change-Id: I6e2cabb6e86326f0da664f7e36cd73fcb0ecfd25
2022-04-29 19:12:30 +00:00
Lecopzer Chen
7a68c2c451 ANDROID: fix KCFLAGS override by __ANDROID_COMMON_KERNEL__
Our test build is broken by KCFLAGS overrided in build.config.comm.

Since Linux Makefile supports 'export KCFLAGS=XXX' to customize the
KCFLAGS, and we should keep this functionality.

Bug: 230818006
Fixes: 6c55ca2cae ("ANDROID: Add flag to indicate compiling against ACK")
Signed-off-by: Lecopzer Chen <lecopzer.chen@mediatek.com>
Change-Id: I9425d79697bc1fe816ce82d523f91631dee6b8f4
2022-04-29 17:38:47 +00:00
Gokul krishna Krishnakumar
dd97c0f284 ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Leaf changes summary: 54 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 54 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

54 Added functions:

  [A] 'function dentry* debugfs_rename(dentry*, dentry*, dentry*, const char*)'
  [A] 'function int device_get_phy_mode(device*)'
  [A] 'function net_device* devm_alloc_etherdev_mqs(device*, int, unsigned int, unsigned int)'
  [A] 'function int flow_block_cb_setup_simple(flow_block_offload*, list_head*, flow_setup_cb_t*, void*, void*, bool)'
  [A] 'function void flow_rule_match_basic(const flow_rule*, flow_match_basic*)'
  [A] 'function void flow_rule_match_ipv4_addrs(const flow_rule*, flow_match_ipv4_addrs*)'
  [A] 'function void flow_rule_match_ports(const flow_rule*, flow_match_ports*)'
  [A] 'function void flow_rule_match_vlan(const flow_rule*, flow_match_vlan*)'
  [A] 'function int inet6_ioctl(socket*, unsigned int, unsigned long int)'
  [A] 'function int inet_ioctl(socket*, unsigned int, unsigned long int)'
  [A] 'function mdio_device* mdio_device_create(mii_bus*, int)'
  [A] 'function void mdio_device_free(mdio_device*)'
  [A] 'function void netdev_rss_key_fill(void*, size_t)'
  [A] 'function void page_pool_destroy(page_pool*)'
  [A] 'function void page_pool_release_page(page_pool*, page*)'
  [A] 'function void phy_ethtool_get_wol(phy_device*, ethtool_wolinfo*)'
  [A] 'function int phy_ethtool_set_wol(phy_device*, ethtool_wolinfo*)'
  [A] 'function void phylink_disconnect_phy(phylink*)'
  [A] 'function int phylink_ethtool_get_eee(phylink*, ethtool_eee*)'
  [A] 'function void phylink_ethtool_get_pauseparam(phylink*, ethtool_pauseparam*)'
  [A] 'function void phylink_ethtool_get_wol(phylink*, ethtool_wolinfo*)'
  [A] 'function int phylink_ethtool_ksettings_get(phylink*, ethtool_link_ksettings*)'
  [A] 'function int phylink_ethtool_ksettings_set(phylink*, const ethtool_link_ksettings*)'
  [A] 'function int phylink_ethtool_nway_reset(phylink*)'
  [A] 'function int phylink_ethtool_set_eee(phylink*, ethtool_eee*)'
  [A] 'function int phylink_ethtool_set_pauseparam(phylink*, ethtool_pauseparam*)'
  [A] 'function int phylink_ethtool_set_wol(phylink*, ethtool_wolinfo*)'
  [A] 'function int phylink_get_eee_err(phylink*)'
  [A] 'function void phylink_mac_change(phylink*, bool)'
  [A] 'function int phylink_mii_ioctl(phylink*, ifreq*, int)'
  [A] 'function void phylink_resume(phylink*)'
  [A] 'function void phylink_set_pcs(phylink*, phylink_pcs*)'
  [A] 'function int phylink_speed_down(phylink*, bool)'
  [A] 'function int phylink_speed_up(phylink*)'
  [A] 'function void phylink_stop(phylink*)'
  [A] 'function void phylink_suspend(phylink*, bool)'
  [A] 'function bool xdp_rxq_info_is_reg(xdp_rxq_info*)'
  [A] 'function void xdp_rxq_info_unreg_mem_model(xdp_rxq_info*)'
  [A] 'function xdp_buff* xp_alloc(xsk_buff_pool*)'
  [A] 'function int xp_dma_map(xsk_buff_pool*, device*, unsigned long int, page**, u32)'
  [A] 'function void xp_dma_sync_for_cpu_slow(xdp_buff_xsk*)'
  [A] 'function void xp_dma_sync_for_device_slow(xsk_buff_pool*, dma_addr_t, size_t)'
  [A] 'function void xp_dma_unmap(xsk_buff_pool*, unsigned long int)'
  [A] 'function void xp_free(xdp_buff_xsk*)'
  [A] 'function dma_addr_t xp_raw_get_dma(xsk_buff_pool*, u64)'
  [A] 'function void xp_set_rxq_info(xsk_buff_pool*, xdp_rxq_info*)'
  [A] 'function void xsk_clear_rx_need_wakeup(xsk_buff_pool*)'
  [A] 'function xsk_buff_pool* xsk_get_pool_from_qid(net_device*, u16)'
  [A] 'function void xsk_set_rx_need_wakeup(xsk_buff_pool*)'
  [A] 'function void xsk_set_tx_need_wakeup(xsk_buff_pool*)'
  [A] 'function void xsk_tx_completed(xsk_buff_pool*, u32)'
  [A] 'function bool xsk_tx_peek_desc(xsk_buff_pool*, xdp_desc*)'
  [A] 'function void xsk_tx_release(xsk_buff_pool*)'
  [A] 'function bool xsk_uses_need_wakeup(xsk_buff_pool*)'

Bug: 211744078
Change-Id: Ibe62ced922b992c56c6457fdf2c4ba20dfe874b4
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
2022-04-29 15:19:20 +00:00
Peter Wang
7ec90fc9de FROMGIT: scsi: ufs: core: scsi_get_lba() error fix
When ufs initializes without scmd->device->sector_size set, scsi_get_lba()
will get a wrong shift number and trigger an ubsan error.  The shift
exponent 4294967286 is too large for the 64-bit type 'sector_t' (aka
'unsigned long long').

Call scsi_get_lba() only when opcode is READ_10/WRITE_10/UNMAP.

Link: https://lore.kernel.org/r/20220307111752.10465-1-peter.wang@mediatek.com
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Peter Wang <peter.wang@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
(cherry picked from commit 2bd3b6b759 git://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next)
Bug: 228405696
Change-Id: I5bdf04628eff2a0c2a36c89f9934033fb3d8a392
Signed-off-by: Bart Van Assche <bvanassche@google.com>
Signed-off-by: Yee Lee <yee.lee@mediatek.com>
2022-04-28 21:44:00 +00:00
Elliot Berman
6c55ca2cae ANDROID: Add flag to indicate compiling against ACK
Add a flag: __ANDROID_COMMON_KERNEL__ which out-of-tree vendor drivers
can use to check if they are compiling against an Android Common Kernel.
These out-of-tree vendor drivers can use this flag +
LINUX_KERNEL_VERSION to determine if a feature has been backported.

Bug: 229953929
Change-Id: I832344d63f3639479784753edfb7ac405068312f
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-04-28 20:46:27 +00:00
Georgi Djakov
a322e22ea7 ANDROID: GKI: Update abi_gki_aarch64_qcom with symbols for mem-offline
Add the symbols that are needed for the mem-offline driver.

Leaf changes summary: 5 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 5 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

5 Added functions:

  [A] 'function unsigned long int get_pfnblock_flags_mask(const page*, unsigned long int, unsigned long int)'
  [A] 'function unsigned long int isolate_and_split_free_page(page*, list_head*)'
  [A] 'function int isolate_anon_lru_page(page*)'
  [A] 'function int migrate_pages(list_head*, new_page_t*, free_page_t*, unsigned long int, migrate_mode, int, unsigned int*)'
  [A] 'function void putback_movable_pages(list_head*)'

Bug: 201263307
Change-Id: Ia6c5c617f004dec5e7ca2df9aac2a50714c48b22
Signed-off-by: Georgi Djakov <quic_c_gdjako@quicinc.com>
2022-04-28 16:57:10 +00:00
Hajun Sung
b6eb5c7512 ANDROID: GKI: Add symbol list for exynos
- Add Initial ABI Symbol list for Exynos SOC
  BUILD_CONFIG=common/build.config.gki.aarch64 build/build_abi.sh --update

Leaf changes summary: 170 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 159 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 11 Added variables

159 Added functions:

  [A] 'function void __do_once_done(bool*, static_key_true*, unsigned long int*, module*)'
  [A] 'function bool __do_once_start(bool*, unsigned long int*)'
  [A] 'function void __rb_erase_color(rb_node*, rb_root*, void (rb_node*, rb_node*)*)'
  [A] 'function void __rb_insert_augmented(rb_node*, rb_root*, void (rb_node*, rb_node*)*)'
  [A] 'function int __traceiter_android_rvh_can_migrate_task(void*, task_struct*, int, int*)'
  [A] 'function int __traceiter_android_rvh_cpu_cgroup_can_attach(void*, cgroup_taskset*, int*)'
  [A] 'function int __traceiter_android_rvh_cpufreq_transition(void*, cpufreq_policy*)'
  [A] 'function int __traceiter_android_rvh_find_lowest_rq(void*, task_struct*, cpumask*, int, int*)'
  [A] 'function int __traceiter_android_rvh_find_new_ilb(void*, cpumask*, int*)'
  [A] 'function int __traceiter_android_rvh_replace_next_task_fair(void*, rq*, task_struct**, sched_entity**, bool*, bool, task_struct*)'
  [A] 'function int __traceiter_android_rvh_sched_fork_init(void*, task_struct*)'
  [A] 'function int __traceiter_android_rvh_sched_nohz_balancer_kick(void*, rq*, unsigned int*, int*)'
  [A] 'function int __traceiter_android_rvh_sched_rebalance_domains(void*, rq*, int*)'
  [A] 'function int __traceiter_android_rvh_schedule(void*, task_struct*, task_struct*, rq*)'
  [A] 'function int __traceiter_android_rvh_select_fallback_rq(void*, int, task_struct*, int*)'
  [A] 'function int __traceiter_android_rvh_set_task_cpu(void*, task_struct*, unsigned int)'
  [A] 'function int __traceiter_android_vh_gic_set_affinity(void*, irq_data*, const cpumask*, bool, u8*, void*)'
  [A] 'function int __traceiter_android_vh_gic_v3_set_affinity(void*, irq_data*, const cpumask*, u64*, bool, void*)'
  [A] 'function int __traceiter_android_vh_logbuf_pr_cont(void*, printk_record*, size_t)'
  [A] 'function int __traceiter_ipi_entry(void*, const char*)'
  [A] 'function int __traceiter_ipi_exit(void*, const char*)'
  [A] 'function int __traceiter_ipi_raise(void*, const cpumask*, const char*)'
  [A] 'function void __wake_up_locked_key(wait_queue_head*, unsigned int, void*)'
  [A] 'function void* __xa_erase(xarray*, unsigned long int)'
  [A] 'function void* __xa_store(xarray*, unsigned long int, void*, gfp_t)'
  [A] 'function void _dev_alert(const device*, const char*, ...)'
  [A] 'function int _raw_write_trylock(rwlock_t*)'
  [A] 'function int class_create_file_ns(class*, const class_attribute*, void*)'
  [A] 'function cpuidle_driver* cpuidle_get_cpu_driver(cpuidle_device*)'
  [A] 'function int dapm_pinctrl_event(snd_soc_dapm_widget*, snd_kcontrol*, int)'
  [A] 'function void debugfs_create_file_size(const char*, umode_t, dentry*, void*, const file_operations*, loff_t)'
  [A] 'function ssize_t device_show_int(device*, device_attribute*, char*)'
  [A] 'function ssize_t device_store_int(device*, device_attribute*, const char*, size_t)'
  [A] 'function dma_buf_attachment* dma_buf_dynamic_attach(dma_buf*, device*, const dma_buf_attach_ops*, void*)'
  [A] 'function int dma_buf_get_flags(dma_buf*, unsigned long int*)'
  [A] 'function void dma_buf_move_notify(dma_buf*)'
  [A] 'function int dma_buf_pin(dma_buf_attachment*)'
  [A] 'function void dma_buf_unpin(dma_buf_attachment*)'
  [A] 'function void dma_fence_chain_init(dma_fence_chain*, dma_fence*, dma_fence*, uint64_t)'
  [A] 'function dma_fence* dma_fence_chain_walk(dma_fence*)'
  [A] 'function dma_fence* dma_fence_get_stub()'
  [A] 'function long int dma_fence_wait_any_timeout(dma_fence**, uint32_t, bool, long int, uint32_t*)'
  [A] 'function u64 dma_get_required_mask(device*)'
  [A] 'function int dma_resv_get_fences(dma_resv*, dma_fence**, unsigned int*, dma_fence***)'
  [A] 'function int do_wait_intr(wait_queue_head_t*, wait_queue_entry_t*)'
  [A] 'function int down_read_killable(rw_semaphore*)'
  [A] 'function int down_write_trylock(rw_semaphore*)'
  [A] 'function bool drm_any_plane_has_format(drm_device*, u32, u64)'
  [A] 'function void drm_atomic_bridge_chain_disable(drm_bridge*, drm_atomic_state*)'
  [A] 'function void drm_connector_attach_dp_subconnector_property(drm_connector*)'
  [A] 'function int drm_crtc_helper_set_config(drm_mode_set*, drm_modeset_acquire_ctx*)'
  [A] 'function bool drm_crtc_helper_set_mode(drm_crtc*, drm_display_mode*, int, int, drm_framebuffer*)'
  [A] 'function int drm_crtc_init(drm_device*, drm_crtc*, const drm_crtc_funcs*)'
  [A] 'function void drm_dp_set_subconnector_property(drm_connector*, drm_connector_status, const u8*, const u8*)'
  [A] 'function int drm_edid_header_is_valid(const u8*)'
  [A] 'function bool drm_edid_is_valid(edid*)'
  [A] 'function int drm_edid_to_speaker_allocation(edid*, u8**)'
  [A] 'function void drm_framebuffer_unregister_private(drm_framebuffer*)'
  [A] 'function void drm_helper_disable_unused_functions(drm_device*)'
  [A] 'function int drm_helper_force_disable_all(drm_device*)'
  [A] 'function void drm_helper_resume_force_mode(drm_device*)'
  [A] 'function bool drm_kms_helper_is_poll_worker()'
  [A] 'function int drm_mm_reserve_node(drm_mm*, drm_mm_node*)'
  [A] 'function int drm_mode_create_scaling_mode_property(drm_device*)'
  [A] 'function bool drm_mode_match(const drm_display_mode*, const drm_display_mode*, unsigned int)'
  [A] 'function int drm_prime_sg_to_dma_addr_array(sg_table*, dma_addr_t*, int)'
  [A] 'function void drm_print_bits(drm_printer*, unsigned long int, const char* const*, unsigned int)'
  [A] 'function int drm_syncobj_create(drm_syncobj**, uint32_t, dma_fence*)'
  [A] 'function int drm_syncobj_get_fd(drm_syncobj*, int*)'
  [A] 'function int drm_syncobj_get_handle(drm_file*, drm_syncobj*, u32*)'
  [A] 'function void drm_wait_one_vblank(drm_device*, unsigned int)'
  [A] 'function char* get_options(const char*, int, int*)'
  [A] 'function ssize_t hdmi_drm_infoframe_pack_only(const hdmi_drm_infoframe*, void*, size_t)'
  [A] 'function int i2c_bit_add_bus(i2c_adapter*)'
  [A] 'function int i3c_master_defslvs_locked(i3c_master_controller*)'
  [A] 'function int irq_force_affinity(unsigned int, const cpumask*)'
  [A] 'function int irq_set_handler_data(unsigned int, void*)'
  [A] 'function kobject* kobject_get(kobject*)'
  [A] 'function bool mem_encrypt_active()'
  [A] 'function void mmu_notifier_synchronize()'
  [A] 'function resource* pci_bus_resource_n(const pci_bus*, int)'
  [A] 'function int pci_enable_atomic_ops_to_root(pci_dev*, u32)'
  [A] 'function void* pci_map_rom(pci_dev*, size_t*)'
  [A] 'function int pci_msix_vec_count(pci_dev*)'
  [A] 'function u32 pci_rebar_get_possible_sizes(pci_dev*, int)'
  [A] 'function void pci_release_resource(pci_dev*, int)'
  [A] 'function int pci_resize_resource(pci_dev*, int, int)'
  [A] 'function void pci_unmap_rom(pci_dev*, void*)'
  [A] 'function int pci_wait_for_pending_transaction(pci_dev*)'
  [A] 'function pinctrl* pinctrl_get(device*)'
  [A] 'function bool printk_timed_ratelimit(unsigned long int*, unsigned int)'
  [A] 'function void proc_set_size(proc_dir_entry*, loff_t)'
  [A] 'function proc_dir_entry* proc_symlink(const char*, proc_dir_entry*, const char*)'
  [A] 'function rb_node* rb_first_postorder(const rb_root*)'
  [A] 'function rb_node* rb_next_postorder(const rb_node*)'
  [A] 'function reciprocal_value reciprocal_value(u32)'
  [A] 'function void refresh_frequency_limits(cpufreq_policy*)'
  [A] 'function int rtc_set_time(rtc_device*, rtc_time*)'
  [A] 'function void scsi_dma_unmap(scsi_cmnd*)'
  [A] 'function void scsi_eh_ready_devs(Scsi_Host*, list_head*, list_head*)'
  [A] 'function void smp_call_function_many(const cpumask*, smp_call_func_t, void*, bool)'
  [A] 'function int snd_hwdep_new(snd_card*, char*, int, snd_hwdep**)'
  [A] 'function unsigned int snd_pcm_rate_range_to_bits(unsigned int, unsigned int)'
  [A] 'function void snd_soc_component_async_complete(snd_soc_component*)'
  [A] 'function int snd_soc_component_update_bits_async(snd_soc_component*, unsigned int, unsigned int, unsigned int)'
  [A] 'function int snd_soc_dapm_get_pin_status(snd_soc_dapm_context*, const char*)'
  [A] 'function int snd_soc_dapm_weak_routes(snd_soc_dapm_context*, const snd_soc_dapm_route*, int)'
  [A] 'function snd_soc_dai* snd_soc_find_dai_with_mutex(const snd_soc_dai_link_component*)'
  [A] 'function int snd_soc_get_xr_sx(snd_kcontrol*, snd_ctl_elem_value*)'
  [A] 'function int snd_soc_put_xr_sx(snd_kcontrol*, snd_ctl_elem_value*)'
  [A] 'function const cpumask* system_32bit_el0_cpumask()'
  [A] 'function int tcp_register_congestion_control(tcp_congestion_ops*)'
  [A] 'function void tcp_reno_cong_avoid(sock*, u32, u32)'
  [A] 'function u32 tcp_reno_ssthresh(sock*)'
  [A] 'function u32 tcp_reno_undo_cwnd(sock*)'
  [A] 'function u32 tcp_slow_start(tcp_sock*, u32)'
  [A] 'function void tcp_unregister_congestion_control(tcp_congestion_ops*)'
  [A] 'function void ttm_bo_bulk_move_lru_tail(ttm_lru_bulk_move*)'
  [A] 'function bool ttm_bo_eviction_valuable(ttm_buffer_object*, const ttm_place*)'
  [A] 'function int ttm_bo_init_reserved(ttm_device*, ttm_buffer_object*, size_t, ttm_bo_type, ttm_placement*, uint32_t, ttm_operation_ctx*, sg_table*, dma_resv*, void (ttm_buffer_object*)*)'
  [A] 'function int ttm_bo_kmap(ttm_buffer_object*, unsigned long int, unsigned long int, ttm_bo_kmap_obj*)'
  [A] 'function void ttm_bo_kunmap(ttm_bo_kmap_obj*)'
  [A] 'function int ttm_bo_lock_delayed_workqueue(ttm_device*)'
  [A] 'function int ttm_bo_mem_space(ttm_buffer_object*, ttm_placement*, ttm_resource**, ttm_operation_ctx*)'
  [A] 'function int ttm_bo_mmap_obj(vm_area_struct*, ttm_buffer_object*)'
  [A] 'function int ttm_bo_move_accel_cleanup(ttm_buffer_object*, dma_fence*, bool, bool, ttm_resource*)'
  [A] 'function int ttm_bo_move_memcpy(ttm_buffer_object*, ttm_operation_ctx*, ttm_resource*)'
  [A] 'function void ttm_bo_move_to_lru_tail(ttm_buffer_object*, ttm_resource*, ttm_lru_bulk_move*)'
  [A] 'function void ttm_bo_put(ttm_buffer_object*)'
  [A] 'function void ttm_bo_unlock_delayed_workqueue(ttm_device*, int)'
  [A] 'function int ttm_bo_validate(ttm_buffer_object*, ttm_placement*, ttm_operation_ctx*)'
  [A] 'function int ttm_bo_vm_access(vm_area_struct*, unsigned long int, void*, int, int)'
  [A] 'function void ttm_bo_vm_close(vm_area_struct*)'
  [A] 'function vm_fault_t ttm_bo_vm_dummy_page(vm_fault*, pgprot_t)'
  [A] 'function vm_fault_t ttm_bo_vm_fault_reserved(vm_fault*, pgprot_t, unsigned long int)'
  [A] 'function void ttm_bo_vm_open(vm_area_struct*)'
  [A] 'function vm_fault_t ttm_bo_vm_reserve(ttm_buffer_object*, vm_fault*)'
  [A] 'function int ttm_bo_vmap(ttm_buffer_object*, dma_buf_map*)'
  [A] 'function void ttm_bo_vunmap(ttm_buffer_object*, dma_buf_map*)'
  [A] 'function int ttm_bo_wait(ttm_buffer_object*, bool, bool)'
  [A] 'function void ttm_device_fini(ttm_device*)'
  [A] 'function int ttm_device_init(ttm_device*, ttm_device_funcs*, device*, address_space*, drm_vma_offset_manager*, bool, bool)'
  [A] 'function void ttm_eu_backoff_reservation(ww_acquire_ctx*, list_head*)'
  [A] 'function void ttm_eu_fence_buffer_objects(ww_acquire_ctx*, list_head*, dma_fence*)'
  [A] 'function int ttm_eu_reserve_buffers(ww_acquire_ctx*, list_head*, bool, list_head*)'
  [A] 'function int ttm_pool_alloc(ttm_pool*, ttm_tt*, ttm_operation_ctx*)'
  [A] 'function int ttm_pool_debugfs(ttm_pool*, seq_file*)'
  [A] 'function void ttm_pool_free(ttm_pool*, ttm_tt*)'
  [A] 'function int ttm_range_man_fini(ttm_device*, unsigned int)'
  [A] 'function int ttm_range_man_init(ttm_device*, unsigned int, bool, unsigned long int)'
  [A] 'function void ttm_resource_free(ttm_buffer_object*, ttm_resource**)'
  [A] 'function void ttm_resource_init(ttm_buffer_object*, const ttm_place*, ttm_resource*)'
  [A] 'function int ttm_resource_manager_evict_all(ttm_device*, ttm_resource_manager*)'
  [A] 'function void ttm_resource_manager_init(ttm_resource_manager*, unsigned long int)'
  [A] 'function int ttm_sg_tt_init(ttm_tt*, ttm_buffer_object*, uint32_t, ttm_caching)'
  [A] 'function void ttm_tt_destroy_common(ttm_device*, ttm_tt*)'
  [A] 'function void ttm_tt_fini(ttm_tt*)'
  [A] 'function int usb_choose_configuration(usb_device*)'
  [A] 'function bool v4l2_match_dv_timings(const v4l2_dv_timings*, const v4l2_dv_timings*, unsigned int, bool)'

11 Added variables:

  [A] 'tracepoint __tracepoint_android_rvh_cpu_cgroup_can_attach'
  [A] 'tracepoint __tracepoint_android_rvh_cpufreq_transition'
  [A] 'tracepoint __tracepoint_android_rvh_find_new_ilb'
  [A] 'tracepoint __tracepoint_android_rvh_sched_rebalance_domains'
  [A] 'tracepoint __tracepoint_android_rvh_select_fallback_rq'
  [A] 'tracepoint __tracepoint_android_vh_gic_set_affinity'
  [A] 'tracepoint __tracepoint_android_vh_gic_v3_set_affinity'
  [A] 'tracepoint __tracepoint_ipi_exit'
  [A] 'const dma_fence_ops dma_fence_chain_ops'
  [A] 'const kernel_param_ops param_ops_hexint'
  [A] 'ttm_global ttm_glob'

Bug: 230443745
Signed-off-by: Hajun Sung <hajun.sung@samsung.com>
Change-Id: I427fbcedbaaaf87f11d8f104d6140ee4a69fb5f7
2022-04-28 15:39:36 +00:00
Gokul krishna Krishnakumar
d49a012b57 ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Leaf changes summary: 8 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 6 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 2 Added variables

6 Added functions:

  [A] 'function int extcon_set_state(extcon_dev*, unsigned int, bool)'
  [A] 'function bool kmsg_dump_get_buffer(kmsg_dump_iter*, bool, char*, size_t, size_t*)'
  [A] 'function int kmsg_dump_register(kmsg_dumper*)'
  [A] 'function void kmsg_dump_rewind(kmsg_dump_iter*)'
  [A] 'function int kmsg_dump_unregister(kmsg_dumper*)'
  [A] 'function const cpumask* system_32bit_el0_cpumask()'

2 Added variables:

  [A] 'tracepoint __tracepoint_android_vh_check_uninterruptible_tasks'
  [A] 'tracepoint __tracepoint_android_vh_check_uninterruptible_tasks_dn'

Bug: 211744078
Change-Id: I575f1fef5c40a9622a3468bb7ca70eddbfc4d73f
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
2022-04-28 15:30:24 +00:00
fengmingli
a6ebc737af ANDROID: usb: export tracepoint for usb gadget connect/disconnect
There are two tracepoints in usb_gadget_connect() and
usb_gadget_disconnect(). This patch will export the tracepoints so that
vendor modules can use them.

Bug: 189130101

Change-Id: I73ace6ad7a29a835431879162cb5e5ff3d6b2239
Signed-off-by: fengmingli <mingli.feng@vivo.com>
(cherry picked from commit 6f33bce13a)
2022-04-28 03:08:04 +00:00
J. Avila
def3ff8c55 ANDROID: sched/rt: Only enable RT sync for SMP targets
The rt sync wakeup support has a condition which relies on a field that
exists only when CONFIG_SMP is defined, causing a compilation issue.
Since sync wakeup has no real meaning on a non-SMP system, we can just
drop the CONFIG_RT_GROUP_SCHED part of the #ifdef.

Fixes: da5f3cd378 ("ANDROID: sched/rt: Add support for rt sync wakeups")
Signed-off-by: J. Avila <elavila@google.com>
Change-Id: I9b95304408d323b0c1017bd33746ecfbb2b35808
2022-04-28 01:01:01 +00:00
J. Avila
a7133dd750 ANDROID: sched/rt: Add support for rt sync wakeups
Some rt tasks undergo sync wakeup. Currently, these tasks will be placed
on other, often sleeping or otherwise idle CPUs, which can lead to
unnecessary power hits.

Bug: 157906395
Change-Id: I48864d0847bbe4f7813c842032880ad3f3b8b06b
Signed-off-by: J. Avila <elavila@google.com>
[quic_dickey@quicinc.com: Port to 5.15]
Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com>
2022-04-28 01:00:53 +00:00
Neeraj Upadhyay
9f7014a6d2 ANDROID: irq: manage: Export irq_do_set_affinity symbol
Vendor kernel modules may implement irq balancers, which could
take irq desc lock of an irq and then based on current affinity
mask or affinity hint, reconfigure the affinity of that irq.
For example : For an irq, for which affinity is broken i.e. all
the cpus in its affinity mask have gone offline. For such irqs,
we might want to reset the affinity, when the original set of
affined cpus, come back online. desc->affinity_hint can be used
for figuring out the original affinity. So, the sequence for doing
this becomes:

desc = irq_to_desc(i);
raw_spin_lock(&desc->lock);
affinity = desc->affinity_hint;
raw_spin_unlock(&desc->lock);
irq_set_affinity_hint(i, affinity);

Here, we need to release the desc lock before calling the exported
api irq_set_affinity_hint(). This creates a window where, after
unlocking desc lock and before calling irq_set_affinity_hint(),
where this setting can race with other irq_set_affinity_hint()
callers. So, export irq_do_set_affinity() symbol to provide an
api, which can be called with desc lock held.

Bug: 187157600
Change-Id: Ifad88bfaa1e7eec09c3fe5a9dd7d1d421362b41e
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
(cherry picked from commit d88c1e77fd)
2022-04-27 23:20:00 +00:00
Neeraj Upadhyay
fdb0133879 ANDROID: gic-v3: Update vendor hook to set affinity in GIC v3
GIC provides implementation specific registers, to configure
affinity of a  SPI. Update the existing affinity hook to allow
vendors to configure those implementation defined settings.

Bug: 180471389
Change-Id: I273035da65eaeb346c0d8b303a722f4d8d7918d6
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
(cherry picked from commit f52f343587)
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
2022-04-27 23:00:16 +00:00
Kiwoong Kim
3ccc4b2705 FROMGIT: scsi: ufs: core: Exclude UECxx from SFR dump list
Some devices may return invalid or zeroed data during an UIC error
condition. In addition, reading these SFRs will clear them. This means the
subsequent error handling will not be able to see them and therefore no
error handling will be scheduled.

Skip reading these SFRs in ufshcd_dump_regs().

Bug: 230521674
Change-Id: Idc62842c79f948580107f95c65a14e34630a0017
(cherry picked from commit ef60031022
https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git 5.19/scsi-staging)
Link: https://lore.kernel.org/r/1648689845-33521-1-git-send-email-kwmad.kim@samsung.com
Fixes: d672475664 ("scsi: ufs: Use explicit access size in ufshcd_dump_regs")
Signed-off-by: Kiwoong Kim <kwmad.kim@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2022-04-27 20:41:10 +00:00
Chanho Park
94816d9fd6 ANDROID: GKI: add initial symbol list for Exynos Auto SoC
This adds initial symbol list for Exynos Auto SoC. Below functions /
variables are newly added.

Leaf changes summary: 93 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 84 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 9 Added variables

84 Added functions:

  [A] 'function int __traceiter_cpu_idle(void*, unsigned int, unsigned int)'
  [A] 'function int __traceiter_hrtimer_expire_entry(void*, hrtimer*, ktime_t*)'
  [A] 'function int __traceiter_hrtimer_expire_exit(void*, hrtimer*)'
  [A] 'function int __traceiter_irq_handler_entry(void*, int, irqaction*)'
  [A] 'function int __traceiter_irq_handler_exit(void*, int, irqaction*, int)'
  [A] 'function int __traceiter_rwmmio_post_read(void*, unsigned long int, u64, u8, const volatile void*)'
  [A] 'function int __traceiter_rwmmio_read(void*, unsigned long int, u8, const volatile void*)'
  [A] 'function int __traceiter_rwmmio_write(void*, unsigned long int, u64, u8, volatile void*)'
  [A] 'function int __traceiter_workqueue_execute_end(void*, work_struct*, work_func_t)'
  [A] 'function int __traceiter_workqueue_execute_start(void*, work_struct*)'
  [A] 'function void blk_ksm_init_passthrough(blk_keyslot_manager*)'
  [A] 'function long int copy_from_user_nofault(void*, void*, size_t)'
  [A] 'function int device_property_read_u8_array(device*, const char*, u8*, size_t)'
  [A] 'function void display_timings_release(display_timings*)'
  [A] 'function dma_status dma_sync_wait(dma_chan*, dma_cookie_t)'
  [A] 'function dmaengine_unmap_data* dmaengine_get_unmap_data(device*, int, gfp_t)'
  [A] 'function void drm_atomic_bridge_chain_enable(drm_bridge*, drm_atomic_state*)'
  [A] 'function void drm_atomic_bridge_chain_pre_enable(drm_bridge*, drm_atomic_state*)'
  [A] 'function int drm_connector_set_path_property(drm_connector*, const char*)'
  [A] 'function u64 drm_crtc_vblank_count(drm_crtc*)'
  [A] 'function wait_queue_head_t* drm_crtc_vblank_waitqueue(drm_crtc*)'
  [A] 'function int drm_dp_check_act_status(drm_dp_mst_topology_mgr*)'
  [A] 'function void drm_dp_downstream_debug(seq_file*, const u8*, const u8*, const edid*, drm_dp_aux*)'
  [A] 'function u8 drm_dp_dsc_sink_line_buf_depth(const u8*)'
  [A] 'function u8 drm_dp_dsc_sink_max_slice_count(const u8*, bool)'
  [A] 'function int drm_dp_find_vcpi_slots(drm_dp_mst_topology_mgr*, int)'
  [A] 'function bool drm_dp_mst_allocate_vcpi(drm_dp_mst_topology_mgr*, drm_dp_mst_port*, int, int)'
  [A] 'function void drm_dp_mst_deallocate_vcpi(drm_dp_mst_topology_mgr*, drm_dp_mst_port*)'
  [A] 'function int drm_dp_mst_detect_port(drm_connector*, drm_modeset_acquire_ctx*, drm_dp_mst_topology_mgr*, drm_dp_mst_port*)'
  [A] 'function int drm_dp_mst_hpd_irq(drm_dp_mst_topology_mgr*, u8*, bool*)'
  [A] 'function void drm_dp_mst_reset_vcpi_slots(drm_dp_mst_topology_mgr*, drm_dp_mst_port*)'
  [A] 'function int drm_dp_mst_topology_mgr_init(drm_dp_mst_topology_mgr*, drm_device*, drm_dp_aux*, int, int, int, int, int)'
  [A] 'function int drm_dp_mst_topology_mgr_set_mst(drm_dp_mst_topology_mgr*, bool)'
  [A] 'function int drm_dp_update_payload_part1(drm_dp_mst_topology_mgr*)'
  [A] 'function int drm_dp_update_payload_part2(drm_dp_mst_topology_mgr*)'
  [A] 'function int drm_dsc_compute_rc_parameters(drm_dsc_config*)'
  [A] 'function void drm_dsc_pps_payload_pack(drm_dsc_picture_parameter_set*, const drm_dsc_config*)'
  [A] 'function int drm_helper_connector_dpms(drm_connector*, int)'
  [A] 'function int drm_helper_probe_detect(drm_connector*, drm_modeset_acquire_ctx*, bool)'
  [A] 'function uint32_t drm_of_crtc_port_mask(drm_device*, device_node*)'
  [A] 'function int dw_pcie_ep_init(dw_pcie_ep*)'
  [A] 'function void* dw_pcie_own_conf_map_bus(pci_bus*, unsigned int, int)'
  [A] 'function pid* get_task_pid(task_struct*, pid_type)'
  [A] 'function bool kmsg_dump_get_line(kmsg_dump_iter*, bool, char*, size_t, size_t*)'
  [A] 'function void kmsg_dump_rewind(kmsg_dump_iter*)'
  [A] 'function phy_device* mdiobus_get_phy(mii_bus*, int)'
  [A] 'function void netdev_alert(const net_device*, const char*, ...)'
  [A] 'function display_timings* of_get_display_timings(const device_node*)'
  [A] 'function int of_graph_get_endpoint_count(const device_node*)'
  [A] 'function device_node* of_graph_get_remote_port(const device_node*)'
  [A] 'function int param_get_string(char*, const kernel_param*)'
  [A] 'function int param_set_copystring(const char*, const kernel_param*)'
  [A] 'function int pci_epc_map_addr(pci_epc*, u8, u8, phys_addr_t, u64, size_t)'
  [A] 'function void* pci_epc_mem_alloc_addr(pci_epc*, phys_addr_t*, size_t)'
  [A] 'function void pci_epc_mem_free_addr(pci_epc*, phys_addr_t, void*, size_t)'
  [A] 'function int pci_epc_set_bar(pci_epc*, u8, u8, pci_epf_bar*)'
  [A] 'function void pci_epc_unmap_addr(pci_epc*, u8, u8, phys_addr_t)'
  [A] 'function int pci_generic_config_read(pci_bus*, unsigned int, int, int, u32*)'
  [A] 'function int pci_generic_config_write(pci_bus*, unsigned int, int, int, u32)'
  [A] 'function int pci_num_vf(pci_dev*)'
  [A] 'function int pcie_get_mps(pci_dev*)'
  [A] 'function int pcie_set_mps(pci_dev*, int)'
  [A] 'function void phy_ethtool_ksettings_get(phy_device*, ethtool_link_ksettings*)'
  [A] 'function int phy_ethtool_ksettings_set(phy_device*, const ethtool_link_ksettings*)'
  [A] 'function int phy_get_eee_err(phy_device*)'
  [A] 'function void phy_mac_interrupt(phy_device*)'
  [A] 'function int phy_resume(phy_device*)'
  [A] 'function int phylink_connect_phy(phylink*, phy_device*)'
  [A] 'function phylink* phylink_create(phylink_config*, fwnode_handle*, phy_interface_t, const phylink_mac_ops*)'
  [A] 'function void phylink_destroy(phylink*)'
  [A] 'function int phylink_of_phy_connect(phylink*, device_node*, u32)'
  [A] 'function void phylink_set_port_modes(unsigned long int*)'
  [A] 'function void phylink_start(phylink*)'
  [A] 'function void prandom_bytes(void*, size_t)'
  [A] 'function void* pwm_get_chip_data(pwm_device*)'
  [A] 'function int pwm_set_chip_data(pwm_device*, void*)'
  [A] 'function void scsi_schedule_eh(Scsi_Host*)'
  [A] 'function int snd_soc_dai_set_tristate(snd_soc_dai*, int)'
  [A] 'function snd_soc_dapm_widget* snd_soc_dapm_new_control(snd_soc_dapm_context*, const snd_soc_dapm_widget*)'
  [A] 'function void snd_soc_of_put_dai_link_codecs(snd_soc_dai_link*)'
  [A] 'function void start_backtrace(stackframe*, unsigned long int, unsigned long int)'
  [A] 'function int v4l2_m2m_mmap(file*, v4l2_m2m_ctx*, vm_area_struct*)'
  [A] 'function __poll_t v4l2_m2m_poll(file*, v4l2_m2m_ctx*, poll_table_struct*)'
  [A] 'function int videomode_from_timings(const display_timings*, videomode*, unsigned int)'

9 Added variables:

  [A] 'tracepoint __tracepoint_hrtimer_expire_entry'
  [A] 'tracepoint __tracepoint_hrtimer_expire_exit'
  [A] 'tracepoint __tracepoint_irq_handler_entry'
  [A] 'tracepoint __tracepoint_irq_handler_exit'
  [A] 'tracepoint __tracepoint_rwmmio_post_read'
  [A] 'tracepoint __tracepoint_rwmmio_read'
  [A] 'tracepoint __tracepoint_rwmmio_write'
  [A] 'tracepoint __tracepoint_workqueue_execute_end'
  [A] 'tracepoint __tracepoint_workqueue_execute_start'

Bug: 230559582
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Change-Id: I75ef1594d3cdb6769ce23dc2774d4e821f5e81a9
2022-04-27 19:10:20 +00:00
Sebastian Ene
6f741e863c ANDROID: arm64: Auto-enroll MMIO guard on protected vms
Set the MMIO guard flag for protected vms prior to entering the guest
for the first time.

Bug: 216798684
Signed-off-by: Sebastian Ene <sebastianene@google.com>
Change-Id: I1448102ae85176d495ae7f8d6d20de4092049f0d
2022-04-27 16:26:58 +00:00
Vijayanand Jitta
898049a684 ANDROID: mm: Export vmalloc_nr_pages
Export vmalloc_nr_pages which is used as part
of meminfo collection from minidump module.

Bug: 199236943
Change-Id: I4c80fe2a0712658ec46b49064fda670da84b3732
Signed-off-by: Vijayanand Jitta <quic_vjitta@quicinc.com>
2022-04-27 16:25:23 +00:00
Vijayanand Jitta
d48a14d37f ANDROID: mm: Export pcpu_nr_pages
Export pcpu_nr_pages symbol which is used as part
of meminfo collection from minidump module.

Bug: 199236943
Change-Id: I08262ec95a3f1be8322b9b8d2d9c4098518fc408
Signed-off-by: Vijayanand Jitta <quic_vjitta@quicinc.com>
2022-04-27 16:02:52 +00:00
Jaegeuk Kim
c978fa20fd UPSTREAM: f2fs: should not truncate blocks during roll-forward recovery
If the file preallocated blocks and fsync'ed, we should not truncate them during
roll-forward recovery which will recover i_size correctly back.

Bug: 223740163
Fixes: d4dd19ec1e ("f2fs: do not expose unwritten blocks to user by DIO")
Cc: <stable@vger.kernel.org> # 5.17+
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
(cherry picked from commit 4d8ec91208)
Change-Id: I5e974a564667115455b53a18f31902a875d86dee
2022-04-27 15:47:13 +00:00
Greg Kroah-Hartman
d7f3794b34 ANDROID: add gki_module headers to .gitignore file
In commit f8bd6cf70d ("ANDROID: GKI: Add module load time protected
symbol lookup") the kernel/gki_module_exported.h and
kernel/gki_module_protected.h files are created, but these generated
files are not added to the .gitignore file, making them show up as added
files when building the tree.

Resolve this by adding them to the proper .gitignore file

Bug: 200082547
Fixes: f8bd6cf70d ("ANDROID: GKI: Add module load time protected symbol lookup")
Cc: Ramji Jiyani <ramjiyani@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I906ddd24bfc54d62f572fba5491e2d2025325957
2022-04-27 15:34:29 +00:00
fengmingli
4b7b7a96e4 ANDROID: usb: add EXPORT_TRACE_SYMBOL to export tracepoint
To use the tracepoint in kernel module, add EXPORT_TRACE_SYMBOL_GPL to
export the dwc3_ctrl_req tracepoint

Bug: 189130101

Change-Id: Ie3245474fbd0cc18c6d41036dcf17c7bbe460814
Signed-off-by: fengmingli <mingli.feng@vivo.com>
(cherry picked from commit 0c811ab6f7)
2022-04-27 03:10:06 +00:00
Vijayanand Jitta
455b1ae0b4 ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Leaf changes summary: 2 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added
function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added
variable

1 Added function:

  [A] 'function int kswapd(void*)'

1 Added variable:

  [A] 'tracepoint __tracepoint_android_vh_kswapd_per_node'

Bug: 184707700
Change-Id: Ia5d5bd08f81ec4d9a957636d7fc580b79ce9fba2
Signed-off-by: Vijayanand Jitta <quic_vjitta@quicinc.com>
2022-04-26 16:09:06 +05:30
fengmingli
61b109251b ANDROID: usb: add EXPORT_TRACE_SYMBOL to export tracepoint
To use the tracepoint in kernel module, add EXPORT_TRACE_SYMBOL_GPL to
export the dwc3_event tracepoint.

Bug: 189130101

Change-Id: I3a917af82c9d8c19a085c5fc1a30c1b9af4b6885
Signed-off-by: fengmingli <mingli.feng@vivo.com>
(cherry picked from commit fe2ecaf37f)
2022-04-25 08:09:10 +00:00
Greg Kroah-Hartman
ec1a28c7c0 Merge 5.15.35 into android13-5.15
Changes in 5.15.35
	drm/amd/display: Add pstate verification and recovery for DCN31
	drm/amd/display: Fix p-state allow debug index on dcn31
	hamradio: defer 6pack kfree after unregister_netdev
	hamradio: remove needs_free_netdev to avoid UAF
	cpuidle: PSCI: Move the `has_lpi` check to the beginning of the function
	ACPI: processor idle: Check for architectural support for LPI
	ACPI: processor idle: Allow playing dead in C3 state
	ACPI: processor: idle: fix lockup regression on 32-bit ThinkPad T40
	btrfs: remove unused parameter nr_pages in add_ra_bio_pages()
	btrfs: remove no longer used counter when reading data page
	btrfs: remove unused variable in btrfs_{start,write}_dirty_block_groups()
	soc: qcom: aoss: Expose send for generic usecase
	dt-bindings: net: qcom,ipa: add optional qcom,qmp property
	net: ipa: request IPA register values be retained
	btrfs: release correct delalloc amount in direct IO write path
	ALSA: core: Add snd_card_free_on_error() helper
	ALSA: sis7019: Fix the missing error handling
	ALSA: ali5451: Fix the missing snd_card_free() call at probe error
	ALSA: als300: Fix the missing snd_card_free() call at probe error
	ALSA: als4000: Fix the missing snd_card_free() call at probe error
	ALSA: atiixp: Fix the missing snd_card_free() call at probe error
	ALSA: au88x0: Fix the missing snd_card_free() call at probe error
	ALSA: aw2: Fix the missing snd_card_free() call at probe error
	ALSA: azt3328: Fix the missing snd_card_free() call at probe error
	ALSA: bt87x: Fix the missing snd_card_free() call at probe error
	ALSA: ca0106: Fix the missing snd_card_free() call at probe error
	ALSA: cmipci: Fix the missing snd_card_free() call at probe error
	ALSA: cs4281: Fix the missing snd_card_free() call at probe error
	ALSA: cs5535audio: Fix the missing snd_card_free() call at probe error
	ALSA: echoaudio: Fix the missing snd_card_free() call at probe error
	ALSA: emu10k1x: Fix the missing snd_card_free() call at probe error
	ALSA: ens137x: Fix the missing snd_card_free() call at probe error
	ALSA: es1938: Fix the missing snd_card_free() call at probe error
	ALSA: es1968: Fix the missing snd_card_free() call at probe error
	ALSA: fm801: Fix the missing snd_card_free() call at probe error
	ALSA: galaxy: Fix the missing snd_card_free() call at probe error
	ALSA: hdsp: Fix the missing snd_card_free() call at probe error
	ALSA: hdspm: Fix the missing snd_card_free() call at probe error
	ALSA: ice1724: Fix the missing snd_card_free() call at probe error
	ALSA: intel8x0: Fix the missing snd_card_free() call at probe error
	ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error
	ALSA: korg1212: Fix the missing snd_card_free() call at probe error
	ALSA: lola: Fix the missing snd_card_free() call at probe error
	ALSA: lx6464es: Fix the missing snd_card_free() call at probe error
	ALSA: maestro3: Fix the missing snd_card_free() call at probe error
	ALSA: oxygen: Fix the missing snd_card_free() call at probe error
	ALSA: riptide: Fix the missing snd_card_free() call at probe error
	ALSA: rme32: Fix the missing snd_card_free() call at probe error
	ALSA: rme9652: Fix the missing snd_card_free() call at probe error
	ALSA: rme96: Fix the missing snd_card_free() call at probe error
	ALSA: sc6000: Fix the missing snd_card_free() call at probe error
	ALSA: sonicvibes: Fix the missing snd_card_free() call at probe error
	ALSA: via82xx: Fix the missing snd_card_free() call at probe error
	ALSA: usb-audio: Cap upper limits of buffer/period bytes for implicit fb
	ALSA: nm256: Don't call card private_free at probe error path
	drm/msm: Add missing put_task_struct() in debugfs path
	firmware: arm_scmi: Remove clear channel call on the TX channel
	memory: atmel-ebi: Fix missing of_node_put in atmel_ebi_probe
	Revert "ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax"
	firmware: arm_scmi: Fix sorting of retrieved clock rates
	media: rockchip/rga: do proper error checking in probe
	SUNRPC: Fix the svc_deferred_event trace class
	net/sched: flower: fix parsing of ethertype following VLAN header
	veth: Ensure eth header is in skb's linear part
	gpiolib: acpi: use correct format characters
	cifs: release cached dentries only if mount is complete
	net: mdio: don't defer probe forever if PHY IRQ provider is missing
	mlxsw: i2c: Fix initialization error flow
	net/sched: fix initialization order when updating chain 0 head
	net: dsa: felix: suppress -EPROBE_DEFER errors
	net: ethernet: stmmac: fix altr_tse_pcs function when using a fixed-link
	net/sched: taprio: Check if socket flags are valid
	cfg80211: hold bss_lock while updating nontrans_list
	netfilter: nft_socket: make cgroup match work in input too
	drm/msm: Fix range size vs end confusion
	drm/msm/dsi: Use connector directly in msm_dsi_manager_connector_init()
	drm/msm/dp: add fail safe mode outside of event_mutex context
	net/smc: Fix NULL pointer dereference in smc_pnet_find_ib()
	scsi: pm80xx: Mask and unmask upper interrupt vectors 32-63
	scsi: pm80xx: Enable upper inbound, outbound queues
	scsi: iscsi: Move iscsi_ep_disconnect()
	scsi: iscsi: Fix offload conn cleanup when iscsid restarts
	scsi: iscsi: Fix endpoint reuse regression
	scsi: iscsi: Fix conn cleanup and stop race during iscsid restart
	scsi: iscsi: Fix unbound endpoint error handling
	sctp: Initialize daddr on peeled off socket
	netfilter: nf_tables: nft_parse_register can return a negative value
	ALSA: ad1889: Fix the missing snd_card_free() call at probe error
	ALSA: mtpav: Don't call card private_free at probe error path
	io_uring: move io_uring_rsrc_update2 validation
	io_uring: verify that resv2 is 0 in io_uring_rsrc_update2
	io_uring: verify pad field is 0 in io_get_ext_arg
	testing/selftests/mqueue: Fix mq_perf_tests to free the allocated cpu set
	ALSA: usb-audio: Increase max buffer size
	ALSA: usb-audio: Limit max buffer and period sizes per time
	perf tools: Fix misleading add event PMU debug message
	macvlan: Fix leaking skb in source mode with nodst option
	net: ftgmac100: access hardware register after clock ready
	nfc: nci: add flush_workqueue to prevent uaf
	cifs: potential buffer overflow in handling symlinks
	dm mpath: only use ktime_get_ns() in historical selector
	vfio/pci: Fix vf_token mechanism when device-specific VF drivers are used
	net: bcmgenet: Revert "Use stronger register read/writes to assure ordering"
	block: fix offset/size check in bio_trim()
	drm/amd: Add USBC connector ID
	btrfs: fix fallocate to use file_modified to update permissions consistently
	btrfs: do not warn for free space inode in cow_file_range
	drm/amdgpu: conduct a proper cleanup of PDB bo
	drm/amdgpu/gmc: use PCI BARs for APUs in passthrough
	drm/amd/display: fix audio format not updated after edid updated
	drm/amd/display: FEC check in timing validation
	drm/amd/display: Update VTEM Infopacket definition
	drm/amdkfd: Fix Incorrect VMIDs passed to HWS
	drm/amdgpu/vcn: improve vcn dpg stop procedure
	drm/amdkfd: Check for potential null return of kmalloc_array()
	Drivers: hv: vmbus: Deactivate sysctl_record_panic_msg by default in isolated guests
	PCI: hv: Propagate coherence from VMbus device to PCI device
	Drivers: hv: vmbus: Prevent load re-ordering when reading ring buffer
	scsi: target: tcmu: Fix possible page UAF
	scsi: lpfc: Fix queue failures when recovering from PCI parity error
	scsi: ibmvscsis: Increase INITIAL_SRP_LIMIT to 1024
	net: micrel: fix KS8851_MLL Kconfig
	ata: libata-core: Disable READ LOG DMA EXT for Samsung 840 EVOs
	gpu: ipu-v3: Fix dev_dbg frequency output
	regulator: wm8994: Add an off-on delay for WM8994 variant
	arm64: alternatives: mark patch_alternative() as `noinstr`
	tlb: hugetlb: Add more sizes to tlb_remove_huge_tlb_entry
	net: axienet: setup mdio unconditionally
	Drivers: hv: balloon: Disable balloon and hot-add accordingly
	net: usb: aqc111: Fix out-of-bounds accesses in RX fixup
	myri10ge: fix an incorrect free for skb in myri10ge_sw_tso
	spi: cadence-quadspi: fix protocol setup for non-1-1-X operations
	drm/amd/display: Enable power gating before init_pipes
	drm/amd/display: Revert FEC check in validation
	drm/amd/display: Fix allocate_mst_payload assert on resume
	drbd: set QUEUE_FLAG_STABLE_WRITES
	scsi: mpt3sas: Fail reset operation if config request timed out
	scsi: mvsas: Add PCI ID of RocketRaid 2640
	scsi: megaraid_sas: Target with invalid LUN ID is deleted during scan
	drivers: net: slip: fix NPD bug in sl_tx_timeout()
	io_uring: zero tag on rsrc removal
	io_uring: use nospec annotation for more indexes
	perf/imx_ddr: Fix undefined behavior due to shift overflowing the constant
	mm/secretmem: fix panic when growing a memfd_secret
	mm, page_alloc: fix build_zonerefs_node()
	mm: fix unexpected zeroed page mapping with zram swap
	mm: kmemleak: take a full lowmem check in kmemleak_*_phys()
	KVM: x86/mmu: Resolve nx_huge_pages when kvm.ko is loaded
	SUNRPC: Fix NFSD's request deferral on RDMA transports
	memory: renesas-rpc-if: fix platform-device leak in error path
	gcc-plugins: latent_entropy: use /dev/urandom
	cifs: verify that tcon is valid before dereference in cifs_kill_sb
	ath9k: Properly clear TX status area before reporting to mac80211
	ath9k: Fix usage of driver-private space in tx_info
	btrfs: fix root ref counts in error handling in btrfs_get_root_ref
	btrfs: mark resumed async balance as writing
	ALSA: hda/realtek: Add quirk for Clevo PD50PNT
	ALSA: hda/realtek: add quirk for Lenovo Thinkpad X12 speakers
	ALSA: pcm: Test for "silence" field in struct "pcm_format_data"
	nl80211: correctly check NL80211_ATTR_REG_ALPHA2 size
	ipv6: fix panic when forwarding a pkt with no in6 dev
	drm/amd/display: don't ignore alpha property on pre-multiplied mode
	drm/amdgpu: Enable gfxoff quirk on MacBook Pro
	x86/tsx: Use MSR_TSX_CTRL to clear CPUID bits
	x86/tsx: Disable TSX development mode at boot
	genirq/affinity: Consider that CPUs on nodes can be unbalanced
	tick/nohz: Use WARN_ON_ONCE() to prevent console saturation
	ARM: davinci: da850-evm: Avoid NULL pointer dereference
	dm integrity: fix memory corruption when tag_size is less than digest size
	i2c: dev: check return value when calling dev_set_name()
	smp: Fix offline cpu check in flush_smp_call_function_queue()
	i2c: pasemi: Wait for write xfers to finish
	dt-bindings: net: snps: remove duplicate name
	timers: Fix warning condition in __run_timers()
	dma-direct: avoid redundant memory sync for swiotlb
	drm/i915: Sunset igpu legacy mmap support based on GRAPHICS_VER_FULL
	cpu/hotplug: Remove the 'cpu' member of cpuhp_cpu_state
	soc: qcom: aoss: Fix missing put_device call in qmp_get
	net: ipa: fix a build dependency
	cpufreq: intel_pstate: ITMT support for overclocked system
	ax25: add refcount in ax25_dev to avoid UAF bugs
	ax25: fix reference count leaks of ax25_dev
	ax25: fix UAF bugs of net_device caused by rebinding operation
	ax25: Fix refcount leaks caused by ax25_cb_del()
	ax25: fix UAF bug in ax25_send_control()
	ax25: fix NPD bug in ax25_disconnect
	ax25: Fix NULL pointer dereferences in ax25 timers
	ax25: Fix UAF bugs in ax25 timers
	Linux 5.15.35

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I0dd9eaea7f977df42b0a5b9cb9043c879f62718b
2022-04-24 16:58:59 +02:00