r359919 modified "struct mbuf" so that a ext_pgs mbuf could not have
a pkthdr. As such, when I list of ext_pgs mbufs is passed into sosend_generic,
it would fail, since it would try and use a field as m_pkthdr.len (usually 0 fortunately).
This little patch adds code to check for M_PKTHDR and calculates the length
via m_length() if not.