Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
drbd_wrappers.h
Go to the documentation of this file.
1 #ifndef _DRBD_WRAPPERS_H
2 #define _DRBD_WRAPPERS_H
3 
4 #include <linux/ctype.h>
5 #include <linux/mm.h>
6 
7 /* see get_sb_bdev and bd_claim */
8 extern char *drbd_sec_holder;
9 
10 /* sets the number of 512 byte sectors of our virtual device */
11 static inline void drbd_set_my_capacity(struct drbd_conf *mdev,
12  sector_t size)
13 {
14  /* set_capacity(mdev->this_bdev->bd_disk, size); */
15  set_capacity(mdev->vdisk, size);
16  mdev->this_bdev->bd_inode->i_size = (loff_t)size << 9;
17 }
18 
19 #define drbd_bio_uptodate(bio) bio_flagged(bio, BIO_UPTODATE)
20 
21 /* bi_end_io handlers */
22 extern void drbd_md_io_complete(struct bio *bio, int error);
23 extern void drbd_endio_sec(struct bio *bio, int error);
24 extern void drbd_endio_pri(struct bio *bio, int error);
25 
26 /*
27  * used to submit our private bio
28  */
29 static inline void drbd_generic_make_request(struct drbd_conf *mdev,
30  int fault_type, struct bio *bio)
31 {
32  __release(local);
33  if (!bio->bi_bdev) {
34  printk(KERN_ERR "drbd%d: drbd_generic_make_request: "
35  "bio->bi_bdev == NULL\n",
36  mdev_to_minor(mdev));
37  dump_stack();
38  bio_endio(bio, -ENODEV);
39  return;
40  }
41 
42  if (drbd_insert_fault(mdev, fault_type))
43  bio_endio(bio, -EIO);
44  else
46 }
47 
48 static inline int drbd_crypto_is_hash(struct crypto_tfm *tfm)
49 {
50  return (crypto_tfm_alg_type(tfm) & CRYPTO_ALG_TYPE_HASH_MASK)
52 }
53 
54 #ifndef __CHECKER__
55 # undef __cond_lock
56 # define __cond_lock(x,c) (c)
57 #endif
58 
59 #endif