24 Sep, 2020

1 commit

  • PowerPC allmodconfig often fails to build as follows:

    LD .tmp_vmlinux.kallsyms1
    KSYM .tmp_vmlinux.kallsyms1.o
    LD .tmp_vmlinux.kallsyms2
    KSYM .tmp_vmlinux.kallsyms2.o
    LD .tmp_vmlinux.kallsyms3
    KSYM .tmp_vmlinux.kallsyms3.o
    LD vmlinux
    SORTTAB vmlinux
    SYSMAP System.map
    Inconsistent kallsyms data
    Try make KALLSYMS_EXTRA_PASS=1 as a workaround
    make[2]: *** [../Makefile:1162: vmlinux] Error 1

    Setting KALLSYMS_EXTRA_PASS=1 does not help.

    This is caused by the compiler inserting stubs such as *.long_branch.*
    and *.plt_branch.*

    $ powerpc-linux-nm -n .tmp_vmlinux.kallsyms2
    [ snip ]
    c00000000210c010 t 00000075.plt_branch.da9:19
    c00000000210c020 t 00000075.plt_branch.1677:5
    c00000000210c030 t 00000075.long_branch.memmove
    c00000000210c034 t 00000075.plt_branch.9e0:5
    c00000000210c044 t 00000075.plt_branch.free_initrd_mem
    ...

    Actually, the problem mentioned in scripts/link-vmlinux.sh comments;
    "In theory it's possible this results in even more stubs, but unlikely"
    is happening here, and ends up with another kallsyms step required.

    scripts/kallsyms.c already ignores various compiler stubs. Let's do
    similar to make kallsysms for PowerPC always succeed in 2 steps.

    Reported-by: Guenter Roeck
    Signed-off-by: Masahiro Yamada
    Tested-by: Guenter Roeck

    Masahiro Yamada
     

20 Sep, 2020

