Commit Graph

895068 Commits

Author SHA1 Message Date
Paul Lawrence
d0adf8bc01 ANDROID: Incremental fs: Remove unneeded compatibility typedef
Bug: 133435829
Test: builds, incfs_test passes
Change-Id: I9b2ad81d230009daadf2c30f3609fda16e79028c
Signed-off-by: Paul Lawrence <paullawrence@google.com>
2020-02-04 04:51:52 +00:00
Paul Lawrence
2802188469 ANDROID: Incremental fs: Enable incrementalfs in GKI
Bug: 133435829
Test: Builds, incfs_test passes
Change-Id: I334088b3aadcffe3f42f991b0d2039ff7b221ac5
Signed-off-by: Paul Lawrence <paullawrence@google.com>
2020-02-04 04:51:43 +00:00
Paul Lawrence
8c43b745a4 ANDROID: Incremental fs: Fix sparse errors
Fix all sparse errors in fs/incfs except
fs/incfs/integrity.c:192:9: warning: Variable length array is used

Test: incfs_test passes
Bug: 133435829
Change-Id: I9c2e26e4e1a06a894977f11a3c8559b968dd115e
Signed-off-by: Paul Lawrence <paullawrence@google.com>
2020-02-04 04:51:35 +00:00
Paul Lawrence
6855de4adb ANDROID: Fixing incremental fs style issues
Removed WARN_ONs
Removed compatibilty code
Fixed tab issue

Bug: 133435829
Signed-off-by: Paul Lawrence <paullawrence@google.com>
Change-Id: I8a9e9ead48a65fd09c2d01d22f65d9a352f118e2
2020-02-04 04:51:28 +00:00
Paul Lawrence
74e8c51563 ANDROID: Make incfs selftests pass
Fixed incfs_test build errors
Fixed Kconfig errors
Readded .gitignore

Test: With just enabling CONFIG_INCREMENTAL_FS, both defconfig and
cuttlefish_defconfig build and incfs_test runs and passes

Bug: 133435829
Change-Id: Id3247ffcc63a095f66dcedf554017a06c5a9ce4a
Signed-off-by: Paul Lawrence <paullawrence@google.com>
2020-02-04 04:51:16 +00:00
Eugene Zemtsov
c6819dd778 ANDROID: Initial commit of Incremental FS
Fully working incremental fs filesystem

Signed-off-by: Eugene Zemtsov <ezemtsov@google.com>
Signed-off-by: Paul Lawrence <paullawrence@google.com>

Bug: 133435829
Change-Id: I14741a61ce7891a0f9054e70f026917712cbef78
2020-02-04 04:51:09 +00:00
Alistair Delva
d9cb255af3 Revert "security,lockdown,selinux: implement SELinux lockdown"
This reverts commit 59438b4647.

This unblocks the booting of Android on newer kernels. It is a temporary
workaround and the correct fix is to add new core sepolicy.

Bug: 148822198
Change-Id: Ic521cb760c867c12dfcb7d2752280fbb0eddb82c
Signed-off-by: Alistair Delva <adelva@google.com>
2020-02-03 17:54:26 -08:00
Greg Kroah-Hartman
52ced52490 Revert "Revert "FROMLIST: scsi: ufs: Add dev ref clock gating wait time support""
This reverts commit 8326ceb4bc which was
commit 1ddc9771d5.  It was fixed up by
hand due to the scsi upstream merge.

Bug: 143632303
Link: https://lore.kernel.org/patchwork/patch/1149892/
Cc: Can Guo <cang@codeaurora.org>
Cc: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I69900cab82eb84a384db3b30c5a6311964ec9d91
2020-02-03 16:46:15 +00:00
Greg Kroah-Hartman
bf01359e5f Revert "Revert "FROMLIST: scsi: ufs: Flush exception event before suspend""
This reverts commit 4b4777168d which was a
revert of commit 12db3a26e4.  We added it
back by hand after the scsi upstream tree merge

