]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/block/umem.c
of_mdio: fix MDIO phy device refcounting
[karo-tx-linux.git] / drivers / block / umem.c
index 4cf81b5bf0f7fba42a243a7e717ead98b2144759..04d65790a8862a91be1d1b40f8baef7f850824d6 100644 (file)
@@ -456,7 +456,7 @@ static void process_page(unsigned long data)
                                PCI_DMA_TODEVICE : PCI_DMA_FROMDEVICE);
                if (control & DMASCR_HARD_ERROR) {
                        /* error */
-                       clear_bit(BIO_UPTODATE, &bio->bi_flags);
+                       bio->bi_error = -EIO;
                        dev_printk(KERN_WARNING, &card->dev->dev,
                                "I/O error on sector %d/%d\n",
                                le32_to_cpu(desc->local_addr)>>9,
@@ -505,7 +505,7 @@ static void process_page(unsigned long data)
 
                return_bio = bio->bi_next;
                bio->bi_next = NULL;
-               bio_endio(bio, 0);
+               bio_endio(bio);
        }
 }
 
@@ -531,6 +531,8 @@ static void mm_make_request(struct request_queue *q, struct bio *bio)
                 (unsigned long long)bio->bi_iter.bi_sector,
                 bio->bi_iter.bi_size);
 
+       blk_queue_split(q, &bio, q->bio_split);
+
        spin_lock_irq(&card->lock);
        *card->biotail = bio;
        bio->bi_next = NULL;