2 commits

  • Since commit 68fd110b3e7e ("kconfig: qconf: remove redundant help in
    the info view"), the help message is no longer displayed.

    I intended to drop duplicated "Symbol:", "Type:", but precious info
    about help and reverse dependencies was lost too.

    Revive it now.

    "defined at" is contained in menu_get_ext_help(), so I made sure
    to not display it twice.

    Fixes: 68fd110b3e7e ("kconfig: qconf: remove redundant help in the info view")
    Reported-by: Maxim Levitsky
    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • "make HOSTCXX=clang++ xconfig" reports the following:

    HOSTCXX scripts/kconfig/qconf.o
    In file included from scripts/kconfig/qconf.cc:23:
    In file included from scripts/kconfig/lkc.h:15:
    scripts/kconfig/lkc_proto.h:26:13: warning: 'get_relations_str' has C-linkage specified, but returns incomplete type 'struct gstr' which could be incompatible with C [-Wreturn-type-c-linkage]
    struct gstr get_relations_str(struct symbol **sym_arr, struct list_head *head);
    ^

    Currently, get_relations_str() is declared before the struct gstr
    definition.

    Move all declarations of menu.c functions below.

    BTW, some are declared in lkc.h and some in lkc_proto.h, but the
    difference is unclear. I guess some refactoring is needed.

    Signed-off-by: Masahiro Yamada
    Acked-by: Boris Kolpackov

    Masahiro Yamada
     

18 Sep, 2020

1 commit

  • Commit c9b09a9249e6 ("kconfig: qconf: use delete[] instead of delete
    to free array") fixed two lines, but there is one more.
    (cppcheck does not report it for some reason...)

    This was detected by Clang.

    "make HOSTCXX=clang++ xconfig" reports the following:

    scripts/kconfig/qconf.cc:1279:2: warning: 'delete' applied to a pointer that was allocated with 'new[]'; did you mean 'delete[]'? [-Wmismatched-new-delete]
    delete data;
    ^
    []
    scripts/kconfig/qconf.cc:1239:15: note: allocated with 'new[]' here
    char *data = new char[count + 1];
    ^

    Fixes: c4f7398bee9c ("kconfig: qconf: make debug links work again")
    Fixes: c9b09a9249e6 ("kconfig: qconf: use delete[] instead of delete to free array")
    Signed-off-by: Masahiro Yamada
    Reviewed-by: Nick Desaulniers

    Masahiro Yamada
     

13 Sep, 2020

1 commit

  • Pull char / misc driver fixes from Greg KH:
    "Here are a number of small driver fixes for 5.9-rc5

    Included in here are:

    - habanalabs driver fixes

    - interconnect driver fixes

    - soundwire driver fixes

    - dyndbg fixes for reported issues, and then reverts to fix it all up
    to a sane state.

    - phy driver fixes

    All of these have been in linux-next for a while with no reported
    issues"

    * tag 'char-misc-5.9-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
    Revert "dyndbg: accept query terms like file=bar and module=foo"
    Revert "dyndbg: fix problem parsing format="foo bar""
    scripts/tags.sh: exclude tools directory from tags generation
    video: fbdev: fix OOB read in vga_8planes_imageblit()
    dyndbg: fix problem parsing format="foo bar"
    dyndbg: refine export, rename to dynamic_debug_exec_queries()
    dyndbg: give %3u width in pr-format, cosmetic only
    interconnect: qcom: Fix small BW votes being truncated to zero
    soundwire: fix double free of dangling pointer
    interconnect: Show bandwidth for disabled paths as zero in debugfs
    habanalabs: fix report of RAZWI initiator coordinates
    habanalabs: prevent user buff overflow
    phy: omap-usb2-phy: disable PHY charger detect
    phy: qcom-qmp: Use correct values for ipq8074 PCIe Gen2 PHY init
    soundwire: bus: fix typo in comment on INTSTAT registers
    phy: qualcomm: fix return value check in qcom_ipq806x_usb_phy_probe()
    phy: qualcomm: fix platform_no_drv_owner.cocci warnings

    Linus Torvalds
     

07 Sep, 2020

1 commit

  • when COMPILED_SOURCE is set, running 'make ARCH=x86_64 COMPILED_SOURCE=1
    cscope tags' in KBUILD_OUTPUT directory produces lots of "No such file
    or directory" warnings:
    ...
    realpath: sigchain.h: No such file or directory
    realpath: orc_gen.c: No such file or directory
    realpath: objtool.c: No such file or directory
    ...
    let's exclude tools directory from tags generation

    Fixes: 4f491bb6ea2a ("scripts/tags.sh: collect compiled source precisely")
    Link: https://lore.kernel.org/lkml/20200809210056.GA1344537@thinkpad
    Signed-off-by: Rustam Kovhaev
    Link: https://lore.kernel.org/r/20200810153650.1822316-1-rkovhaev@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Rustam Kovhaev
     

06 Sep, 2020

2 commits

  • Merge misc fixes from Andrew Morton:
    "19 patches.

    Subsystems affected by this patch series: MAINTAINERS, ipc, fork,
    checkpatch, lib, and mm (memcg, slub, pagemap, madvise, migration,
    hugetlb)"

    * emailed patches from Andrew Morton :
    include/linux/log2.h: add missing () around n in roundup_pow_of_two()
    mm/khugepaged.c: fix khugepaged's request size in collapse_file
    mm/hugetlb: fix a race between hugetlb sysctl handlers
    mm/hugetlb: try preferred node first when alloc gigantic page from cma
    mm/migrate: preserve soft dirty in remove_migration_pte()
    mm/migrate: remove unnecessary is_zone_device_page() check
    mm/rmap: fixup copying of soft dirty and uffd ptes
    mm/migrate: fixup setting UFFD_WP flag
    mm: madvise: fix vma user-after-free
    checkpatch: fix the usage of capture group ( ... )
    fork: adjust sysctl_max_threads definition to match prototype
    ipc: adjust proc_ipc_sem_dointvec definition to match prototype
    mm: track page table modifications in __apply_to_page_range()
    MAINTAINERS: IA64: mark Status as Odd Fixes only
    MAINTAINERS: add LLVM maintainers
    MAINTAINERS: update Cavium/Marvell entries
    mm: slub: fix conversion of freelist_corrupted()
    mm: memcg: fix memcg reclaim soft lockup
    memcg: fix use-after-free in uncharge_batch

    Linus Torvalds
     
  • The usage of "capture group (...)" in the immediate condition after `&&`
    results in `$1` being uninitialized. This issues a warning "Use of
    uninitialized value $1 in regexp compilation at ./scripts/checkpatch.pl
    line 2638".

    I noticed this bug while running checkpatch on the set of commits from
    v5.7 to v5.8-rc1 of the kernel on the commits with a diff content in
    their commit message.

    This bug was introduced in the script by commit e518e9a59ec3
    ("checkpatch: emit an error when there's a diff in a changelog"). It
    has been in the script since then.

    The author intended to store the match made by capture group in variable
    `$1`. This should have contained the name of the file as `[\w/]+`
    matched. However, this couldn't be accomplished due to usage of capture
    group and `$1` in the same regular expression.

    Fix this by placing the capture group in the condition before `&&`.
    Thus, `$1` can be initialized to the text that capture group matches
    thereby setting it to the desired and required value.

    Fixes: e518e9a59ec3 ("checkpatch: emit an error when there's a diff in a changelog")
    Signed-off-by: Mrinal Pandey
    Signed-off-by: Andrew Morton
    Tested-by: Lukas Bulwahn
    Reviewed-by: Lukas Bulwahn
    Cc: Joe Perches
    Link: https://lkml.kernel.org/r/20200714032352.f476hanaj2dlmiot@mrinalpandey
    Signed-off-by: Linus Torvalds

    Mrinal Pandey
     

03 Sep, 2020

2 commits


21 Aug, 2020

3 commits


18 Aug, 2020

6 commits

  • This is not used at all.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • I do not know when ConfigInfoView::createStandardContextMenu() is
    called.

    Because QTextEdit::createStandardContextMenu() is not virtual,
    ConfigInfoView::createStandardContextMenu() cannot override it.
    Even if right-click the ConfigInfoView window, the "Show Debug Info"
    menu does not show up.

    Build up the menu in the constructor, and invoke it from the
    contextMenuEvent().

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • If you right-click in the ConfigList window, you will see the following
    messages in the console:

    QObject::connect: No such slot QAction::setOn(bool) in scripts/kconfig/qconf.cc:888
    QObject::connect: (sender name: 'config')
    QObject::connect: No such slot QAction::setOn(bool) in scripts/kconfig/qconf.cc:897
    QObject::connect: (sender name: 'config')
    QObject::connect: No such slot QAction::setOn(bool) in scripts/kconfig/qconf.cc:906
    QObject::connect: (sender name: 'config')

    Right, there is no such slot in QAction. I think this is a typo of
    setChecked.

    Due to this bug, when you toggled the menu "Option->Show Name/Range/Data"
    the state of the context menu was not previously updated. Fix this.

    Fixes: d5d973c3f8a9 ("Port xconfig to Qt5 - Put back some of the old implementation(part 2)")
    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • Use the proper form of the RESTRICT keyword.

    Quote the comments properly too.

    Signed-off-by: Joe Perches
    Acked-by: Nick Desaulniers
    Signed-off-by: Masahiro Yamada

    Joe Perches
     
  • Fix the following warning from sparse:

    scripts/extract-cert.c:74:5: warning: symbol 'kbuild_verbose' was not declared. Should it be static?

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • This -Wsign-compare compiler warning can be very noisy
    and most of the suggested conversions are unnecessary.

    Make the warning W=3 so it's described under the
    "can most likely be ignored" block.

    Signed-off-by: Joe Perches
    Signed-off-by: Masahiro Yamada

    Joe Perches
     

15 Aug, 2020

1 commit

  • Pull Kconfig updates from Masahiro Yamada:

    - remove '---help---' keyword support

    - fix mouse events for 'menuconfig' symbols in search view of qconf

    - code cleanups of qconf

    * tag 'kconfig-v5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (24 commits)
    kconfig: qconf: move setOptionMode() to ConfigList from ConfigView
    kconfig: qconf: do not limit the pop-up menu to the first row
    kconfig: qconf: refactor icon setups
    kconfig: qconf: remove unused voidPix, menuInvPix
    kconfig: qconf: remove ConfigItem::text/setText
    kconfig: qconf: remove ConfigList::addColumn/removeColumn
    kconfig: qconf: remove ConfigItem::pixmap/setPixmap
    kconfig: qconf: drop more localization code
    kconfig: qconf: remove 'parent' from ConfigList::updateMenuList()
    kconfig: qconf: remove unused argument from ConfigView::updateList()
    kconfig: qconf: remove unused argument from ConfigList::updateList()
    kconfig: qconf: omit parent to QHBoxLayout()
    kconfig: qconf: remove name from ConfigSearchWindow constructor
    kconfig: qconf: remove unused ConfigList::listView()
    kconfig: qconf: overload addToolBar() to create and insert toolbar
    kconfig: qconf: remove toolBar from ConfigMainWindow members
    kconfig: qconf: use 'menu' variable for (QMenu *)
    kconfig: qconf: do not use 'menu' variable for (QMenuBar *)
    kconfig: qconf: remove ->addSeparator() to menuBar
    kconfig: add 'static' to some file-local data
    ...

    Linus Torvalds
     

14 Aug, 2020

20 commits