wuzhouhui
2018-Feb-07 05:44 UTC
[CentOS] Adjust type of rw in submit_bio from int to unsigned long
Hi, I am a developer who worked on CentOS. Recently I am working on porting one of my block drivers from CentOS 6.x to CentOS 7.x. In newest kernel (kernel-3.10.0-693.17.1.el7) I found there is an issue in submit_bio()'s first argument: void submit_bio(int rw, struct bio *bio) The type of bi_rw of struct bio is unsigned long, and the number of enum rq_flags_bits also exceeds 32, so we should better using unsigned long for rw in submit_bio(), like: void submit_bio(unsigned long rw, struct bio *bio)
wuzhouhui
2018-Feb-09 06:34 UTC
[CentOS] Adjust type of rw in submit_bio from int to unsigned long
Forward mail to centos-devel mailing list for getting more attentions! Sorry for disturbing.> -----Original Messages----- > From: wuzhouhui <wuzhouhui14 at mails.ucas.ac.cn> > Sent Time: 2018-02-07 13:44:07 (Wednesday) > To: centos at centos.org > Cc: wuzhouhui14 <wuzhouhui14 at mails.ucas.ac.cn> > Subject: Adjust type of rw in submit_bio from int to unsigned long > > Hi, I am a developer who worked on CentOS. Recently I am working on porting one of my > block drivers from CentOS 6.x to CentOS 7.x. In newest kernel (kernel-3.10.0-693.17.1.el7) > I found there is an issue in submit_bio()'s first argument: > void submit_bio(int rw, struct bio *bio) > The type of bi_rw of struct bio is unsigned long, and the number of enum rq_flags_bits > also exceeds 32, so we should better using unsigned long for rw in submit_bio(), like: > void submit_bio(unsigned long rw, struct bio *bio) > >