User Tools

Site Tools


lkmp:lkmp_task_list

This is an old revision of the document!


Linux Kernel Mentorship Task List

Documentation conversion and updates

Directory/File Description Status
Documentation/scsi Convert to ReST Open
Documentation/RCU Convert to ReST Open
Documentation/features Convert to ReST Open
Documentation/device-mapper Convert to ReST Open
Documentation/sh Convert to ReST Open
Documentation/trace Convert to ReST Open
Documentation/misc-devices Convert to ReST Open
Documentation/arm64 Convert to ReST Open
Documentation/platform Convert to ReST Open
Documentation/scsi Convert to ReST Open
Documentation/RCU Convert 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/sphinx Convert to ReST Nothing to be done?
Documentation/features Convert to ReST Open
Documentation/netlabel Convert to ReST Open
Documentation/acpi Convert to ReST Work in progress
Documentation/crypto Convert to ReST Open
Documentation/sparc Convert to ReST Open

hrtimer_forward_now() return value is u64

Callers of hrtimer_forward_now() should save the return value in u64. A few callers don't. Fix them.

Name Description File Status
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
sched_cfs_period_timer() overrun is int kernel/sched/fair.c Open
sched_rt_period_timer() overrun is int kernel/sched/rt.c Open

Cleanup cppcheck errors

Shifting signed 32-bit value by 31 bits is undefined behaviour errors

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:

  • Change #define FOO (1 « 31) to #define FOO BIT(31) or
  • Adding a “U” cast - changing (1 « 31) to (1U « 31)

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 Linux 5.2-rc3 cppcheck 32-bit log

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 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 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.

lkmp/lkmp_task_list.1560627311.txt.gz · Last modified: 2019/06/15 19:35 by ShuahKhanLF