Bug: 143632303
Cc: Sayali Lokhande <sayalil@codeaurora.org>
Cc: Asutosh Das <asutoshd@codeaurora.org>
Cc: Can Guo <cang@codeaurora.org>
Cc: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I36f2931b04f7963b7121511d6061c13a18891b77
2020-02-03 16:46:06 +00:00
Greg Kroah-Hartman
7881aee544 Merge 39bed42de2 ("Merge tag 'for-linus-hmm' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma") into android-mainline
Baby steps in the 5.6-rc1 merge cycle to make things easier to review
and debug.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I0fa183764fd1adbde44e8181f0b3df6cff4da18b
2020-02-03 15:34:37 +00:00
Greg Kroah-Hartman
4f92040911 Revert "Revert "FROMLIST: scsi: ufs: export hibern8 entry and exit""
This reverts commit 0990eff7509fecafad9a44a56801c97e8e8ce9c6 which was a
revert of commit 38c1605e75.

We need these symbols back, so add the patch back.

Bug: 143136976
Cc: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I39f86820c3b0e5901006c588870d5efeda2e92f0
2020-02-03 14:11:50 +00:00
Greg Kroah-Hartman
caca4aee82 Merge 33c84e89ab ("Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi") into android-mainline
Baby steps in the 5.6-rc1 merge cycle to make things easier to review
and debug.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I21591d9c9b073f02dde6aae031bd740fe512251b
2020-02-03 12:58:11 +00:00
Greg Kroah-Hartman
4b4777168d Revert "FROMLIST: scsi: ufs: Flush exception event before suspend"
This reverts commit 12db3a26e4.

In order to merge with the scsi code upstream, this needs to be
reverted.  Hopefully we can merge it back later...

Bug: 143632303
Cc: Sayali Lokhande <sayalil@codeaurora.org>
Cc: Asutosh Das <asutoshd@codeaurora.org>
Cc: Can Guo <cang@codeaurora.org>
Cc: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I86d51bd65965a5e0b3dcce5c72a2e1dca50fd0c6
2020-02-03 12:32:16 +00:00
Greg Kroah-Hartman
1543a45023 Revert "FROMLIST: scsi: ufs: export hibern8 entry and exit"
This reverts commit 38c1605e75.

In order to merge with the scsi code upstream, this needs to be
reverted.  Hopefully we can merge it back later...

Bug: 143136976
Cc: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I4ba46c9e11a3882131449efcc8a45481348fbea1
2020-02-03 12:32:13 +00:00
Greg Kroah-Hartman
1954732ea5 Revert "FROMLIST: scsi: ufs: Do not rely on prefetched data"
This reverts commit c1f1db3714.

In order to merge with the scsi code upstream, this needs to be
reverted.  Hopefully we can merge it back later...

Bug: 143632303
Link: https://lore.kernel.org/patchwork/patch/1147024/
Cc: Can Guo <cang@codeaurora.org>
Cc: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I2d7a785fda4eb705396ffb01a24c92fe91841c1b
2020-02-03 12:32:10 +00:00
Greg Kroah-Hartman
8326ceb4bc Revert "FROMLIST: scsi: ufs: Add dev ref clock gating wait time support"
This reverts commit 1ddc9771d5.

In order to merge with the scsi code upstream, this needs to be
reverted.  Hopefully we can merge it back later...

Bug: 143632303
Link: https://lore.kernel.org/patchwork/patch/1149892/
Cc: Can Guo <cang@codeaurora.org>
Cc: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I18af522146462e8212e8ffba437fbb23bca3318a
2020-02-03 12:32:00 +00:00
Greg Kroah-Hartman
2fa0ed8af5 Merge e9f8ca0ae7 ("Merge tag 'for-5.6/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm") into android-mainline
Baby steps in the 5.6-rc1 merge cycle to make things easier to review
and debug.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I2d3a69b5256f71ae18b500b0ef145f93e4255dbc
2020-02-03 10:42:29 +00:00
Greg Kroah-Hartman
2b0f7f511d Merge b3a6082223 ("Merge branch 'for-v5.6' of git://git.kernel.org:/pub/scm/linux/kernel/git/jmorris/linux-security") into android-mainline
Baby steps in the 5.6-rc1 merge cycle to make things easier to review
and debug.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I084fc068d4c94625e63441029e08e143146d97b7
2020-02-03 10:13:20 +00:00
Ram Muthiah
358c6ef08a ANDROID: gki: Enable DRM_GEM_SHMEM_HELPER for GKI
Bug: 139431025
Test: Treehugger
Change-Id: I9a454e4f1e988627a5318ccffd9714a955dd50df
Signed-off-by: Ram Muthiah <rammuthiah@google.com>
2020-02-01 03:01:29 +00:00
Ram Muthiah
7f31c11fd0 ANDROID: gki: Removed cf modules from gki_defconfig
Bug: 139431025
Test: Treehugger
Change-Id: Ib1de19b851f8dc07f77e4b6ec5acf88b6051b070
Signed-off-by: Ram Muthiah <rammuthiah@google.com>
2020-02-01 00:27:50 +00:00
Ram Muthiah
64b9a20673 ANDROID: Remove default y for VIRTIO_PCI_LEGACY
Bug: 139431025
Test: Treehugger
Change-Id: I6943cf6b1fedc2b82332c1dcf9a91281a3ca5627
Signed-off-by: Ram Muthiah <rammuthiah@google.com>
2020-01-31 16:13:56 -08:00
Sami Tolvanen
dd447e0f04 ANDROID: kallsyms: strip hashes from static functions with ThinLTO and CFI
With CONFIG_THINLTO and CFI both enabled, LLVM appends a hash to the
names of all static functions. This breaks userspace tools, so strip
out the hash from output.

