[LTP] [PATCH COMMITTED] tst_device: do sync() before reading test block device stat file
Yang Xu
xuyang2018.jy@cn.fujitsu.com
Fri Jan 3 08:41:09 CET 2020
on 2020/01/03 15:25, Li Wang wrote:
>
>
> On Thu, Jan 2, 2020 at 2:46 PM Yang Xu <xuyang2018.jy@cn.fujitsu.com
> <mailto:xuyang2018.jy@cn.fujitsu.com>> wrote:
>
>
>
> on 2020/01/02 14:31, Li Wang wrote:
> >
> >
> > On Thu, Jan 2, 2020 at 10:10 AM Yang Xu
> <xuyang2018.jy@cn.fujitsu.com <mailto:xuyang2018.jy@cn.fujitsu.com>
> > <mailto:xuyang2018.jy@cn.fujitsu.com
> <mailto:xuyang2018.jy@cn.fujitsu.com>>> wrote:
> >
> >
> >
> > Hi Li
> > > To avoid FS deferred IO metadata/cache interferes test
> result, so we
> > > do sync simply before the tst_dev_bytes_written invocation.
> > >
> > Looks good, acked. Also, I think we can mention it in
> > doc/test-writing-guidelines.txt when using this api.
> >
> >
> > Ok, I will append one line as:
> > --- a/doc/test-writing-guidelines.txt
> > +++ b/doc/test-writing-guidelines.txt
> > @@ -1072,7 +1072,9 @@ unsigned long tst_dev_bytes_written(const
> char *dev);
> >
> -------------------------------------------------------------------------------
> >
> > This function reads test block device stat file
> > (/sys/block/<device>/stat) and
> > -returns the bytes written since the last invocation of this
> function.
> > +returns the bytes written since the last invocation of this
> function.
> > To avoid
> > +FS deferred IO metadata/cache interferes the test result, we
> suggest
> > doing sync()
> > +before the tst_dev_bytes_written first invocation.
> OK.
>
> I also meet another problem when using this api on old kernel.
>
> tst_device.c:395: CONF: Test device stat file: /sys/block/loop0/stat
> broken
>
> /sys/block/loop0/stat is all 0 and case reports TCONF. on new kernel,
> this value is normal. This is a block layer or loop device driver
> modifition several yeas ago?
>
>
> It sounds like a kernel issue, can you tell which kernel version you did
> test?
>
I test this on 3.10.0-1101.el7.x86_64. It also reports TCONF on old
fedora such as fedora 20,21. I guess loop driver modification(I am
verifying ...) causes it.
>
> ps:I know ltp used LOOP_SET_FD to make loop device simulate other
> filesystems. I am trying to find a generic way about this api.
>
> Best Regards
> Yang Xu
> >
> > --
> > Regards,
> > Li Wang
>
>
>
>
> --
> Regards,
> Li Wang
More information about the ltp
mailing list