Commit Graph

15 Commits

Author SHA1 Message Date
Linus Torvalds
12952b6bbd Merge tag 'loongarch-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
Pull LoongArch updates from Huacai Chen:

 - Allow usage of LSX/LASX in the kernel, and use them for
   SIMD-optimized RAID5/RAID6 routines

 - Add Loongson Binary Translation (LBT) extension support

 - Add basic KGDB & KDB support

 - Add building with kcov coverage

 - Add KFENCE (Kernel Electric-Fence) support

 - Add KASAN (Kernel Address Sanitizer) support

 - Some bug fixes and other small changes

 - Update the default config file

* tag 'loongarch-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson: (25 commits)
  LoongArch: Update Loongson-3 default config file
  LoongArch: Add KASAN (Kernel Address Sanitizer) support
  LoongArch: Simplify the processing of jumping new kernel for KASLR
  kasan: Add (pmd|pud)_init for LoongArch zero_(pud|p4d)_populate process
  kasan: Add __HAVE_ARCH_SHADOW_MAP to support arch specific mapping
  LoongArch: Add KFENCE (Kernel Electric-Fence) support
  LoongArch: Get partial stack information when providing regs parameter
  LoongArch: mm: Add page table mapped mode support for virt_to_page()
  kfence: Defer the assignment of the local variable addr
  LoongArch: Allow building with kcov coverage
  LoongArch: Provide kaslr_offset() to get kernel offset
  LoongArch: Add basic KGDB & KDB support
  LoongArch: Add Loongson Binary Translation (LBT) extension support
  raid6: Add LoongArch SIMD recovery implementation
  raid6: Add LoongArch SIMD syndrome calculation
  LoongArch: Add SIMD-optimized XOR routines
  LoongArch: Allow usage of LSX/LASX in the kernel
  LoongArch: Define symbol 'fault' as a local label in fpu.S
  LoongArch: Adjust {copy, clear}_user exception handler behavior
  LoongArch: Use static defined zero page rather than allocated
  ...
2023-09-08 12:16:52 -07:00
Qing Zhang
5aa4ac64e6 LoongArch: Add KASAN (Kernel Address Sanitizer) support
1/8 of kernel addresses reserved for shadow memory. But for LoongArch,
There are a lot of holes between different segments and valid address
space (256T available) is insufficient to map all these segments to kasan
shadow memory with the common formula provided by kasan core, saying
(addr >> KASAN_SHADOW_SCALE_SHIFT) + KASAN_SHADOW_OFFSET

So LoongArch has a arch-specific mapping formula, different segments are
mapped individually, and only limited space lengths of these specific
segments are mapped to shadow.

At early boot stage the whole shadow region populated with just one
physical page (kasan_early_shadow_page). Later, this page is reused as
readonly zero shadow for some memory that kasan currently don't track.
After mapping the physical memory, pages for shadow memory are allocated
and mapped.

Functions like memset()/memcpy()/memmove() do a lot of memory accesses.
If bad pointer passed to one of these function it is important to be
caught. Compiler's instrumentation cannot do this since these functions
are written in assembly.

KASan replaces memory functions with manually instrumented variants.
Original functions declared as weak symbols so strong definitions in
mm/kasan/kasan.c could replace them. Original functions have aliases
with '__' prefix in names, so we could call non-instrumented variant
if needed.

Signed-off-by: Qing Zhang <zhangqing@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
2023-09-06 22:54:16 +08:00
Hu Haowen
44a54e25b1 docs/zh_CN: change my own email address
The previous email address was abandoned due to some reasons by myself, and
thus shift the email contents mentioned from the old email address
(src.res@email.cn) to the current version (src.res.211@gmail.com).

