drm: Import list_for_each_entry_safe_from() macro
Give (*ext_free) an int return value allowing for very sophisticated
external mbuf buffer management capabilities in the future.

For now only EXT_FREE_OK is defined with current legacy behavior.

Sponsored by:	The FreeBSD Foundation
sh: Disallow empty simple commands.

As per POSIX, a simple command must have at least one redirection,
assignment word or command word.

These occured in rare cases such as  eval "f()" .

The extension of allowing no commands inside { }, if, while, for, etc.
remains.
Bump FreeBSD_version after the struct mbuf changes in r254780,
r254799, r254804, r254807, and r254842.

Sponsored by:	The FreeBSD Foundation
Add the unwind information to irq_entry so we can pass through it when
unwinding the stack.
Add the frame information to cpu_switch to allow us to unwind out of it,
for example when dumping threads in the kernel debugger.