Bug: 147422318
Change-Id: Ie19a59d9d0681298be54e73064badc361c0f7014
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-31 16:14:38 +00:00
Sami Tolvanen
8be5d29b7b ANDROID: bpf: disable CFI for dispatcher functions
BPF dispatcher functions are patched at runtime to perform direct
instead of indirect calls. Disable CFI for the dispatcher functions
to avoid conflicts.

(re-add due to merge conflicts previously)

Bug: 145210207
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I7edf6052e121d16ccb0f3d3492ff4eefedfa509e
2020-01-31 08:24:35 +01:00
Greg Kroah-Hartman
c37185c6d3 Merge bd2463ac7d ("Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next") into android-common
Baby steps in the 5.6-rc1 merge cycle to make things easier to review
and debug.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I4c44b3c32065ea0ed8175b31665f2a4195a27300
2020-01-31 08:22:22 +01:00
Greg Kroah-Hartman
eae549d63b Revert "UPSTREAM: bpf: Move trampoline JIT image allocation to a function"
This reverts commit aa2cc4ed15.

It conflicts with the upstream BPF changes so needs to be dropped for
now as it will show up throught the BPF tree.

Cc: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I0a38cbaf388c3362f8fd7fad7139b16ea9967fe7
2020-01-31 08:20:27 +01:00
Greg Kroah-Hartman
d12d53b72f Revert "UPSTREAM: bpf: Introduce BPF dispatcher"
This reverts commit 22cf3ea720.

It conflicts with the BPF merge and will come in through the upstream
tree.

Cc: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I404d2e9efcd6057d481be2562cb9b2a559b70e58
2020-01-31 08:20:27 +01:00
Greg Kroah-Hartman
4f91256854 Revert "UPSTREAM: bpf, xdp: Start using the BPF dispatcher for XDP"
This reverts commit 3ea9abc389.

It conflicts with the BPF merge from upstream and will come in through
that tree.

Cc: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I59c2176184c955d240b571d000460d89c6d2f80d
2020-01-31 08:19:45 +01:00
Greg Kroah-Hartman
cf29e01887 Revert "UPSTREAM: bpf, x86: Align dispatcher branch targets to 16B"
This reverts commit f6a4d900cc.

It conflicts with the BPF merge and will come in through that tree
instead.

Cc: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Idffa84def2a994a306c79803d49b7461adfae44c
2020-01-31 08:19:11 +01:00
Greg Kroah-Hartman
24e0e1f009 Revert "ANDROID: bpf: disable CFI for dispatcher functions"
This reverts commit cedd91c6f4.

It conflicts with the BPF merge and will have to be added back later "by
hand".

Cc: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I9b070d804c16b12a416ddc630c4440ea85f5531b
2020-01-31 08:18:43 +01:00
Greg Kroah-Hartman
13e3108408 Merge a78208e243 ("Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6") into android-mainline
Baby steps in the 5.6-rc1 merge cycle to make things easier to review
and debug.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I6d63f7c9484210bae7474a809defd1aaa58e15f8
2020-01-31 07:23:04 +01:00
Eric Biggers
5cc45ee595 Merge f0d8744143 ("Merge tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt") into android-mainline
Merge the upstream merge of fscrypt-for-linus, to resolve conflicts
between the fscrypt changes that went upstream in 5.6 and the inline
crypto and hardware-wrapped key support that is currently being carried
in the Android common kernels.

