block: backport previous changes to linux 3.0

Change-Id: Ieea61d61bc4e75bf452921ec64a2ab09d9bd85db