File tree Expand file tree Collapse file tree 1 file changed +3
-2
lines changed Expand file tree Collapse file tree 1 file changed +3
-2
lines changed Original file line number Diff line number Diff line change @@ -1897,10 +1897,11 @@ void blk_cgroup_bio_start(struct bio *bio)
1897
1897
{
1898
1898
int rwd = blk_cgroup_io_type (bio ), cpu ;
1899
1899
struct blkg_iostat_set * bis ;
1900
+ unsigned long flags ;
1900
1901
1901
1902
cpu = get_cpu ();
1902
1903
bis = per_cpu_ptr (bio -> bi_blkg -> iostat_cpu , cpu );
1903
- u64_stats_update_begin (& bis -> sync );
1904
+ flags = u64_stats_update_begin_irqsave (& bis -> sync );
1904
1905
1905
1906
/*
1906
1907
* If the bio is flagged with BIO_CGROUP_ACCT it means this is a split
@@ -1912,7 +1913,7 @@ void blk_cgroup_bio_start(struct bio *bio)
1912
1913
}
1913
1914
bis -> cur .ios [rwd ]++ ;
1914
1915
1915
- u64_stats_update_end (& bis -> sync );
1916
+ u64_stats_update_end_irqrestore (& bis -> sync , flags );
1916
1917
if (cgroup_subsys_on_dfl (io_cgrp_subsys ))
1917
1918
cgroup_rstat_updated (bio -> bi_blkg -> blkcg -> css .cgroup , cpu );
1918
1919
put_cpu ();
You can’t perform that action at this time.
0 commit comments