Skip to content
This repository has been archived by the owner on Aug 29, 2024. It is now read-only.

Commit

Permalink
Merge remote-tracking branch 'origin/android12-next' into android12-s…
Browse files Browse the repository at this point in the history
…table

* origin/android12-next:
  UPSTREAM: ext4: verify dir block before splitting it
  UPSTREAM: ext4: fix use-after-free in ext4_rename_dir_prepare
  BACKPORT: ext4: Only advertise encrypted_casefold when encryption and unicode are enabled
  BACKPORT: ext4: fix no-key deletion for encrypt+casefold
  BACKPORT: ext4: optimize match for casefolded encrypted dirs
  BACKPORT: ext4: handle casefolding with encryption
  Revert "ANDROID: ext4: Handle casefolding with encryption"
  Revert "ANDROID: ext4: Optimize match for casefolded encrypted dirs"
  UPSTREAM: Revert "hwmon: Make chip parameter for with_info API mandatory"
  ANDROID: extcon: fix allocation for edev->bnh
  Revert "drm: fix EDID struct for old ARM OABI format"
  Revert "mailbox: forward the hrtimer if not queued and under a lock"
  Revert "ALSA: jack: Access input_dev under mutex"
  Revert "ext4: fix use-after-free in ext4_rename_dir_prepare"
  Revert "ext4: verify dir block before splitting it"
  build: IMMENSITY - X Release 5.0.0
  ARM64: configs: xiaomi: update auto-generated defconfig for all devices
  ARM64: configs: xiaomi: Enable Linux Random Number Generator
  LRNG: Backport to 4.19 kernel
  lrng: merge v45
  lrng: merge v43
  LRNG - add power-on and runtime self-tests
  LRNG - add interface for gathering of raw entropy
  LRNG - add SP800-90B compliant health tests
  LRNG - add Jitter RNG fast noise source
  crypto: move Jitter RNG header include dir
  LRNG - add kernel crypto API PRNG extension
  LRNG - add SP800-90A DRBG extension
  crypto: DRBG - externalize DRBG functions for LRNG
  LRNG - add common generic hash support
  LRNG - add switchable DRNG support
  LRNG - sysctls and /proc interface
  LRNG - allocate one DRNG instance per NUMA node
  Linux Random Number Generator
  BACKPORT: crypto: jitterentropy - Put constants on the right side of the expression
  BACKPORT: crypto: jitter - SP800-90B compliance
  BACKPORT: crypto: jitter - add header to fix buildwarnings
  BACKPORT: crypto: jitter - fix comments
  BACKPORT: random: initialize ChaCha20 constants with correct endianness
  BACKPORT: random: avoid warnings for !CONFIG_NUMA builds
  BACKPORT: random: add arch_get_random_*long_early()
  BACKPORT: crypto: jitter - update implementation to 2.1.2
  BACKPORT: random: split primary/secondary crng init paths
  random: always assume crng is ready
  random: always use /dev/urandom
  disp: msm: Avoid Force allow panel phy power off on umi
  disp: msm: Add suport for disable miui early wake optimization
  ARM64: configs: xiaomi: disable CONFIG_ZRAM_WRITEBACK
  ARM64: configs: xiaomi: Enable erofs support
  ARM64: configs: xiaomi: Build backlight lcd inline
  PM / devfreq: Make max_freq node read only
  PM / devfreq: Make the monitor workqueue high priority
  PM / sleep: Skip OOM killer toggles when kernel is compiled for Android
  BACKPORT: drivers: devfreq: Fix possible divide-by-zero
  BACKPORT: devfreq: memlat: track cpu during ipi to cluster
  Revert "memlat: don't read perf event if other CPU is under scm call"
  BACKPORT: PM / devfreq: memlat: increase ratio_ceil limit
  BACKPORT: PM / devfreq: memlat: fix suspend/resume calls to devfreq_monitor
  BACKPORT: lz4: fix LZ4_decompress_safe_partial read out of bound
  BACKPORT: lib/crc32: Make crc32_be weak for arch override
  BACKPORT: lib/crc32: remove unneeded casts
  BACKPORT: arm64: lib: Consistently enable crc32 extension
  BACKPORT: arm64: crc32: always assume ARM64_HAS_CRC32
  BACKPORT: arm64: lib: accelerate crc32_be
  BACKPORT: lib/string.c: simplify str[c]spn
  BACKPORT: string: improve default out-of-line memcmp() implementation
  BACKPORT: arm64: lib: Import latest version of Arm Optimized Routines' strncmp
  BACKPORT: arm64: lib: Import latest version of Arm Optimized Routines' strcmp
  BACKPORT: arm64: Avoid premature usercopy failure
  BACKPORT: arm64: update string routine copyrights and URLs
  BACKPORT: arm64: Rewrite __arch_clear_user()
  BACKPORT: arm64: Better optimised memchr()
  BACKPORT: arm64: Import latest memcpy()/memmove() implementation
  BACKPORT: arm64: Add assembly annotations for weak-PI-alias madness
  BACKPORT: arm64: Import latest version of Cortex Strings' strncmp
  BACKPORT: arm64: Import updated version of Cortex Strings' strlen
  BACKPORT: arm64: Import latest version of Cortex Strings' strcmp
  BACKPORT: arm64: Import latest version of Cortex Strings' memcmp
  BACKPORT: arm64: alternatives: Split up alternative.h
  BACKPORT: arm64: uaccess: move uao_* alternatives to asm-uaccess.h
  BACKPORT: arm64: Reorder the macro arguments in the copy routines
  Revert "arm64: Avoid premature usercopy failure"
  BACKPORT: arm64: fix spelling mistake "ca not" -> "cannot"
  BACKPORT: arm64: csum: Disable KASAN for do_csum()
  BACKPORT: arm64: csum: Optimise IPv6 header checksum
  BACKPORT: arm64: csum: Fix pathological zero-length calls
  BACKPORT: arm64: Implement optimised checksum routine
  BACKPORT: arm64: Change .weak to SYM_FUNC_START_WEAK_PI for arch/arm64/lib/mem*.S
  STOPSHIP: ARM64: Keep old annotations for __dma_inv_area and __dma_clean_area
  BACKPORT: arm64: mm: Use modern annotations for assembly functions
  BACKPORT: arm64: lib: Use modern annotations for assembly functions
  Revert "arm64: Change .weak to SYM_FUNC_START_WEAK_PI for arch/arm64/lib/mem*.S"
  BACKPORT: linkage: Introduce new macros for assembler symbols
  BACKPORT: linkage: add generic GLOBAL() macro
  BACKPORT: include/linux/linkage.h: align weak symbols
  BACKPORT: arm64: asm: Add new-style position independent function annotations
  BACKPORT: arm64: uaccess: Remove uaccess_*_not_uao asm macros
  BACKPORT: arm64: hugetlb: Register hugepages during arch init
  BACKPORT: arm64: crypto: add NEON accelerated XOR implementation
  BACKPORT: arm64/neon: add workaround for ambiguous C99 stdint.h types
  BACKPORT: arm64: entry: Remove confusing comment
  BACKPORT: arm64: entry: Place an SB sequence following an ERET instruction
  BACKPORT: arm64: Add support for SB barrier and patch in over DSB; ISB sequences
  BACKPORT: arm64/lib: improve CRC32 performance for deep pipelines
  BACKPORT: arm64/lib: add accelerated crc32 routines
  BACKPORT: arm64: cpufeature: add feature for CRC32 instructions
  BACKPORT: lib/crc32.c: mark crc32_le_base/__crc32c_le_base aliases as __pure
  BACKPORT: lib/crc32: make core crc32() routines weak so they can be overridden
  FROMLIST: BACKPORT: mm: fix is_pinnable_page against on cma page
  BACKPORT: cert host tools: Stop complaining about deprecated OpenSSL functions
  CI: Add support for cmi and umi
  Linux 4.19.247
  tcp: fix tcp_mtup_probe_success vs wrong snd_cwnd
  mtd: cfi_cmdset_0002: Use chip_ready() for write on S29GL064N
  mtd: cfi_cmdset_0002: Move and rename chip_check/chip_ready/chip_good_for_write
  md/raid0: Ignore RAID0 layout if the second zone has only one device
  powerpc/32: Fix overread/overwrite of thread_struct via ptrace
  Input: bcm5974 - set missing URB_NO_TRANSFER_DMA_MAP urb flag
  ixgbe: fix unexpected VLAN Rx in promisc mode on VF
  ixgbe: fix bcast packets Rx on VF after promisc removal
  nfc: st21nfca: fix memory leaks in EVT_TRANSACTION handling
  nfc: st21nfca: fix incorrect validating logic in EVT_TRANSACTION
  mmc: block: Fix CQE recovery reset success
  ata: libata-transport: fix {dma|pio|xfer}_mode sysfs files
  cifs: return errors during session setup during reconnects
  ALSA: hda/conexant - Fix loopback issue with CX20632
  vringh: Fix loop descriptors check in the indirect cases
  nodemask: Fix return values to be unsigned
  nbd: fix io hung while disconnecting device
  nbd: fix race between nbd_alloc_config() and module removal
  nbd: call genl_unregister_family() first in nbd_cleanup()
  modpost: fix undefined behavior of is_arm_mapping_symbol()
  drm/radeon: fix a possible null pointer dereference
  ceph: allow ceph.dir.rctime xattr to be updatable
  Revert "net: af_key: add check for pfkey_broadcast in function pfkey_process"
  md: protect md_unregister_thread from reentrancy
  kernfs: Separate kernfs_pr_cont_buf and rename_lock.
  serial: msm_serial: disable interrupts in __msm_console_write()
  staging: rtl8712: fix uninit-value in r871xu_drv_init()
  clocksource/drivers/sp804: Avoid error on multiple instances
  extcon: Modify extcon device to be created after driver data is set
  misc: rtsx: set NULL intfdata when probe fails
  usb: dwc2: gadget: don't reset gadget's driver->bus
  USB: hcd-pci: Fully suspend across freeze/thaw cycle
  drivers: usb: host: Fix deadlock in oxu_bus_suspend()
  drivers: tty: serial: Fix deadlock in sa1100_set_termios()
  USB: host: isp116x: check return value after calling platform_get_resource()
  drivers: staging: rtl8192e: Fix deadlock in rtllib_beacons_stop()
  drivers: staging: rtl8192u: Fix deadlock in ieee80211_beacons_stop()
  tty: Fix a possible resource leak in icom_probe
  tty: synclink_gt: Fix null-pointer-dereference in slgt_clean()
  lkdtm/usercopy: Expand size of "out of frame" object
  iio: dummy: iio_simple_dummy: check the return value of kstrdup()
  drm: imx: fix compiler warning with gcc-12
  net: altera: Fix refcount leak in altera_tse_mdio_create
  ip_gre: test csum_start instead of transport header
  net/mlx5: Rearm the FW tracer after each tracer event
  net: ipv6: unexport __init-annotated seg6_hmac_init()
  net: xfrm: unexport __init-annotated xfrm4_protocol_init()
  net: mdio: unexport __init-annotated mdio_bus_init()
  SUNRPC: Fix the calculation of xdr->end in xdr_get_next_encode_buffer()
  net/mlx4_en: Fix wrong return value on ioctl EEPROM query failure
  bpf, arm64: Clear prog->jited_len along prog->jited
  af_unix: Fix a data-race in unix_dgram_peer_wake_me().
  ata: pata_octeon_cf: Fix refcount leak in octeon_cf_probe
  xprtrdma: treat all calls not a bcall when bc_serv is NULL
  video: fbdev: pxa3xx-gcu: release the resources correctly in pxa3xx_gcu_probe/remove()
  NFSv4: Don't hold the layoutget locks across multiple RPC calls
  m68knommu: fix undefined reference to `_init_sp'
  m68knommu: set ZERO_PAGE() to the allocated zeroed page
  i2c: cadence: Increase timeout per message if necessary
  tracing: Avoid adding tracer option before update_tracer_options
  tracing: Fix sleeping function called from invalid context on RT kernel
  mips: cpc: Fix refcount leak in mips_cpc_default_phys_base
  perf c2c: Fix sorting in percent_rmt_hitm_cmp()
  tipc: check attribute length for bearer name
  afs: Fix infinite loop found by xfstest generic/676
  tcp: tcp_rtx_synack() can be called from process context
  net/mlx5e: Update netdev features after changing XDP state
  nfp: only report pause frame configuration for physical device
  ubi: ubi_create_volume: Fix use-after-free when volume creation failed
  jffs2: fix memory leak in jffs2_do_fill_super
  modpost: fix removing numeric suffixes
  net: dsa: mv88e6xxx: Fix refcount leak in mv88e6xxx_mdios_register
  net: ethernet: mtk_eth_soc: out of bounds read in mtk_hwlro_get_fdir_entry()
  s390/crypto: fix scatterwalk_unmap() callers in AES-GCM
  clocksource/drivers/oxnas-rps: Fix irq_of_parse_and_map() return value
  bus: ti-sysc: Fix warnings for unbind for serial
  firmware: dmi-sysfs: Fix memory leak in dmi_sysfs_register_handle
  serial: stm32-usart: Correct CSIZE, bits, and parity
  serial: st-asc: Sanitize CSIZE and correct PARENB for CS7
  serial: sh-sci: Don't allow CS5-6
  serial: txx9: Don't allow CS5-6
  serial: digicolor-usart: Don't allow CS5-6
  serial: 8250_fintek: Check SER_RS485_RTS_* only with RS485
  serial: meson: acquire port->lock in startup()
  rtc: mt6397: check return value after calling platform_get_resource()
  clocksource/drivers/riscv: Events are stopped during CPU suspend
  soc: rockchip: Fix refcount leak in rockchip_grf_init
  coresight: cpu-debug: Replace mutex with mutex_trylock on panic notifier
  rpmsg: qcom_smd: Fix returning 0 if irq_of_parse_and_map() fails
  iio: adc: sc27xx: fix read big scale voltage not right
  usb: dwc3: pci: Fix pm_runtime_get_sync() error checking
  rpmsg: qcom_smd: Fix irq_of_parse_and_map() return value
  pwm: lp3943: Fix duty calculation in case period was clamped
  usb: musb: Fix missing of_node_put() in omap2430_probe
  USB: storage: karma: fix rio_karma_init return
  usb: usbip: add missing device lock on tweak configuration cmd
  usb: usbip: fix a refcount leak in stub_probe()
  tty: goldfish: Use tty_port_destroy() to destroy port
  staging: greybus: codecs: fix type confusion of list iterator variable
  pcmcia: db1xxx_ss: restrict to MIPS_DB1XXX boards
  md: bcache: check the return value of kzalloc() in detached_dev_do_request()
  MIPS: IP27: Remove incorrect `cpu_has_fpu' override
  RDMA/rxe: Generate a completion for unsupported/invalid opcode
  phy: qcom-qmp: fix reset-controller leak on probe errors
  blk-iolatency: Fix inflight count imbalances and IO hangs on offline
  dt-bindings: gpio: altera: correct interrupt-cells
  docs/conf.py: Cope with removal of language=None in Sphinx 5.0.0
  phy: qcom-qmp: fix struct clk leak on probe errors
  arm64: dts: qcom: ipq8074: fix the sleep clock frequency
  gma500: fix an incorrect NULL check on list iterator
  carl9170: tx: fix an incorrect use of list iterator
  ASoC: rt5514: Fix event generation for "DSP Voice Wake Up" control
  rtl818x: Prevent using not initialized queues
  hugetlb: fix huge_pmd_unshare address update
  nodemask.h: fix compilation error with GCC12
  iommu/msm: Fix an incorrect NULL check on list iterator
  um: Fix out-of-bounds read in LDT setup
  um: chan_user: Fix winch_tramp() return value
  mac80211: upgrade passive scan to active scan on DFS channels after beacon rx
  irqchip: irq-xtensa-mx: fix initial IRQ affinity
  irqchip/armada-370-xp: Do not touch Performance Counter Overflow on A375, A38x, A39x
  RDMA/hfi1: Fix potential integer multiplication overflow errors
  media: coda: Add more H264 levels for CODA960
  media: coda: Fix reported H264 profile
  md: fix an incorrect NULL check in md_reload_sb
  md: fix an incorrect NULL check in does_sb_need_changing
  drm/bridge: analogix_dp: Grab runtime PM reference for DP-AUX
  drm/nouveau/clk: Fix an incorrect NULL check on list iterator
  drm/amdgpu/cs: make commands with 0 chunks illegal behaviour.
  scsi: ufs: qcom: Add a readl() to make sure ref_clk gets enabled
  scsi: dc395x: Fix a missing check on list iterator
  ocfs2: dlmfs: fix error handling of user_dlm_destroy_lock
  dlm: fix missing lkb refcount handling
  dlm: fix plock invalid read
  PCI: qcom: Fix unbalanced PHY init on probe errors
  PCI: qcom: Fix runtime PM imbalance on probe errors
  PCI/PM: Fix bridge_d3_blacklist[] Elo i2 overwrite of Gigabyte X299
  tracing: Fix potential double free in create_var_ref()
  ext4: avoid cycles in directory h-tree
  ext4: verify dir block before splitting it
  ext4: fix bug_on in ext4_writepages
  ext4: fix use-after-free in ext4_rename_dir_prepare
  netfilter: nf_tables: disallow non-stateful expression in sets earlier
  fs-writeback: writeback_sb_inodes:Recalculate 'wrote' according skipped pages
  iwlwifi: mvm: fix assert 1F04 upon reconfig
  wifi: mac80211: fix use-after-free in chanctx code
  f2fs: fix deadloop in foreground GC
  perf jevents: Fix event syntax error caused by ExtSel
  perf c2c: Use stdio interface if slang is not supported
  iommu/amd: Increase timeout waiting for GA log enablement
  dmaengine: stm32-mdma: remove GISR1 register
  video: fbdev: clcdfb: Fix refcount leak in clcdfb_of_vram_setup
  NFSv4/pNFS: Do not fail I/O when we fail to allocate the pNFS layout
  i2c: at91: Initialize dma_buf in at91_twi_xfer()
  i2c: at91: use dma safe buffers
  iommu/mediatek: Add list_del in mtk_iommu_remove
  f2fs: fix dereference of stale list iterator after loop body
  RDMA/hfi1: Prevent use of lock before it is initialized
  mailbox: forward the hrtimer if not queued and under a lock
  powerpc/fsl_rio: Fix refcount leak in fsl_rio_setup
  powerpc/perf: Fix the threshold compare group constraint for power9
  Input: sparcspkr - fix refcount leak in bbc_beep_probe
  tty: fix deadlock caused by calling printk() under tty_port->lock
  proc: fix dentry/inode overinstantiating under /proc/${pid}/net
  powerpc/4xx/cpm: Fix return value of __setup() handler
  powerpc/idle: Fix return value of __setup() handler
  powerpc/8xx: export 'cpm_setbrg' for modules
  dax: fix cache flush on PMD-mapped pages
  drivers/base/node.c: fix compaction sysfs file leak
  pinctrl: mvebu: Fix irq_of_parse_and_map() return value
  firmware: arm_scmi: Fix list protocols enumeration in the base protocol
  scsi: fcoe: Fix Wstringop-overflow warnings in fcoe_wwn_from_mac()
  mfd: ipaq-micro: Fix error check return value of platform_get_irq()
  crypto: marvell/cesa - ECB does not IV
  ARM: dts: bcm2835-rpi-b: Fix GPIO line names
  ARM: dts: bcm2835-rpi-zero-w: Fix GPIO line name for Wifi/BT
  PCI: rockchip: Fix find_first_zero_bit() limit
  PCI: cadence: Fix find_first_zero_bit() limit
  soc: qcom: smsm: Fix missing of_node_put() in smsm_parse_ipc
  soc: qcom: smp2p: Fix missing of_node_put() in smp2p_parse_ipc
  rxrpc: Don't try to resend the request if we're receiving the reply
  rxrpc: Fix listen() setting the bar too high for the prealloc rings
  NFC: hci: fix sleep in atomic context bugs in nfc_hci_hcp_message_tx
  ASoC: wm2000: fix missing clk_disable_unprepare() on error in wm2000_anc_transition()
  drm: msm: fix possible memory leak in mdp5_crtc_cursor_set()
  ext4: reject the 'commit' option on ext2 filesystems
  sctp: read sk->sk_bound_dev_if once in sctp_rcv()
  m68k: math-emu: Fix dependencies of math emulation support
  Bluetooth: fix dangling sco_conn and use-after-free in sco_sock_timeout
  media: vsp1: Fix offset calculation for plane cropping
  media: pvrusb2: fix array-index-out-of-bounds in pvr2_i2c_core_init
  media: exynos4-is: Change clk_disable to clk_disable_unprepare
  media: st-delta: Fix PM disable depth imbalance in delta_probe
  scripts/faddr2line: Fix overlapping text section failures
  regulator: pfuze100: Fix refcount leak in pfuze_parse_regulators_dt
  ASoC: mxs-saif: Fix refcount leak in mxs_saif_probe
  perf/amd/ibs: Use interrupt regs ip for stack unwinding
  media: uvcvideo: Fix missing check to determine if element is found in list
  drm/msm: return an error pointer in msm_gem_prime_get_sg_table()
  drm/msm/mdp5: Return error code in mdp5_mixer_release when deadlock is detected
  drm/msm/mdp5: Return error code in mdp5_pipe_release when deadlock is detected
  x86/mm: Cleanup the control_va_addr_alignment() __setup handler
  irqchip/aspeed-i2c-ic: Fix irq_of_parse_and_map() return value
  x86: Fix return value of __setup handlers
  drm/rockchip: vop: fix possible null-ptr-deref in vop_bind()
  drm/msm/hdmi: check return value after calling platform_get_resource_byname()
  drm/msm/dsi: fix error checks and return values for DSI xmit functions
  drm/msm/disp/dpu1: set vbif hw config to NULL to avoid use after memory free during pm runtime resume
  x86/speculation: Add missing prototype for unpriv_ebpf_notify()
  x86/pm: Fix false positive kmemleak report in msr_build_context()
  scsi: ufs: core: Exclude UECxx from SFR dump list
  of: overlay: do not break notify on NOTIFY_{OK|STOP}
  fsnotify: fix wrong lockdep annotations
  inotify: show inotify mask flags in proc fdinfo
  ath9k_htc: fix potential out of bounds access with invalid rxstatus->rs_keyix
  spi: img-spfi: Fix pm_runtime_get_sync() error checking
  HID: elan: Fix potential double free in elan_input_configured
  HID: hid-led: fix maximum brightness for Dream Cheeky
  efi: Add missing prototype for efi_capsule_setup_info
  NFC: NULL out the dev->rfkill to prevent UAF
  spi: spi-ti-qspi: Fix return value handling of wait_for_completion_timeout
  nl80211: show SSID for P2P_GO interfaces
  drm/vc4: txp: Force alpha to be 0xff if it's disabled
  drm/vc4: txp: Don't set TXP_VSTART_AT_EOF
  drm/mediatek: Fix mtk_cec_mask()
  x86/delay: Fix the wrong asm constraint in delay_loop()
  ASoC: mediatek: Fix missing of_node_put in mt2701_wm8960_machine_probe
  ASoC: mediatek: Fix error handling in mt8173_max98090_dev_probe
  drm/bridge: adv7511: clean up CEC adapter when probe fails
  drm/edid: fix invalid EDID extension block filtering
  ath9k: fix ar9003_get_eepmisc
  drm: fix EDID struct for old ARM OABI format
  RDMA/hfi1: Prevent panic when SDMA is disabled
  macintosh/via-pmu: Fix build failure when CONFIG_INPUT is disabled
  powerpc/xics: fix refcount leak in icp_opal_init()
  tracing: incorrect isolate_mote_t cast in mm_vmscan_lru_isolate
  PCI: Avoid pci_dev_lock() AB/BA deadlock with sriov_numvfs_store()
  ARM: hisi: Add missing of_node_put after of_find_compatible_node
  ARM: dts: exynos: add atmel,24c128 fallback to Samsung EEPROM
  ARM: versatile: Add missing of_node_put in dcscb_init
  fat: add ratelimit to fat*_ent_bread()
  ARM: OMAP1: clock: Fix UART rate reporting algorithm
  fs: jfs: fix possible NULL pointer dereference in dbFree()
  PM / devfreq: rk3399_dmc: Disable edev on remove()
  ARM: dts: ox820: align interrupt controller node name with dtschema
  eth: tg3: silence the GCC 12 array-bounds warning
  rxrpc: Return an error to sendmsg if call failed
  hwmon: Make chip parameter for with_info API mandatory
  media: exynos4-is: Fix compile warning
  net: phy: micrel: Allow probing without .driver_data
  ASoC: rt5645: Fix errorenous cleanup order
  nvme-pci: fix a NULL pointer dereference in nvme_alloc_admin_tags
  openrisc: start CPU timer early in boot
  media: cec-adap.c: fix is_configuring state
  rtlwifi: Use pr_warn instead of WARN_ONCE
  ipmi:ssif: Check for NULL msg when handling events and messages
  dma-debug: change allocation mode from GFP_NOWAIT to GFP_ATIOMIC
  s390/preempt: disable __preempt_count_add() optimization for PROFILE_ALL_BRANCHES
  ASoC: tscs454: Add endianness flag in snd_soc_component_driver
  mlxsw: spectrum_dcb: Do not warn about priority changes
  ASoC: dapm: Don't fold register value changes into notifications
  ipv6: Don't send rs packets to the interface of ARPHRD_TUNNEL
  drm/amd/pm: fix the compile warning
  drm/plane: Move range check for format_count earlier
  scsi: megaraid: Fix error check return value of register_chrdev()
  md/bitmap: don't set sb values if can't pass sanity check
  media: cx25821: Fix the warning when removing the module
  media: pci: cx23885: Fix the error handling in cx23885_initdev()
  media: venus: hfi: avoid null dereference in deinit
  ath9k: fix QCA9561 PA bias level
  drm/amd/pm: fix double free in si_parse_power_table()
  ALSA: jack: Access input_dev under mutex
  ACPICA: Avoid cache flush inside virtual machines
  fbcon: Consistently protect deferred_takeover with console_lock()
  ipv6: fix locking issues with loops over idev->addr_list
  ipw2x00: Fix potential NULL dereference in libipw_xmit()
  b43: Fix assigning negative value to unsigned variable
  b43legacy: Fix assigning negative value to unsigned variable
  mwifiex: add mutex lock for call in mwifiex_dfs_chan_sw_work_queue
  drm/virtio: fix NULL pointer dereference in virtio_gpu_conn_get_modes
  btrfs: repair super block num_devices automatically
  btrfs: add "0x" prefix for unsupported optional features
  ptrace: Reimplement PTRACE_KILL by always sending SIGKILL
  ptrace/xtensa: Replace PT_SINGLESTEP with TIF_SINGLESTEP
  USB: new quirk for Dell Gen 2 devices
  USB: serial: option: add Quectel BG95 modem
  ALSA: hda/realtek - Fix microphone noise on ASUS TUF B550M-PLUS
  binfmt_flat: do not stop relocating GOT entries prematurely on riscv
  BACKPORT: psi: Fix uaf issue when psi trigger is destroyed while being polled
  FROMGIT: Revert "net: af_key: add check for pfkey_broadcast in function pfkey_process"
  techpack: camera: fd: Properly fix double add into list
  Linux 4.19.246
  bpf: Enlarge offset check value to INT_MAX in bpf_skb_{load,store}_bytes
  NFSD: Fix possible sleep during nfsd4_release_lockowner()
  docs: submitting-patches: Fix crossref to 'The canonical patch format'
  tpm: ibmvtpm: Correct the return value in tpm_ibmvtpm_probe()
  tpm: Fix buffer access in tpm2_get_tpm_pt()
  HID: multitouch: Add support for Google Whiskers Touchpad
  dm verity: set DM_TARGET_IMMUTABLE feature flag
  dm stats: add cond_resched when looping over entries
  dm crypt: make printing of the key constant-time
  dm integrity: fix error code in dm_integrity_ctr()
  zsmalloc: fix races between asynchronous zspage free and page migration
  netfilter: conntrack: re-fetch conntrack after insertion
  exec: Force single empty string when argv is empty
  block-map: add __GFP_ZERO flag for alloc_page in function bio_copy_kern
  drm/i915: Fix -Wstringop-overflow warning in call to intel_read_wm_latency()
  perf tests bp_account: Make global variable static
  perf bench: Share some global variables to fix build with gcc 10
  libtraceevent: Fix build with binutils 2.35
  cfg80211: set custom regdomain after wiphy registration
  assoc_array: Fix BUG_ON during garbage collect
  drivers: i2c: thunderx: Allow driver to work with ACPI defined TWSI controllers
  i2c: ismt: Provide a DMA buffer for Interrupt Cause Logging
  net: ftgmac100: Disable hardware checksum on AST2600
  net: af_key: check encryption module availability consistency
  ACPI: sysfs: Fix BERT error region memory mapping
  ACPI: sysfs: Make sparse happy about address space in use
  secure_seq: use the 64 bits of the siphash for port offset calculation
  tcp: change source port randomizarion at connect() time
  staging: rtl8723bs: prevent ->Ssid overflow in rtw_wx_set_scan()
  x86/pci/xen: Disable PCI/MSI[-X] masking for XEN_HVM guests
  Makefile: Stop setting linker flag when compiling with clang
  lz4: Compile LZ4_decompress_safe_partial() when EROFS_FS is enabled
  Revert "ARM64: dts: Correct SLPI/ADSP/SPSS/CDSP memory regions on LMI"
  defconfig: msm: Enable LEDS for QCS2290
  platform: msm: usb_bam: Fix potential use-after-free in connect_pipe
  tzlog : Add check to avoid null pointer dereferencing
  Release 5.2.022.11B
  qcacld-3.0: fetch profile_data from right position
  fw-api: CL 18227240 - update fw common interface files
  fw-api: CL 18225673 - update fw common interface files
  fw-api: CL 18211442 - update fw common interface files
  fw-api: CL 18197955 - update fw common interface files
  fw-api: CL 18177396 - update fw common interface files
  fw-api: CL 18177389 - update fw common interface files
  fw-api: CL 18173549 - update fw common interface files
  add controller's drivers
  Release 5.2.022.11A
  qcacld-3.0: Don't proceed with NDP peer handling if NDI is not UP
  qcacmn: Dump the rx reo queue descs in ddr
  Release 5.2.022.11
  qcacld-3.0: Enable feature to dump reo queue info in DDR
  Release 5.2.022.10Z
  qcacld-3.0: Set default value for bss_color_collision_det_sta to 1
  qcacmn: Add support to configure rate mask to cap phy rate
  Release 5.2.022.10Y
  qcacld-3.0: Config support for STA bss color collision detection
  qcacld-3.0: Add ini configuration to limit supported HE MCS rates
  qcacld-3.0: Add ini to enable/disable vht mcs 10 and 11 support
  qcacmn: Add support to parse a string into uint32 array
  qcacld-3.0: Add support to configure rate mask to cap phy rate
  fw-api: add rx_reo_queue_1k.h file for 1K BA window support
  msm: kgsl: Remove 'fd' dependency to get dma_buf handle
  msm: adsprpc: Fix compat ioctl invoke failure
  Release 5.2.022.10X
  qcacld-3.0: Enable TSO/SG feature by the FEATURE_TSO/dp_sg_support
  Release 5.2.022.10W
  diag: Update log and event mask code ranges
  fw-api: CL 18137973 - update fw common interface files
  smp: Fix smp_call_function_single_async prototype
  Makefile: Move -Wno-unused-but-set-variable out of GCC only block
  fw-api: CL 18119950 - update fw common interface files
  fw-api: CL 18116081 - update fw common interface files
  fw-api: CL 18116079 - update fw common interface files
  msm: ipa3: Avoid device crash while SSR
  fw-api: CL 18101507 - update fw common interface files
  fw-api: CL 18098896 - update fw common interface files
  fw-api: CL 18096193 - update fw common interface files
  fw-api: CL 18082017 - update fw common interface files
  fw-api: CL 18082015 - update fw common interface files
  qcacmn: Add cfg_dp_sg_enable to get ini key dp_sg_support
  qcacld-3.0: Fix out-of-bounds in tx_stats
  Release 5.2.022.10V
  qcacld-3.0: Add pointer check before dereferencing
  fw-api: CL 18037073 - update fw common interface files
  fw-api: CL 18037070 - update fw common interface files
  fw-api: CL 18000081 - update fw common interface files
  fw-api: CL 17986784 - update fw common interface files
  fw-api: CL 17986781 - update fw common interface files
  fw-api: CL 17969296 - update fw common interface files
  Release 5.2.022.10U
  qcacld-3.0: Overide blacklist and connect to AP
  erofs: fix 1 lcluster-sized pcluster for big pcluster
  erofs: enable big pcluster feature
  erofs: support decompress big pcluster for lz4 backend
  erofs: support parsing big pcluster compact indexes
  erofs: support parsing big pcluster compress indexes
  erofs: adjust per-CPU buffers according to max_pclusterblks
  erofs: add big physical cluster definition
  erofs: fix up inplace I/O pointer for big pcluster
  erofs: introduce physical cluster slab pools
  erofs: introduce multipage per-CPU buffers
  erofs: reserve physical_clusterbits[]
  erofs: Clean up spelling mistakes found in fs/erofs
  erofs: add on-disk compression configurations
  erofs: introduce on-disk lz4 fs configurations
  erofs: support adjust lz4 history window size
  erofs: introduce erofs_sb_has_xxx() helpers
  erofs: don't use erofs_map_blocks() any more
  erofs: complete a missing case for inplace I/O
  erofs: use sync decompression for atomic contexts only
  erofs: use workqueue decompression for atomic contexts only
  erofs: avoid memory allocation failure during rolling decompression
  erofs: force inplace I/O under low memory scenario
  erofs: simplify try_to_claim_pcluster()
  erofs: insert to managed cache after adding to pcl
  erofs: get rid of magical Z_EROFS_MAPPING_STAGING
  erofs: remove a void EROFS_VERSION macro set in Makefile
  erofs: fix unsafe pagevec reuse of hooked pclusters
  erofs: remove the occupied parameter from z_erofs_pagevec_enqueue()
  erofs: don't trigger WARN() when decompression fails
  erofs: move from drivers/staging/ to fs/
  erofs: sync up with kernel 5.10
  lib/lz4: explicitly support in-place decompression
  lz4: fix kernel decompression speed
  lib/lz4: update LZ4 decompressor module

