|
|
@@ -515,18 +515,18 @@ struct zram_work {
|
|
|
struct zram *zram;
|
|
|
unsigned long entry;
|
|
|
struct bio *bio;
|
|
|
+ struct bio_vec bvec;
|
|
|
};
|
|
|
|
|
|
#if PAGE_SIZE != 4096
|
|
|
static void zram_sync_read(struct work_struct *work)
|
|
|
{
|
|
|
- struct bio_vec bvec;
|
|
|
struct zram_work *zw = container_of(work, struct zram_work, work);
|
|
|
struct zram *zram = zw->zram;
|
|
|
unsigned long entry = zw->entry;
|
|
|
struct bio *bio = zw->bio;
|
|
|
|
|
|
- read_from_bdev_async(zram, &bvec, entry, bio);
|
|
|
+ read_from_bdev_async(zram, &zw->bvec, entry, bio);
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
@@ -539,6 +539,7 @@ static int read_from_bdev_sync(struct zram *zram, struct bio_vec *bvec,
|
|
|
{
|
|
|
struct zram_work work;
|
|
|
|
|
|
+ work.bvec = *bvec;
|
|
|
work.zram = zram;
|
|
|
work.entry = entry;
|
|
|
work.bio = bio;
|