Conflicts:
        fs/crypto/Kconfig
        fs/crypto/bio.c
        fs/crypto/fname.c
        fs/crypto/fscrypt_private.h
        fs/crypto/keyring.c
        fs/crypto/keysetup.c
        include/uapi/linux/fscrypt.h

Merge resolution notes:

- In fscrypt_zeroout_range(), split the inline crypto case into a
  separate function fscrypt_zeroout_range_inlinecrypt(), as mixing the
  two cases together became much harder due to the upstream changes.

- Allow the size of fscrypt-provisioning keys to be up to
  FSCRYPT_MAX_HW_WRAPPED_KEY_SIZE rather than FSCRYPT_MAX_KEY_SIZE.

Change-Id: Ib1e6b9eda8fb5dcfc6bdc8fa89d93f72b088c5f6
Signed-off-by: Eric Biggers <ebiggers@google.com>
2020-01-30 08:50:02 -08:00
Sami Tolvanen
cedd91c6f4 ANDROID: bpf: disable CFI for dispatcher functions
BPF dispatcher functions are patched at runtime to perform direct
instead of indirect calls. Disable CFI for the dispatcher functions
to avoid conflicts.

Bug: 145210207
Change-Id: I61dc7ce8a549145a79b7e69c646888578e0641ba
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-30 08:17:01 -08:00
Björn Töpel
f6a4d900cc UPSTREAM: bpf, x86: Align dispatcher branch targets to 16B
>From Intel 64 and IA-32 Architectures Optimization Reference Manual,
3.4.1.4 Code Alignment, Assembly/Compiler Coding Rule 11: All branch
targets should be 16-byte aligned.

This commits aligns branch targets according to the Intel manual.

The nops used to align branch targets make the dispatcher larger, and
therefore the number of supported dispatch points/programs are
descreased from 64 to 48.

Signed-off-by: Björn Töpel <bjorn.topel@intel.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20191213175112.30208-7-bjorn.topel@gmail.com
(cherry picked from commit 116eb788f5)
Bug: 145210207
Change-Id: I04996cd41bf109aaa63b5aa23773c34ef1f90d8b
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-30 08:17:01 -08:00
Björn Töpel
3de7ead4fb UPSTREAM: bpf: Start using the BPF dispatcher in BPF_TEST_RUN
In order to properly exercise the BPF dispatcher, this commit adds BPF
dispatcher usage to BPF_TEST_RUN when executing XDP programs.

Signed-off-by: Björn Töpel <bjorn.topel@intel.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20191213175112.30208-5-bjorn.topel@gmail.com
(cherry picked from commit f23c4b3924)
Bug: 145210207
Change-Id: Ied23d1797ae28f6620cbdb23d70792f8968a5475
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-30 08:17:01 -08:00
Björn Töpel
3ea9abc389 UPSTREAM: bpf, xdp: Start using the BPF dispatcher for XDP
This commit adds a BPF dispatcher for XDP. The dispatcher is updated
from the XDP control-path, dev_xdp_install(), and used when an XDP
program is run via bpf_prog_run_xdp().

Signed-off-by: Björn Töpel <bjorn.topel@intel.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20191213175112.30208-4-bjorn.topel@gmail.com
(cherry picked from commit 7e6897f959)
Bug: 145210207
Change-Id: Icc5baa51e9392714ff38a5b3dbce7e5dba027a11
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-30 08:17:01 -08:00
Björn Töpel
22cf3ea720 UPSTREAM: bpf: Introduce BPF dispatcher
The BPF dispatcher is a multi-way branch code generator, mainly
targeted for XDP programs. When an XDP program is executed via the
bpf_prog_run_xdp(), it is invoked via an indirect call. The indirect
call has a substantial performance impact, when retpolines are
enabled. The dispatcher transform indirect calls to direct calls, and
therefore avoids the retpoline. The dispatcher is generated using the
BPF JIT, and relies on text poking provided by bpf_arch_text_poke().

The dispatcher hijacks a trampoline function it via the __fentry__ nop
of the trampoline. One dispatcher instance currently supports up to 64
dispatch points. A user creates a dispatcher with its corresponding
trampoline with the DEFINE_BPF_DISPATCHER macro.

