Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2190391b authored by Raghavendra Rao Ananta's avatar Raghavendra Rao Ananta
Browse files

Merge remote-tracking branch 'remotes/origin/tmp-9cd2d925' into msm-lahaina



* remotes/origin/tmp-9cd2d925:
  ABI update for 5.3-final
  Linux 5.3
  Revert "ext4: make __ext4_get_inode_loc plug"
  Revert "vhost: block speculation of translated descriptors"
  KVM: x86/mmu: Reintroduce fast invalidate/zap for flushing memslot
  KVM: x86: work around leak of uninitialized stack contents
  KVM: nVMX: handle page fault in vmread
  riscv: modify the Image header to improve compatibility with the ARM64 header
  cdc_ether: fix rndis support for Mediatek based smartphones
  sctp: destroy bucket if failed to bind addr
  sctp: remove redundant assignment when call sctp_get_port_local
  sctp: change return type of sctp_get_port_local
  ixgbevf: Fix secpath usage for IPsec Tx offload
  mmc: tmio: Fixup runtime PM management during remove
  mmc: tmio: Fixup runtime PM management during probe
  Revert "mmc: tmio: move runtime PM enablement to the driver implementations"
  cgroup: freezer: fix frozen state inheritance
  kselftests: cgroup: add freezer mkdir test
  Revert "drm/i915/userptr: Acquire the page lock around set_page_dirty()"
  fork: block invalid exit signals with clone3()
  KVM: s390: Do not leak kernel stack data in the KVM_S390_INTERRUPT ioctl
  sctp: Fix the link time qualifier of 'sctp_ctrlsock_exit()'
  ixgbe: Fix secpath usage for IPsec TX offload.
  Btrfs: fix unwritten extent buffers and hangs on future writeback attempts
  Btrfs: fix assertion failure during fsync and use of stale transaction
  ANDROID: cuttlefish: overlayfs: regression
  KVM: s390: kvm_s390_vm_start_migration: check dirty_bitmap before using it as target for memset()
  net: qrtr: fix memort leak in qrtr_tun_write_iter
  net: Fix null de-reference of device refcount
  ipv6: Fix the link time qualifier of 'ping_v6_proc_exit_net()'
  tun: fix use-after-free when register netdev failed
  pinctrl: aspeed: Fix spurious mux failures on the AST2500
  tcp: fix tcp_ecn_withdraw_cwr() to clear TCP_ECN_QUEUE_CWR
  vhost: make sure log_num < in_num
  vhost: block speculation of translated descriptors
  ixgbe: fix double clean of Tx descriptors with xdp
  ixgbe: Prevent u8 wrapping of ITR value to something less than 10us
  mlx4: fix spelling mistake "veify" -> "verify"
  net: hns3: fix spelling mistake "undeflow" -> "underflow"
  net: lmc: fix spelling mistake "runnin" -> "running"
  NFC: st95hf: fix spelling mistake "receieve" -> "receive"
  net/rds: An rds_sock is added too early to the hash table
  mac80211: Do not send Layer 2 Update frame before authorization
  Revert "mmc: sdhci: Remove unneeded quirk2 flag of O2 SD host controller"
  Revert "mmc: bcm2835: Terminate timeout work synchronously"
  gpiolib: acpi: Add gpiolib_acpi_run_edge_events_on_boot option and blacklist
  lib/Kconfig: fix OBJAGG in lib/ menu structure
  net: sonic: replace dev_kfree_skb in sonic_send_packet
  wimax: i2400: fix memory leak
  sctp: fix the missing put_user when dumping transport thresholds
  sch_hhf: ensure quantum and hhf_non_hh_weight are non-zero
  net_sched: check cops->tcf_block in tc_bind_tclass()
  ABI: ion: Update abi for ion-core changes
  staging: ion: export ion_free() for ion_heaps.
  gpiolib: of: fix fallback quirks handling
  bridge/mdb: remove wrong use of NLM_F_MULTI
  net/ibmvnic: Fix missing { in __ibmvnic_reset
  staging: ion: uapi: match the existing heap type enums
  staging: ion: fix off-by-1 error in heap search
  drm/lima: fix lima_gem_wait() return value
  virtio_ring: fix unmap of indirect descriptors
  drm/i915: Restore relaxed padding (OCL_OOB_SUPPRES_ENABLE) for skl+
  drm/i915: Limit MST to <= 8bpc once again
  gpio: fix line flag validation in lineevent_create
  gpio: fix line flag validation in linehandle_create
  gpio: mockup: add missing single_release()
  Linux 5.3-rc8
  include/linux/compiler.h: fix Oops for Clang-compiled kernels
  x86/timer: Force PIT initialization when !X86_FEATURE_ARAT
  UPSTREAM: ipv6: addrconf_f6i_alloc - fix non-null pointer check to !IS_ERR()
  UPSTREAM: net-ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and others)
  Revert "x86/apic: Include the LDR when clearing out APIC registers"
  ipc: fix sparc64 ipc() wrapper
  Documentation/process: Add Qualcomm process ambassador for hardware security issues
  nfp: flower: cmsg rtnl locks can timeout reify messages
  net: gso: Fix skb_segment splat when splitting gso_size mangled skb having linear-headed frag_list
  ipv6: addrconf_f6i_alloc - fix non-null pointer check to !IS_ERR()
  isdn/capi: check message length in capi_write()
  net/ibmvnic: free reset work of removed device from queue
  net: phylink: Fix flow control resolution
  net/hamradio/6pack: Fix the size of a sk_buff used in 'sp_bump()'
  Input: elan_i2c - remove Lenovo Legion Y7000 PnpID
  ipc: fix semtimedop for generic 32-bit architectures
  ANDROID: update ABI dump for interconnect patches
  UPSTREAM: interconnect: qcom: Add tagging and wake/sleep support for sdm845
  UPSTREAM: interconnect: Add pre_aggregate() callback
  UPSTREAM: interconnect: Add support for path tags
  drivers: qcom: rpmh-rsc: modularize RSC controller driver
  drm/modes: Make the whitelist more const
  MAINTAINERS: add myself as maintainer for xilinx axiethernet driver
  net: sched: fix reordering issues
  forcedeth: use per cpu to collect xmit/recv statistics
  net: sonic: return NETDEV_TX_OK if failed to map buffer
  Documentation/process/embargoed-hardware-issues: Microsoft ambassador
  soc: qcom: geni: Provide parameter error checking
  iommu/amd: Fix race in increase_address_space()
  iommu/amd: Flush old domains in kdump kernel
  x86/purgatory: Change compiler flags from -mcmodel=kernel to -mcmodel=large to fix kexec relocation errors
  perf/hw_breakpoint: Fix arch_hw_breakpoint use-before-initialization
  keys: Fix missing null pointer check in request_key_auth_describe()
  genirq: Prevent NULL pointer dereference in resend_irqs()
  drm/vmwgfx: Fix double free in vmw_recv_msg()
  bpf: fix precision tracking of stack slots
  net: Properly update v4 routes with v6 nexthop
  selftest: A few cleanups for fib_nexthops.sh
  ipv6: Fix RTA_MULTIPATH with nexthop objects
  net: sock_map, fix missing ulp check in sock hash case
  net: fixed_phy: Add forward declaration for struct gpio_desc;
  tipc: add NULL pointer check before calling kfree_rcu
  Revert "Bluetooth: validate BLE connection interval updates"
  Documentation/process: Add Google contact for embargoed hardware issues
  Documentation/process: Volunteer as the ambassador for Xen
  net-ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and others)
  ANDROID: first pass cuttlefish GKI modularization
  sctp: use transport pf_retrans in sctp_do_8_2_transport_strike
  rxrpc: Fix misplaced traceline
  ANDROID: Catch rockpi4_defconfig up with gki_defconfig
  configfs: provide exclusion between IO and removals
  ABI: Update ABI
  ANDROID: GKI: enable CONFIG_TIPC for x86
  ANDROID: GKI: enable CONFIG_SPI for x86
  sched/core: Fix uclamp ABI bug, clean up and robustify sched_read_attr() ABI logic and code
  ANDROID: create build.configs for allmodconfig
  Bluetooth: bpa10x: change return value
  Bluetooth: hci_qca: disable irqs when spinlock is acquired
  Bluetooth: btrtl: Additional Realtek 8822CE Bluetooth devices
  powerpc/tm: Fix restoring FP/VMX facility incorrectly on interrupts
  powerpc/tm: Fix FP/VMX unavailable exceptions inside a transaction
  mm/balloon_compaction: suppress allocation warnings
  Revert "vhost: access vq metadata through kernel virtual address"
  vhost: Remove unnecessary variable
  virtio-net: lower min ring num_free for efficiency
  vhost/test: fix build for vhost test
  vhost/test: fix build for vhost test
  ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre
  dmaengine: rcar-dmac: Fix DMACHCLR handling if iommu is mapped
  dmaengine: sprd: Fix the DMA link-list configuration
  netfilter: nf_flow_table: set default timeout after successful insertion
  netfilter: ctnetlink: honor IPS_OFFLOAD flag
  netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled
  ABI: ion: Update abi for dma_buf_ops changes.
  ANDROID: staging: ion: Remove unnecessary ion heap ops
  ANDROID: staging: ion: Add support for heap-specific dma_buf_ops
  ANDROID: staging: ion: Fix uninitialized variable warning
  Revert "mmc: core: do not retry CMD6 in __mmc_switch()"
  rsi: fix a double free bug in rsi_91x_deinit()
  Revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band"
  rt2x00: clear up IV's on key removal
  iwlwifi: assign directly to iwl_trans->cfg in QuZ detection
  mwifiex: Fix three heap overflow at parsing element in cfg80211_ap_settings
  mt76: mt76x0e: disable 5GHz band for MT7630E
  mt76: mt76x0e: don't use hw encryption for MT7630E
  iommu/vt-d: Remove global page flush support
  sched/fair: Don't assign runtime for throttled cfs_rq
  ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL
  netfilter: nft_socket: fix erroneous socket assignment
  netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded
  configfs: new object reprsenting tree fragments
  configfs_register_group() shouldn't be (and isn't) called in rmdirable parts
  configfs: stash the data we need into configfs_buffer at open time
  ANDROID: update abi for 5.3-rc7
  net: stmmac: dwmac-sun8i: Variable "val" in function sun8i_dwmac_set_syscon() could be uninitialized
  x86/hyper-v: Fix overflow bug in fill_gva_list()
  NFS: Fix inode fileid checks in attribute revalidation code
  Linux 5.3-rc7
  ALSA: hda/realtek - Add quirk for HP Pavilion 15
  x86/uaccess: Don't leak the AC flags into __get_user() argument evaluation
  x86/boot: Preserve boot_params.secure_boot from sanitizing
  drm/nouveau/sec2/gp102: add missing MODULE_FIRMWAREs
  net: seeq: Fix the function used to release some memory in an error handling path
  enetc: Add missing call to 'pci_free_irq_vectors()' in probe and remove functions
  net: bcmgenet: use ethtool_op_get_ts_info()
  tc-testing: don't hardcode 'ip' in nsPlugin.py
  net: dsa: microchip: add KSZ8563 compatibility string
  dt-bindings: net: dsa: document additional Microchip KSZ8563 switch
  net: aquantia: fix out of memory condition on rx side
  net: aquantia: linkstate irq should be oneshot
  net: aquantia: reapply vlan filters on up
  net: aquantia: fix limit of vlan filters
  net: aquantia: fix removal of vlan 0
  net/sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate
  taprio: Set default link speed to 10 Mbps in taprio_set_picos_per_byte
  taprio: Fix kernel panic in taprio_destroy
  net: dsa: microchip: fill regmap_config name
  tools/power turbostat: update version number
  tools/power turbostat: Add support for Hygon Fam 18h (Dhyana) RAPL
  tools/power turbostat: Fix caller parameter of get_tdp_amd()
  tools/power turbostat: Fix CPU%C1 display value
  tools/power turbostat: do not enforce 1ms
  tools/power turbostat: read from pipes too
  tools/power turbostat: Add Ice Lake NNPI support
  tools/power turbostat: rename has_hsw_msrs()
  tools/power turbostat: Fix Haswell Core systems
  tools/power turbostat: add Jacobsville support
  tools/power turbostat: fix buffer overrun
  tools/power turbostat: fix file descriptor leaks
  tools/power turbostat: fix leak of file descriptor on error return path
  tools/power turbostat: Make interval calculation per thread to reduce jitter
  tools/power turbostat: remove duplicate pc10 column
  tools/power x86_energy_perf_policy: Fix argument parsing
  tools/power: Fix typo in man page
  tools/power/x86: Enable compiler optimisations and Fortify by default
  tools/power x86_energy_perf_policy: Fix "uninitialized variable" warnings at -O2
  tracing: Correct kdoc formats
  ftrace/x86: Remove mcount() declaration
  tracing/probe: Fix null pointer dereference
  tracing: Make exported ftrace_set_clr_event non-static
  arm64: dts: renesas: hihope-common: Fix eMMC status
  clang-format: Update with the latest for_each macro list
  Partially revert "kfifo: fix kfifo_alloc() and kfifo_init()"
  mm: memcontrol: fix percpu vmstats and vmevents flush
  mm, memcg: do not set reclaim_state on soft limit reclaim
  mailmap: add aliases for Dmitry Safonov
  mm/z3fold.c: fix lock/unlock imbalance in z3fold_page_isolate
  mm, memcg: partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones"
  mm/zsmalloc.c: fix build when CONFIG_COMPACTION=n
  mm: memcontrol: flush percpu slab vmstats on kmem offlining
  rxrpc: Fix lack of conn cleanup when local endpoint is cleaned up [ver #2]
  net: stmmac: dwmac-rk: Don't fail if phy regulator is absent
  amd-xgbe: Fix error path in xgbe_mod_init()
  ftrace: Check for successful allocation of hash
  ftrace: Check for empty hash and comment the race with registering probes
  ftrace: Fix NULL pointer dereference in t_probe_next()
  ABI: ion: update abi for ion core changes to heap ids.
  keys: ensure that ->match_free() is called in request_key_and_link()
  ANDROID: staging: ion: add support for consistent heap ids
  ANDROID: staging: ion: reserve specific heap ids for known heap types.
  ANDROID: staging: ion: move uapi/ion.h to uapi/linux/ion.h
  Revert "iommu/vt-d: Avoid duplicated pci dma alias consideration"
  ANDROID: refactor build.config files to remove duplication
  i2c: mediatek: disable zero-length transfers for mt8183
  i2c: iproc: Stop advertising support of SMBUS quick cmd
  MAINTAINERS: i2c mv64xxx: Update documentation path
  perf/x86/amd/ibs: Fix sample bias for dispatched micro-ops
  perf/x86/intel: Restrict period on Nehalem
  ALSA: hda/realtek - Fix overridden device-specific initialization
  drm/selftests: modes: Add more unit tests for the cmdline parser
  drm/modes: Introduce a whitelist for the named modes
  drm/modes: Fix the command line parser to take force options into account
  drm/modes: Add a switch to differentiate free standing options
  Revert "Bluetooth: btusb: driver to enable the usb-wakeup feature"
  mmc: sdhci-cadence: enable v4_mode to fix ADMA 64-bit addressing
  mmc: sdhci-sprd: clear the UHS-I modes read from registers
  mms: sdhci-sprd: add SDHCI_QUIRK_BROKEN_CARD_DETECTION
  mmc: sdhci-sprd: add SDHCI_QUIRK2_PRESET_VALUE_BROKEN
  mmc: sdhci-sprd: add get_ro hook function
  mmc: sdhci-sprd: fixed incorrect clock divider
  mmc: core: Fix init of SD cards reporting an invalid VDD range
  netfilter: nft_meta_bridge: Fix get NFT_META_BRI_IIFVPROTO in network byteorder
  ANDROID: update ABI dump
  scsi: lpfc: Raise config max for lpfc_fcp_mq_threshold variable
  ANDROID: gki_defconfig: enable CONFIG_QCOM_{COMMAND_DB,RPMH,PDC}
  i2c: piix4: Fix port selection for AMD Family 16h Model 30h
  ANDROID: gki_defconfig enable CONFIG_SPARSEMEM_VMEMMAP
  x86/mm/cpa: Prevent large page split when ftrace flips RW on kernel text
  i2c: designware: Synchronize IRQs when unregistering slave client
  i2c: i801: Avoid memory leak in check_acpi_smo88xx_device()
  i2c: make i2c_unregister_device() ERR_PTR safe
  nds32: Mark expected switch fall-throughs
  ARC: unwind: Mark expected switch fall-through
  soc: ixp4xx: Protect IXP4xx SoC drivers by ARCH_IXP4XX || COMPILE_TEST
  mac80211: Correctly set noencrypt for PAE frames
  mac80211: Don't memset RXCB prior to PAE intercept
  iwlwifi: pcie: handle switching killer Qu B0 NICs to C0
  netfilter: nf_flow_table: clear skb tstamp before xmit
  ALSA: hda - Fix potential endless loop at applying quirks
  mtd: hyperbus: fix dependency and build error
  drm/ingenic: Hardcode panel type to DPI
  ANDROID: update ABI for EFI
  ANDROID: gki_defconfig: Minimally enable EFI
  sky2: Disable MSI on yet another ASUS boards (P6Xxxx)
  nfp: flower: handle neighbour events on internal ports
  nfp: flower: prevent ingress block binds on internal ports
  r8152: remove calling netif_napi_del
  Revert "r8152: napi hangup fix after disconnect"
  net/sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue
  tcp: inherit timestamp on mtu probe
  net: sched: act_sample: fix psample group handling on overwrite
  ibmvnic: Do not process reset during or after device removal
  ARM: 8901/1: add a criteria for pfn_valid of arm
  RISC-V: Fix FIXMAP area corruption on RV32 systems
  openvswitch: Clear the L4 portion of the key for "later" fragments.
  openvswitch: Properly set L4 keys on "later" IP fragments
  mld: fix memory leak in mld_del_delrec()
  net/sched: pfifo_fast: fix wrong dereference when qdisc is reset
  macb: Update compatibility string for SiFive FU540-C000
  macb: bindings doc: update sifive fu540-c000 binding
  fsi: scom: Don't abort operations for minor errors
  vmw_balloon: Fix offline page marking with compaction
  VMCI: Release resource if the work is already queued
  USB: cdc-wdm: fix race between write and disconnect due to flag abuse
  usb: host: xhci: rcar: Fix typo in compatible string matching
  usb: host: xhci-tegra: Set DMA mask correctly
  USB: storage: ums-realtek: Whitelist auto-delink support
  USB: storage: ums-realtek: Update module parameter description for auto_delink_en
  usb: host: ohci: fix a race condition between shutdown and irq
  usb: hcd: use managed device resources
  typec: tcpm: fix a typo in the comparison of pdo_max_voltage
  Documentation/process: Embargoed hardware security issues
  lkdtm/bugs: fix build error in lkdtm_EXHAUST_STACK
  mei: me: add Tiger Lake point LP device ID
  intel_th: pci: Add Tiger Lake support
  intel_th: pci: Add support for another Lewisburg PCH
  stm class: Fix a double free of stm_source_device
  MAINTAINERS: add entry for LICENSES and SPDX stuff
  libnvdimm/pfn: Fix namespace creation on misaligned addresses
  drm/komeda: Reordered the komeda's de-init functions
  x86/build: Add -Wnoaddress-of-packed-member to REALMODE_CFLAGS, to silence GCC9 build warning
  RDMA/siw: Fix IPv6 addr_list locking
  gpio: pca953x: use pca953x_read_regs instead of regmap_bulk_read
  gpio: pca953x: correct type of reg_direction
  rbd: restore zeroing past the overlap when reading from parent
  libceph: don't call crypto_free_sync_skcipher() on a NULL tfm
  KVM: arm/arm64: vgic-v2: Handle SGI bits in GICD_I{S,C}PENDR0 as WI
  tcp: remove empty skb from write queue in error cases
  net/rds: Fix info leak in rds6_inc_info_copy()
  net: fix skb use after free in netpoll
  net: dsa: tag_8021q: Future-proof the reserved fields in the custom VID
  Add genphy_c45_config_aneg() function to phy-c45.c
  ANDROID: sdcardfs: fix fall through in param parsing
  cifs: update internal module number
  cifs: replace various strncpy with strscpy and similar
  net_sched: fix a NULL pointer deref in ipt action
  cifs: Use kzfree() to zero out the password
  cifs: set domainName when a domain-key is used in multiuser
  KVM: x86: Don't update RIP or do single-step on faulting emulation
  KVM: x86: hyper-v: don't crash on KVM_GET_SUPPORTED_HV_CPUID when kvm_intel.nested is disabled
  drm/amdgpu: fix GFXOFF on Picasso and Raven2
  drm/amdgpu: Add APTX quirk for Dell Latitude 5495
  drm/amd/powerplay: correct Vega20 dpm level related settings
  netfilter: conntrack: make sysctls per-namespace again
  KVM: arm/arm64: vgic: Fix potential deadlock when ap_list is long
  kallsyms: Don't let kallsyms_lookup_size_offset() fail on retrieving the first symbol
  NFS: remove set but not used variable 'mapping'
  NFSv2: Fix write regression
  NFSv2: Fix eof handling
  mfd: rk808: Make PM function declaration static
  netfilter: nf_conntrack_ftp: Fix debug output
  netfilter: xt_physdev: Fix spurious error message in physdev_mt_check
  rxrpc: Use skb_unshare() rather than skb_cow_data()
  rxrpc: Use the tx-phase skb flag to simplify tracing
  rxrpc: Add a private skb flag to indicate transmission-phase skbs
  rxrpc: Abstract out rxtx ring cleanup
  rxrpc: Pass the input handler's data skb reference to the Rx ring
  rxrpc: Use info in skbuff instead of reparsing a jumbo packet
  rxrpc: Improve jumbo packet counting
  x86/boot/compressed/64: Fix missing initialization in find_trampoline_placement()
  drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe()
  drm/i915/dp: Fix DSC enable code to use cpu_transcoder instead of encoder->type
  drm/i915: Don't deballoon unused ggtt drm_mm_node in linux guest
  drm/i915: Do not create a new max_bpc prop for MST connectors
  mfd: rk808: Mark pm functions __maybe_unused
  KVM: PPC: Book3S: Fix incorrect guest-to-user-translation error handling
  drm/powerplay: Fix Vega20 power reading again
  drm/powerplay: Fix Vega20 Average Power value v4
  bpf: handle 32-bit zext during constant blinding
  nfp: bpf: fix latency bug when updating stack index register
  Revert "um: remove uses of variable length arrays"
  Revert "um: irq: don't set the chip for all irqs"
  drm/amdgpu: fix dma_fence_wait without reference
  ANDROID: update ABI for CONFIG_NR_CPUS=32
  ANDROID: gki_defconfig: set CONFIG_NR_CPUS=32
  NFS: Fix writepage(s) error handling to not report errors twice
  NFS: Fix spurious EIO read errors
  pNFS/flexfiles: Don't time out requests on hard mounts
  SUNRPC: Handle connection breakages correctly in call_status()
  Revert "NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated"
  SUNRPC: Handle EADDRINUSE and ENOBUFS correctly
  pNFS/flexfiles: Turn off soft RPC calls
  SUNRPC: Don't handle errors if the bind/connect succeeded
  x86/apic: Include the LDR when clearing out APIC registers
  x86/apic: Do not initialize LDR and DFR for bigsmp
  arc: prefer __section from compiler_attributes.h
  dt-bindings: IDU-intc: Add support for edge-triggered interrupts
  dt-bindings: IDU-intc: Clean up documentation
  ARCv2: IDU-intc: Add support for edge-triggered interrupts
  ALSA: oxfw: fix to handle correct stream for PCM playback
  uprobes/x86: Fix detection of 32-bit user mode
  x86/apic: Fix arch_dynirq_lower_bound() bug for DT enabled machines
  r8152: Set memory to all 0xFFs on failed reg reads
  openvswitch: Fix conntrack cache with timeout
  ipv4: mpls: fix mpls_xmit for iptunnel
  nexthop: Fix nexthop_num_path for blackhole nexthops
  ALSA: seq: Fix potential concurrent access to the deleted pool
  net: rds: add service level support in rds-info
  net: route dump netlink NLM_F_MULTI flag missing
  s390/qeth: reject oversized SNMP requests
  sock: fix potential memory leak in proto_register()
  MAINTAINERS: Add phylink keyword to SFF/SFP/SFP+ MODULE SUPPORT
  xfrm/xfrm_policy: fix dst dev null pointer dereference in collect_md mode
  ipv4/icmp: fix rt dst dev null pointer dereference
  openvswitch: Fix log message in ovs conntrack
  bpf: allow narrow loads of some sk_reuseport_md fields with offset > 0
  bpf: fix use after free in prog symbol exposure
  bpf: fix precision tracking in presence of bpf2bpf calls
  flow_dissector: Fix potential use-after-free on BPF_PROG_DETACH
  Revert "r8169: remove not needed call to dma_sync_single_for_device"
  ipv6: propagate ipv6_add_dev's error returns out of ipv6_find_idev
  batman-adv: Only read OGM2 tvlv_len after buffer len check
  batman-adv: Only read OGM tvlv_len after buffer len check
  drm/komeda: Add missing of_node_get() call
  drm/komeda: Clean warning 'komeda_component_add' might be a candidate for 'gnu_printf'
  drm/komeda: Fix warning -Wunused-but-set-variable
  drm/komeda: Fix error: not allocating enough data 1592 vs 1584
  ARM: 8897/1: check stmfd instruction using right shift
  ARM: 8874/1: mm: only adjust sections of valid mm structures
  drm/virtio: use virtio_max_dma_size
  drm/omap: Fix port lookup for SDI output
  drm/qxl: get vga ioports
  net/ncsi: Fix the payload copying for the request coming from Netlink
  qed: Add cleanup in qed_slowpath_start()
  ocelot_ace: fix action of trap
  net/mlx5e: Remove ethernet segment from dump WQE
  net/mlx5e: Add num bytes metadata to WQE info
  net/mlx5: Fix delay in fw fatal report handling due to fw report
  net/mlx5: Fix crdump chunks print
  mmc: sdhci-of-at91: add quirk for broken HS200
  ALSA: usb-audio: Check mixer unit bitmap yet more strictly
  crypto: ccp - Ignore unconfigured CCP device on suspend/resume
  gve: Copy and paste bug in gve_get_stats()
  net: fix icmp_socket_deliver argument 2 input
  ipv6/addrconf: allow adding multicast addr if IFA_F_MCAUTOJOIN is set
  net: dsa: bcm_sf2: Do not configure PHYLINK on CPU port
  net: cpsw: fix NULL pointer exception in the probe error path
  trivial: netns: fix typo in 'struct net.passive' description
  ALSA: line6: Fix memory leak at line6_init_pcm() error path
  usb-storage: Add new JMS567 revision to unusual_devs
  usb: chipidea: udc: don't do hardware access if gadget has stopped
  usbtmc: more sanity checking for packet size
  usb: udc: lpc32xx: silence fall-through warning
  selftests/bpf: install files test_xdp_vlan.sh
  selftests/bpf: add config fragment BPF_JIT
  selftests/bpf: fix test_btf_dump with O=
  selftests/bpf: fix test_cgroup_storage on s390
  Revert "mmc: sdhci-tegra: drop ->get_ro() implementation"
  Revert "cfg80211: fix processing world regdomain when non modular"
  cfg80211: Fix Extended Key ID key install checks
  mac80211: fix possible sta leak
  ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate()
  net: fix __ip_mc_inc_group usage
  net/ncsi: Ensure 32-bit boundary for data cksum
  net/smc: make sure EPOLLOUT is raised
  xdp: unpin xdp umem pages in error path
  iwlwifi: pcie: fix recognition of QuZ devices
  iwlwifi: pcie: don't switch FW to qnj when ax201 is detected
  iwlwifi: pcie: fix the byte count table format for 22560 devices
  iwlwifi: mvm: Allow multicast data frames only when associated
  rt2x00: clear IV's on start to fix AP mode regression
  mt76: mt76x0u: do not reset radio on resume
  dmaengine: ti: omap-dma: Add cleanup in omap_dma_probe()
  dmaengine: ti: dma-crossbar: Fix a memory leak bug
  ALSA: hda/ca0132 - Add new SBZ quirk
  ALSA: usb-audio: Add implicit fb quirk for Behringer UFX1604
  xfrm: policy: avoid warning splat when merging nodes
  nfp: flower: verify that block cb is not busy before binding
  Kconfig: Fix the reference to the IDT77105 Phy driver in the description of ATM_NICSTAR_USE_IDT77105
  MAINTAINERS: net_failover: Fix typo in a filepath
  ipv6: Fix return value of ipv6_mc_may_pull() for malformed packets
  tcp: make sure EPOLLOUT wont be missed
  ALSA: hda - Fixes inverted Conexant GPIO mic mute led
  NFS: On fatal writeback errors, we need to call nfs_inode_remove_request()
  NFS: Fix initialisation of I/O result struct in nfs_pgio_rpcsetup
  NFS: Ensure O_DIRECT reports an error if the bytes read/written is 0
  NFSv4/pnfs: Fix a page lock leak in nfs_pageio_resend()
  NFSv4: Fix return value in nfs_finish_open()
  NFSv4: Fix return values for nfs4_file_open()
  NFS: Don't refresh attributes with mounted-on-file information
  netfilter: add include guard to nf_conntrack_h323_types.h
  netfilter: xt_nfacct: Fix alignment mismatch in xt_nfacct_match_info
  netfilter: nft_flow_offload: missing netlink attribute policy
  netfilter: ebtables: Fix argument order to ADD_COUNTER
  MAINTAINERS: Remove IP MASQUERADING record
  fpga: altera-ps-spi: Fix getting of optional confd gpio
  tools: bpftool: close prog FD before exit on showing a single program
  regulator: twl: voltage lists for vdd1/2 on twl4030
  selftests/bpf: fix "bind{4, 6} deny specific IP & port" on s390
  batman-adv: fix uninit-value in batadv_netlink_get_ifindex()
  net: ieee802154: remove redundant assignment to rc
  s390/bpf: use 32-bit index for tail calls
  soc: ti: pm33xx: Make two symbols static
  soc: ti: pm33xx: Fix static checker warnings
  ARM: OMAP: dma: Mark expected switch fall-throughs
  regulator: act8945a-regulator: fix ldo register addresses in set_mode hook
  ARM: dts: Fix incomplete dts data for am3 and am4 mmc
  bus: ti-sysc: Simplify cleanup upon failures in sysc_probe()
  ARM: OMAP1: ams-delta-fiq: Fix missing irq_ack
  ARM: dts: dra74x: Fix iodelay configuration for mmc3
  ARM: dts: am335x: Fix UARTs length
  ARM: OMAP2+: Fix omap4 errata warning on other SoCs
  bus: hisi_lpc: Add .remove method to avoid driver unbind crash
  bus: hisi_lpc: Unregister logical PIO range to avoid potential use-after-free
  lib: logic_pio: Add logic_pio_unregister_range()
  lib: logic_pio: Avoid possible overlap for unregistering regions
  lib: logic_pio: Fix RCU usage
  s390/bpf: fix lcgr instruction encoding
  powerpc/64e: Drop stale call to smp_processor_id() which hangs SMP startup
  arm64: dts: renesas: r8a77995: draak: Fix backlight regulator name
  regulator: slg51000: Fix a couple NULL vs IS_ERR() checks
  ARC: unwind: Mark expected switch fall-throughs
  arm64: dts: amlogic: odroid-n2: keep SD card regulator always on
  arm64: dts: meson-g12a-sei510: enable IR controller
  arm64: dts: meson-g12a: add missing dwc2 phy-names
  ARC: [plat-hsdk]: allow to switch between AXI DMAC port configurations
  ARC: fix typo in setup_dma_ops log message
  ARCv2: entry: early return from exception need not clear U & DE bits
  ARM: dts: vf610-bk4: Fix qspi node description
  ARM: dts: Fix incorrect dcan register mapping for am3, am4 and dra7
  ARM: dts: Fix flags for gpio7
  bus: ti-sysc: Fix using configured sysc mask value
  bus: ti-sysc: Fix handling of forced idle
  ARM: OMAP2+: Fix missing SYSC_HAS_RESET_STATUS for dra7 epwmss
  MAINTAINERS: Update my email address
  xfrm interface: fix management of phydev
  xfrm interface: fix list corruption for x-netns
  xfrm interface: ifname may be wrong in logs
  xfrm interface: avoid corruption on changelink
  ARM: dts: am57xx: Disable voltage switching for SD card
  ieee802154: hwsim: unregister hw while hwsim_subscribe_all_others fails
  ieee802154: hwsim: Fix error handle path in hwsim_init_module

Change-Id: I39f7561ab093d7118b12fdb502efafeae0cb14b0
Signed-off-by: default avatarRaghavendra Rao Ananta <rananta@codeaurora.org>
parents 18fad386 9cd2d925
Loading
Loading
Loading
Loading
+14 −3
Original line number Diff line number Diff line
@@ -107,10 +107,13 @@ ForEachMacros:
  - 'css_for_each_descendant_post'
  - 'css_for_each_descendant_pre'
  - 'device_for_each_child_node'
  - 'dma_fence_chain_for_each'
  - 'drm_atomic_crtc_for_each_plane'
  - 'drm_atomic_crtc_state_for_each_plane'
  - 'drm_atomic_crtc_state_for_each_plane_state'
  - 'drm_atomic_for_each_plane_damage'
  - 'drm_client_for_each_connector_iter'
  - 'drm_client_for_each_modeset'
  - 'drm_connector_for_each_possible_encoder'
  - 'drm_for_each_connector_iter'
  - 'drm_for_each_crtc'
@@ -126,6 +129,7 @@ ForEachMacros:
  - 'drm_mm_for_each_node_in_range'
  - 'drm_mm_for_each_node_safe'
  - 'flow_action_for_each'
  - 'for_each_active_dev_scope'
  - 'for_each_active_drhd_unit'
  - 'for_each_active_iommu'
  - 'for_each_available_child_of_node'
@@ -153,6 +157,8 @@ ForEachMacros:
  - 'for_each_cpu_not'
  - 'for_each_cpu_wrap'
  - 'for_each_dev_addr'
  - 'for_each_dev_scope'
  - 'for_each_displayid_db'
  - 'for_each_dma_cap_mask'
  - 'for_each_dpcm_be'
  - 'for_each_dpcm_be_rollback'
@@ -169,6 +175,8 @@ ForEachMacros:
  - 'for_each_evictable_lru'
  - 'for_each_fib6_node_rt_rcu'
  - 'for_each_fib6_walker_rt'
  - 'for_each_free_mem_pfn_range_in_zone'
  - 'for_each_free_mem_pfn_range_in_zone_from'
  - 'for_each_free_mem_range'
  - 'for_each_free_mem_range_reverse'
  - 'for_each_func_rsrc'
@@ -178,6 +186,7 @@ ForEachMacros:
  - 'for_each_ip_tunnel_rcu'
  - 'for_each_irq_nr'
  - 'for_each_link_codecs'
  - 'for_each_link_platforms'
  - 'for_each_lru'
  - 'for_each_matching_node'
  - 'for_each_matching_node_and_match'
@@ -302,7 +311,10 @@ ForEachMacros:
  - 'ide_port_for_each_present_dev'
  - 'idr_for_each_entry'
  - 'idr_for_each_entry_continue'
  - 'idr_for_each_entry_continue_ul'
  - 'idr_for_each_entry_ul'
  - 'in_dev_for_each_ifa_rcu'
  - 'in_dev_for_each_ifa_rtnl'
  - 'inet_bind_bucket_for_each'
  - 'inet_lhash2_for_each_icsk_rcu'
  - 'key_for_each'
@@ -343,8 +355,6 @@ ForEachMacros:
  - 'media_device_for_each_intf'
  - 'media_device_for_each_link'
  - 'media_device_for_each_pad'
  - 'mp_bvec_for_each_page'
  - 'mp_bvec_for_each_segment'
  - 'nanddev_io_for_each_page'
  - 'netdev_for_each_lower_dev'
  - 'netdev_for_each_lower_private'
@@ -381,18 +391,19 @@ ForEachMacros:
  - 'radix_tree_for_each_slot'
  - 'radix_tree_for_each_tagged'
  - 'rbtree_postorder_for_each_entry_safe'
  - 'rdma_for_each_block'
  - 'rdma_for_each_port'
  - 'resource_list_for_each_entry'
  - 'resource_list_for_each_entry_safe'
  - 'rhl_for_each_entry_rcu'
  - 'rhl_for_each_rcu'
  - 'rht_for_each'
  - 'rht_for_each_from'
  - 'rht_for_each_entry'
  - 'rht_for_each_entry_from'
  - 'rht_for_each_entry_rcu'
  - 'rht_for_each_entry_rcu_from'
  - 'rht_for_each_entry_safe'
  - 'rht_for_each_from'
  - 'rht_for_each_rcu'
  - 'rht_for_each_rcu_from'
  - '__rq_for_each_bio'
+5 −0
Original line number Diff line number Diff line
@@ -64,6 +64,9 @@ Dengcheng Zhu <dzhu@wavecomp.com> <dengcheng.zhu@imgtec.com>
Dengcheng Zhu <dzhu@wavecomp.com> <dczhu@mips.com>
Dengcheng Zhu <dzhu@wavecomp.com> <dengcheng.zhu@gmail.com>
Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Dmitry Safonov <0x7f454c46@gmail.com> <dsafonov@virtuozzo.com>
Dmitry Safonov <0x7f454c46@gmail.com> <d.safonov@partner.samsung.com>
Dmitry Safonov <0x7f454c46@gmail.com> <dima@arista.com>
Domen Puncer <domen@coderock.org>
Douglas Gilbert <dougg@torque.net>
Ed L. Cashin <ecashin@coraid.com>
@@ -160,6 +163,8 @@ Matt Ranostay <mranostay@gmail.com> Matthew Ranostay <mranostay@embeddedalley.co
Matt Ranostay <mranostay@gmail.com> <matt.ranostay@intel.com>
Matt Ranostay <matt.ranostay@konsulko.com> <matt@ranostay.consulting>
Matt Redfearn <matt.redfearn@mips.com> <matt.redfearn@imgtec.com>
Maxime Ripard <mripard@kernel.org> <maxime.ripard@bootlin.com>
Maxime Ripard <mripard@kernel.org> <maxime.ripard@free-electrons.com>
Mayuresh Janorkar <mayur@ti.com>
Michael Buesch <m@bues.ch>
Michel Dänzer <michel@tungstengraphics.com>
+279 −0
Original line number Diff line number Diff line
Embargoed hardware issues
=========================

Scope
-----

Hardware issues which result in security problems are a different category
of security bugs than pure software bugs which only affect the Linux
kernel.

Hardware issues like Meltdown, Spectre, L1TF etc. must be treated
differently because they usually affect all Operating Systems ("OS") and
therefore need coordination across different OS vendors, distributions,
hardware vendors and other parties. For some of the issues, software
mitigations can depend on microcode or firmware updates, which need further
coordination.

.. _Contact:

Contact
-------

The Linux kernel hardware security team is separate from the regular Linux
kernel security team.

The team only handles the coordination of embargoed hardware security
issues.  Reports of pure software security bugs in the Linux kernel are not
handled by this team and the reporter will be guided to contact the regular
Linux kernel security team (:ref:`Documentation/admin-guide/
<securitybugs>`) instead.

The team can be contacted by email at <hardware-security@kernel.org>. This
is a private list of security officers who will help you to coordinate an
issue according to our documented process.

The list is encrypted and email to the list can be sent by either PGP or
S/MIME encrypted and must be signed with the reporter's PGP key or S/MIME
certificate. The list's PGP key and S/MIME certificate are available from
https://www.kernel.org/....

While hardware security issues are often handled by the affected hardware
vendor, we welcome contact from researchers or individuals who have
identified a potential hardware flaw.

Hardware security officers
^^^^^^^^^^^^^^^^^^^^^^^^^^

The current team of hardware security officers:

  - Linus Torvalds (Linux Foundation Fellow)
  - Greg Kroah-Hartman (Linux Foundation Fellow)
  - Thomas Gleixner (Linux Foundation Fellow)

Operation of mailing-lists
^^^^^^^^^^^^^^^^^^^^^^^^^^

The encrypted mailing-lists which are used in our process are hosted on
Linux Foundation's IT infrastructure. By providing this service Linux
Foundation's director of IT Infrastructure security technically has the
ability to access the embargoed information, but is obliged to
confidentiality by his employment contract. Linux Foundation's director of
IT Infrastructure security is also responsible for the kernel.org
infrastructure.

The Linux Foundation's current director of IT Infrastructure security is
Konstantin Ryabitsev.


Non-disclosure agreements
-------------------------

The Linux kernel hardware security team is not a formal body and therefore
unable to enter into any non-disclosure agreements.  The kernel community
is aware of the sensitive nature of such issues and offers a Memorandum of
Understanding instead.


Memorandum of Understanding
---------------------------

The Linux kernel community has a deep understanding of the requirement to
keep hardware security issues under embargo for coordination between
different OS vendors, distributors, hardware vendors and other parties.

The Linux kernel community has successfully handled hardware security
issues in the past and has the necessary mechanisms in place to allow
community compliant development under embargo restrictions.

The Linux kernel community has a dedicated hardware security team for
initial contact, which oversees the process of handling such issues under
embargo rules.

The hardware security team identifies the developers (domain experts) who
will form the initial response team for a particular issue. The initial
response team can bring in further developers (domain experts) to address
the issue in the best technical way.

All involved developers pledge to adhere to the embargo rules and to keep
the received information confidential. Violation of the pledge will lead to
immediate exclusion from the current issue and removal from all related
mailing-lists. In addition, the hardware security team will also exclude
the offender from future issues. The impact of this consequence is a highly
effective deterrent in our community. In case a violation happens the
hardware security team will inform the involved parties immediately. If you
or anyone becomes aware of a potential violation, please report it
immediately to the Hardware security officers.


Process
^^^^^^^

Due to the globally distributed nature of Linux kernel development,
face-to-face meetings are almost impossible to address hardware security
issues.  Phone conferences are hard to coordinate due to time zones and
other factors and should be only used when absolutely necessary. Encrypted
email has been proven to be the most effective and secure communication
method for these types of issues.

Start of Disclosure
"""""""""""""""""""

Disclosure starts by contacting the Linux kernel hardware security team by
email. This initial contact should contain a description of the problem and
a list of any known affected hardware. If your organization builds or
distributes the affected hardware, we encourage you to also consider what
other hardware could be affected.

The hardware security team will provide an incident-specific encrypted
mailing-list which will be used for initial discussion with the reporter,
further disclosure and coordination.

The hardware security team will provide the disclosing party a list of
developers (domain experts) who should be informed initially about the
issue after confirming with the developers  that they will adhere to this
Memorandum of Understanding and the documented process. These developers
form the initial response team and will be responsible for handling the
issue after initial contact. The hardware security team is supporting the
response team, but is not necessarily involved in the mitigation
development process.

While individual developers might be covered by a non-disclosure agreement
via their employer, they cannot enter individual non-disclosure agreements
in their role as Linux kernel developers. They will, however, agree to
adhere to this documented process and the Memorandum of Understanding.


Disclosure
""""""""""

The disclosing party provides detailed information to the initial response
team via the specific encrypted mailing-list.

From our experience the technical documentation of these issues is usually
a sufficient starting point and further technical clarification is best
done via email.

Mitigation development
""""""""""""""""""""""

The initial response team sets up an encrypted mailing-list or repurposes
an existing one if appropriate. The disclosing party should provide a list
of contacts for all other parties who have already been, or should be,
informed about the issue. The response team contacts these parties so they
can name experts who should be subscribed to the mailing-list.

Using a mailing-list is close to the normal Linux development process and
has been successfully used in developing mitigations for various hardware
security issues in the past.

The mailing-list operates in the same way as normal Linux development.
Patches are posted, discussed and reviewed and if agreed on applied to a
non-public git repository which is only accessible to the participating
developers via a secure connection. The repository contains the main
development branch against the mainline kernel and backport branches for
stable kernel versions as necessary.

The initial response team will identify further experts from the Linux
kernel developer community as needed and inform the disclosing party about
their participation. Bringing in experts can happen at any time of the
development process and often needs to be handled in a timely manner.

Coordinated release
"""""""""""""""""""

The involved parties will negotiate the date and time where the embargo
ends. At that point the prepared mitigations are integrated into the
relevant kernel trees and published.

While we understand that hardware security issues need coordinated embargo
time, the embargo time should be constrained to the minimum time which is
required for all involved parties to develop, test and prepare the
mitigations. Extending embargo time artificially to meet conference talk
dates or other non-technical reasons is creating more work and burden for
the involved developers and response teams as the patches need to be kept
up to date in order to follow the ongoing upstream kernel development,
which might create conflicting changes.

CVE assignment
""""""""""""""

Neither the hardware security team nor the initial response team assign
CVEs, nor are CVEs required for the development process. If CVEs are
provided by the disclosing party they can be used for documentation
purposes.

Process ambassadors
-------------------

For assistance with this process we have established ambassadors in various
organizations, who can answer questions about or provide guidance on the
reporting process and further handling. Ambassadors are not involved in the
disclosure of a particular issue, unless requested by a response team or by
an involved disclosed party. The current ambassadors list:

  ============= ========================================================
  ARM
  AMD
  IBM
  Intel
  Qualcomm	Trilok Soni <tsoni@codeaurora.org>

  Microsoft	Sasha Levin <sashal@kernel.org>
  VMware
  Xen		Andrew Cooper <andrew.cooper3@citrix.com>

  Canonical	Tyler Hicks <tyhicks@canonical.com>
  Debian	Ben Hutchings <ben@decadent.org.uk>
  Oracle	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
  Red Hat	Josh Poimboeuf <jpoimboe@redhat.com>
  SUSE		Jiri Kosina <jkosina@suse.cz>

  Amazon
  Google	Kees Cook <keescook@chromium.org>
  ============= ========================================================

If you want your organization to be added to the ambassadors list, please
contact the hardware security team. The nominated ambassador has to
understand and support our process fully and is ideally well connected in
the Linux kernel community.

Encrypted mailing-lists
-----------------------

We use encrypted mailing-lists for communication. The operating principle
of these lists is that email sent to the list is encrypted either with the
list's PGP key or with the list's S/MIME certificate. The mailing-list
software decrypts the email and re-encrypts it individually for each
subscriber with the subscriber's PGP key or S/MIME certificate. Details
about the mailing-list software and the setup which is used to ensure the
security of the lists and protection of the data can be found here:
https://www.kernel.org/....

List keys
^^^^^^^^^

For initial contact see :ref:`Contact`. For incident specific mailing-lists
the key and S/MIME certificate are conveyed to the subscribers by email
sent from the specific list.

Subscription to incident specific lists
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Subscription is handled by the response teams. Disclosed parties who want
to participate in the communication send a list of potential subscribers to
the response team so the response team can validate subscription requests.

Each subscriber needs to send a subscription request to the response team
by email. The email must be signed with the subscriber's PGP key or S/MIME
certificate. If a PGP key is used, it must be available from a public key
server and is ideally connected to the Linux kernel's PGP web of trust. See
also: https://www.kernel.org/signature.html.

The response team verifies that the subscriber request is valid and adds
the subscriber to the list. After subscription the subscriber will receive
email from the mailing-list which is signed either with the list's PGP key
or the list's S/MIME certificate. The subscriber's email client can extract
the PGP key or the S/MIME certificate from the signature so the subscriber
can send encrypted email to the list.
+1 −0
Original line number Diff line number Diff line
@@ -45,6 +45,7 @@ Other guides to the community that are of interest to most developers are:
   submit-checklist
   kernel-docs
   deprecated
   embargoed-hardware-issues

These are some overall technical guides that have been put here for now for
lack of a better place.
+7 −6
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@ The following 64-byte header is present in decompressed Linux kernel image.
	u32 res1  = 0;		  /* Reserved */
	u64 res2  = 0;    	  /* Reserved */
	u64 magic = 0x5643534952; /* Magic number, little endian, "RISCV" */
	u32 res3;		  /* Reserved for additional RISC-V specific header */
	u32 magic2 = 0x56534905;  /* Magic number 2, little endian, "RSC\x05" */
	u32 res4;		  /* Reserved for PE COFF offset */

This header format is compliant with PE/COFF header and largely inspired from
@@ -37,13 +37,14 @@ Notes:
	Bits 16:31 - Major version

  This preserves compatibility across newer and older version of the header.
  The current version is defined as 0.1.
  The current version is defined as 0.2.

- res3 is reserved for offset to any other additional fields. This makes the
  header extendible in future. One example would be to accommodate ISA
  extension for RISC-V in future. For current version, it is set to be zero.
- The "magic" field is deprecated as of version 0.2.  In a future
  release, it may be removed.  This originally should have matched up
  with the ARM64 header "magic" field, but unfortunately does not.
  The "magic2" field replaces it, matching up with the ARM64 header.

- In current header, the flag field has only one field.
- In current header, the flags field has only one field.
	Bit 0: Kernel endianness. 1 if BE, 0 if LE.

- Image size is mandatory for boot loader to load kernel image. Booting will
Loading