22 Aug, 2023

1 commit

  • There is only one Kconfig user of CONFIG_EMBEDDED and it can be switched
    to EXPERT or "if !ARCH_MULTIPLATFORM" (suggested by Arnd).

    Link: https://lkml.kernel.org/r/20230816055010.31534-1-rdunlap@infradead.org
    Signed-off-by: Randy Dunlap
    Acked-by: Geert Uytterhoeven
    Acked-by: Arnd Bergmann
    Acked-by: Palmer Dabbelt [RISC-V]
    Acked-by: Greg Ungerer
    Acked-by: Jason A. Donenfeld
    Acked-by: Michael Ellerman [powerpc]
    Cc: Russell King
    Cc: Vineet Gupta
    Cc: Brian Cain
    Cc: Michal Simek
    Cc: Thomas Bogendoerfer
    Cc: Dinh Nguyen
    Cc: Jonas Bonn
    Cc: Stefan Kristiansson
    Cc: Stafford Horne
    Cc: Nicholas Piggin
    Cc: Christophe Leroy
    Cc: Paul Walmsley
    Cc: Albert Ou
    Cc: Yoshinori Sato
    Cc: Rich Felker
    Cc: John Paul Adrian Glaubitz
    Cc: Max Filippov
    Cc: Josh Triplett
    Cc: Masahiro Yamada
    Signed-off-by: Andrew Morton

    Randy Dunlap
     

27 Mar, 2023

1 commit

  • After the commit 93d102f094be9beab2 ("printk: remove safe buffers"),
    CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT is no longer useful. Remove it.

    Signed-off-by: Marc Aurèle La France
    Reviewed-by: John Ogness
    Reviewed-by: Sergey Senozhatsky
    Reviewed-by: Petr Mladek
    [pmladek@suse.cz: Cleaned up the commit message.]
    Signed-off-by: Petr Mladek
    Fixes: 93d102f094be9beab ("printk: remove safe buffers")
    Link: https://lore.kernel.org/r/5c19e248-1b6b-330c-7c4c-a824688daefe@tuyoix.net

    Marc Aurèle La France
     

01 Dec, 2022

1 commit

  • As explained in [1], we would like to remove SLOB if possible.

    - There are no known users that need its somewhat lower memory footprint
    so much that they cannot handle SLUB (after some modifications by the
    previous patches) instead.

    - It is an extra maintenance burden, and a number of features are
    incompatible with it.

    - It blocks the API improvement of allowing kfree() on objects allocated
    via kmem_cache_alloc().

    As the first step, rename the CONFIG_SLOB option in the slab allocator
    configuration choice to CONFIG_SLOB_DEPRECATED. Add CONFIG_SLOB
    depending on CONFIG_SLOB_DEPRECATED as an internal option to avoid code
    churn. This will cause existing .config files and defconfigs with
    CONFIG_SLOB=y to silently switch to the default (and recommended
    replacement) SLUB, while still allowing SLOB to be configured by anyone
    that notices and needs it. But those should contact the slab maintainers
    and linux-mm@kvack.org as explained in the updated help. With no valid
    objections, the plan is to update the existing defconfigs to SLUB and
    remove SLOB in a few cycles.

    To make SLUB more suitable replacement for SLOB, a CONFIG_SLUB_TINY
    option was introduced to limit SLUB's memory overhead.
    There is a number of defconfigs specifying CONFIG_SLOB=y. As part of
    this patch, update them to select CONFIG_SLUB and CONFIG_SLUB_TINY.

    [1] https://lore.kernel.org/all/b35c3f82-f67b-2103-7d82-7a7ba7521439@suse.cz/

    Cc: Russell King
    Cc: Aaro Koskinen
    Cc: Janusz Krzysztofik
    Cc: Tony Lindgren
    Cc: Jonas Bonn
    Cc: Stefan Kristiansson
    Cc: Stafford Horne
    Cc: Yoshinori Sato
    Cc: Rich Felker
    Cc: Arnd Bergmann
    Cc: Josh Triplett
    Cc: Conor Dooley
    Cc: Damien Le Moal
    Cc: Christophe Leroy
    Cc: Geert Uytterhoeven
    Signed-off-by: Vlastimil Babka
    Acked-by: Aaro Koskinen # OMAP1
    Reviewed-by: Damien Le Moal # riscv k210
    Acked-by: Arnd Bergmann # arm
    Acked-by: Roman Gushchin
    Acked-by: Mike Rapoport
    Reviewed-by: Christoph Lameter

    Vlastimil Babka
     

15 Jul, 2022

