ANDROID: GKI: KMI update 6/18/2021

Set KMI_GENERATION=6 for 6/18 KMI update.

Leaf changes summary: 207 artifacts changed
Changed leaf types summary: 6 leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 201 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

201 functions with some sub-type change:

  [C] 'function int ieee80211_data_to_8023_exthdr(sk_buff*, ethhdr*, const u8*, nl80211_iftype, u8)' at util.c:497:1 has some sub-type changes:
    CRC (modversions) changed from 0xba33dbe5 to 0xa2a82262
    parameter 6 of type 'typedef bool' was added

  [C] 'function int __pci_register_driver(pci_driver*, module*, const char*)' at pci-driver.c:1435:1 has some sub-type changes:
    CRC (modversions) changed from 0x473304cb to 0xbad21ab9

  [C] 'function int blk_mq_pci_map_queues(blk_mq_queue_map*, pci_dev*, int)' at blk-mq-pci.c:26:1 has some sub-type changes:
    CRC (modversions) changed from 0x7aaab94e to 0x1d2e53a9

  [C] 'function int dapm_pinctrl_event(snd_soc_dapm_widget*, snd_kcontrol*, int)' at soc-dapm.c:1370:1 has some sub-type changes:
    CRC (modversions) changed from 0x34985d25 to 0x29bec883

  ... 197 omitted; 200 symbols have only CRC changes

'struct pci_dev at pci.h:292:1' changed:
  type size changed from 20096 to 25600 (in bits)
  4 data member insertions:
    'union {pci_sriov* sriov; pci_dev* physfn;}', at offset 24960 (in bits) at pci.h:451:1
    'u16 ats_cap', at offset 25024 (in bits) at pci.h:455:1
    'u8 ats_stu', at offset 25040 (in bits) at pci.h:456:1
    'atomic_t ats_ref_cnt', at offset 25056 (in bits) at pci.h:457:1
  there are data member changes:
    type 'resource[11]' of 'pci_dev::resource' changed:
      type name changed from 'resource[11]' to 'resource[17]'
      array type size changed from 8448 to 13056
      array type subrange 1 changed length from 11 to 17
    7 ('bool match_driver' .. 'int rom_attr_enabled') offsets changed (by +4608 bits)
    type 'bin_attribute*[11]' of 'pci_dev::res_attr' changed:
      type name changed from 'bin_attribute*[11]' to 'bin_attribute*[17]'
      array type size changed from 704 to 1088
      array type subrange 1 changed length from 11 to 17
    and offset changed from 18048 to 22656 (in bits) (by +4608 bits)
    type 'bin_attribute*[11]' of 'pci_dev::res_attr_wc' changed:
      type name changed from 'bin_attribute*[11]' to 'bin_attribute*[17]'
      array type size changed from 704 to 1088
      array type subrange 1 changed length from 11 to 17
    and offset changed from 18752 to 23744 (in bits) (by +4992 bits)
    2 ('const attribute_group** msi_irq_groups' .. 'pci_vpd* vpd') offsets changed (by +5376 bits)
    8 ('phys_addr_t rom' .. 'u64 android_kabi_reserved4') offsets changed (by +5504 bits)
  349 impacted interfaces

'struct snd_compr at compress_driver.h:137:1' changed:
  type size changed from 8000 to 8640 (in bits)
  3 data member insertions:
    'char id[64]', at offset 7968 (in bits) at compress_driver.h:148:1
    'snd_info_entry* proc_root', at offset 8512 (in bits) at compress_driver.h:149:1
    'snd_info_entry* proc_info_entry', at offset 8576 (in bits) at compress_driver.h:150:1
  63 impacted interfaces

'struct snd_pcm at pcm.h:505:1' changed (indirectly):
  type size changed from 17472 to 17600 (in bits)
  there are data member changes:
    'snd_pcm_str streams[2]' size changed from 15360 to 15488 (in bits) (by +128 bits)
    7 ('mutex open_mutex' .. 'bool no_device_suspend') offsets changed (by +128 bits)
  96 impacted interfaces

'struct snd_pcm_str at pcm.h:484:1' changed:
  type size changed from 7680 to 7744 (in bits)
  1 data member insertion:
    'snd_info_entry* proc_root', at offset 256 (in bits) at pcm.h:496:1
  there are data member changes:
    2 ('snd_kcontrol* chmap_kctl' .. 'device dev') offsets changed (by +64 bits)
  96 impacted interfaces

'struct snd_pcm_substream at pcm.h:438:1' changed:
  type size changed from 3904 to 3968 (in bits)
  1 data member insertion:
    'snd_info_entry* proc_root', at offset 3840 (in bits) at pcm.h:474:1
  96 impacted interfaces

'struct usbnet at usbnet.h:29:1' changed:
  type size changed from 5248 to 5312 (in bits)
  2 data member insertions:
    'u32 tx_speed', at offset 5024 (in bits) at usbnet.h:89:1
    'u64 android_kabi_reserved1', at offset 5056 (in bits) at usbnet.h:91:1
  there are data member changes:
    anonymous data member union {struct {u32 rx_speed; u32 tx_speed;}; struct {u64 android_kabi_reserved1;} __UNIQUE_ID_android_kabi_hide209; union {};} at offset 4992 (in bits) became data member 'u32 rx_speed'
    and size changed from 64 to 32 (in bits) (by -32 bits)
    3 ('u64 android_kabi_reserved2' .. 'u64 android_kabi_reserved4') offsets changed (by +64 bits)
  11 impacted interfaces

