for-3.9: use new hlist_for_each interfaces.
for-3.10: support new interface of block device operations.
for-3.10: bugfix: memory leak of pages for copied bios.

bio_advance() will change bio->bi_idx so
bio_clone_copy() and copied_bio_put() must not rely on it.
for-3.10: bugfix: bio_cursor_XXX also assumed immutable bio->bi_idx.
trivial fix.