Signed-off-by: Hu Haowen <src.res.211@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/20230707160119.26873-1-src.res.211@gmail.com
2023-07-14 13:01:50 -06:00
Yanteng Si
e07e9f2225 docs/zh_CN: Update the translation of testing-overview to 6.1-rc8
Update to commit a32d5c0fc1 ("Documentation: dev-tools:
Enhance static analysis section with discussion")

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Wu XiangCheng <bobwxc@email.cn>
Link: https://lore.kernel.org/r/f3ae5e63502fed7e904f5a801168d2324c71f014.1670642548.git.siyanteng@loongson.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2023-01-02 16:14:10 -07:00
Yanteng Si
1003f34206 docs/zh_CN: Update the translation of kasan to 6.1-rc8
Update to commit cd36d84d2571 ("kasan: allow sampling
page_alloc allocations for HW_TAGS")

Commit 80b92bfe3b ("kasan: dynamically allocate
stack ring entries")
Commit 7ebfce3312 ("kasan: support kasan.stacktrace
for SW_TAGS")
Commit ca89f2a2e6 ("kasan: move boot parameters
section in documentation")

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Wu XiangCheng <bobwxc@email.cn>
Link: https://lore.kernel.org/r/824d1cea864dac3ef78c0911c2c5a238f36c55ad.1670642548.git.siyanteng@loongson.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2023-01-02 16:14:10 -07:00
Yanteng Si
63c1d2516b Docs/zh_CN: Update the translation of testing-overview to 5.19-rc8
Update to commit 12379401c0 ("Documentation: dev-tools:
Add a section for static analysis tools")

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
Link: https://lore.kernel.org/r/b9911916446f858fe95e4d4bfeaecdab14bc0b6a.1658983157.git.siyanteng@loongson.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-28 09:37:25 -06:00
Yanteng Si
6a5057e9dc Docs/zh_CN: Update the translation of sparse to 5.19-rc8
Update to commit179fd6ba3bac ("Documentation/sparse:
 add hints about __CHECKER__")

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
Link: https://lore.kernel.org/r/2ecdf7ddc8644e9031e4e2af947b97d63ab046f0.1658983157.git.siyanteng@loongson.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-28 09:37:25 -06:00
Yanteng Si
507f48799a Docs/zh_CN: Update the translation of kasan to 5.19-rc8
update to commit 3ff16d30f5 ("kasan: test:
improve failure message in KUNIT_EXPECT_KASAN_FAIL()")

c9d1af2b78 ("mm/kasan: move kasan.fault to mm/kasan/report.c")
2d27e58514 ("kasan: Extend KASAN mode kernel parameter")
8479d7b5be ("kasan: documentation updates")
c2ec0c8f68 ("kasan: update documentation")

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
Link: https://lore.kernel.org/r/abbb6c5cc5a7daf0720a9cb0a8255472d4ac69b4.1658983157.git.siyanteng@loongson.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-28 09:37:25 -06:00
gaochao
e315b831f0 docs/zh_CN: Add dev-tools/gdb-kernel-debugging.rst Chinese translation
Translate dev-tools/gdb-kernel-debugging.rst into Chinese.

Signed-off-by: gaochao <gaochao49@huawei.com>
Reviewed-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Wu XiangCheng <bobwxc@email.cn>
Link: https://lore.kernel.org/r/20220514100046.1683-1-gaochao49@huawei.com
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-05-17 13:37:53 -06:00
Yanteng Si
f5a46e9de6 docs/zh_CN: update sparse translation
Sparse documents are too outdated,let's update sparse.rst to the latest version.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
Link: https://lore.kernel.org/r/497c334954afc0190d5531716d273925baedfff2.1637565886.git.siyanteng@loongson.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-11-29 15:01:27 -07:00
Yanteng Si
274f4df3bf docs/zh_CN: move sparse into dev-tools
../zh_CN/saprse.txt is alone at here, let's move it to ../zh_CN/dev-tools/sparse.rst.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
Link: https://lore.kernel.org/r/0f1182add7afe4e3b42398353a823d1b4dcf5147.1637565886.git.siyanteng@loongson.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-11-29 15:01:27 -07:00
Hu Haowen
0a03801ca8 docs/zh_CN: reformat zh_CN/dev-tools/testing-overview
Reorganise several long lines in order to satisfy the kernel coding
style.

Signed-off-by: Hu Haowen <src.res@email.cn>
Reviewed-by: Yanteng Si <siyanteng@loongson.cn>
Link: https://lore.kernel.org/r/20210724130611.4231-1-src.res@email.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-07-25 14:28:17 -06:00
Hu Haowen
e6c65d354f docs/zh_CN: create new translations for zh_CN/dev-tools/testing-overview
Create new translations for dev-tools/testing-overview.rst and link it
to dev-tools/index.rst with TODOList modifications.

Signed-off-by: Hu Haowen <src.res@email.cn>
Reviewed-by: Wu XiangCheng <bobwxc@email.cn>
Reviewed-by: Yanteng Si <siyanteng@loongson.cn>
Signed-off-by: Wu XiangCheng <bobwxc@email.cn>
Link: https://lore.kernel.org/r/20210620052841.GA22083@bobwxc.top
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-07-15 06:33:44 -06:00
Wan Jiabing
c003555a02 docs/zh_CN: add translations in zh_CN/dev-tools/kasan
Add new zh translations
* zh_CN/dev-tools/kasan.rst
and link it to zh_CN/dev-tools/index.rst

Reviewed-by: Fangrui Song <maskray@google.com>
Signed-off-by: Wan Jiabing <wanjiabing@vivo.com>
Reviewed-by: Alex Shi <alexs@kernel.org>
Link: https://lore.kernel.org/r/20210603141127.101689-1-wanjiabing@vivo.com
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-06-04 11:20:03 -06:00
Bernard Zhao
e5143657d9 docs/zh_CN: add translations in zh_CN/dev-tools/gcov
Add new zh translations
* zh_CN/dev-tools/gcov.rst
* zh_CN/dev-tools/index.rst
and link them to zh_CN/index.rst

Signed-off-by: Bernard Zhao <bernard@vivo.com>
Reviewed-by: Wu XiangCheng <bobwxc@email.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
Reviewed-by: Fangrui Song <maskray@google.com>
Signed-off-by: Wu XiangCheng <bobwxc@email.cn>
Link: https://lore.kernel.org/r/20210415054304.GA26689@bobwxc.top
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-04-15 14:50:59 -06:00