Signed-off-by: Björn Töpel <bjorn.topel@intel.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20191213175112.30208-3-bjorn.topel@gmail.com
(cherry picked from commit 75ccbef636)
Bug: 145210207
Change-Id: Ieb954fd4c968e41f1c1b9ea03ab89fd1f73df5cd
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-30 08:17:00 -08:00
Björn Töpel
aa2cc4ed15 UPSTREAM: bpf: Move trampoline JIT image allocation to a function
Refactor the image allocation in the BPF trampoline code into a
separate function, so it can be shared with the BPF dispatcher in
upcoming commits.

Signed-off-by: Björn Töpel <bjorn.topel@intel.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20191213175112.30208-2-bjorn.topel@gmail.com
(cherry picked from commit 98e8627efc)
Bug: 145210207
Change-Id: I146fc21c66fc40b631d8f27fe13205b1b4bf97d3
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-30 08:17:00 -08:00
Sami Tolvanen
e1b89754b6 ANDROID: Revert "ANDROID: bpf: validate bpf_func when BPF_JIT is enabled with CFI"
This reverts commit 788bbf4f26.

Reason for revert: fixes a conflict with upcoming upstream BPF changes.
Bug: 145210207
Change-Id: I3bbc1279fc613be0d2e833008413ad3561b851df
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-30 08:17:00 -08:00
Sami Tolvanen
90e3e05ed8 ANDROID: Revert "ANDROID: arm64: bpf: implement arch_bpf_jit_check_func"
This reverts commit d9756ba082.

Reason for revert: fixes a conflict with upcoming upstream BPF changes.
Bug: 145210207
Change-Id: I0e7e76c117ab3608b6dd5a1bc6b949b9e109038f
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-01-30 08:17:00 -08:00
Greg Kroah-Hartman
5e34934ff0 ANDROID: handle merge issue in arch/arm64/include/asm/lse.h
For some reason a duplicated line ended up in here.

Thanks to Matthias for pointing it out.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I7ebeddcd4a9bc210edd69d9ce5e9d3a30a6ef469
2020-01-30 09:45:59 +01:00
Greg Kroah-Hartman
05c7432116 ANDROID: fix build problem in include/trace/events/android_fs_template.h
How did this ever work???

Cc: Mohan Srinivasan <srmohan@google.com>
Cc: Amit Pundir <amit.pundir@linaro.org>
Cc: Alistair Strachan <astrachan@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I06279d79877d2e312a458a4d8006d3aaa8e43a60
2020-01-30 06:05:46 +00:00
Greg Kroah-Hartman
9592c07975 Revert "ANDROID: sched/fair: EAS: Add uclamp support to find_energy_efficient_cpu()"
This reverts commit b61876ed12.

It was merged differently upstream in the 5.6-rc1 merge window so revert
this version as upstream got a different one.

Cc: Patrick Bellasi <patrick.bellasi@arm.com>
Cc: Quentin Perret <quentin.perret@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I508fd204109f0f947ede40a44116ad51e5631b64
2020-01-30 06:05:28 +00:00
Greg Kroah-Hartman
28b159de8e Merge b5f7ab6b1c ("Merge tag 'fs-dedupe-last-block-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux") into android-mainline
Baby steps in the 5.6-rc1 merge cycle to make things easier to review
and debug.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I005e68433be6b1d66bd56d7e1c8f44ab8e78bebe
2020-01-30 07:03:50 +01:00
Linus Torvalds
39bed42de2 Merge tag 'for-linus-hmm' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma
Pull mmu_notifier updates from Jason Gunthorpe:
 "This small series revises the names in mmu_notifier to make the code
  clearer and more readable"

* tag 'for-linus-hmm' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
  mm/mmu_notifiers: Use 'interval_sub' as the variable for mmu_interval_notifier
  mm/mmu_notifiers: Use 'subscription' as the variable name for mmu_notifier
  mm/mmu_notifier: Rename struct mmu_notifier_mm to mmu_notifier_subscriptions
