)]}'
{
  "commit": "252fe95fa17f548a61fac502c4dc36913652bb22",
  "tree": "44fb4a5caf495611736111620bcae6a543f837d1",
  "parents": [
    "3cdbc2cbdccb436d865cd473e8bab95648efc68f"
  ],
  "author": {
    "name": "Luis R. Rodriguez",
    "email": "mcgrof@kernel.org",
    "time": "Wed Dec 14 02:31:27 2016 -0600"
  },
  "committer": {
    "name": "Luis R. Rodriguez",
    "email": "mcgrof@kernel.org",
    "time": "Wed Nov 29 18:40:15 2017 -0800"
  },
  "message": "module: add debugging alias parsing support\n\nDebugging modules can often lead to an alias question. We purposely\ndon\u0027t have alias parsing support upstream as this is all dealt with\nin userpace with the assumption that in-kernel we just process aliases\nand userspace Does The Right Thing (TM) about aliases.\n\nObviously userspace can be buggy though, and it can lie to us. We\ncurrently have no easy way to determine this. Parsing aliases is\nan example debugging facility we can use to help with these sorts\nof problems.\n\nYou can debug by adding to your dynamic debug:\n\nGRUB_CMDLINE_LINUX_DEFAULT\u003d\"dyndbg\u003d\\\"func module_process_aliases +p;\\\" \"\n\nUpon boot for example here a few entries:\n\nmodule ext4 num_aliases: 5\nalias[0] \u003d fs-ext4\nalias[1] \u003d ext3\nalias[2] \u003d fs-ext3\nalias[3] \u003d ext2\nalias[4] \u003d fs-ext2\n\nmodule xfs num_aliases: 1\nalias[0] \u003d fs-xfs\n\nmodule floppy num_aliases: 3\nalias[0] \u003d block-major-2-*\nalias[1] \u003d acpi*:PNP0700:*\nalias[2] \u003d pnp:dPNP0700*\n\nmodule ata_piix num_aliases: 89\nalias[0] \u003d pci:v00008086d00008C81sv*sd*bc*sc*i*\nalias[1] \u003d pci:v00008086d00008C80sv*sd*bc*sc*i*\nalias[2] \u003d pci:v00008086d00008C89sv*sd*bc*sc*i*\nalias[3] \u003d pci:v00008086d00008C88sv*sd*bc*sc*i*\n... etc ...\n\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Luis R. Rodriguez \u003cmcgrof@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "548fa09fa806c5fb451ff7eac8700c10cab4bc05",
      "old_mode": 33188,
      "old_path": "include/linux/module.h",
      "new_id": "2efb0e3e39d918c81777ad3dd50476730f182f63",
      "new_mode": 33188,
      "new_path": "include/linux/module.h"
    },
    {
      "type": "modify",
      "old_id": "2934249fba46746253b89d14f581547ada3d0bad",
      "old_mode": 33188,
      "old_path": "init/Kconfig",
      "new_id": "f216e0da37610513a9c855e5eaedf45a2bc8caa7",
      "new_mode": 33188,
      "new_path": "init/Kconfig"
    },
    {
      "type": "modify",
      "old_id": "6d5f02e866812a76cc94fac599bad08ec4d88865",
      "old_mode": 33188,
      "old_path": "kernel/module.c",
      "new_id": "c1a10ef6ae761246155e84e531599577a4ca1fe3",
      "new_mode": 33188,
      "new_path": "kernel/module.c"
    }
  ]
}