Change-Id: I1ed77b397599d93104e6109de8bc2766b5cd3d72
Signed-off-by: UtsavBalar1231 <[email protected]>
  • Loading branch information
UtsavBalar1231 committed Jun 30, 2022
2 parents d3e9db4 + 86e3738 commit 2266d5f
Show file tree
Hide file tree
Showing 596 changed files with 25,945 additions and 8,200 deletions.
56 changes: 53 additions & 3 deletions .drone.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ steps:
from_secret: bot_api_key
PD_API_KEY:
from_secret: pd_api_key
TYPE: REL-4.0.0
TYPE: REL-5.0.0
DEVICE: alioth
KBUILD_BUILD_USER: UtsavTheCunt
KBUILD_BUILD_HOST: CuntsSpace
Expand All @@ -38,7 +38,7 @@ steps:
from_secret: bot_api_key
PD_API_KEY:
from_secret: pd_api_key
TYPE: REL-4.0.0
TYPE: REL-5.0.0
DEVICE: apollo
KBUILD_BUILD_USER: UtsavTheCunt
KBUILD_BUILD_HOST: CuntsSpace
Expand All @@ -48,6 +48,31 @@ steps:
- ./setup-drone --aosp-clang
- ./build-kernel --aosp-clang

---
clone:
depth: 1
kind: pipeline
name: IMMENSITY - X | CMI
steps:
- name: building-cmi
image: debian:stable-slim
environment:
CI_CHANNEL_ID:
from_secret: ci_channel_id
BOT_API_KEY:
from_secret: bot_api_key
PD_API_KEY:
from_secret: pd_api_key
TYPE: REL-5.0.0
DEVICE: cmi
KBUILD_BUILD_USER: UtsavTheCunt
KBUILD_BUILD_HOST: CuntsSpace
commands:
- apt-get update && apt-get install -y bison build-essential bc bison curl libssl-dev git zip python python3 flex cpio libncurses5-dev wget
- git clone https://github.com/UtsavBalar1231/Drone-scripts.git --depth=1 -b test script && cd script
- ./setup-drone --aosp-clang
- ./build-kernel --aosp-clang