1 commit

  • The RISC-V port has collected a handful of options that are
    fundamentally non-portable. To prevent users from shooting themselves
    in the foot, hide them all behind a config entry that explicitly calls
    out that non-portable binaries may be produced.

    Signed-off-by: Palmer Dabbelt
    Reviewed-by: Arnd Bergmann
    Signed-off-by: Palmer Dabbelt
    Reviewed-by: Atish Patra
    Reviewed-by: Damien Le Moal
    Reviewed-by: Guo Ren
    Link: https://lore.kernel.org/r/20220521193356.26562-1-palmer@rivosinc.com
    Signed-off-by: Palmer Dabbelt

    Palmer Dabbelt
     

01 Apr, 2022

1 commit


25 Feb, 2022

1 commit

  • Instead of an arbitrary delay, use the "rootwait" kernel option to wait
    for the mmc root device to be ready.

    Signed-off-by: Damien Le Moal
    Reviewed-by: Anup Patel
    Fixes: 7e09fd3994c5 ("riscv: Add Canaan Kendryte K210 SD card defconfig")
    Cc: stable@vger.kernel.org
    Signed-off-by: Palmer Dabbelt

    Damien Le Moal
     

20 Jan, 2022

2 commits

  • This patchset allows to have a single kernel for sv39 and sv48 without
    being relocatable.

    The idea comes from Arnd Bergmann who suggested to do the same as x86,
    that is mapping the kernel to the end of the address space, which allows
    the kernel to be linked at the same address for both sv39 and sv48 and
    then does not require to be relocated at runtime.

    This implements sv48 support at runtime. The kernel will try to boot
    with 4-level page table and will fallback to 3-level if the HW does not
    support it. Folding the 4th level into a 3-level page table has almost
    no cost at runtime.

    Note that kasan region had to be moved to the end of the address space
    since its location must be known at compile-time and then be valid for
    both sv39 and sv48 (and sv57 that is coming).

    * riscv-sv48-v3:
    riscv: Explicit comment about user virtual address space size
    riscv: Use pgtable_l4_enabled to output mmu_type in cpuinfo
    riscv: Implement sv48 support
    asm-generic: Prepare for riscv use of pud_alloc_one and pud_free
    riscv: Allow to dynamically define VA_BITS
    riscv: Introduce functions to switch pt_ops
    riscv: Split early kasan mapping to prepare sv48 introduction
    riscv: Move KASAN mapping next to the kernel mapping
    riscv: Get rid of MAXPHYSMEM configs

    Signed-off-by: Palmer Dabbelt

    Palmer Dabbelt
     
  • CONFIG_MAXPHYSMEM_* are actually never used, even the nommu defconfigs
    selecting the MAXPHYSMEM_2GB had no effects on PAGE_OFFSET since it was
    preempted by !MMU case right before.

    In addition, the move of the kernel mapping at the end of the address
    space broke the use of MAXPHYSMEM_2G with MMU since it defines PAGE_OFFSET
    at the same address as the kernel mapping.

    Reported-by: Geert Uytterhoeven
    Fixes: 2bfc6cd81bd1 ("riscv: Move kernel mapping outside of linear mapping")
    Signed-off-by: Alexandre Ghiti
    Tested-by: Geert Uytterhoeven
    Tested-by: Conor Dooley
    Cc: stable@vger.kernel.org
    Signed-off-by: Palmer Dabbelt

    Alexandre Ghiti
     

07 Jan, 2022

1 commit


06 Jan, 2022

2 commits


23 Feb, 2021

1 commit

  • The nommu_k210_defconfig default configuration allows booting a Canaan
    Kendryte K210 SoC based boards using an embedded intramfs cpio file.
    Modifying this configuration to enable support for the board SD card is
    not trivial for all users. To help beginners getting started with these
    boards, add the nommu_k210_sdcard_defconfig default configuration file
    to set all configuration options necessary to use the board mmc-spi sd
    card for the root file system.

    This new configuration adds support for the block layer, the mmc-spi
    driver and modifies the boot options to specify the rootfs device as
    mmcblk0p1 (first partition of the sd card block device). The ext2 file
    system is selected by default to encourage its use as that results in
    only about 4KB added to the kernel image size. As ext2 does not have
    journaling, the boot options specify a read-only mount of the file
    system. Similarly to the smaller nommu_k210_defconfig, this new default
    configuration disables virtual terminal support to reduce the kernel
    image size.

    The default device tree selected is unchanged, specifying the simple
    "k210_generic" device tree file. The user must change this setting to
    specify the device tree suitable for the board being used
    (sipeed_maix_bit, sipeed_maix_dock, sipeed_maix_go, sipeed_maixduino or
    canaan_kd233).

    Signed-off-by: Damien Le Moal
    Reviewed-by: Anup Patel
    Reviewed-by: Atish Patra
    Signed-off-by: Palmer Dabbelt

    Damien Le Moal