[LTP] LTP: '/proc/self/io' for reading at readahead02.c:113: ENOENT No such file or directory

Rafael David Tinoco rafael.tinoco@linaro.org
Tue Jan 15 13:06:39 CET 2019


> On 15 Jan 2019, at 09:36, Jan Stancek <jstancek@redhat.com> wrote:
> 
> ----- Original Message -----
>> readahead02 used to pass on arm32 on LTP-20180926 release. Now using
>> the latest LTP master it is getting FAILED.
>> 
>> tst_device.c:230: INFO: Using test device LTP_DEV='/dev/loop0'
>> tst_mkfs.c:90: INFO: Formatting /dev/loop0 with ext2 opts='' extra opts=''
>> mke2fs 1.43.5 (04-Aug-2017)
>> [  603.092608] EXT4-fs (loop0): mounting ext2 file system using the
>> ext4 subsystem
>> [  603.107967] EXT4-fs (loop0): mounted filesystem without journal. Opts:
>> (null)
>> tst_test.c:1085: INFO: Timeout per run is 0h 15m 00s
>> readahead02.c:359: INFO: overlayfs is not configured in this kernel.
>> readahead02.c:244: INFO: Test #0: readahead on file
>> readahead02.c:134: INFO: creating test file of size: 67108864
>> safe_file_ops.c:202: BROK: Failed to open FILE '/proc/self/io' for
>> reading at readahead02.c:113: ENOENT
> 
> We switched from /proc/$pid to /proc/self in December:
> commit 75506e4f1b52ea6bb63a52afb34035d9dde55d14
> Date:   Tue Dec 4 14:54:19 2018 +0100
>   syscalls/readahead02: Simplify reading proc files
> 
>   Use SAFE_FILE_LINES_SCANF() for parsing multiline /proc/ files
>    Use /proc/self/io instead of /proc/$pid/io.
> 
> @Naresh, what is the kernel version you see this fail with?

I missed /proc/$pid/io in my previous e-mail, as Jan stated. So the test
was likely working because of that.

So, the only thing missing might be CONFIG_TASKSTATS and
CONFIG_TASK_IO_ACCOUNTING to be set in kernel config for our arm 32-bit
builds.

This shall enable /proc/self/io and get rid of this error.

-Rafael


More information about the ltp mailing list