---
clone:
depth: 1
Expand All @@ -63,7 +88,7 @@ steps:
from_secret: bot_api_key
PD_API_KEY:
from_secret: pd_api_key
TYPE: REL-4.0.0
TYPE: REL-5.0.0
DEVICE: lmi
KBUILD_BUILD_USER: UtsavTheCunt
KBUILD_BUILD_HOST: CuntsSpace
Expand All @@ -72,3 +97,28 @@ steps:
- git clone https://github.com/UtsavBalar1231/Drone-scripts.git --depth=1 -b test script && cd script
- ./setup-drone --aosp-clang
- ./build-kernel --aosp-clang

---
clone:
depth: 1
kind: pipeline
name: IMMENSITY - X | UMI
steps:
- name: building-umi
image: debian:stable-slim
environment:
CI_CHANNEL_ID:
from_secret: ci_channel_id
BOT_API_KEY:
from_secret: bot_api_key
PD_API_KEY:
from_secret: pd_api_key
TYPE: REL-5.0.0
DEVICE: umi
KBUILD_BUILD_USER: UtsavTheCunt
KBUILD_BUILD_HOST: CuntsSpace
commands:
- apt-get update && apt-get install -y bison build-essential bc bison curl libssl-dev git zip python python3 flex cpio libncurses5-dev wget
- git clone https://github.com/UtsavBalar1231/Drone-scripts.git --depth=1 -b test script && cd script
- ./setup-drone --aosp-clang
- ./build-kernel --aosp-clang
11 changes: 6 additions & 5 deletions Documentation/ABI/testing/sysfs-ata
Original file line number Diff line number Diff line change
Expand Up @@ -107,13 +107,14 @@ Description:
described in ATA8 7.16 and 7.17. Only valid if
the device is not a PM.

