Re: SuSE hwinfo/yast2 still confusing SYM53C8XX, killing tape backups

Matthias Andree
2004-11-27T00:40:09Z

Steffen Winterfeldt schrieb am 2004-11-26:

> It was indeed libsysfs reading the config space accidentally when one
> (well, I) wouldn't expect it to do this.
>
> If you want to try the fixed hwinfo package (hwinfo-8.70), it's here:
>
> ftp://ftp.suse.com/pub/people/snwint/9.1/hwinfo/

Thanks.

We may need updated *udev* packages, too (at least for SuSE Linux 9.1).

The hwinfo-8.70-0.2 update alone doesn't appear to help, I still see parity
errors and still see 256-byte reads from
/sys/devices/pci0000:00/0000:00:0d.0/config (my SYM53C875's config space),
strace below

I also see that libsysfs is in the "udev-021-36" RPM on my system and
also on SuSE 9.2:

$ rpm -qf /usr/sbin/hwscan
hwinfo-8.70-0.2
$ ldd /usr/sbin/hwscan | awk '{print $3}' | xargs -tn1 rpm -qf
...(glibc, linker, gate and tls stripped)...
rpm -qf /usr/lib/libhd.so.8
hwinfo-8.70-0.2
rpm -qf /lib/libsysfs.so.1
udev-021-36

The kernel (vanilla 2.6.9) still begs that hwinfo be converted to SG_IO.

strace extract, relevant line marked with >

22602 lstat("/sys/bus/pci/drivers/sata_via/0000:00:0d.0", 0xbfffe85c) = -1 ENOENT (No such file or directory)
22602 lstat("/sys/bus/pci/drivers/serial/0000:00:0d.0", 0xbfffe85c) = -1 ENOENT (No such file or directory)
22602 lstat("/sys/bus/pci/drivers/sym53c8xx/0000:00:0d.0", {st_mode=S_IFLNK|0777, st_size=0, ...}) = 0
22602 lstat("/sys/devices/pci0000:00/0000:00:0d.0", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
22602 open("/sys/devices/pci0000:00/0000:00:0d.0", O_RDONLY|O_DIRECTORY) = 3
22602 getdents(3, /* 13 entries */, 4020) = 268
22602 lstat("/sys/devices/pci0000:00/0000:00:0d.0/host0", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
22602 lstat("/sys/devices/pci0000:00/0000:00:0d.0/config", {st_mode=S_IFREG|0644, st_size=256, ...}) = 0
22602 stat("/sys/devices/pci0000:00/0000:00:0d.0/config", {st_mode=S_IFREG|0644, st_size=256, ...}) = 0
> 22602 open("/sys/devices/pci0000:00/0000:00:0d.0/config", O_RDONLY) = 4
> 22602 read(4, "\0\20\17\0\27\0\20\2&\0\0\1\20 \0\0\1\320\0\0\0\0\200\344"..., 4096) = 256
22602 close(4) = 0

Full strace available upon request, expect around 60 kB bzip2ed or 2.5 MB
uncompressed.

$ /sbin/lspci -s 0000:00:0d.0
0000:00:0d.0 SCSI storage controller: LSI Logic / Symbios Logic 53c875 (rev 26)

--
Matthias Andree