bird2 in version 2.0.8 from ports running on release/13.0.0 spams syslog with 'kernel: gw sdl_len too small' as well as its own log with '<ERR> KRT: Error sending route 126.96.36.199/12 to kernel: Invalid argument' messages, when trying to insert routes into the hosts routing table.
I traced the error to this commit . As far as i can tell the bird side looks good  but i'm by no means an expert on that.
this was fixed here (on -head):
But indeed it need to be MFC to 13.0-RELEASE
Created attachment 224258 [details]
Workaround for stricter sockaddr_dl checks on FBSD 13
(I already wrote this in a private mail to the maintainer. Found this bug report only afterwards.)
I fixed the problem by adapting the BSD routing table code in bird. You might give the attached patch a try.
A commit in branch stable/13 references this bug:
Author: Alexander V. Chernikov <melifaro@FreeBSD.org>
AuthorDate: 2021-04-10 15:25:24 +0000
Commit: Alexander V. Chernikov <melifaro@FreeBSD.org>
CommitDate: 2021-04-19 18:52:57 +0000
Fix direct route installation with net/bird.
Slighly relax the gateway validation rules imposed by the
2fe5a79425c7, by requiring only first 8 bytes (everyhing
before sdl_data to be present in the AF_LINK gateway.
Reported by: olivier
(cherry picked from commit 7f5f3fcc32bfa553faa007579dfcaed84be3b047)
sys/net/rtsock.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)