pio_mode: (RO) Transfer modes supported by the device when
in PIO mode. Mostly used by PATA device.
pio_mode: (RO) PIO transfer mode used by the device.
Mostly used by PATA devices.

xfer_mode: (RO) Current transfer mode
xfer_mode: (RO) Current transfer mode. Mostly used by
PATA devices.

dma_mode: (RO) Transfer modes supported by the device when
in DMA mode. Mostly used by PATA device.
dma_mode: (RO) DMA transfer mode used by the device.
Mostly used by PATA devices.

class: (RO) Device class. Can be "ata" for disk,
"atapi" for packet device, "pmp" for PM, or
Expand Down
216 changes: 216 additions & 0 deletions Documentation/asm-annotations.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,216 @@
Assembler Annotations
=====================

Copyright (c) 2017-2019 Jiri Slaby

This document describes the new macros for annotation of data and code in
assembly. In particular, it contains information about ``SYM_FUNC_START``,
``SYM_FUNC_END``, ``SYM_CODE_START``, and similar.

Rationale
---------
Some code like entries, trampolines, or boot code needs to be written in
assembly. The same as in C, such code is grouped into functions and
accompanied with data. Standard assemblers do not force users into precisely
marking these pieces as code, data, or even specifying their length.
Nevertheless, assemblers provide developers with such annotations to aid
debuggers throughout assembly. On top of that, developers also want to mark
some functions as *global* in order to be visible outside of their translation
units.

