{"push_id":733305450,"size":6,"distinct_size":6,"ref":"refs/heads/devel","head":"9c08f5d62b9d141142a5b6ac45de0efac06b34c3","before":"2453c883fe5711cdccf60136802913f99d4ec0cc","commits":[{"sha":"a00bd2634e06b2ead7de241461720cd20cedb347","author":{"email":"3c5fb063765d3c2eb5938ad9ebec439bc976721a@gmail.com","name":"Minfei Huang"},"message":"kexec: Make a pair of map and unmap reserved pages when kdump fails to start\n\nFor some arch, kexec shall map the reserved pages, then use them, when\nwe try to start the kdump service.\n\nNow kexec will never unmap the reserved pages, once it fails to continue\nstarting the kdump service. So we make a pair of map/unmap reserved\npages whatever kexec fails or not in code path.\n\nIn order to make code readable, wrap a new function __kexec_load which\ncontains all of the logic to deal with the image loading.\n\nSigned-off-by: Minfei Huang <mnfhuang@gmail.com>","distinct":true,"url":"https://api.github.com/repos/huangminfei/linux/commits/a00bd2634e06b2ead7de241461720cd20cedb347"},{"sha":"b034a7b9cb53412b22eee3103deda60c3af19ae0","author":{"email":"3c5fb063765d3c2eb5938ad9ebec439bc976721a@gmail.com","name":"Minfei Huang"},"message":"livepatch: Fix the issue to make livepatch enable/disable patch correctly\n\nLivepatch will obey the stacking rule to enable/disable the patch. It\nonly allows to enable the patch, when it is the fist disabled patch,\ndisable the patch, when it is the last enabled patch.\n\nIn the livepatch code, it uses list to gather the all of the patches.\nAnd we do not know whether the previous/next patch is patched to the\nsame modules or vmlinux in that way.\n\nAccording to above rule, livepatch will make incorrect decision to\nenable/disable the patch. Following is an example to show how livepatch\ndoes.\n\n- install the livepatch example module which is in samples/livepatch.\n- install the third part kernel module\n- install the livepatch module which is patched to the third part module\n- disable the livepatch example module\n\nWe can find that we can not disable livepatch example module, although\nit is the last enabled patch.\n\nTo fix this issue, we will find the corresponding patch which is patched\nto the same modules or vmlinux, when we enable/disable the patch.\n\nSigned-off-by: Minfei Huang <mnfhuang@gmail.com>","distinct":true,"url":"https://api.github.com/repos/huangminfei/linux/commits/b034a7b9cb53412b22eee3103deda60c3af19ae0"},{"sha":"9f5e41c27884a0aed8dd21acc72b8e9c2a26b72d","author":{"email":"3c5fb063765d3c2eb5938ad9ebec439bc976721a@gmail.com","name":"Minfei Huang"},"message":"[PATCH 2/2] Define kallsyms_cmp_symbol_t as function type to simplify the code\n\nIt is not elegance, if we use function directly as the argument, like\nfollowing:\n\nint module_kallsyms_on_each_symbol(int (*fn)(void *, const char *,\n                                  struct module *, unsigned long),\n                                  void *data);\n\nHere introduce a type defined function kallsyms_cmp_symbol_t. Now\nwe can use these type defined function directly, if we want to pass\nthe function as the argument.\n\nint module_kallsyms_on_each_symbol(kallsyms_cmp_symbol_t fn,\n\t\t\t\t\tvoid *data);\n\nSigned-off-by: Minfei Huang <mnfhuang@gmail.com>","distinct":true,"url":"https://api.github.com/repos/huangminfei/linux/commits/9f5e41c27884a0aed8dd21acc72b8e9c2a26b72d"},{"sha":"bcd017541d121797366cef6bb72eb4320b01bd52","author":{"email":"5c1e68b099950c134891f0b6e179498a8ebe9cf9@linux-foundation.org","name":"Andrew Morton"},"message":"[PATCH] define-kallsyms_cmp_symbol_t-as-function-type-to-simplify-the-code-fix\n\nfix CONFIG_MODULES=n build\n\nCc: Minfei Huang <mnfhuang@gmail.com>\nCc: Namhyung Kim <namhyung@kernel.org>\nCc: Rob Jones <rob.jones@codethink.co.uk>\nCc: Rusty Russell <rusty@rustcorp.com.au>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>","distinct":true,"url":"https://api.github.com/repos/huangminfei/linux/commits/bcd017541d121797366cef6bb72eb4320b01bd52"},{"sha":"21391a2bce73af35594d5d49399d6c5c14da7df8","author":{"email":"3c5fb063765d3c2eb5938ad9ebec439bc976721a@gmail.com","name":"Minfei Huang"},"message":"[PATCH] Fix compiling error once merge define-kallsyms_cmp_symbol_t-as-function-type-to-simplify-the-code\n\nCode will fail to be compiled, once it is merged the patch\n5ed0a999616a050af1268a99cc442fd0824a2b07(Define kallsyms_cmp_symbol_t\nas function type to simplify the code).\n\nThe root cause which fails to compile is I included the linux/module.h\nhead file to linux/kallsyms.h. Now I write the patch to fix this issue,\nand it passes on platform s390, x86_64, i386, etc..\n\n    In file included from arch/s390/include/asm/elf.h:130:0,\n                     from include/linux/elf.h:4,\n                     from include/linux/module.h:14,\n                     from include/linux/kallsyms.h:11,\n                     from kernel/sched/auto_group.c:5:\n >> arch/s390/include/asm/mmu_context.h:80:0: warning: \"finish_arch_post_lock_switch\" redefined\n     #define finish_arch_post_lock_switch finish_arch_post_lock_switch\n     ^\n    In file included from kernel/sched/auto_group.c:1:0:\n    kernel/sched/sched.h:1072:0: note: this is the location of the previous definition\n     # define finish_arch_post_lock_switch() do { } while (0)\n     ^\n\nSigned-off-by: Minfei Huang <mnfhuang@gmail.com>","distinct":true,"url":"https://api.github.com/repos/huangminfei/linux/commits/21391a2bce73af35594d5d49399d6c5c14da7df8"},{"sha":"9c08f5d62b9d141142a5b6ac45de0efac06b34c3","author":{"email":"3c5fb063765d3c2eb5938ad9ebec439bc976721a@gmail.com","name":"Minfei Huang"},"message":"ftrace: Calculate the correct dyn_ftrace number to report to the userspace\n\nNow, ftrace only calculate the dyn_ftrace number in the adding\nbreakpoint loop, not in adding update and finish update loop.\n\nCalculate the correct dyn_ftrace, once ftrace reports the failure message\nto the userspace.\n\nSigned-off-by: Minfei Huang <mnfhuang@gmail.com>","distinct":true,"url":"https://api.github.com/repos/huangminfei/linux/commits/9c08f5d62b9d141142a5b6ac45de0efac06b34c3"}]}