2020-01-29 19:56:50 -08:00
Linus Torvalds
83fa805bcb Merge tag 'threads-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux
Pull thread management updates from Christian Brauner:
 "Sargun Dhillon over the last cycle has worked on the pidfd_getfd()
  syscall.

  This syscall allows for the retrieval of file descriptors of a process
  based on its pidfd. A task needs to have ptrace_may_access()
  permissions with PTRACE_MODE_ATTACH_REALCREDS (suggested by Oleg and
  Andy) on the target.

  One of the main use-cases is in combination with seccomp's user
  notification feature. As a reminder, seccomp's user notification
  feature was made available in v5.0. It allows a task to retrieve a
  file descriptor for its seccomp filter. The file descriptor is usually
  handed of to a more privileged supervising process. The supervisor can
  then listen for syscall events caught by the seccomp filter of the
  supervisee and perform actions in lieu of the supervisee, usually
  emulating syscalls. pidfd_getfd() is needed to expand its uses.

  There are currently two major users that wait on pidfd_getfd() and one
  future user:

   - Netflix, Sargun said, is working on a service mesh where users
     should be able to connect to a dns-based VIP. When a user connects
     to e.g. 1.2.3.4:80 that runs e.g. service "foo" they will be
     redirected to an envoy process. This service mesh uses seccomp user
     notifications and pidfd to intercept all connect calls and instead
     of connecting them to 1.2.3.4:80 connects them to e.g.
     127.0.0.1:8080.

   - LXD uses the seccomp notifier heavily to intercept and emulate
     mknod() and mount() syscalls for unprivileged containers/processes.
     With pidfd_getfd() more uses-cases e.g. bridging socket connections
     will be possible.

   - The patchset has also seen some interest from the browser corner.
     Right now, Firefox is using a SECCOMP_RET_TRAP sandbox managed by a
     broker process. In the future glibc will start blocking all signals
     during dlopen() rendering this type of sandbox impossible. Hence,
     in the future Firefox will switch to a seccomp-user-nofication
     based sandbox which also makes use of file descriptor retrieval.
     The thread for this can be found at
     https://sourceware.org/ml/libc-alpha/2019-12/msg00079.html

  With pidfd_getfd() it is e.g. possible to bridge socket connections
  for the supervisee (binding to a privileged port) and taking actions
  on file descriptors on behalf of the supervisee in general.

  Sargun's first version was using an ioctl on pidfds but various people
  pushed for it to be a proper syscall which he duely implemented as
  well over various review cycles. Selftests are of course included.
  I've also added instructions how to deal with merge conflicts below.

  There's also a small fix coming from the kernel mentee project to
  correctly annotate struct sighand_struct with __rcu to fix various
  sparse warnings. We've received a few more such fixes and even though
  they are mostly trivial I've decided to postpone them until after -rc1
  since they came in rather late and I don't want to risk introducing
  build warnings.

  Finally, there's a new prctl() command PR_{G,S}ET_IO_FLUSHER which is
  needed to avoid allocation recursions triggerable by storage drivers
  that have userspace parts that run in the IO path (e.g. dm-multipath,
  iscsi, etc). These allocation recursions deadlock the device.

  The new prctl() allows such privileged userspace components to avoid
  allocation recursions by setting the PF_MEMALLOC_NOIO and
  PF_LESS_THROTTLE flags. The patch carries the necessary acks from the
  relevant maintainers and is routed here as part of prctl()
  thread-management."

* tag 'threads-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
  prctl: PR_{G,S}ET_IO_FLUSHER to support controlling memory reclaim
  sched.h: Annotate sighand_struct with __rcu
  test: Add test for pidfd getfd
  arch: wire up pidfd_getfd syscall
  pid: Implement pidfd_getfd syscall
  vfs, fdtable: Add fget_task helper
2020-01-29 19:38:34 -08:00
Linus Torvalds
896f8d23d0 Merge tag 'for-5.6/io_uring-vfs-2020-01-29' of git://git.kernel.dk/linux-block
Pull io_uring updates from Jens Axboe:

 - Support for various new opcodes (fallocate, openat, close, statx,
   fadvise, madvise, openat2, non-vectored read/write, send/recv, and
   epoll_ctl)

 - Faster ring quiesce for fileset updates

 - Optimizations for overflow condition checking

 - Support for max-sized clamping

 - Support for probing what opcodes are supported

 - Support for io-wq backend sharing between "sibling" rings

 - Support for registering personalities

 - Lots of little fixes and improvements