Over time, the Linux kernel has adopted macros from various projects (like
``binutils``) to facilitate such annotations. So for historic reasons,
developers have been using ``ENTRY``, ``END``, ``ENDPROC``, and other
annotations in assembly. Due to the lack of their documentation, the macros
are used in rather wrong contexts at some locations. Clearly, ``ENTRY`` was
intended to denote the beginning of global symbols (be it data or code).
``END`` used to mark the end of data or end of special functions with
*non-standard* calling convention. In contrast, ``ENDPROC`` should annotate
only ends of *standard* functions.

When these macros are used correctly, they help assemblers generate a nice
object with both sizes and types set correctly. For example, the result of
``arch/x86/lib/putuser.S``::

Num: Value Size Type Bind Vis Ndx Name
25: 0000000000000000 33 FUNC GLOBAL DEFAULT 1 __put_user_1
29: 0000000000000030 37 FUNC GLOBAL DEFAULT 1 __put_user_2
32: 0000000000000060 36 FUNC GLOBAL DEFAULT 1 __put_user_4
35: 0000000000000090 37 FUNC GLOBAL DEFAULT 1 __put_user_8

This is not only important for debugging purposes. When there are properly
annotated objects like this, tools can be run on them to generate more useful
information. In particular, on properly annotated objects, ``objtool`` can be
run to check and fix the object if needed. Currently, ``objtool`` can report
missing frame pointer setup/destruction in functions. It can also
automatically generate annotations for :doc:`ORC unwinder <x86/orc-unwinder>`
for most code. Both of these are especially important to support reliable
stack traces which are in turn necessary for :doc:`Kernel live patching
<livepatch/livepatch>`.

