Merge r266746, 266775:

 Now that there are separate back-end implementations of busdma, the bounce
 implementation shouldn't steal flags from the common front-end.
 Move those flags to the back-end.

 Eliminate the fake contig_dmamap and replace it with a new flag,
 BUS_DMA_KMEM_ALLOC.  They serve the same purpose, but using the flag
 means that the map can be NULL again, which in turn enables significant
 optimizations for the common case of no bouncing.

Obtained from:	Netflix, Inc.
Merge r265463:

 Due to reasons unknown at this time, the system can be forced to write
 a journal block even when there are no journal entries to be written.
 Until the root cause is found, handle this case by ensuring that a
 valid journal segment is always written.

 Second, the data buffer used for writing journal entries was never
 being scrubbed of old data.  Fix this.

Submitted by:	Takehara Mikihito
Obtained from:	Netflix, Inc.