llvm.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Andrey Ryabinin <arbn@yandex-team.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: Re: [RFC PATCH 2/7] kexec: Hack and abuse crashkernel for the kstate's migration stream
Date: Sat, 5 Oct 2024 21:38:30 +0800	[thread overview]
Message-ID: <202410052140.hHx7eFfO-lkp@intel.com> (raw)
In-Reply-To: <20241002160722.20025-3-arbn@yandex-team.com>

Hi Andrey,

[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:

[auto build test ERROR on tip/x86/core]
[also build test ERROR on akpm-mm/mm-everything akpm-mm/mm-nonmm-unstable linus/master v6.12-rc1 next-20241004]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Andrey-Ryabinin/kstate-Add-kstate-a-mechanism-to-migrate-some-kernel-state-across-kexec/20241003-001223
base:   tip/x86/core
patch link:    https://lore.kernel.org/r/20241002160722.20025-3-arbn%40yandex-team.com
patch subject: [RFC PATCH 2/7] kexec: Hack and abuse crashkernel for the kstate's migration stream
config: i386-buildonly-randconfig-004-20241005 (https://download.01.org/0day-ci/archive/20241005/202410052140.hHx7eFfO-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241005/202410052140.hHx7eFfO-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202410052140.hHx7eFfO-lkp@intel.com/

All errors (new ones prefixed by >>):

>> kernel/kexec_core.c:1051:3: error: call to undeclared function 'arch_kexec_unprotect_crashkres'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    1051 |                 arch_kexec_unprotect_crashkres();
         |                 ^
   1 error generated.


vim +/arch_kexec_unprotect_crashkres +1051 kernel/kexec_core.c

   990	
   991	/*
   992	 * Move into place and start executing a preloaded standalone
   993	 * executable.  If nothing was preloaded return an error.
   994	 */
   995	int kernel_kexec(void)
   996	{
   997		int error = 0;
   998	
   999		if (!kexec_trylock())
  1000			return -EBUSY;
  1001		if (!kexec_image) {
  1002			error = -EINVAL;
  1003			goto Unlock;
  1004		}
  1005	
  1006	#ifdef CONFIG_KEXEC_JUMP
  1007		if (kexec_image->preserve_context) {
  1008			pm_prepare_console();
  1009			error = freeze_processes();
  1010			if (error) {
  1011				error = -EBUSY;
  1012				goto Restore_console;
  1013			}
  1014			suspend_console();
  1015			error = dpm_suspend_start(PMSG_FREEZE);
  1016			if (error)
  1017				goto Resume_console;
  1018			/* At this point, dpm_suspend_start() has been called,
  1019			 * but *not* dpm_suspend_end(). We *must* call
  1020			 * dpm_suspend_end() now.  Otherwise, drivers for
  1021			 * some devices (e.g. interrupt controllers) become
  1022			 * desynchronized with the actual state of the
  1023			 * hardware at resume time, and evil weirdness ensues.
  1024			 */
  1025			error = dpm_suspend_end(PMSG_FREEZE);
  1026			if (error)
  1027				goto Resume_devices;
  1028			error = suspend_disable_secondary_cpus();
  1029			if (error)
  1030				goto Enable_cpus;
  1031			local_irq_disable();
  1032			error = syscore_suspend();
  1033			if (error)
  1034				goto Enable_irqs;
  1035		} else
  1036	#endif
  1037		{
  1038			kexec_in_progress = true;
  1039			kernel_restart_prepare("kexec reboot");
  1040			migrate_to_reboot_cpu();
  1041			syscore_shutdown();
  1042	
  1043			/*
  1044			 * migrate_to_reboot_cpu() disables CPU hotplug assuming that
  1045			 * no further code needs to use CPU hotplug (which is true in
  1046			 * the reboot case). However, the kexec path depends on using
  1047			 * CPU hotplug again; so re-enable it here.
  1048			 */
  1049			cpu_hotplug_enable();
  1050			pr_notice("Starting new kernel\n");
> 1051			arch_kexec_unprotect_crashkres();
  1052			machine_shutdown();
  1053		}
  1054	
  1055		if (kexec_image->type & KEXEC_TYPE_MIGRATE)
  1056			save_migrate_state(kexec_image->mig_stream);
  1057	
  1058		kmsg_dump(KMSG_DUMP_SHUTDOWN);
  1059		machine_kexec(kexec_image);
  1060	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

       reply	other threads:[~2024-10-05 13:39 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20241002160722.20025-3-arbn@yandex-team.com>
2024-10-05 13:38 ` kernel test robot [this message]
2024-12-09  4:08 ` [RFC PATCH 2/7] kexec: Hack and abuse crashkernel for the kstate's migration stream kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202410052140.hHx7eFfO-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=arbn@yandex-team.com \
    --cc=llvm@lists.linux.dev \
    --cc=oe-kbuild-all@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).