Caveat and Discussion
---------------------
As one might realize, there were only three macros previously. That is indeed
insufficient to cover all the combinations of cases:

* standard/non-standard function
* code/data
* global/local symbol

There was a discussion_ and instead of extending the current ``ENTRY/END*``
macros, it was decided that brand new macros should be introduced instead::

So how about using macro names that actually show the purpose, instead
of importing all the crappy, historic, essentially randomly chosen
debug symbol macro names from the binutils and older kernels?

.. _discussion: https://lkml.kernel.org/r/[email protected]

Macros Description
------------------

The new macros are prefixed with the ``SYM_`` prefix and can be divided into
three main groups:

1. ``SYM_FUNC_*`` -- to annotate C-like functions. This means functions with
standard C calling conventions, i.e. the stack contains a return address at
the predefined place and a return from the function can happen in a
standard way. When frame pointers are enabled, save/restore of frame
pointer shall happen at the start/end of a function, respectively, too.

Checking tools like ``objtool`` should ensure such marked functions conform
to these rules. The tools can also easily annotate these functions with
debugging information (like *ORC data*) automatically.

2. ``SYM_CODE_*`` -- special functions called with special stack. Be it
interrupt handlers with special stack content, trampolines, or startup
functions.

Checking tools mostly ignore checking of these functions. But some debug
information still can be generated automatically. For correct debug data,
this code needs hints like ``UNWIND_HINT_REGS`` provided by developers.

