dm-zero.c (e5451c8f8330e03ad3cfa16048b4daf961af434f) dm-zero.c (70246286e94c335b5bea0cbc68a17a96dd620281)
1/*
2 * Copyright (C) 2003 Jana Saout <jana@saout.de>
3 *
4 * This file is released under the GPL.
5 */
6
7#include <linux/device-mapper.h>
8

--- 21 unchanged lines hidden (view full) ---

30 return 0;
31}
32
33/*
34 * Return zeros only on reads
35 */
36static int zero_map(struct dm_target *ti, struct bio *bio)
37{
1/*
2 * Copyright (C) 2003 Jana Saout <jana@saout.de>
3 *
4 * This file is released under the GPL.
5 */
6
7#include <linux/device-mapper.h>
8

--- 21 unchanged lines hidden (view full) ---

30 return 0;
31}
32
33/*
34 * Return zeros only on reads
35 */
36static int zero_map(struct dm_target *ti, struct bio *bio)
37{
38 switch(bio_rw(bio)) {
39 case READ:
38 switch (bio_op(bio)) {
39 case REQ_OP_READ:
40 if (bio->bi_rw & REQ_RAHEAD) {
41 /* readahead of null bytes only wastes buffer cache */
42 return -EIO;
43 }
40 zero_fill_bio(bio);
41 break;
44 zero_fill_bio(bio);
45 break;
42 case READA:
43 /* readahead of null bytes only wastes buffer cache */
44 return -EIO;
45 case WRITE:
46 case REQ_OP_WRITE:
46 /* writes get silently dropped */
47 break;
47 /* writes get silently dropped */
48 break;
49 default:
50 return -EIO;
48 }
49
50 bio_endio(bio);
51
52 /* accepted bio, don't make new request */
53 return DM_MAPIO_SUBMITTED;
54}
55

--- 29 unchanged lines hidden ---
51 }
52
53 bio_endio(bio);
54
55 /* accepted bio, don't make new request */
56 return DM_MAPIO_SUBMITTED;
57}
58

--- 29 unchanged lines hidden ---