Linux kernel info and subpages -- a ton of this needs to be updated or tossed at this point. New topics page [[Kernel topics|here]]. ===== Linux kernel subtopics ===== * [[cgroupsv2]] * [[SATA port multipliers]] * [[LK_Usermodehelper|User mode helper]] * [[Printing/debugging]] * [[linux_device_trees|Working with device trees]] * [[ASLR]] * [[kernel.exec-shield]] * [[console loglevel]] * [[sysfs]] * [[interrupts]] * [[I2C SMBus]] * [[CAN LIN buses]] ===== Networking topics (NEW) ===== * [[phy.h]] ===== Networking topics (OLD) ===== * [[ip_up_down]] * [[MII and MDIO]] * [[PHY_MDIO|PHY and MDIO]] * [[devm_ioremap_resource]] * [[net_device_attributes|Net device attribute files under /sys/class/net]] * [[ndo_change_carrier]] * [[network namespaces]] * [[ip command]] * [[alloc netdev etherdev]] * [[IPP_UP and IFF_RUNNING]] * [[operstate]] * [[phy link update]] * [[net ioctl]] * [[ifreq ethtool]] ===== Debugging stuff ===== * [[ARM kernel panic]] ===== Upcoming topics ===== ==== Kbuild system ==== * "make xconfig" fails, pkg-config (Qt5) * /lib/modules/* files (modules.alias and so on) * ''include/linux/kconfig.h'', macro checking and so on ==== Kernel data types ==== ==== Modules ==== === General === * Is there a common wrapper for ''module_init()'', ''module_exit()''? === Basic modules === === Parameters === ==== initcalls ==== * ''include/linux/init.h'' ==== EXPORT_SYMBOL, symbols ==== ==== Device trees ==== ==== System calls ==== ==== Printing/debugging ==== * pr_info, dev_dbg, netdev_dbg and so on * #define DEBUG * dynamic debugging ==== ERR_PTR, PTR_ERR, IS_ERR ==== * https://stackoverflow.com/questions/36296130/why-does-is-err-value-cast-negative-max-errno-to-an-unsigned-long) ==== Static analysis ==== * sparse, cocci ==== uapi/ structure ==== * Module loading configuration (/etc/modules-load.d) ==== systemd-udev ==== ==== kernel space virtual memory ==== ==== mmap ==== ==== UIO ==== ==== sysfs ==== * What is the value of an attribute file with perms zero? ==== Timers ==== === Standard timers === === HR timers === === Tickless kernel === ==== Synchronization ==== === mutex/semaphore === === spinlock === === completion === === RCU === ==== Driver model (kobjects) ====