Bug: 190227201
Signed-off-by: Sandeep Patil <sspatil@google.com>
Change-Id: Iaf5e2f0f3bbefeb13f0c986af1055b81ef29656d
2 files changed
tree: 76445b1064c4e90e1a2a2799081066ed3b131e96
  1. .clang-format
  2. .cocciconfig
  3. .get_maintainer.ignore
  4. .gitattributes
  5. .gitignore
  6. .mailmap
  7. COPYING
  8. CREDITS
  9. Documentation/
  10. Kbuild
  11. Kconfig
  12. LICENSES/
  13. MAINTAINERS
  14. Makefile
  15. OWNERS
  16. README
  17. README.md
  18. android/
  19. arch/
  20. block/
  21. build.config.aarch64
  22. build.config.allmodconfig
  23. build.config.allmodconfig.aarch64
  24. build.config.allmodconfig.arm
  25. build.config.allmodconfig.x86_64
  26. build.config.arm
  27. build.config.common
  28. build.config.db845c
  29. build.config.gki
  30. build.config.gki-debug.aarch64
  31. build.config.gki-debug.x86_64
  32. build.config.gki.aarch64
  33. build.config.gki.x86_64
  34. build.config.gki_kasan
  35. build.config.gki_kasan.aarch64
  36. build.config.gki_kasan.x86_64
  37. build.config.gki_kprobes
  38. build.config.gki_kprobes.aarch64
  39. build.config.gki_kprobes.x86_64
  40. build.config.hikey960
  41. build.config.x86_64
  42. certs/
  43. crypto/
  44. drivers/
  45. fs/
  46. include/
  47. init/
  48. ipc/
  49. kernel/
  50. lib/
  51. mm/
  52. net/
  53. samples/
  54. scripts/
  55. security/
  56. sound/
  57. tools/
  58. usr/
  59. virt/
README.md

How do I submit patches to Android Common Kernels

  1. BEST: Make all of your changes to upstream Linux. If appropriate, backport to the stable releases. These patches will be merged automatically in the corresponding common kernels. If the patch is already in upstream Linux, post a backport of the patch that conforms to the patch requirements below.

  2. LESS GOOD: Develop your patches out-of-tree (from an upstream Linux point-of-view). Unless these are fixing an Android-specific bug, these are very unlikely to be accepted unless they have been coordinated with kernel-team@android.com. If you want to proceed, post a patch that conforms to the patch requirements below.

Common Kernel patch requirements

  • All patches must conform to the Linux kernel coding standards and pass script/checkpatch.pl
  • Patches shall not break gki_defconfig or allmodconfig builds for arm, arm64, x86, x86_64 architectures (see https://source.android.com/setup/build/building-kernels)
  • If the patch is not merged from an upstream branch, the subject must be tagged with the type of patch: UPSTREAM:, BACKPORT:, FROMGIT:, FROMLIST:, or ANDROID:.
  • All patches must have a Change-Id: tag (see https://gerrit-review.googlesource.com/Documentation/user-changeid.html)
  • If an Android bug has been assigned, there must be a Bug: tag.
  • All patches must have a Signed-off-by: tag by the author and the submitter

Additional requirements are listed below based on patch type

Requirements for backports from mainline Linux: UPSTREAM:, BACKPORT:

  • If the patch is a cherry-pick from Linux mainline with no changes at all
    • tag the patch subject with UPSTREAM:.
    • add upstream commit information with a (cherry-picked from ...) line
    • Example:
      • if the upstream commit message is
        important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>
    - then Joe Smith would upload the patch for the common kernel as
        UPSTREAM: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        (cherry-picked from c31e73121f4c1ec41143423ac6ce3ce6dafdcec1)
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch requires any changes from the upstream version, tag the patch with BACKPORT: instead of UPSTREAM:.
    • use the same tags as UPSTREAM:
    • add comments about the changes under the (cherry-picked from ...) line
    • Example:
        BACKPORT: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        (cherry-picked from c31e73121f4c1ec41143423ac6ce3ce6dafdcec1)
        [ Resolved minor conflict in drivers/foo/bar.c ]
        Signed-off-by: Joe Smith <joe.smith@foo.org>

Requirements for other backports: FROMGIT:, FROMLIST:,

  • If the patch has been merged into an upstream maintainer tree, but has not yet been merged into Linux mainline
    • tag the patch subject with FROMGIT:
    • add info on where the patch came from as (cherry picked from commit <sha1> <repo> <branch>). This must be a stable maintainer branch (not rebased, so don't use linux-next for example).
    • if changes were required, use BACKPORT: FROMGIT:
    • Example:
      • if the commit message in the maintainer tree is
        important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>
    - then Joe Smith would upload the patch for the common kernel as
        FROMGIT: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        (cherry picked from commit 878a2fd9de10b03d11d2f622250285c7e63deace
         https://git.kernel.org/pub/scm/linux/kernel/git/foo/bar.git test-branch)
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch has been submitted to LKML, but not accepted into any maintainer tree
    • tag the patch subject with FROMLIST:
    • add a Link: tag with a link to the submittal on lore.kernel.org
    • if changes were required, use BACKPORT: FROMLIST:
    • Example:
        FROMLIST: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Link: https://lore.kernel.org/lkml/20190619171517.GA17557@someone.com/
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>

Requirements for Android-specific patches: ANDROID:

  • If the patch is fixing a bug to Android-specific code
    • tag the patch subject with ANDROID:
    • add a Fixes: tag that cites the patch with the bug
    • Example:
        ANDROID: fix android-specific bug in foobar.c

        This is the detailed description of the important fix

        Fixes: 1234abcd2468 ("foobar: add cool feature")
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch is a new feature
    • tag the patch subject with ANDROID:
    • add a Bug: tag with the Android bug (required for android-specific features)