I feel your pain... no really, I felt this pain for a long long long time.
I have no idea what is going on with pkg at this point, but as you relate -
YES pkg and freebsd-update are not returning the right nvidia-drm driver for NVidia cards. I upgraded my box from the 14.2-RELEASE to the 14.3-RELEASE many, many times and although (everything else was good) the Nvidia drivers were always for the 14.2-RELEASE
no matter what I did with pkg. And YES - that's the
linux_kfree_async error. Clearly that missing dynamic link symbol is the Linux kernel's version of the free(3) function call. No one has yet explained why that dynamic link symbol is even in the *BSD source code... but that's another story.
ZFS is your friend

.
Strangely the FreeBSD-Kmods fix (DOES WORK) with
Intel graphic cards (at least in my case) on a different host - but nothing worked for a machine with an
NVidia RTX 4070.
The good news is that (at last !)
I got it working. But my steps to achieve this result are a bit painful.
STANDARD DISCLAIMER: FOLLOW THESE STEPS AT YOUR OWN RISK. I WOULD NEVER EVER RECOMMEND THAT YOU LISTEN TO ME ABOUT ANYTHING, OR ANYTHING THAT I WRITE.
a) Newly Install FreeBSD from CD/DVD/etc 14-3.RELEASE to your machine
b) Make sure you install "/usr/src" during the install which will have the latest ports source code for the 14.3-RELEASE - I installed (everything) on that install selection page (aka 32 bit libraries, kernel debug libraries, etc).
c) After the OS is installed --
(DO NOT) use pkg to install anything! But if some command or whatever is obviously missing from the O/S that you need in order to get "make" to run (see steps d/e) you can add it using "pkg". But largely you want the makefiles to do the all the package compiling and installing.
d) cd /usr/ports/graphics/nvidia-drm-61-kmod
e) make BATCH=yes
f) ** YOU MIGHT HAVE TO ADD A SYMBOLIC LINK TO
PERL 5.40.2 WHICH I FOUND MISSING ** I guess the FreeBSD distro has upgraded the default perl to
5.40.3 -- but the Makefiles are still using an older version of perl. I (doubt) there is much difference between perl version 5.40.3 and 5.40.2 - but YMMV (it worked for me).
You can add the symbolic link as follows:
Shell> cd /usr/local/bin
Shell> ln -s perl perl5.40.2
g) Then run the make (again = step e)
and it took around 2.5 hours to completely download a lot of stuff from the Internet, compile, install (on it's own) and complete the make. once that's done:
Shell> make install
and then try to load the nvidia-drm.ko file with:
Shell> kldload nvidia-drm
You can check to see if it successfully loaded with:
Shell> kldstat
If you get the
linux_kfree_async error message again... it's okay to cry.
Good luck !