Forum Replies Created
I’ve done that. Whatever I add does not appear in the kernel symbols list.
I tried again yesterday and eventually ended up with a non-working system and had to remove all the directories generated bu VisualKernel and start again. Takes a couple of hours. For the moment I’ll try and push what I have as far as possible. Hopefully I can get enough working to go on with.
Is there any way I can debug kernel boot?
I tried to build it manually but couldn’t find how to tell VisualKernel to use my version, so since I have been using the kerenel automatically built by VisualKernel.
I have tried changing the Project properties…->Module build settings->Kernel version. Adding my own directory, importing symbols, etc. Whatever I do it just says, version incorrect and I eventually have to go back to the VisualKernel version.
I now have the Olimex debugger connectedto the Raspberry Pi and I can debug! Thanks for your suggestion.
Next problem, I need to customize the VisualKernel kernel, enable a few modules. How do I do that? I have tried everything I can and I still can’t get VisualKernel to recognize that it has to update the debug kernel.
Thanks for the response.
My setup is as follows: Debugging with Visual Studio 2017 Professional on Windows 10, using a VMware Linux with Debian Stretch AMD64 and a Raspberry Pi CM3.
I am using VisualKernel downloaded from your website, not from any source repository. What I have done.
1.- Delete all VisualKernel
1.1.- Windows files(C:\KernelCache, %LOCALAPPDATA%\VisualDebugger, %USERPROFILE%\source\repos\LinuxKernelModue*)
1.2.- VMware Linux files (/opt/KernelCache)
1.3.- Windows registry (HKCU\Software\Sysprogs)
2.- Open Visual Studio 2017, and create a new Linux Kernel Module project.
2.1.- Use SSH connections to the Linux machine and the Raspberry Pi.
2.2.- The Raspberry Pi kernel and cross compile tools are installed and used to create kernel and modules.
2.3.- The kernel and modules are installed correctly on the Raspberry Pi.
3.- Put a break point in the sample driver init function and start debug
4.- Select debug over Ethernet and VisualKernel tries to create the kdboe module.
4.1.- First problem is that the URL that VisualKernel tries to open to download the kdbgoe tarball is invalid. I managed to download the tarball by hand and can give it to VisualKernel when prompted.
4.2.- The kdbgoe module does not compile because CONFIG_HOTPLUG_CPU is not set in the kernel downloaded in step 3.2.
4.2.1.- I can fix the kdbgoe_io.c compilation by adding a #ifdef CONFIG_HOTPLUG_CPU around the cpu_down(i) call.
4.2.- Compilation now fails in irqsync.c and I can’t find the prototype for the init_timer that it is calling.
I think I have tried all alternatives of trying to add different kernels via the VisualKernel Project Properties -> Module Build Settings -> Kernel Symbols for Debugging setting and when I try to select it I only have the original kernel built in step 2.2. I have added things manualy, copied, rebuilt from scratch, nothing seems to work.
As far as I know your default kernel should be sufficient for me, but I can’t get use it due to the kdbgoe problems.