3. ``SYM_DATA*`` -- obviously data belonging to ``.data`` sections and not to
``.text``. Data do not contain instructions, so they have to be treated
specially by the tools: they should not treat the bytes as instructions,
nor assign any debug information to them.

Instruction Macros
~~~~~~~~~~~~~~~~~~
This section covers ``SYM_FUNC_*`` and ``SYM_CODE_*`` enumerated above.

* ``SYM_FUNC_START`` and ``SYM_FUNC_START_LOCAL`` are supposed to be **the
most frequent markings**. They are used for functions with standard calling
conventions -- global and local. Like in C, they both align the functions to
architecture specific ``__ALIGN`` bytes. There are also ``_NOALIGN`` variants
for special cases where developers do not want this implicit alignment.

``SYM_FUNC_START_WEAK`` and ``SYM_FUNC_START_WEAK_NOALIGN`` markings are
also offered as an assembler counterpart to the *weak* attribute known from
C.

All of these **shall** be coupled with ``SYM_FUNC_END``. First, it marks
the sequence of instructions as a function and computes its size to the
generated object file. Second, it also eases checking and processing such
object files as the tools can trivially find exact function boundaries.

So in most cases, developers should write something like in the following
example, having some asm instructions in between the macros, of course::

SYM_FUNC_START(function_hook)
... asm insns ...
SYM_FUNC_END(function_hook)

