This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lkmp:lkmp_task_list [2019/06/15 22:21] ShuahKhanLF |
lkmp:lkmp_task_list [2020/01/07 20:05] (current) BjornHelgaas |
||
---|---|---|---|
Line 3: | Line 3: | ||
==== Documentation conversion and updates ==== | ==== Documentation conversion and updates ==== | ||
- | The following directories have several .txt file. Please pick 2 files and convert to ReST. There are a few exceptions that should be kept as plain text files. | + | The following directories have several .txt files. Please pick two files and convert to ReST. There are a few exceptions that should be kept as plain text files: |
* a configuration file whose extension is .txt; | * a configuration file whose extension is .txt; | ||
- | * a dump of chapter extracted from an old arch-specific manual with seems to be provided by its manufacturer. | + | * a dump of chapter extracted from an old arch-specific manual which seems to be provided by its manufacturer. |
- | ^ ^ ^ | + | **Preparing to build the documentation:** |
- | | **Directory/File** | **Description** | **Status** | | + | |
- | | Documentation/scsi/*.txt | Convert to ReST | Open | | + | |
- | | Documentation/RCU/*.txt | Convert to ReST | Open | | + | |
- | | Documentation/features/*.txt | Convert to ReST | Open | | + | |
- | Backup tasks if the above get done. These directories also have a mix of .txt and .rst. The .txt files need to be converted to ReST. | + | There's a script that checks if you have all needed dependencies to build the documentation. It is called automatically when you run ''make htmldocs''. Alternatively, you can call the script directly with: |
- | ^ ^ ^ | + | <code> |
- | | Documentation/device-mapper | Convert to ReST | Open | | + | ./scripts/sphinx-pre-install |
- | | Documentation/sh | Convert to ReST | Open | | + | </code> |
- | | Documentation/trace | Convert to ReST | Open | | + | |
- | | Documentation/misc-devices | Convert to ReST | Open | | + | |
- | | Documentation/arm64 | Convert to ReST | Open | | + | |
- | | Documentation/platform | Platform directory has one .txt file - Convert it to ReST | Open | | + | |
- | | Documentation/virtual | Convert to ReST | Open | | + | |
- | | Documentation/cpu-freq | Convert to ReST | Obsolete | | + | |
- | | Documentation/admin-guide | Convert to ReST | Open | | + | |
- | | Documentation/block | Convert to ReST | Open | | + | |
- | | Documentation/ABI | Convert to ReST | Open | | + | |
- | | Documentation/translations | Convert to ReST | Open | | + | |
- | | Documentation/PCI | Convert to ReST | Open | | + | |
- | | Documentation/filesystems | Convert to ReST | Open | | + | |
- | | Documentation/networking | Convert to ReST | Open | | + | |
- | | Documentation/netlabel | Convert to ReST | Open | | + | |
- | | Documentation/crypto | Convert to ReST | Open | | + | |
- | | Documentation/sparc | Convert to ReST | Open | | + | |
- | The following directories have files no extensions. These could be text files that need to be converted to ReST. | + | **Building docs and looking for warnings:** |
- | ^ ^ ^ | + | Once you have all the requirements, you can do the building with: |
- | | Documentation/misc-devices | Convert to ReST | Open | | + | |
- | | Documentation/target | Convert to ReST | Open | | + | |
- | | Documentation/firmware_class | Convert to ReST | Open | | + | |
- | | Documentation/isdn | Convert to ReST | Open | | + | |
- | | Documentation/media | Convert to ReST | Open | | + | |
- | | Documentation/parisc | Convert to ReST | Open | | + | |
- | | Documentation/spi | Convert to ReST | Open | | + | |
- | | Documentation/scsi | Convert to ReST | Open | | + | |
- | | Documentation/hwmon | Convert to ReST | Open | | + | |
- | | Documentation/EDID | Convert to ReST | Open | | + | |
- | | Documentation/nios2 | Convert to ReST | Open | | + | |
- | | Documentation/virtual | Convert to ReST | Open | | + | |
- | | Documentation/i2c | Convert to ReST | Open | | + | |
- | | Documentation/usb | Convert to ReST | Open | | + | |
- | | Documentation/ABI | Convert to ReST | Open | | + | |
- | | Documentation/translations | Convert to ReST | Open | | + | |
- | | Documentation/openrisc | Convert to ReST | Open | | + | |
- | | Documentation/w1 | Convert to ReST | Open | | + | |
- | | Documentation/filesystems | Convert to ReST | Open | | + | |
- | | Documentation/networking | Convert to ReST | Open | | + | |
- | | Documentation/auxdisplay | Convert to ReST | Open | | + | |
- | ==== hrtimer_forward_now() return value is u64 ==== | + | <code> |
+ | make htmldocs > doc_make.log 2>&1 | ||
+ | </code> | ||
- | Callers of hrtimer_forward_now() should save the return value in u64. A few callers don't. Fix them. | + | And check the warnings with the following script. |
- | ^ ^ ^ | + | <code> |
- | | **Name** | **Description** | **File** | **Status** | | + | #!/bin/bash |
- | | cx88_ir_work() | missed is unsigned long | drivers/media/pci/cx88/cx88-input.c | Open | | + | # |
- | | rtc_pie_update_irq() | count is int | drivers/rtc/interface.c | Open | | + | # SPDX-License-Identifier: GPL-2.0 |
- | | sched_cfs_period_timer() | overrun is int | kernel/sched/fair.c | Open | | + | # |
- | | sched_rt_period_timer() | overrun is int | kernel/sched/rt.c | Open | | + | # Copyright(c) Shuah Khan <skhan@linuxfoundation.org> |
+ | # License: GPLv2 | ||
+ | # | ||
+ | # Generates wiki format table of task list from Document | ||
+ | # build log | ||
+ | # Usage: gen_doc_task_list.sh <doc_build_log_file> | ||
- | ==== Cleanup cppcheck errors ==== | + | # Print Table header |
+ | echo "| **Task** | **Description** | **Owner** | **Status** | **Commit ID** |" | ||
+ | for f in `egrep "warn|WARN|error|ERROR" $1 | \ | ||
+ | egrep ".c:|.h:|.rst:" | \ | ||
+ | awk -F: '{print $1}' | awk '!a[$0]++' | \ | ||
+ | sed -e "s/^.\///" | sed -e "s/^\/mnt\/data\/lkml\/linux_5.3\///"` | ||
+ | do | ||
+ | echo "| $f | Fix warns | | | |" | ||
+ | done | ||
+ | </code> | ||
- | **Shifting signed 32-bit value by 31 bits is undefined behaviour errors** | + | ==== Documentation build warn tasks (generated on Linux 5.3.0) ==== |
- | These errors aren't real problems for us as compiler takes care of these. However, cleaning these up doesn't hurt, especially in public API headers. Some maintainers might like drivers fixed, on the other hand fixing public API headers first is a good idea. There are two ways to fix this: | + | **Before starting work on a task, please check the archive first to see if a patch is already in progress. Please avoid duplicated efforts. [[https://lists.linuxfoundation.org/pipermail/linux-kernel-mentees/|Liunx Kernel Mentees Archive]]. Send email to the list informing others that you are working on the task.** |
- | * Change #define FOO (1 << 31) to #define FOO BIT(31) or | + | |
- | * Adding a "U" cast - changing (1 << 31) to (1U << 31) | + | | **Task** | **Description** | **Owner** | **Status** | **Commit ID** | |
+ | | lib/genalloc.c | Fix warns | | | | | ||
+ | | include/linux/i2c.h | Fix warns | | | | | ||
+ | | include/linux/regulator/machine.h | Fix warns | | | | | ||
+ | | include/linux/regulator/driver.h | Fix warns | | | | | ||
+ | | include/net/cfg80211.h | Fix warns | | | | | ||
+ | | include/linux/input/sparse-keymap.h | Fix warns | | | | | ||
+ | | mm/util.c | Fix warns | | | | | ||
+ | | mm/slab.c | Fix warns | | | | | ||
+ | | include/linux/spi/spi.h | Fix warns | | | | | ||
+ | | drivers/usb/typec/bus.c | Fix warns | | | | | ||
+ | | drivers/usb/typec/class.c | Fix warns | | | | | ||
+ | | include/net/mac80211.h | Fix warns | | | | | ||
+ | | include/linux/w1.h | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | Fix warns | | | | | ||
+ | | fs/direct-io.c | Fix warns | | | | | ||
+ | | fs/libfs.c | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | Fix warns | | | | | ||
+ | | fs/posix_acl.c | Fix warns | | | | | ||
+ | | include/drm/drm_drv.h | Fix warns | | | | | ||
+ | | include/drm/drm_modeset_helper_vtables.h | Fix warns | | | | | ||
+ | | include/drm/drm_atomic_state_helper.h | Fix warns | | | | | ||
+ | | drivers/gpu/drm/mcde/mcde_drv.c | Fix warns | | | | | ||
+ | | include/linux/skbuff.h | Fix warns | | | | | ||
+ | | include/net/sock.h | Fix warns | | | | | ||
+ | | include/linux/netdevice.h | Fix warns | | | | | ||
+ | | include/linux/lsm_hooks.h | Fix warns | | | | | ||
+ | | include/linux/phylink.h | Fix warns | | | | | ||
+ | | drivers/net/phy/phylink.c | Fix warns | | | | | ||
+ | | Documentation/admin-guide/xfs.rst | Fix warns | | | | | ||
+ | | include/uapi/linux/firewire-cdev.h | Fix warns | | | | | ||
+ | | drivers/firewire/core-transaction.c | Fix warns | | | | | ||
+ | | drivers/ata/libata-core.c | Fix warns | | | | | ||
+ | | drivers/message/fusion/mptbase.c | Fix warns | | | | | ||
+ | | drivers/tty/serial/serial_core.c | Fix warns | | | | | ||
+ | | fs/seq_file.c | Fix warns | | | | | ||
+ | | fs/debugfs/inode.c | Fix warns | | | | | ||
+ | | fs/debugfs/file.c | Fix warns | | | | | ||
+ | | Documentation/index.rst | Fix warns | | | | | ||
+ | | Documentation/kbuild/makefiles.rst | Fix warns | | | | | ||
+ | | include/linux/xarray.h | Fix warns | | | | | ||
+ | | Documentation/crypto/crypto_engine.rst | Fix warns | | | | | ||
+ | | drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | Fix warns | | | | | ||
+ | | include/drm/drm_connector.h | Fix warns | | | | | ||
+ | | Documentation/trace/kprobetrace.rst | Fix warns | | | | | ||
+ | | net/core/dev.c | Fix warns | | | | | ||
+ | | Documentation/security/keys/core.rst | Fix warns | | | | | ||
+ | | Documentation/translations/it_IT/process/maintainer-pgp-guide.rst | Fix warns | | | | | ||
+ | | Documentation/translations/it_IT/process/programming-language.rst | Fix warns | | | | | ||
+ | | Documentation/virt/index.rst | Fix warns | | | | | ||
+ | | include/linux/slab.h | Fix warns | | | | | ||
+ | | Documentation/gpu/drm-internals.rst | Fix warns | | | | | ||
- | cd git_repo_dir | ||
- | cppcheck --force ./ > cppcheck.out 2>&1 | ||
- | |||
- | You can run cppcheck on one or more files by passing a list of files: | ||
- | cppcheck --file-list=files | ||
- | |||
- | Grep for "Shifting signed 32-bit value by 31 bits is undefined behaviour" errors | ||
- | |||
- | You can refer to the one I generated on [[https://drive.google.com/file/d/19Xu7UqBGJ7BpzxEp92ZQYb6F8UPrk3z3/view?usp=sharing|Linux 5.2-rc3 cppcheck 32-bit log]] | ||
- | |||
- | [[https://drive.google.com/file/d/1EbBsyLNh9nQuB_z4JbkyxDsXqItSpNo4/view?usp=sharing|Linux 5.2-rc3 cppcheck full log]] | ||
- | |||
- | **Defines in public headers - include/** | ||
- | ^ ^ ^ | ||
- | | **File** | **Define** | **Status** | | ||
- | |||
- | | uapi/linux/cramfs_fs.h | CRAMFS_BLK_FLAG_UNCOMPRESSED | Open | | ||
- | | uapi/linux/ethtool.h | RXH_DISCARD | Open | | ||
- | | uapi/linux/if_packet.h | TP_STATUS_TS_RAW_HARDWARE | Open | | ||
- | | uapi/linux/kfd_ioctl.h | KFD_IOC_ALLOC_MEM_FLAGS_WRITABLE | Open | | ||
- | | uapi/linux/media.h | MEDIA_ID_FLAG_NEXT | [[https://lore.kernel.org/linux-media/20190613005620.7362-1-skhan@linuxfoundation.org/T/#u|Patch Sent - use as reference]] | | ||
- | | uapi/linux/nl80211.h | NL80211_FEATURE_ND_RANDOM_MAC_ADDR | Open | | ||
- | | uapi/linux/vfio.h | VFIO_REGION_TYPE_PCI_VENDOR_TYPE | Open | | ||
- | | linux/videodev2.h | v4l2_fourcc_be | [[https://lore.kernel.org/linux-media/20190613005652.7423-1-skhan@linuxfoundation.org/T/#u|Patch sent - use as reference]] | | ||
- | | uapi/drm/exynos_drm.h| G2D_BUF_USERPTR | Open | | ||
- | | uapi/rdma/vmw_pvrdma-abi.h | PVRDMA_UAR_QP_RECV | Open | | ||
- | | uapi/rdma/vmw_pvrdma-abi.h | PVRDMA_UAR_CQ_POLL | Open | | ||
- | | linux/ata.h | ATA_PRD_EOT | Open | | ||
- | | linux/cs5535.h | CS5536_GPIOM7_PME_FLAG | Open | | ||
- | | linux/cs5535.h | CS5536_GPIOM7_PME_EN | Open | | ||
- | | linux/ide.h | IDE_DFLAG_NIEN_QUIRK | Open | | ||
- | | linux/ide.h | IDE_HFLAG_NO_UNMASK_IRQS | Open | | ||
- | | linux/pxa2xx_ssp.h | SSCR0_MOD | Open | | ||
- | | linux/pxa2xx_ssp.h | SSCR1_TTELP | Open | | ||
- | | linux/rtsx_pci.h | TRIG_DMA | Open | | ||
- | | linux/rtsx_pci.h | HAIMR_TRANS_START | Open | | ||
- | | linux/rtsx_pci.h | CMD_DONE_INT | Open | | ||
- | | linux/rtsx_pci.h | CMD_DONE_INT_EN | Open | | ||
- | | linux/serial_core.h | UPF_IOREMAP | Open | | ||
- | | media/dvb_frontend.h | DVBFE_ALGO_RECOVERY | Open | | ||
- | | media/dvb_frontend.h | DVBFE_ALGO_SEARCH_ERROR | Open | | ||
- | | net/dst.h | DST_FEATURE_ECN_CA (1 << 31) | Open | | ||
- | | net/gue.h | GUE_PFLAG_REMCSUM | Open | | ||
- | | rdma/ib_verbs.h | IB_QP_CREATE_RESERVED_END | Open | | ||
- | | rdma/ib_verbs.h | IB_SEND_RESERVED_END | Open | | ||
- | | video/atmel_lcdc.h | ATMEL_LCDC_MEMOR | Open | | ||
- | | video/atmel_lcdc.h | ATMEL_LCDC_MEMOR_LITTLE | Open | | ||
- | | video/pm3fb.h | PM3PixelSize_INDIVIDUAL | Open | | ||
- | | video/pm3fb.h | PM3Render2D_TextureEnable | Open | | ||
- | | video/radeon.h | RB2D_DC_BUSY | Open | | ||
- | | video/radeon.h | HORZ_AUTO_RATIO_INC | Open | | ||
- | |||
- | |||
- | **Uninitialized variable errors/warns** | ||
- | |||
- | Grep for Uninitialized variable errors and send fixes in. Make sure the error is real and not a false. Check to see if it is used before initializing. | ||