File tree Expand file tree Collapse file tree 2 files changed +19
-0
lines changed Expand file tree Collapse file tree 2 files changed +19
-0
lines changed Original file line number Diff line number Diff line change @@ -1967,6 +1967,24 @@ int bioset_init(struct bio_set *bs,
1967
1967
}
1968
1968
EXPORT_SYMBOL (bioset_init );
1969
1969
1970
+ /*
1971
+ * Initialize and setup a new bio_set, based on the settings from
1972
+ * another bio_set.
1973
+ */
1974
+ int bioset_init_from_src (struct bio_set * bs , struct bio_set * src )
1975
+ {
1976
+ int flags ;
1977
+
1978
+ flags = 0 ;
1979
+ if (src -> bvec_pool .min_nr )
1980
+ flags |= BIOSET_NEED_BVECS ;
1981
+ if (src -> rescue_workqueue )
1982
+ flags |= BIOSET_NEED_RESCUER ;
1983
+
1984
+ return bioset_init (bs , src -> bio_pool .min_nr , src -> front_pad , flags );
1985
+ }
1986
+ EXPORT_SYMBOL (bioset_init_from_src );
1987
+
1970
1988
#ifdef CONFIG_BLK_CGROUP
1971
1989
1972
1990
/**
Original file line number Diff line number Diff line change @@ -417,6 +417,7 @@ enum {
417
417
extern int bioset_init (struct bio_set * , unsigned int , unsigned int , int flags );
418
418
extern void bioset_exit (struct bio_set * );
419
419
extern int biovec_init_pool (mempool_t * pool , int pool_entries );
420
+ extern int bioset_init_from_src (struct bio_set * bs , struct bio_set * src );
420
421
421
422
extern struct bio * bio_alloc_bioset (gfp_t , unsigned int , struct bio_set * );
422
423
extern void bio_put (struct bio * );
You can’t perform that action at this time.
0 commit comments