]> err.no Git - linux-2.6/blobdiff - kernel/power/swap.c
Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6
[linux-2.6] / kernel / power / swap.c
index 9b2ee5344dee10b51ae4f0d1fda84b1aa99d3de4..1a3b0dd2c3fcc18b2db25fc7472560cb67edfb7e 100644 (file)
@@ -425,7 +425,8 @@ static int submit(int rw, pgoff_t page_off, struct page *page,
                        bio_set_pages_dirty(bio);
                bio_put(bio);
        } else {
-               get_page(page);
+               if (rw == READ)
+                       get_page(page); /* These pages are freed later */
                bio->bi_private = *bio_chain;
                *bio_chain = bio;
                submit_bio(rw | (1 << BIO_RW_SYNC), bio);