* tag 'for-5.6/io_uring-vfs-2020-01-29' of git://git.kernel.dk/linux-block: (64 commits)
  io_uring: add support for epoll_ctl(2)
  eventpoll: support non-blocking do_epoll_ctl() calls
  eventpoll: abstract out epoll_ctl() handler
  io_uring: fix linked command file table usage
  io_uring: support using a registered personality for commands
  io_uring: allow registering credentials
  io_uring: add io-wq workqueue sharing
  io-wq: allow grabbing existing io-wq
  io_uring/io-wq: don't use static creds/mm assignments
  io-wq: make the io_wq ref counted
  io_uring: fix refcounting with batched allocations at OOM
  io_uring: add comment for drain_next
  io_uring: don't attempt to copy iovec for READ/WRITE
  io_uring: honor IOSQE_ASYNC for linked reqs
  io_uring: prep req when do IOSQE_ASYNC
  io_uring: use labeled array init in io_op_defs
  io_uring: optimise sqe-to-req flags translation
  io_uring: remove REQ_F_IO_DRAINED
  io_uring: file switch work needs to get flushed on exit
  io_uring: hide uring_fd in ctx
  ...
2020-01-29 18:53:37 -08:00
Linus Torvalds
33c84e89ab Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
Pull SCSI updates from James Bottomley:
 "This series is slightly unusual because it includes Arnd's compat
  ioctl tree here:

    1c46a2cf2d Merge tag 'block-ioctl-cleanup-5.6' into 5.6/scsi-queue

  Excluding Arnd's changes, this is mostly an update of the usual
  drivers: megaraid_sas, mpt3sas, qla2xxx, ufs, lpfc, hisi_sas.

  There are a couple of core and base updates around error propagation
  and atomicity in the attribute container base we use for the SCSI
  transport classes.

  The rest is minor changes and updates"

* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (149 commits)
  scsi: hisi_sas: Rename hisi_sas_cq.pci_irq_mask
  scsi: hisi_sas: Add prints for v3 hw interrupt converge and automatic affinity
  scsi: hisi_sas: Modify the file permissions of trigger_dump to write only
  scsi: hisi_sas: Replace magic number when handle channel interrupt
  scsi: hisi_sas: replace spin_lock_irqsave/spin_unlock_restore with spin_lock/spin_unlock
  scsi: hisi_sas: use threaded irq to process CQ interrupts
  scsi: ufs: Use UFS device indicated maximum LU number
  scsi: ufs: Add max_lu_supported in struct ufs_dev_info
  scsi: ufs: Delete is_init_prefetch from struct ufs_hba
  scsi: ufs: Inline two functions into their callers
  scsi: ufs: Move ufshcd_get_max_pwr_mode() to ufshcd_device_params_init()
  scsi: ufs: Split ufshcd_probe_hba() based on its called flow
  scsi: ufs: Delete struct ufs_dev_desc
  scsi: ufs: Fix ufshcd_probe_hba() reture value in case ufshcd_scsi_add_wlus() fails
  scsi: ufs-mediatek: enable low-power mode for hibern8 state
  scsi: ufs: export some functions for vendor usage
  scsi: ufs-mediatek: add dbg_register_dump implementation
  scsi: qla2xxx: Fix a NULL pointer dereference in an error path
  scsi: qla1280: Make checking for 64bit support consistent
  scsi: megaraid_sas: Update driver version to 07.713.01.00-rc1
  ...
