# Best way to recover from missed kernel build in upgrade?



## AshM (Jun 20, 2015)

I was upgrading my system from 9.3-REL to 10.1-REL using `freebsd-update` while referring to the instructions on https://www.freebsd.org/releases/10.1R/installation.html and forgot that since I'm running a custom kernel, I should've built and installed a new kernel before the final reboot. I had a generic 9.3 kernel installed in /boot/GENERIC but don't know if freebsd-update updated it during the process or not. The system is remotely hosted and I don't have physical access.  The support staff onsite told me the only two options they see at startup are default kernel and kernel.old.
What are my best options at this point for recovery?
Is there a method to try to boot with the generic kernel?


----------



## ShelLuser (Jun 20, 2015)

Well, after logging in then `uname -a` should be able to show you what kernel is currently in use. Well, or `uname -i` I suppose 

I'd assume that it got updated / replaced with a generic kernel. And where to go from here, I suppose you should rebuild your kernel again.


----------



## gkontos (Jun 20, 2015)

Try booting with the new KERNEL and then rebuild the custom.


----------



## AshM (Jun 21, 2015)

Well something in the networking was borked on the system, not quite sure what was going on, but I was given access via KVM and managed to build & install a new kernel that got things back to normal. Phew! I did run into a little snag during the process, while building kernel I ran into this error:


```
/usr/src/sys/dev/ath/ath_hal/ah.c:27:10: fatal error: 'ar9003/ar9300_devid.h' file not found
#include "ar9003/ar9300_devid.h"
  ^
1 error generated.
mkdep: compile failed
*** Error code 1
```

I ended up using WITHOUT_MODULES = ath to work around it (not like there's a wireless NIC on that system anyway), but after getting the system back to normal I decided to install devel/subversion and checkout a fresh copy of src from /base/releng/10.1. I rebuilt GENERIC and custom kernel again and everything seems fine for the most part. I've been using freebsd-update(8) to handle patching/upgrades after cvsup/csup were retired, any ideas as to why I might have been missing files in my source tree?


----------

