Просмотр исходного кода

block: add bio_has_data() to detect whether a bio carries data or not

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe 17 лет назад
Родитель
Сommit
7a67f63b32
1 измененных файлов с 8 добавлено и 0 удалено
  1. 8 0
      include/linux/bio.h

+ 8 - 0
include/linux/bio.h

@@ -445,6 +445,14 @@ static inline char *__bio_kmap_irq(struct bio *bio, unsigned short idx,
 	__bio_kmap_irq((bio), (bio)->bi_idx, (flags))
 #define bio_kunmap_irq(buf,flags)	__bio_kunmap_irq(buf, flags)
 
+/*
+ * Check whether this bio carries any data or not. A NULL bio is allowed.
+ */
+static inline int bio_has_data(struct bio *bio)
+{
+	return bio && bio->bi_io_vec != NULL;
+}
+
 #if defined(CONFIG_BLK_DEV_INTEGRITY)
 
 #define bip_vec_idx(bip, idx)	(&(bip->bip_vec[(idx)]))