platform/kernel/linux-amlogic.git
13 months agobcmdhd: fix possible deadlock during dhdsdio_probe() andn dhdsdio_release() 86/290786/3 accepted/tizen/unified/20230404.140026
Seung-Woo Kim [Mon, 3 Apr 2023 07:53:16 +0000 (16:53 +0900)]
bcmdhd: fix possible deadlock during dhdsdio_probe() andn dhdsdio_release()

Not only during probe but also during release, there is lock
inversion. Remove those lock inversions to fix possible deadlock.

Note: during dhdsdio_probe(), there is still lock inversion
missed from the commit cd03083b2410 ("bcmdhd: fix possible
deadlock during dhdsdio_probe()").

Change-Id: I8c1fb82c3ebaa7ccf58c1e01c94b1d005df42179
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
13 months agobcmdhd: fix possible deadlock during dhdsdio_probe() 83/290583/2
Seung-Woo Kim [Wed, 29 Mar 2023 08:06:50 +0000 (17:06 +0900)]
bcmdhd: fix possible deadlock during dhdsdio_probe()

During dhdsdio_probe, before locking rtnl_lock with
dhd_register_if(), unlock _dhd_mutex_lock_ to avoid
possible deadlock with dhd_open().

This fixes following possible deadlock:
   ======================================================
   [ INFO: possible circular locking dependency detected ]
   4.9.241-TIZEN-amlogic-kvim+ #2 Not tainted
   -------------------------------------------------------
   net-config/516 is trying to acquire lock:
    (_dhd_mutex_lock_){+.+.+.}, at: [<ffffff80021b2f44>] dhd_open+0xd4/0x4b0 [dhd]

   but task is already holding lock:
    (rtnl_mutex){+.+.+.}, at: [<ffffff8009db8028>] rtnl_lock+0x20/0x28

   which lock already depends on the new lock.

   the existing dependency chain (in reverse order) is:

   -> #1 (rtnl_mutex){+.+.+.}:
          __lock_acquire+0x1514/0x1890
          lock_acquire+0xcc/0x278
          mutex_lock_nested+0x88/0x3f8
          rtnl_lock+0x20/0x28
          wiphy_register+0x444/0x600
          wl_cfg80211_attach+0x248/0x12a0 [dhd]
          dhd_attach+0x43c/0xc98 [dhd]
          dhdsdio_probe+0x16c/0x668 [dhd]
          bcmsdh_probe+0x12c/0x238 [dhd]
          bcmsdh_sdmmc_probe+0x110/0x300 [dhd]
          sdio_bus_probe+0xac/0x180
          driver_probe_device+0x214/0x2c8
          __driver_attach+0xd0/0xd8
          bus_for_each_dev+0x78/0xd8
          driver_attach+0x30/0x40
          bus_add_driver+0x1c4/0x230
          driver_register+0x6c/0x110
          sdio_register_driver+0x30/0x40
          bcmsdh_register_client_driver+0x1c/0x30 [dhd]
          bcmsdh_register+0x44/0x90 [dhd]
          dhd_bus_register+0x28/0x68 [dhd]
          dhd_wifi_platform_load+0x2bc/0x508 [dhd]
          dhd_wifi_platform_register_drv+0xe8/0x198 [dhd]
          0xffffff80022f309c
          do_one_initcall+0x58/0x168
          do_init_module+0x64/0x1cc
          load_module+0x2010/0x2678
          SyS_finit_module+0xd4/0xf0
          __sys_trace_return+0x0/0x4

   -> #0 (_dhd_mutex_lock_){+.+.+.}:
          print_circular_bug+0x7c/0x2e0
          __lock_acquire+0x1440/0x1890
          lock_acquire+0xcc/0x278
          mutex_lock_nested+0x88/0x3f8
          dhd_open+0xd4/0x4b0 [dhd]
          __dev_open+0xe4/0x150
          __dev_change_flags+0xa0/0x160
          dev_change_flags+0x34/0x70
          devinet_ioctl+0x76c/0x868
          inet_ioctl+0x140/0x158
          sock_do_ioctl+0x40/0x80
          sock_ioctl+0x260/0x340
          do_vfs_ioctl+0xc4/0x898
          SyS_ioctl+0x8c/0xa8
          __sys_trace_return+0x0/0x4

   other info that might help us debug this:

    Possible unsafe locking scenario:

          CPU0                    CPU1
          ----                    ----
     lock(rtnl_mutex);
                                  lock(_dhd_mutex_lock_);
                                  lock(rtnl_mutex);
     lock(_dhd_mutex_lock_);

    *** DEADLOCK ***

   1 lock held by net-config/516:
    #0:  (rtnl_mutex){+.+.+.}, at: [<ffffff8009db8028>] rtnl_lock+0x20/0x28

   stack backtrace:
   CPU: 3 PID: 516 Comm: net-config Not tainted 4.9.241-TIZEN-amlogic-kvim+ #2
   Hardware name: Khadas VIM3 (DT)
   Call trace:
   [<ffffff800908baa8>] dump_backtrace+0x0/0x2a8
   [<ffffff800908bdd4>] show_stack+0x24/0x30
   [<ffffff80095b92b0>] dump_stack+0xe4/0x12c
   [<ffffff8009121bd0>] print_circular_bug+0x1d0/0x2e0
   [<ffffff8009124898>] __lock_acquire+0x1440/0x1890
   [<ffffff800912510c>] lock_acquire+0xcc/0x278
   [<ffffff800a0eb0b8>] mutex_lock_nested+0x88/0x3f8
   [<ffffff80021b2f44>] dhd_open+0xd4/0x4b0 [dhd]
   [<ffffff8009da6fd4>] __dev_open+0xe4/0x150
   [<ffffff8009da7320>] __dev_change_flags+0xa0/0x160
   [<ffffff8009da7414>] dev_change_flags+0x34/0x70
   [<ffffff8009e8e4e4>] devinet_ioctl+0x76c/0x868
   [<ffffff8009e91280>] inet_ioctl+0x140/0x158
   [<ffffff8009d78110>] sock_do_ioctl+0x40/0x80
   [<ffffff8009d79490>] sock_ioctl+0x260/0x340
   [<ffffff80092a349c>] do_vfs_ioctl+0xc4/0x898
   [<ffffff80092a3cfc>] SyS_ioctl+0x8c/0xa8
   [<ffffff8009083a1c>] __sys_trace_return+0x0/0x4

Change-Id: I8afd6cb8e5ddec5588060715b2de6986de054fee
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
13 months agoamlogic: dmc: Remove __init section macro for code used from probe 06/290206/2 accepted/tizen/unified/20230322.164707
Seung-Woo Kim [Tue, 21 Mar 2023 10:45:35 +0000 (19:45 +0900)]
amlogic: dmc: Remove __init section macro for code used from probe

Data and function used by probe function should not be in __init
section. Remove __init and __initdata macros for code called from
probe.

Change-Id: Ibf0d06e6d5751a342db3531e83a186c83812963a
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
13 months agoamlogic: Remove __init from probe functions 05/290205/2
Seung-Woo Kim [Tue, 21 Mar 2023 10:41:51 +0000 (19:41 +0900)]
amlogic: Remove __init from probe functions

Driver probe function can be run several times if it is built as
module, so it should not be __init function. Remove __init macro
from probe functions from amlogic drivers.

Change-Id: I59a0b29294a7c450a201e891666240f9704b91ce
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
13 months agoamlogic: drm: meson_gem: Fix a deadlock issue 82/290182/2
Jaehoon Chung [Tue, 21 Mar 2023 05:20:27 +0000 (14:20 +0900)]
amlogic: drm: meson_gem: Fix a deadlock issue

After enabled the lock debug config, the below message is displayed.

[   20.897676@5] =============================================
[   20.899234@5] [ INFO: possible recursive locking detected ]
[   20.904782@5] 4.9.241-TIZEN-amlogic-kvim+ #6 Not tainted
[   20.910067@5] ---------------------------------------------
[   20.915614@5] enlightenment/579 is trying to acquire lock:
[   20.921074@5]  (&dev->struct_mutex){+.+...}, at: [<ffffff80096db7d8>] drm_gem_object_unreference_unlocked+0x20/0x140
[   20.931561@5]
[   20.931561@5] but task is already holding lock:
[   20.937714@5]  (&dev->struct_mutex){+.+...}, at: [<ffffff8009c8a744>] am_meson_gem_cpu_fini_ioctl+0x34/0xe8
[   20.947421@5]
[   20.947421@5] other info that might help us debug this:
[   20.954267@5]  Possible unsafe locking scenario:
[   20.954267@5]
[   20.960507@5]        CPU0
[   20.963107@5]        ----
[   20.965707@5]   lock(&dev->struct_mutex);
[   20.969693@5]   lock(&dev->struct_mutex);
[   20.973680@5]
[   20.973680@5]  *** DEADLOCK ***
[   20.973680@5]
[   20.980094@5]  May be due to missing lock nesting notation
[   20.980094@5]
[   20.987201@5] 1 lock held by enlightenment/579:
[   20.991707@5]  #0:  (&dev->struct_mutex){+.+...}, at: [<ffffff8009c8a744>] am_meson_gem_cpu_fini_ioctl+0x34/0xe8
[   21.001847@5]
[   21.001847@5] stack backtrace:
[   21.006529@5] CPU: 5 PID: 579 Comm: enlightenment Not tainted 4.9.241-TIZEN-amlogic-kvim+ #6
[   21.014934@5] Hardware name: Khadas VIM3 (DT)
[   21.019268@5] Call trace:
[   21.021871@5] [<ffffff800908b9e8>] dump_backtrace+0x0/0x268
[   21.027415@5] [<ffffff800908bc78>] show_stack+0x28/0x38
[   21.032616@5] [<ffffff80095b46d4>] dump_stack+0xe0/0x12c
[   21.037903@5] [<ffffff8009122df4>] __lock_acquire+0x1064/0x1b28
[   21.043795@5] [<ffffff8009123e80>] lock_acquire+0xe8/0x288
[   21.049255@5] [<ffffff80096db808>] drm_gem_object_unreference_unlocked+0x50/0x140
[   21.056709@5] [<ffffff8009c8a7b8>] am_meson_gem_cpu_fini_ioctl+0xa8/0xe8
[   21.063382@5] [<ffffff80096dcbe4>] drm_ioctl+0x204/0x4a8
[   21.068670@5] [<ffffff80092a1a74>] do_vfs_ioctl+0x674/0x8e0
[   21.074215@5] [<ffffff80092a1d74>] SyS_ioctl+0x94/0xa8
[   21.079328@5] [<ffffff8009083a1c>] __sys_trace_return+0x0/0x4
[   21.166643@2] input: Virtual Key Device as /devices/virtual/input/input6

Change-Id: Iadb1df81b88b288f2d6841520ce55c2ee47cedef
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
13 months agoamlogic: hdmitx: Remove undefined pm ops 11/290011/1
Seung-Woo Kim [Fri, 17 Mar 2023 06:22:09 +0000 (15:22 +0900)]
amlogic: hdmitx: Remove undefined pm ops

There is no pm ops for hdmitx, but it is called when
CONFIG_HIBERNATION is enabled. Just remove the not defined
pm ops.

Change-Id: I33a0f8a2e70490375e46850500dd52d30bdd5f8c
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
13 months agoamlogic: osd: Block undefined INSTABOOT code with ifdef 10/290010/1
Seung-Woo Kim [Fri, 17 Mar 2023 06:05:33 +0000 (15:05 +0900)]
amlogic: osd: Block undefined INSTABOOT code with ifdef

In osd code, there is not defined INSTABOOT code block, but some
code is not wrapped with the config option #ifdef. Fix to block
INSTABOOT code block with ifdef properly.

Change-Id: I6b87e3f6448d70a5fff6afa15414a9a2b7490ad7
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
13 months agoinclude/linux/notifier.h: SRCU: fix ctags 09/290009/1
Sam Protsenko [Fri, 2 Nov 2018 22:47:53 +0000 (15:47 -0700)]
include/linux/notifier.h: SRCU: fix ctags

ctags indexing ("make tags" command) throws this warning:

    ctags: Warning: include/linux/notifier.h:125:
    null expansion of name pattern "\1"

This is the result of DEFINE_PER_CPU() macro expansion.  Fix that by
getting rid of line break.

Similar fix was already done in commit 25528213fe9f ("tags: Fix
DEFINE_PER_CPU expansions"), but this one probably wasn't noticed.

Link: http://lkml.kernel.org/r/20181030202808.28027-1-semen.protsenko@linaro.org
Fixes: 9c80172b902d ("kernel/SRCU: provide a static initializer")
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
[sw0312.kim: backport upstream commit 94e297c50b52]

Change-Id: I151a20cbdf616fba7671ee805459942f48957c9f

15 months agotracing: Apply upper limit of pid to prevent buffer overflow 51/287651/2 accepted/tizen_7.0_unified tizen_7.0 accepted/tizen/7.0/unified/20230203.164135 accepted/tizen/unified/20230206.093830 accepted/tizen/unified/20230206.093947
Sung-hun Kim [Thu, 2 Feb 2023 03:05:37 +0000 (12:05 +0900)]
tracing: Apply upper limit of pid to prevent buffer overflow

A member array `map_pid_to_cmdline` is allocated as much as
PID_MAX_DEFAULT. There is no consideration when a given pid
exceeds PID_MAX_DEFAULT which can make buffer overflow.

This patch handles such cases by just returning -1 for a case
that the given pid exceeds PID_MAX_DEFAULT. For such cases,
the user of trace loses tgid information for a given pid.

Change-Id: I589eda187490eddbd26fa5300a288097842d9af0
Signed-off-by: Sung-hun Kim <sfoon.kim@samsung.com>
16 months agoamlogic: drm: Add extcon hdmi connection uevent 51/286351/2 accepted/tizen/unified/20230106.165104
Hoegeun Kwon [Wed, 4 Jan 2023 04:02:03 +0000 (13:02 +0900)]
amlogic: drm: Add extcon hdmi connection uevent

Add extcon hdmi connection and disconnection uevent when extcon
module is enabled.

Change-Id: I95686a9ec15700966103aaa14a7fe2702bd30a3a
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
22 months agoarm64: dts: amlogic: VIM3/VIM3L/OdroidC4/OdroidN2: Use 256MB ion_cma heap 18/277218/1 accepted/tizen_7.0_unified_hotfix tizen_7.0_hotfix accepted/tizen/7.0/unified/20221110.062824 accepted/tizen/7.0/unified/hotfix/20221116.110431 accepted/tizen/unified/20220704.213049 submit/tizen/20220704.040831 tizen_7.0_m2_release
Seung-Woo Kim [Mon, 4 Jul 2022 02:25:18 +0000 (11:25 +0900)]
arm64: dts: amlogic: VIM3/VIM3L/OdroidC4/OdroidN2: Use 256MB ion_cma heap

In amlogic target, drm gem is allocated from ion_cma heap. 128MB size is
not enough, so use 256MB ion_cma heap.

Change-Id: Idd328ec1a8cea4886c5528e815164556496a3324
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agopackaging: do not remove _localversion-rt 57/272957/2 accepted/tizen/unified/20220329.134539 submit/tizen/20220329.014943
Seung-Woo Kim [Mon, 28 Mar 2022 11:03:26 +0000 (20:03 +0900)]
packaging: do not remove _localversion-rt

The _localversion-rt is used to make localversion-rt from next
gbs incremental build. So removing it causes different result for
next gbs incremental build. Do not remove the _localversion-rt.

Change-Id: Ia9e3edad218dc3ff42698a8aba9a33510de53e3b
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agopackaging: Change source name with spec name 26/272826/1 accepted/tizen/unified/20220328.131520 submit/tizen/20220328.020708
Seung-Woo Kim [Fri, 25 Mar 2022 06:42:33 +0000 (15:42 +0900)]
packaging: Change source name with spec name

To support gbs incremental build fully, the setup command in spec
should be without '-n' option. For it, change source name with
spec name to find source directory properly during build.

Change-Id: Iabe3edc88ea2792685bd1e48b1422cb732b323c2
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agopackaging: Fix to use build dir path with source name 00/272700/2 accepted/tizen/unified/20220323.062707 submit/tizen/20220323.023335
Seung-Woo Kim [Wed, 23 Mar 2022 01:51:51 +0000 (10:51 +0900)]
packaging: Fix to use build dir path with source name

This spec has different spec name and source name and it causes
error during setup command if name is not set with '-n' option.
Fix to use build dir path with source name with '-n' option.

Change-Id: I5567e0bdf43836c8ee243ad894c1603fe8cce422
Fixes: commit 7ebcfd522cb2 ("spec: packaging and defconfigs")
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agopackaging: Fix perf version with assigned value 99/272699/2
Seung-Woo Kim [Wed, 23 Mar 2022 01:17:11 +0000 (10:17 +0900)]
packaging: Fix perf version with assigned value

In the spec, there is no fullVersion define. Instead, fix perf
version with kernel version and build arch and chipset name.

Change-Id: Ie6ac3a66605a8bc107c5814f48a020df796f66ee
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agoscript: build RT kernels 14/272614/2 submit/tizen/20220322.224920 submit/tizen/20220323.180849
Łukasz Stelmach [Mon, 21 Mar 2022 22:18:37 +0000 (23:18 +0100)]
script: build RT kernels

Change-Id: Ie91739a89c49e8077c98d3ac34ffa1fdd3a3e5ba
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
2 years agoscript: use localversion-amlogic 13/272613/2
Łukasz Stelmach [Mon, 21 Mar 2022 19:13:04 +0000 (20:13 +0100)]
script: use localversion-amlogic

Set custom version via localversion-amlogic file instead of EXTRVERSION
in the Makefile to avoid commiting automatically modified Makefile
by mistake.

Change-Id: I6c872eb26b8c6eb732fb6d47b5d05ef73a0418ea
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
2 years agospec: packaging and defconfigs 43/272443/3
Łukasz Stelmach [Tue, 22 Feb 2022 20:03:24 +0000 (21:03 +0100)]
spec: packaging and defconfigs

Add defconfig files to build RT kernels. Build additional RPM packages.

Change-Id: I2a789031f29a7c41de02e8ce980e51d0d9918403
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
2 years agoRemove unused mutexes 42/272442/4
Łukasz Stelmach [Fri, 11 Mar 2022 21:21:23 +0000 (22:21 +0100)]
Remove unused mutexes

Due to changes introduced by the RT patch struct mutex no longer contains
fields that contain self-references. Without them several mutexes appear
as unused and can safely be remove to prevent compilation errors.

Change-Id: Iac3f0d26b5fb58908c69addd505b46b97b66b761
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
2 years agopatch-4.9.241-rt156-tizen.patch 41/272441/3
Clark Williams [Tue, 22 Feb 2022 19:03:47 +0000 (20:03 +0100)]
patch-4.9.241-rt156-tizen.patch

Apply patch-4.9.241-rt156 adjusted for the following commits in the history

25c6a63c469f8
6eaff2cd5830a
b7fdaa641fb95
1f998b3593797
26c2154816c76
005bf1ada3cd6
4b65a5db36278
2178e84423daa
b3ea9acfdc84f
7c4e0f0832a34
c02433dd6de32
5044292c36158
f791c42b6371b
8cd9ca2e48bc4
97d5fd27f7af6
a7e410c1359f3
91d7a0007aa40
47bbcd6bf8f92
60e98ef37d3dc
1a37dd20899c4
cffed7e631b56

Change-Id: I9421bdf156fa0b309833c83ec820ec1af8c710f0
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
2 years agoscript: build: Fit to use out-of-tree build 85/272585/1
Seung-Woo Kim [Fri, 18 Mar 2022 09:50:49 +0000 (18:50 +0900)]
script: build: Fit to use out-of-tree build

The build script in amlogic has two board support. Built as
in-tree, re-build with differnt board causes almost fully changeed.
To avoid the unnecessary rebuild performance down, use out-of-tree
build with build directory for each board.

Change-Id: I9e4211c4ccfb55aed718ece7cb8b2f0a977351d3
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agoscript: build: Fix to use proper odroid-n2 dt binary 84/272584/1
Seung-Woo Kim [Fri, 18 Mar 2022 09:55:21 +0000 (18:55 +0900)]
script: build: Fix to use proper odroid-n2 dt binary

The dt file meson64_odroidn2_drm.dts is merged into
meson64_odroidn2.dts fully. So fix to use proper dtb
from build script.

Change-Id: Ie867fba076dbe052675510a0060444fd00b85dfa
Fixes: commit 1156b464e225 ("arm64: dts: amlogic: Use only meson64_odroidn2.dtb for OdroidN2 boards")
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agogpu/arm: utgard: Fix out of tree (O=...) builds 40/272440/2
Łukasz Stelmach [Tue, 1 Mar 2022 15:27:59 +0000 (16:27 +0100)]
gpu/arm: utgard: Fix out of tree (O=...) builds

Using file with $(src) path is not enough for out-of-tree build.
Fix with $(srctree) aslo.

Change-Id: Ibd8695a9e88afeec0eeadcb931bfee6efc103303
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agopackaging: add baselibs.conf file for VIM3 armv7l 68/269668/2 accepted/tizen/unified/20220121.001233 submit/tizen/20220120.082652
Jaehoon Chung [Thu, 20 Jan 2022 02:51:14 +0000 (11:51 +0900)]
packaging: add baselibs.conf file for VIM3 armv7l

Add baselibs.conf file to create VIM3 armv7l packages.
When it's using "prefix", it's adjusted all packages.
So it needs to copy to /boot about files under /usr/boot/.

Change-Id: Ic7473e16dcfd0fd6619b3bfc3daa9bb6e84d7f32
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
2 years agopackaging: remove unnecessary symlinks from modules 06/269606/1
Seung-Woo Kim [Wed, 19 Jan 2022 03:54:26 +0000 (12:54 +0900)]
packaging: remove unnecessary symlinks from modules

The symbolic links, build and source, are unnecessary because
source build path is not packaged in modules packages. Remove
the unnecessary symlinks from modules package.

Change-Id: Ia2dea44064d6747e89db571fa36d9ee7b695814c
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agof2fs: fix wrong checkpoint_changed value in f2fs_remount() 62/266762/1 accepted/tizen_6.5_unified tizen_6.5 accepted/tizen/6.5/unified/20211121.212438 accepted/tizen/unified/20211119.134218 submit/tizen/20211117.113146 submit/tizen_6.5/20211119.012519
Chao Yu [Thu, 18 Nov 2021 06:35:20 +0000 (15:35 +0900)]
f2fs: fix wrong checkpoint_changed value in f2fs_remount()

In f2fs_remount(), return value of test_opt() is an unsigned int type
variable, however when we compare it to a bool type variable, it cause
wrong result, fix it.

Fixes: 4354994f097d ("f2fs: checkpoint disabling")
Signed-off-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
[dwoo08.lee: backport from mainline commit 277afbde6ca2]
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
Change-Id: Icd4dfff441bf84f605d8d09de7be89da88548654

2 years agof2fs: flush data when enabling checkpoint back 61/266761/1
Jaegeuk Kim [Wed, 17 Nov 2021 12:20:52 +0000 (21:20 +0900)]
f2fs: flush data when enabling checkpoint back

During checkpoint=disable period, f2fs bypasses all the synchronous IOs such as
sync and fsync. So, when enabling it back, we must flush all of them in order
to keep the data persistent. Otherwise, suddern power-cut right after enabling
checkpoint will cause data loss.

Fixes: 4354994 ("f2fs: checkpoint disabling")
Cc: stable@vger.kernel.org
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
[dwoo08.lee: backport from mainline commit b0ff4fe746fd]
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
Change-Id: Ic0810d99c5a3938e191461bd66e7862a4a68e12b

2 years agof2fs: checkpoint disabling 60/266760/1
Daniel Rosenberg [Tue, 21 Aug 2018 02:21:43 +0000 (19:21 -0700)]
f2fs: checkpoint disabling

Note that, it requires "f2fs: return correct errno in f2fs_gc".

This adds a lightweight non-persistent snapshotting scheme to f2fs.

To use, mount with the option checkpoint=disable, and to return to
normal operation, remount with checkpoint=enable. If the filesystem
is shut down before remounting with checkpoint=enable, it will revert
back to its apparent state when it was first mounted with
checkpoint=disable. This is useful for situations where you wish to be
able to roll back the state of the disk in case of some critical
failure.

Signed-off-by: Daniel Rosenberg <drosen@google.com>
[Jaegeuk Kim: use SB_RDONLY instead of MS_RDONLY]
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
[dwoo08.lee: port from android-common-kernel branch android-4.9-q commit f22f93a90601]
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
Change-Id: I7020cb09b360b291b324baae71882e64a7776ed8

2 years agoARM: defconfig: disable ANDROID_LOGGER 91/266591/1 accepted/tizen/6.5/unified/20211116.084158 accepted/tizen/unified/20211116.130418 submit/tizen/20211116.032511 submit/tizen_6.5/20211116.032524
Jaehoon Chung [Tue, 16 Nov 2021 03:54:43 +0000 (12:54 +0900)]
ARM: defconfig: disable ANDROID_LOGGER

Disable ANDROID_LOGGER.

Change-Id: I0fa79d5f7829f59eb8467f4daa8e81a390ec57fa
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
2 years agoBluetooth: Set le data length command and event 47/261647/1 accepted/tizen/6.5/unified/20211028.115810 accepted/tizen/unified/20210722.124831 submit/tizen/20210722.060806 submit/tizen_6.5/20211028.163201 tizen_6.5.m2_release
Sudha Bheemanna [Fri, 16 Sep 2016 10:07:22 +0000 (15:37 +0530)]
Bluetooth: Set le data length command and event

Sets the data length for the le data packet with in the
advised limits. MGMT command and event are added to handle
the setting of data length.

Change-Id: Ia5c2167743cc9a29190e5631973e9d52d41caa1d
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Read host suggested default le data length 46/261646/1
Sudha Bheemanna [Fri, 16 Sep 2016 07:24:31 +0000 (12:54 +0530)]
Bluetooth: Read host suggested default le data length

This patch adds MGMT command and code for supporting reading
default le data length value set at the controller.

Change-Id: I2b81982dc26ed5af4a8f8a3d3913db5d64625260
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Write host suggested default le data length 45/261645/1
Sudha Bheemanna [Fri, 16 Sep 2016 06:39:57 +0000 (12:09 +0530)]
Bluetooth: Write host suggested default le data length

This patch adds MGMT command and code for supporting write
default le data length command to the controller.

Change-Id: I3d2c8b622b7913a3ed542342e3ba8076c30dc279
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Read LE Max data length command 44/261644/1
Sudha Bheemanna [Fri, 16 Sep 2016 05:08:30 +0000 (10:38 +0530)]
Bluetooth: Read LE Max data length command

This patch adds the MGMT command and code to support reading
the maximum data length supported command for LE.

Change-Id: I4dc0041f2070de2ccb6a4164c8823612863c941e
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Fix IPSP connection callback event issue. 43/261643/1
h.sandeep [Fri, 16 Sep 2016 09:15:24 +0000 (14:45 +0530)]
Bluetooth: Fix IPSP connection callback event issue.

This patch fixes the IPSP connection callback event issue
between kernel and bluez layer.

Change-Id: Ia4d625aa8a6dbc9da89a7d9f12308af9c90d0594
Signed-off-by: h.sandeep <h.sandeep@samsung.com>
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: IPSP Connect/Disconnect apis 42/261642/1
Sudha Bheemanna [Thu, 15 Sep 2016 07:23:03 +0000 (12:53 +0530)]
Bluetooth: IPSP Connect/Disconnect apis

This patch adds MGMT code to support IPSP connect and
disconnect apis and handle connection state changed event.

Change-Id: I1c41ec4f38cf9a108e443def3bc23c1b964e2985
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add support to enable/disable IPSP 41/261641/1
Sudha Bheemanna [Thu, 15 Sep 2016 04:42:09 +0000 (10:12 +0530)]
Bluetooth: Add support to enable/disable IPSP

This patch supports MGMT commands and code to enable or disable
IPSP 6LowPan features.

Change-Id: Ia866ecfa517c7d7e4320f17d94d80dfeb9261e59
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Fix issue in the Set LE privacy function. 40/261640/1
Sudha Bheemanna [Thu, 8 Sep 2016 10:51:01 +0000 (16:21 +0530)]
Bluetooth: Fix issue in the Set LE privacy function.

This patch fixes not to check the hdev power before setting
LE Privacy.

Change-Id: I344ea13b1d90527e3e7554ec616cdc640b85159c
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Store the key if auth type is P192 39/261639/1
Sudha Bheemanna [Mon, 12 Sep 2016 07:16:44 +0000 (12:46 +0530)]
Bluetooth: Store the key if auth type is P192

This patch allows to store the key after authentication
if auth type is "HCI_LK_AUTH_COMBINATION_P192"

Change-Id: Ie44dbe7dfec361edab61aceaf9b2ca4057b88fa5
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Cancel the Sniff timer 38/261638/1
Sudha Bheemanna [Thu, 8 Sep 2016 11:31:39 +0000 (17:01 +0530)]
Bluetooth: Cancel the Sniff timer

This patch adds code to cancel the sniff timer.

Change-Id: I756d3b08acf6462044d1fb204064fe12ce1238c1
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Enable sniff mode for incoming connection 37/261637/1
Sudha Bheemanna [Thu, 8 Sep 2016 11:10:50 +0000 (16:40 +0530)]
Bluetooth: Enable sniff mode for incoming connection

Add provision to set the link poilicy to enable sniff mode
for incoming connection.

Change-Id: Ifff9e9f0838f26a6c96d81f4cbaae43429aa231f
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Modify fast connectable type. 36/261636/1
Sudha Bheemanna [Thu, 8 Sep 2016 10:31:23 +0000 (16:01 +0530)]
Bluetooth: Modify fast connectable type.

This patch modifies the fast connectable function
to just set the type.

Change-Id: I0cce96f85d823f9798ae7f147c4e33ce7b18e0e3
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Send Authentication Request command on pairing failure 35/261635/1
Sudha Bheemanna [Thu, 8 Sep 2016 09:41:28 +0000 (15:11 +0530)]
Bluetooth: Send Authentication Request command on pairing failure

This patch allows to send HCI_OP_AUTH_REQUESTED command
to the remote device if pairing failure happens because
of pin or key missing error.

Change-Id: I9c28394dc06b22fd5fe9e58ac0b7d728c086bde4
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Enable inquiry and page scan 34/261634/1
Sudha Bheemanna [Thu, 8 Sep 2016 09:24:54 +0000 (14:54 +0530)]
Bluetooth: Enable inquiry and page scan

This patch enables the inquiry and page scan after ACL
disconnection with one device and if there are no other
devices connected.

Change-Id: Ifb28be7d23f237d35112b2e0739ed55169baacf7
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Change authentication requirement. 33/261633/1
Sudha Bheemanna [Thu, 8 Sep 2016 07:34:11 +0000 (13:04 +0530)]
Bluetooth: Change authentication requirement.

This patch updates the authentication requirement to general
MITM if local and remote device IO capabilities are not
NO_INPUT_NO_OUTPUT.

Change-Id: Ie3955c3f8287418e74af20d40bdf30d0f1963e31
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Set link Supervision timeout for a connection 32/261632/1
Sudha Bheemanna [Thu, 8 Sep 2016 06:54:43 +0000 (12:24 +0530)]
Bluetooth: Set link Supervision timeout for a connection

This patch allows to set the supervision timeout for a connection
if the device role is master.

Change-Id: I7897167ec07803f3059f2ab4d3314b0b7a951533
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Set filter policy for LE connection 31/261631/1
Sudha Bheemanna [Thu, 8 Sep 2016 05:51:06 +0000 (11:21 +0530)]
Bluetooth: Set filter policy for LE connection

This patch sets the filter policy to a default value 0x01 during
LE auto connection if the destination address is not set. And it
updates the destination address once the LE connection complete
event is recieved during LE auto connection. And for it checks
valid destination address before cancelling LE connection when
connection timeout occurs.

Change-Id: I9877556c0b0ab4826f5f4934ead4d85b7837036d
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
[squash patches, LE connection policy, set dest address and check dest address before cancelling connection]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Get Advertising TX power 30/261630/1
Sudha Bheemanna [Wed, 7 Sep 2016 09:52:08 +0000 (15:22 +0530)]
Bluetooth: Get Advertising TX power

This patch adds MGMT command to read the advertising TX power.

Change-Id: Ide9e5d332f034928d2eae2cbd68a025a0d42be1b
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Set the link for SCO connection 29/261629/1
Sudha Bheemanna [Thu, 8 Sep 2016 07:07:45 +0000 (12:37 +0530)]
Bluetooth: Set the link for SCO connection

This patch sets the link policy for SCO/eSCO connection.

Change-Id: I71caef5a3887f73a10329b6886c8cf52b80e8d37
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
[add link policy setting in sco connection]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add MGMT command to set SCO settings 28/261628/1
Sudha Bheemanna [Tue, 6 Sep 2016 11:08:36 +0000 (16:38 +0530)]
Bluetooth: Add MGMT command to set SCO settings

Added code to set sco settings.

Change-Id: I37aa572436241b06e00d1e9e75964aac747eeba5
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
[remove sco link policy part]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add multiple LE advertise state change event 27/261627/1
Sudha Bheemanna [Thu, 8 Sep 2016 05:01:17 +0000 (10:31 +0530)]
Bluetooth: Add multiple LE advertise state change event

This patch adds code for providing multiple LE advertisement state
changed event to upper layer.

Change-Id: I58fb8044e74402376ec30b121081edce7c8709d1
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
[divide hci_vendor_mutli_adv_state_change_evt and remove hci event structure from mgmt]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add LE device found MGMT event 26/261626/1
Sudha Bheemanna [Thu, 8 Sep 2016 04:40:03 +0000 (10:10 +0530)]
Bluetooth: Add LE device found MGMT event

This patch adds new MGMT event for LE device discovery and allows
the handling of all advertisement packets in platform.

Change-Id: I1927acb75eff0b60a5899898c6d7a000e1a108ef
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: fix vendor ext rssi link alert event 25/261625/1
Seung-Woo Kim [Wed, 28 Sep 2016 16:59:05 +0000 (01:59 +0900)]
Bluetooth: fix vendor ext rssi link alert event

This patch fixes style for rssi link alert event from vendor
specific group ext.

Change-Id: I0e7003e417c5f5a590cce8264caccad515dd3c10
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add H/W TX timeout error MGMT event 24/261624/1
Sudha Bheemanna [Wed, 7 Sep 2016 11:17:58 +0000 (16:47 +0530)]
Bluetooth: Add H/W TX timeout error MGMT event

This patch sends the H/W TX timeout error MGMT event if HCI command
timeout occurs after sending HCI commands.

Change-Id: I5eb593f2fe4d31c404dd94ef582790e47d03b10a
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add hardware error MGMT event 23/261623/1
Sudha Bheemanna [Wed, 7 Sep 2016 10:12:22 +0000 (15:42 +0530)]
Bluetooth: Add hardware error MGMT event

Add code to handle hardware error MGMT event.

Change-Id: I5875ea2aeae7aba95c1f8e15b456704dc6bcdee4
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add LE vendor specific event handler 22/261622/1
Sudha Bheemanna [Thu, 8 Sep 2016 05:26:15 +0000 (10:56 +0530)]
Bluetooth: Add LE vendor specific event handler

This patch adds the vendor specific LE meta event handler.
It handles the vendor specific handles like,
LE_MULTI_ADV_STATE_CHANGE_SUB_EVENT, LE_RSSI_LINK_ALERT.

Change-Id: I1f344a31e36f9c7442fe0bd8b598e67d9f5fb9bf
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
[divide hci vendor speicif group event function]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add set LE scan parameter feature 21/261621/1
Sudha Bheemanna [Thu, 25 Aug 2016 07:16:07 +0000 (12:46 +0530)]
Bluetooth: Add set LE scan parameter feature

Added new MGMT command to set LE scan parameters

Change-Id: I5ea660f97e93dfcc72273971ad0250e7f582f718
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Set Manufacturer data feature 20/261620/1
Sudha Bheemanna [Thu, 25 Aug 2016 06:43:09 +0000 (12:13 +0530)]
Bluetooth: Set Manufacturer data feature

Added new MGMT command to set the manufacturer data
in the BR/EDR packet.

Change-Id: Ie08062f4cad0c676deab94fd95fdc1a8c5602135
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add LE connection parameter update procedure 19/261619/1
Sudha Bheemanna [Thu, 25 Aug 2016 06:28:22 +0000 (11:58 +0530)]
Bluetooth: Add LE connection parameter update procedure

Added new MGMT command to update LE connection parameters

Change-Id: I6ae16513437cd42d40e75958aa8415baa1cbedbb
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add stop LE auto connection feature 18/261618/1
Sudha Bheemanna [Thu, 25 Aug 2016 06:11:34 +0000 (11:41 +0530)]
Bluetooth: Add stop LE auto connection feature

Added new MGMT command to disable LE auto connection.

Change-Id: I1f5f61b83227501ad54019008b405fd47fd722a3
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add BT LE discovery feature 17/261617/1
Sudha Bheemanna [Thu, 25 Aug 2016 05:53:02 +0000 (11:23 +0530)]
Bluetooth: Add BT LE discovery feature

This patch adds new MGMT commands to start LE discovery separately
and handles LE discovery state.

Change-Id: I85958b8c2b5c7e28f57c69e86037ab1e61a75db0
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Update device name on remote_name_event 16/261616/1
Sudha Bheemanna [Thu, 25 Aug 2016 04:47:19 +0000 (10:17 +0530)]
Bluetooth: Update device name on remote_name_event

This patch updates the device name on receiving the HCI event
remote_name_event during connection establishment.

Change-Id: I9a217e6760b1803a70af201a3f6903e722079749
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add RSSI Monitor feature 15/261615/1
Sudha Bheemanna [Wed, 24 Aug 2016 11:51:15 +0000 (17:21 +0530)]
Bluetooth: Add RSSI Monitor feature

Added feature support for monitoring the RSSI value.
Commands and events for enabling, disabling and setting
rssi threshold values are added.

Change-Id: I850643a9228afc017e54217a11826b9c6a68a96b
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Functions to modify WhiteList 14/261614/1
Sudha Bheemanna [Wed, 24 Aug 2016 09:32:56 +0000 (15:02 +0530)]
Bluetooth: Functions to modify WhiteList

This patch provides MGMT commands to manage the white
list which includes, adding, removing and clearing the
devices from white list.

Change-Id: If71107129d3a090ae81448a8122b76accd4f5522
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: DoHyun Pyun <dh79.pyun@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add Advertising Packet Configuration 13/261613/1
Sudha Bheemanna [Wed, 24 Aug 2016 06:47:16 +0000 (12:17 +0530)]
Bluetooth: Add Advertising Packet Configuration

This patch provides new MGMT commands to configure
the advertising data and scan response data packets for
LE peripheral devices.

Change-Id: I914d13795f4fb58e5f2e1cadb55086f4bcbc82df
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: DoHyun Pyun <dh79.pyun@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add MGMT tizen_handlers and TIZEN_OP_BASE_CODE. 12/261612/1
h.sandeep [Thu, 1 Sep 2016 06:30:57 +0000 (12:00 +0530)]
Bluetooth: Add MGMT tizen_handlers and TIZEN_OP_BASE_CODE.

Added the basic skeleton code for tizen_mgmt_handlers and
mgmt_tizen.h header file.

Change-Id: I8f3100aa79e6673840ba561f0a9c50238ca0880b
Signed-off-by: h.sandeep <h.sandeep@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoBluetooth: Add "TIZEN_BT" flag 11/261611/1
Sudha Bheemanna [Tue, 23 Aug 2016 11:37:10 +0000 (17:07 +0530)]
Bluetooth: Add "TIZEN_BT" flag

Added the tizen specific flag for use in adding tizen patches.

Change-Id: Ia391644fddbe600c8d845e0bf0808f587aa73e0c
Signed-off-by: Sudha Bheemanna <b.sudha@samsung.com>
Signed-off-by: DoHyun Pyun <dh79.pyun@samsung.com>
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
2 years agoslub: Remove userspace notifier for cache add/remove 64/261464/1 accepted/tizen/unified/20210720.062554 submit/tizen/20210720.014109
Christoph Lameter [Tue, 2 Jun 2020 04:45:50 +0000 (21:45 -0700)]
slub: Remove userspace notifier for cache add/remove

I came across some unnecessary uevents once again which reminded me
this.  The patch seems to be lost in the leaves of the original
discussion [1], so resending.

[1] https://lore.kernel.org/r/alpine.DEB.2.21.2001281813130.745@www.lameter.com

Kmem caches are internal kernel structures so it is strange that
userspace notifiers would be needed.  And I am not aware of any use of
these notifiers.  These notifiers may just exist because in the initial
slub release the sysfs code was copied from another subsystem.

Signed-off-by: Christoph Lameter <cl@linux.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Michal Koutný <mkoutny@suse.com>
Acked-by: David Rientjes <rientjes@google.com>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Link: http://lkml.kernel.org/r/20200423115721.19821-1-mkoutny@suse.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
[sw0312.kim: backport mainline Linux v5.8 commit d7660ce5914d
 to remove unnecessary uevent for amlogic targets]
Reported-by: INSUN PYO <insun.pyo@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Change-Id: Idb636d2fbff9fd7f77a8b90c2bbee3892c0c5e77

2 years agonet: rtl88xx: use null nic_hdl for _init_timer() without checking adapter 39/259539/1 accepted/tizen/unified/20210610.022618 submit/tizen/20210609.103936
Seung-Woo Kim [Wed, 9 Jun 2021 09:10:06 +0000 (18:10 +0900)]
net: rtl88xx: use null nic_hdl for _init_timer() without checking adapter

In linux case, _init_timer() does not use nic_hdl, the 2nd argument,
from drivers/net/wireless/rtl8812au/include/osdep_service_linux.h and
rlt88xx should register timer even there is null adapter, otherwise
interface-up causes mod_timer crash.

Change-Id: I30addc152c197e0243b9b58e8108799f0f94330c
Fixes: commit 52ddac0afb83 ("net: rtl88xx: fix to check null adapter")
Reported-by: Cheoleun Moon <chleun.moon@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agoARM64: tizen_kvim3_defconfig: enable CONFIG_BT_HCIUART_BCM 54/259454/1 accepted/tizen/unified/20210610.141303 submit/tizen/20210608.081709
Jaehoon Chung [Tue, 8 Jun 2021 07:59:32 +0000 (16:59 +0900)]
ARM64: tizen_kvim3_defconfig: enable CONFIG_BT_HCIUART_BCM

Enable CONFIG_BT_HCIUART_BCM configuration.

Change-Id: I13525bce2d01d55e32712faf730ddc57971b5816
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
2 years agoarm64: configs: tizen_kvims: Enable sensor device 54/259254/1 accepted/tizen/unified/20210607.011721 submit/tizen/20210603.103436
Seung-Woo Kim [Thu, 3 Jun 2021 05:50:00 +0000 (14:50 +0900)]
arm64: configs: tizen_kvims: Enable sensor device

As like kvims_defconfig, enable SENSOR_DEVICE to support
g-sensor.

Change-Id: If747f690aada88d17e49ad69cdc5b88e635687c4
Ref: commit 9519fc2cb1da ("Gsensor: add kxtj3 driver support")
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agoGsensor: add kxtj3 driver support 53/259253/1
terry [Fri, 19 Jul 2019 06:39:01 +0000 (14:39 +0800)]
Gsensor: add kxtj3 driver support

Signed-off-by: Nick Xie <nick@khadas.com>
[sw0312.kim: pick khadas 3-axis sensor commit
   from https://github.com/khadas/linux/commit/0ff70f7087ecad3d28b06c8632ea93fd8cd056af
]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Change-Id: Id6166357a6816a3bca1d77072dcfc0ea9499aafc

2 years agoamlogic: drm: support zpos update 39/259139/1 accepted/tizen/unified/20210602.122333 submit/tizen/20210602.005153
Sihyun, Park [Mon, 31 May 2021 10:19:37 +0000 (19:19 +0900)]
amlogic: drm: support zpos update

Add to support zpos property update.

Change-Id: I854c644673b46fbf4f620ce1249e57b7206d6fce
Signed-off-by: Sihyun, Park <shwan.park@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agoamlogic: drm: support fence/cache op and gem_info 38/259138/1
Seung-Woo Kim [Mon, 12 Apr 2021 06:40:26 +0000 (15:40 +0900)]
amlogic: drm: support fence/cache op and gem_info

Support fence operation, cache operation and geminfo
in debugfs from amlogic meson drm.

Change-Id: I0d7bc71c7d489e65c0c1051df21fc7b034c3af53
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
amlogic: drm: add am_meson_gem_get_ioctl

am_meson_gem_get_ioctl is used by libtbm-meson.

Change-Id: I1f2fd5b8413d26bbf774b0f12a09534fa911d305
Signed-off-by: Sihyun, Park <shwan.park@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
2 years agoamlogic: drm: don't call irq in crtc init stage 37/259137/1
Ao Xu [Mon, 12 Apr 2021 06:38:45 +0000 (15:38 +0900)]
amlogic: drm: don't call irq in crtc init stage

vblank_disable_fn and am_meson_vpu_irq exist deadlock.
Disable vblank_disable_fn to avoid spin_lock_irqsave to
resolve the deadlock issue.

Change-Id: I59b454d2c2c0535f2e786e3beb4ca31c124483b0
Signed-off-by: Ao Xu <ao.xu@amlogic.com>
Signed-off-by: Sihyun, Park <shwan.park@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoamlogic: drm: mmap a dmabuf imported from another driver 36/259136/1
Sihyun, Park [Mon, 12 Apr 2021 06:38:35 +0000 (15:38 +0900)]
amlogic: drm: mmap a dmabuf imported from another driver

Change-Id: Iff7d5c204bbffac22e528840f264f669cae21d96
Signed-off-by: Sihyun, Park <shwan.park@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoamlogic: drm: disable 'meson_fb is NULL! warning log 35/259135/1
Sihyun, Park [Mon, 12 Apr 2021 06:36:32 +0000 (15:36 +0900)]
amlogic: drm: disable 'meson_fb is NULL! warning log

The log is printed when ovelay layer has no content to display,
and it is normal thing.

Change-Id: I83f078a2670f5f98098d5508603b77b6d5820d4e
Signed-off-by: Sihyun, Park <shwan.park@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoARM/ARM64: defconfig: disable SECURITY_SMACK_NETFILTER config 16/253716/1 accepted/tizen/unified/20210217.120515 submit/tizen/20210217.042922
Jaehoon Chung [Wed, 17 Feb 2021 01:32:21 +0000 (10:32 +0900)]
ARM/ARM64: defconfig: disable SECURITY_SMACK_NETFILTER config

Disable SECURITY_SMACK_NETFILTER configuration.

Change-Id: Ifc649881900c93064d9e48ef1e762d5ee335a9e2
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
3 years agoarm64: dts: amlogic: Use only meson64_odroidn2.dtb for OdroidN2 boards 19/253219/1 accepted/tizen/unified/20210210.052204 submit/tizen/20210209.230141
Marek Szyprowski [Fri, 5 Feb 2021 13:15:35 +0000 (14:15 +0100)]
arm64: dts: amlogic: Use only meson64_odroidn2.dtb for OdroidN2 boards

Switch OdroidN2 board to use meson64_odroidn2.dtb. For Tizen, the DRM
subsystem is enabled for the all Amlogic boards, so there is no need to
have separate dtb with the DRM enabled for OdroidN2 board. This also
fixes DRM support for the OdroidN2+ variant, which use
meson64_odroidn2_plus.dtb, which is based on meson64_odroidn2.dts.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: Ideeefcaabe5355e59f564abba730e1ad88ea2ce8

3 years agoof: fix reserved memory handling 26/252826/3 accepted/tizen/unified/20210204.134610 submit/tizen/20210204.012538
Marek Szyprowski [Tue, 2 Feb 2021 10:24:36 +0000 (11:24 +0100)]
of: fix reserved memory handling

Mainline u-boot marks some secure monitor relate memory with the
/memreserve/ device-tree method. On the other hand, the same memory is
already defined in /reserved-memory node with the all details needed to
use it by the respective secure monitor deamon. Check for such case and
properly initialize such reserved memory regions instead of returning a
failure.

This allows to use vendor kernel with mainline u-boot on Amlogic SoCs.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I0bd3b51899cc17f17d1bcbd0c2c5a0d88686b245

3 years agoAdd perf package build 33/252833/2
Sylwester Nawrocki [Tue, 2 Feb 2021 18:16:12 +0000 (19:16 +0100)]
Add perf package build

Add build of the perf performance monitoring tool package.
Based on spec from the platform/kernel/linux-rpi3 kernel tree.

Change-Id: Iedee81ac5f81f63c40ed6a379f2fca3f793c4d8b
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
3 years agoarm64: dts: amlogic: VIM3/VIM3L: change display to drm 71/252771/1
Seung-Woo Kim [Tue, 2 Feb 2021 07:30:56 +0000 (16:30 +0900)]
arm64: dts: amlogic: VIM3/VIM3L: change display to drm

Instead of fbdev, change display to drm.

Change-Id: I1c49c92f83ae4c9904116143881839d55cac2634
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoarm64: dts: amlogic: Fix use drm of g12b for odroid-n2 70/252770/1
Hoegeun Kwon [Tue, 2 Feb 2021 07:29:00 +0000 (16:29 +0900)]
arm64: dts: amlogic: Fix use drm of g12b for odroid-n2

The odroid-n2 has g12b soc family, so use the g12b drm instead of g12a.

Change-Id: I2fb0cd03e6b9289bcd4361a80fdbeaad6a45d2bb
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoarm64: dts: amlogic: Fix to use drm for odroid-c4 69/252769/1
Hoegeun Kwon [Tue, 2 Feb 2021 07:20:10 +0000 (16:20 +0900)]
arm64: dts: amlogic: Fix to use drm for odroid-c4

Fix to use g12a_drm for odroid-c4.

Change-Id: I031e0e3e51c01d4f87a68a63177fbb195111d983
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoarm64: configs: tizen_*: enable peripheral devices 70/252670/1
Seung-Woo Kim [Mon, 1 Feb 2021 06:52:43 +0000 (15:52 +0900)]
arm64: configs: tizen_*: enable peripheral devices

To support Tizen platform and TCT, enable related peripheral
devices including virtual devices.

Change-Id: I621ecaa8342f0c4f2b92c16dcb156e011cc42b8d
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoANDROID: usb: gadget: configfs: Support multiple android instances 69/252669/1
Ajay Agarwal [Tue, 30 May 2017 04:57:23 +0000 (10:27 +0530)]
ANDROID: usb: gadget: configfs: Support multiple android instances

Some platforms may choose to create more than one gadget ConfigFS
instance, often due to the hardware having multiple USB gadget
controllers which can be used simultaneously. Currently
android_device_create() assumes only one gadget instance is ever
created and creates a single "android0" device under the "android_usb"
class, resulting in a crash if a second gadget is registered since the
global android_device pointer gets overwritten with -EEXIST.

Fix this by properly supporting multiple instances and naming the
devices "android0", "android1", etc. when each instance is created
(via mkdir). For now keep the global singleton android_device pointing
to android0 for ease of use since f_midi and f_audio_source currently
use create_function_device() without any context as to which gadget
they will be bound to.

Bug: 120441124
Fixes: 429213f5d9eb ("ANDROID: usb: gadget: configfs: Add function devices to the parent")
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
[jackp@codeaurora.org: reworded commit text]
Signed-off-by: Jack Pham <jackp@codeaurora.org>
[sw0312.kim: backport from android common kernel commit 852619242c94 to support multiple udc]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Change-Id: Iade5973db69a2a4a1800c8218b9f5fba6b59a1c8

3 years agocrypto: zstd: Remove not backported scompress 68/252668/1
Seung-Woo Kim [Mon, 1 Feb 2021 07:43:15 +0000 (16:43 +0900)]
crypto: zstd: Remove not backported scompress

The zstd was backported but there was build issue. Remove not
backported scompress from ztd.

Fixes: commit 147b60871fc2 ("zstd_support")
Ref: commit cc388d204f77 ("BACKPORT: crypto: zstd - Add zstd support") of https://android.googlesource.com/kernel/common
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Change-Id: Icd35f40ed2295d26c26be8c82edad0108edd4ae0

3 years agoarm64: configs: tizen_*: Enable meson drm config options 13/252513/1
Hoegeun Kwon [Fri, 29 Jan 2021 05:22:38 +0000 (14:22 +0900)]
arm64: configs: tizen_*: Enable meson drm config options

Enable meson drim config options.

Change-Id: Ief736b97522ad16d0c76f1d9d1f7fde1342b827d
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoarm64: configs: tizen_*: Enable tizen required config options 03/252503/1
Seung-Woo Kim [Thu, 28 Jan 2021 08:18:46 +0000 (17:18 +0900)]
arm64: configs: tizen_*: Enable tizen required config options

Enable tizen required config options.
Ref: options in https://git.tizen.org/cgit/platform/kernel/tizen-kernel-configs/

Change-Id: I6480a318faaa7877e9ba59f6d34d7e6b2ea109d5
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoarm64: configs: tizen_*: cleanup configs 02/252502/1
Hoegeun Kwon [Thu, 28 Jan 2021 08:17:46 +0000 (17:17 +0900)]
arm64: configs: tizen_*: cleanup configs

Remove unused modules for Tizen and clean up configs, also set
some necessary modules as built-in instead of module build.

Change-Id: Idae373617d6b3dcf00d9e1deb4dd1038d002c527
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoscript: increase the number of concurrent compilers 01/252501/1
Seung-Woo Kim [Fri, 29 Jan 2021 04:07:08 +0000 (13:07 +0900)]
script: increase the number of concurrent compilers

It is safe to run as many compilation processes as twice
the number of CPUs.

Change-Id: Ic6c052d6c30f94920c3bdd272c2f1b19ecbe1ac2
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agomisc: khadas-mcu: fan: enable as auto mode by default 68/252368/2
Seung-Woo Kim [Wed, 27 Jan 2021 07:25:16 +0000 (16:25 +0900)]
misc: khadas-mcu: fan: enable as auto mode by default

Without sysfs contron, by default enable khadas fan as auto mode.
It will check cpu temperature per every 5 seconds.

Change-Id: I111b542ee62b2fdda0f65124f030db4f13b85c5f
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoarm64/ptrace: Add compat FPR register support 74/252174/2
Seung-Woo Kim [Tue, 19 Nov 2019 01:21:01 +0000 (10:21 +0900)]
arm64/ptrace: Add compat FPR register support

From aarch32 ptrace view, fpr register support is done with vfp
registers. As like aarch32 ptrace view, Add to suppot compat fpr
resister with vfp.

Change-Id: If5b4b6b5f33b7691ba9d3b65c1bffcf316e19588
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoamlogic: bt: Remove memory leak 73/252173/2
Seung-Woo Kim [Mon, 25 Jan 2021 06:48:02 +0000 (15:48 +0900)]
amlogic: bt: Remove memory leak

The prdata is covered by pdata from bt_probe, so there is memory
leak for prdata. Remove the memory leak store prdata, and get
pdata from prdata.

This fixes following kmemleak issue:
   unreferenced object 0xffffffc00c39e300 (size 64):
   ...
     backtrace:
       [<ffffff90094318b8>] create_object+0x278/0x580
       [<ffffff900b06e90c>] kmemleak_alloc+0x74/0xa0
       [<ffffff9009409fa0>] kmem_cache_alloc_trace+0x328/0x5e8
       [<ffffff900a850b04>] bt_probe+0x20c/0x870
   ...

Change-Id: Ic3f2091d16806dba0855927d048747b40cb96f80
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agokmemleak: Fix bad memory access with scan stack for amlogic vmap 72/252172/1
Seung-Woo Kim [Mon, 25 Jan 2021 06:44:20 +0000 (15:44 +0900)]
kmemleak: Fix bad memory access with scan stack for amlogic vmap

When AMLOGIC_VMAP is enabled, try_get_task_stack() returns address
of stasck instead of page address. This causes bad memory access
during kmemleak scan stack. Fix the bad memory access by using
aml_task_stack().

Note: Maybe, get_task_stack() needs to call aml_task_stack() is
required, but aml_task_stack() has no consideration for kmalloced
task stack, so just fix from kmemleak.

Change-Id: I58a2e324cb92cd692d2260c675e81d7d0715e96c
Fixes: commit 4d6ae4359385 ("mm: optimize thread stack usage on arm64 [1/1]")
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoamlogic: mm: Add aml_task_stack() in amlogic vmap 71/252171/1
Seung-Woo Kim [Mon, 25 Jan 2021 06:40:42 +0000 (15:40 +0900)]
amlogic: mm: Add aml_task_stack() in amlogic vmap

In kerne, there are several places to get stack page address of
task and when using AMLOGIC_VMAP, task_stack_page() does not
return page address. Add aml_task_stack() to get task stack page
for amlogic vmap.

Change-Id: I64cd827f98bec74357227dcc3ed546807b5406e3
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoarm64: dts: amlogic: g12 boards: Remove size 0 cma areas 46/252046/1
Seung-Woo Kim [Fri, 22 Jan 2021 05:52:15 +0000 (14:52 +0900)]
arm64: dts: amlogic: g12 boards: Remove size 0 cma areas

The cma area with size 0 has no meaning and it adds unnecessary
reserve information. Remove size 0 cma areas.

Change-Id: I02f6091d7628e19aec3be928612e778c57648c9e
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoof: Fix wrong kmemleak ignore in reserved_mem 48/251948/2
Seung-Woo Kim [Thu, 21 Jan 2021 06:22:52 +0000 (15:22 +0900)]
of: Fix wrong kmemleak ignore in reserved_mem

If size is 0, then kmemleak object found for ignore object is not
properly working and ignore should work for create kmemleak object.
Fix the wrong kmemleak ignore usages in of_reserved_mem.

This removes below kmemleak warnings:
   kmemleak: Not scanning unknown object at 0xffffffc0f4807000
   kmemleak: Not scanning unknown object at 0xffffffc0f4800000
   kmemleak: Not scanning unknown object at 0xffffffc007400000
   ...
   [<ffffff900af159b0>] kmemleak_no_scan+0xd8/0xe8
   [<ffffff900ba72d1c>] kmemleak_init+0x260/0x504
   ..
   kmemleak: Early log backtrace:
      log_early+0x1d8/0x268
      kmemleak_no_scan+0xbc/0xe8
      fdt_init_reserved_mem+0x8b4/0x928
      early_init_fdt_scan_reserved_mem+0x100/0x13c
      arm64_memblock_init+0x310/0x388
   ...

Change-Id: Idac1f672b06373f6eb7485d63b60747f2cf9f5b5
Fixes: commit 47a87b6930cd ("kmemleak: shouldn't scan reserved memory")
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agoamlogic/media: lcd: Fix division by zero 64/251864/1
Seung-Woo Kim [Wed, 20 Jan 2021 05:25:45 +0000 (14:25 +0900)]
amlogic/media: lcd: Fix division by zero

If no lcd is set by bootargs, it can not choose lcd type from
device tree and it causes division by zero. Fix the it by checking
division value.

This fixes below ubsan warnings:
   UBSAN: Undefined behaviour in drivers/amlogic/media/vout/lcd/lcd_common.c:777:59
   UBSAN: Undefined behaviour in drivers/amlogic/media/vout/lcd/lcd_common.c:778:43
   UBSAN: Undefined behaviour in drivers/amlogic/media/vout/lcd/lcd_common.c:784:53
   UBSAN: Undefined behaviour in drivers/amlogic/media/vout/lcd/lcd_common.c:786:59
   UBSAN: Undefined behaviour in drivers/amlogic/media/vout/lcd/lcd_common.c:787:43
   division by zero
   ...
   [ffffff9200003610+  96][<ffffff9009b70fac>] __ubsan_handle_divrem_overflow+0x8c/0xc8
   [ffffff9200003670+ 144][<ffffff900a582eac>] lcd_timing_init_config+0x254/0x390
   [ffffff9200003700+ 544][<ffffff900a5aeb50>] lcd_tablet_probe+0xfa0/0x3f50
   [ffffff9200003920+  64][<ffffff900a57a51c>] lcd_mode_probe+0x54/0x6c0
   [ffffff9200003960+ 272][<ffffff900a57bf5c>] lcd_probe+0x984/0x1070
   ...

Change-Id: I6ad73fcd554715c1d7ac3cadf82ead251b596e1c
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agochar: aml-gpiomem: Use allocated pointer for class registration 56/251856/1
Seung-Woo Kim [Wed, 20 Jan 2021 02:00:11 +0000 (11:00 +0900)]
char: aml-gpiomem: Use allocated pointer for class registration

The class name for class_create() requires memory pointer not freed
until the class is destroy, but local array is used, so it causes
memory bad access. Use allocated pointer for class registration.

This fixes below kasan warning:
   BUG: KASAN: out-of-bounds in strlcpy+0x48/0x88
   Read of size 11 at addr ffffffc00029f9c0 by task udevadm/2912
   ...
   [<ffffff900941ca9c>] check_memory_region+0x12c/0x1a0
   [<ffffff900941d0d4>] memcpy+0x34/0x68
   [<ffffff9009af8968>] strlcpy+0x48/0x88
   [<ffffff9009aeb74c>] kobject_uevent_env+0x55c/0x948
   [<ffffff9009aebb48>] kobject_uevent+0x10/0x18
   [<ffffff9009de5ca0>] uevent_store+0xf0/0xf8
   ...

Change-Id: I0e265a8b1b52e732de262a0058bd821419ca4fe8
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
3 years agousb: gadget: f_fs: Fix use-after-free for unbind with remaining io 56/251756/1
Seung-Woo Kim [Tue, 19 Jan 2021 05:47:25 +0000 (14:47 +0900)]
usb: gadget: f_fs: Fix use-after-free for unbind with remaining io

If usb has stall, then there can be remaining submitted io and
unbinding f_fs with the remaining io, there is use-after-free.
Fix the use-after-free by checking endpoint after wait.

This fixes following kasan warning:
   BUG: KASAN: use-after-free in ffs_epfile_io+0x654/0xb58
   Read of size 4 at addr ffffffc0a44e65dc by task mtp-responder/5117
   ...
   [<ffffff900a037794>] ffs_epfile_io+0x654/0xb58
   [<ffffff900a03818c>] ffs_epfile_read_iter+0x1ac/0x3e0
   ...

   Allocated by task 3869:
   ...
    __kmalloc+0x234/0x760
    _ffs_func_bind+0x264/0x7c8
    ffs_func_bind+0xe8/0x650
    usb_add_function+0x13c/0x378
   ...
   Freed by task 3869:
   ...
    kfree+0xa4/0x750
    ffs_func_unbind+0x150/0x248
    purge_configs_funcs+0x1a0/0x310
   ...

Change-Id: I2bb9b07d93b1ac42432caaa2c2176d987b36b140
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>