In fact, this kind of annotation corresponds to the now deprecated ``ENTRY``
and ``ENDPROC`` macros.

* ``SYM_FUNC_START_ALIAS`` and ``SYM_FUNC_START_LOCAL_ALIAS`` serve for those
who decided to have two or more names for one function. The typical use is::

SYM_FUNC_START_ALIAS(__memset)
SYM_FUNC_START(memset)
... asm insns ...
SYM_FUNC_END(memset)
SYM_FUNC_END_ALIAS(__memset)

In this example, one can call ``__memset`` or ``memset`` with the same
result, except the debug information for the instructions is generated to
the object file only once -- for the non-``ALIAS`` case.

* ``SYM_CODE_START`` and ``SYM_CODE_START_LOCAL`` should be used only in
special cases -- if you know what you are doing. This is used exclusively
for interrupt handlers and similar where the calling convention is not the C
one. ``_NOALIGN`` variants exist too. The use is the same as for the ``FUNC``
category above::

SYM_CODE_START_LOCAL(bad_put_user)
... asm insns ...
SYM_CODE_END(bad_put_user)

Again, every ``SYM_CODE_START*`` **shall** be coupled by ``SYM_CODE_END``.

To some extent, this category corresponds to deprecated ``ENTRY`` and
``END``. Except ``END`` had several other meanings too.

* ``SYM_INNER_LABEL*`` is used to denote a label inside some
``SYM_{CODE,FUNC}_START`` and ``SYM_{CODE,FUNC}_END``. They are very similar
to C labels, except they can be made global. An example of use::

SYM_CODE_START(ftrace_caller)
/* save_mcount_regs fills in first two parameters */
...

SYM_INNER_LABEL(ftrace_caller_op_ptr, SYM_L_GLOBAL)
/* Load the ftrace_ops into the 3rd parameter */
...

SYM_INNER_LABEL(ftrace_call, SYM_L_GLOBAL)
call ftrace_stub
...
retq
SYM_CODE_END(ftrace_caller)

Data Macros
~~~~~~~~~~~
Similar to instructions, there is a couple of macros to describe data in the
assembly.

* ``SYM_DATA_START`` and ``SYM_DATA_START_LOCAL`` mark the start of some data
and shall be used in conjunction with either ``SYM_DATA_END``, or
``SYM_DATA_END_LABEL``. The latter adds also a label to the end, so that
people can use ``lstack`` and (local) ``lstack_end`` in the following
example::

SYM_DATA_START_LOCAL(lstack)
.skip 4096
SYM_DATA_END_LABEL(lstack, SYM_L_LOCAL, lstack_end)

* ``SYM_DATA`` and ``SYM_DATA_LOCAL`` are variants for simple, mostly one-line
data::

SYM_DATA(HEAP, .long rm_heap)
SYM_DATA(heap_end, .long rm_stack)

In the end, they expand to ``SYM_DATA_START`` with ``SYM_DATA_END``
internally.

Support Macros
~~~~~~~~~~~~~~
All the above reduce themselves to some invocation of ``SYM_START``,
``SYM_END``, or ``SYM_ENTRY`` at last. Normally, developers should avoid using
these.

Further, in the above examples, one could see ``SYM_L_LOCAL``. There are also
``SYM_L_GLOBAL`` and ``SYM_L_WEAK``. All are intended to denote linkage of a
symbol marked by them. They are used either in ``_LABEL`` variants of the
earlier macros, or in ``SYM_START``.


Overriding Macros
~~~~~~~~~~~~~~~~~
Architecture can also override any of the macros in their own
``asm/linkage.h``, including macros specifying the type of a symbol
(``SYM_T_FUNC``, ``SYM_T_OBJECT``, and ``SYM_T_NONE``). As every macro
described in this file is surrounded by ``#ifdef`` + ``#endif``, it is enough
to define the macros differently in the aforementioned architecture-dependent
header.
2 changes: 1 addition & 1 deletion Documentation/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = None
language = 'en'

# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
Expand Down
27 changes: 27 additions & 0 deletions Documentation/filesystems/ext4/ondisk/directory.rst
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,31 @@ The directory file type is one of the following values:
* - 0x7
- Symbolic link.

To support directories that are both encrypted and casefolded directories, we
must also include hash information in the directory entry. We append
``ext4_extended_dir_entry_2`` to ``ext4_dir_entry_2`` except for the entries
for dot and dotdot, which are kept the same. The structure follows immediately
after ``name`` and is included in the size listed by ``rec_len`` If a directory
entry uses this extension, it may be up to 271 bytes.

.. list-table::
:widths: 8 8 24 40
:header-rows: 1

* - Offset
- Size
- Name
- Description
* - 0x0
- \_\_le32
- hash
- The hash of the directory name
* - 0x4
- \_\_le32
- minor\_hash
- The minor hash of the directory name


In order to add checksums to these classic directory blocks, a phony
``struct ext4_dir_entry`` is placed at the end of each leaf block to
hold the checksum. The directory entry is 12 bytes long. The inode
Expand Down Expand Up @@ -322,6 +347,8 @@ The directory hash is one of the following values:
- Half MD4, unsigned.
* - 0x5
- Tea, unsigned.
* - 0x6
- Siphash.

Interior nodes of an htree are recorded as ``struct dx_node``, which is
also the full length of a data block:
Expand Down
8 changes: 8 additions & 0 deletions Documentation/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,14 @@ needed).
vm/index
bpf/index

Architecture-agnostic documentation
-----------------------------------

.. toctree::
:maxdepth: 2

asm-annotations

Architecture-specific documentation
-----------------------------------

Expand Down
2 changes: 1 addition & 1 deletion Documentation/process/submitting-patches.rst
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ as you intend it to.

The maintainer will thank you if you write your patch description in a
form which can be easily pulled into Linux's source code management
system, ``git``, as a "commit log". See :ref:`explicit_in_reply_to`.
system, ``git``, as a "commit log". See :ref:`the_canonical_patch_format`.

Solve only one problem per patch. If your description starts to get
long, that's a sign that you probably need to split up your patch.
Expand Down
Loading

0 comments on commit 2266d5f

Please sign in to comment.