2020-01-29 18:16:16 -08:00
Linus Torvalds
e9f8ca0ae7 Merge tag 'for-5.6/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
Pull device mapper updates from Mike Snitzer:

 - Fix DM core's potential for q->make_request_fn NULL pointer in the
   unlikely case that a DM device is created without a DM table and then
   accessed due to upper-layer userspace code or user error.

 - Fix DM thin-provisioning's metadata_pre_commit_callback to not use
   memory after it is free'd. Also refactor code to disallow changing
   the thin-pool's data device once in use -- doing so guarantees smae
   lifetime of pool's data device relative to the pool metadata.

 - Fix DM space maps used by DM thinp and DM cache to avoid reuse of a
   already used block. This race was identified with extremely heavy
   snapshot use in the context of DM thin provisioning.

 - Fix DM raid's table status relative to an active rebuild.

 - Fix DM crypt to use GFP_NOIO rather than GFP_NOFS in call to
   skcipher_request_alloc(). Also fix benbi IV constructor crash if used
   in authenticated mode.

 - Add DM crypt support for Elephant diffuser to allow for Bitlocker
   compatibility.

 - Fix DM verity target to not prefetch hash blocks for data that has
   already been verified.

 - Fix DM writecache's incorrect flush sequence during commit when in
   SSD mode.

 - Improve DM writecache's sequential write performance on SSDs.

 - Add DM zoned target support for zone sizes smaller than 128MiB.

 - Add DM multipath 'queue_if_no_path_timeout_secs' module param to
   allow timeout if path isn't reinstated. This allows users a kernel
   safety-net against IO hanging indefinitely, due to no active paths,
   that has historically only been provided by multipathd userspace.

 - Various DM code cleanups to use true/false rather than 1/0, a
   variable rename in dm-dust, and fix for a math error in comment for
   DM thin metadata's ondisk format.

* tag 'for-5.6/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (21 commits)
  dm: fix potential for q->make_request_fn NULL pointer
  dm writecache: improve performance of large linear writes on SSDs
  dm mpath: Add timeout mechanism for queue_if_no_path
  dm thin: change data device's flush_bio to be member of struct pool
  dm thin: don't allow changing data device during thin-pool reload
  dm thin: fix use-after-free in metadata_pre_commit_callback
  dm thin metadata: use pool locking at end of dm_pool_metadata_close
  dm writecache: fix incorrect flush sequence when doing SSD mode commit
  dm crypt: fix benbi IV constructor crash if used in authenticated mode
  dm crypt: Implement Elephant diffuser for Bitlocker compatibility
  dm space map common: fix to ensure new block isn't already in use
  dm verity: don't prefetch hash blocks for already-verified data
  dm crypt: fix GFP flags passed to skcipher_request_alloc()
  dm thin metadata: Fix trivial math error in on-disk format documentation
  dm thin metadata: use true/false for bool variable
  dm snapshot: use true/false for bool variable
  dm bio prison v2: use true/false for bool variable
  dm mpath: use true/false for bool variable
  dm zoned: support zone sizes smaller than 128MiB
  dm raid: table line rebuild status fixes
  ...
2020-01-29 18:08:49 -08:00
Ram Muthiah
f1bdff93de ANDROID: modularize BLK_MQ_VIRTIO
Bug: 139431025
Test: Treehugger
Change-Id: Iba414b03a9ee1544036c4153bf52e8c8edbb9c17
Signed-off-by: Ram Muthiah <rammuthiah@google.com>
2020-01-30 00:46:34 +00:00
Linus Torvalds
05ef8b97dd Merge tag 'docs-5.6' of git://git.lwn.net/linux
Pull documentation updates from Jonathan Corbet:
 "It has been a relatively quiet cycle for documentation, but there's
  still a couple of things of note:

   - Conversion of the NFS documentation to RST

   - A new document on how to help with documentation (and a maintainer
     profile entry too)

  Plus the usual collection of typo fixes, etc"

* tag 'docs-5.6' of git://git.lwn.net/linux: (40 commits)
  docs: filesystems: add overlayfs to index.rst
  docs: usb: remove some broken references
  scripts/find-unused-docs: Fix massive false positives
  docs: nvdimm: use ReST notation for subsection
  zram: correct documentation about sysfs node of huge page writeback
  Documentation: zram: various fixes in zram.rst
  Add a maintainer entry profile for documentation
  Add a document on how to contribute to the documentation
  docs: Keep up with the location of NoUri
  Documentation: Call out example SYM_FUNC_* usage as x86-specific
  Documentation: nfs: fault_injection: convert to ReST
  Documentation: nfs: pnfs-scsi-server: convert to ReST
  Documentation: nfs: convert pnfs-block-server to ReST
  Documentation: nfs: idmapper: convert to ReST
  Documentation: convert nfsd-admin-interfaces to ReST
  Documentation: nfs-rdma: convert to ReST
  Documentation: nfsroot.rst: COSMETIC: refill a paragraph
  Documentation: nfsroot.txt: convert to ReST
  Documentation: convert nfs.txt to ReST
  Documentation: filesystems: convert vfat.txt to RST
  ...
2020-01-29 15:27:31 -08:00