[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#18621: [BUG] wc -c incorrectly counts bytes in /sys
From: |
George Shuklin |
Subject: |
bug#18621: [BUG] wc -c incorrectly counts bytes in /sys |
Date: |
Fri, 03 Oct 2014 17:47:19 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.1.2 |
There is many sysfs (linux) attributes which reported as '4k files' but
contains just a few bytes.
wc file and wc -c shows different sizes.
Example:
$cat /sys/kernel/vmcoreinfo
1b74c00 1024
$hexdump -Cv /sys/kernel/vmcoreinfo
00000000 31 62 37 34 63 30 30 20 31 30 32 34 0a |1b74c00 1024.|
0000000d
$ls -la /sys/kernel/vmcoreinfo
-r--r--r-- 1 root root 4096 Oct 3 17:40 /sys/kernel/vmcoreinfo
Here wc output:
$ wc /sys/kernel/vmcoreinfo
1 2 13 /sys/kernel/vmcoreinfo
and wc -c:
$ wc -c /sys/kernel/vmcoreinfo
4096 /sys/kernel/vmcoreinfo
4096 is not 13, and manual page for wc says that third number is byte count.
I think problem is in cnt(const char *file) function:
if (dochar || domulti) {
if (fstat(fd, &sb)) {
warn("%s: fstat", file);
(void)close(fd);
return (1);
}
if (S_ISREG(sb.st_mode)) {
(void)printf(" %7lld", (long long)sb.st_size);
tcharct += sb.st_size;
(void)close(fd);
return (0);
}
}
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys,
George Shuklin <=
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Pádraig Brady, 2014/10/03
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Jim Meyering, 2014/10/03
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Paul Eggert, 2014/10/03
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Pádraig Brady, 2014/10/03
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Paul Eggert, 2014/10/07
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Paul Eggert, 2014/10/07
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Pádraig Brady, 2014/10/07
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Jim Meyering, 2014/10/07
- bug#18621: [BUG] wc -c incorrectly counts bytes in /sys, Pádraig Brady, 2014/10/08