https://bugzilla.kernel.org/show_bug.cgi?id=198783

--- Comment #6 from Martin von Wittich (martin.von.witt...@iserv.eu) ---
I've got access to an affected machine again, so I've collected some further
information:

* `ls | cat` output - you can see the unnamed folder in the form of an empty
line that shouldn't be there (`|cat` to force ls to print each filename on a
line of its own; `command` builtin to circumvent `ls` aliases):

                root@notebooksak02:/sys/firmware/acpi/tables# command ls | cat

                APIC
                BOOT
                DSDT
                dynamic
                FACP
                FACS1
                FACS2
                HPET
                MCFG
                SSDT1
                SSDT2
                SSDT3
                SSDT4
                SSDT5

* `ls -l` output:

                root@notebooksak02:~# command ls -l /sys/firmware/acpi/tables/
                total 0
                drwxr-xr-x 3 root root     0 2018-04-03 10:35 
                -r-------- 1 root root   104 2018-04-03 10:35 APIC
                -r-------- 1 root root    40 2018-04-03 10:35 BOOT
                -r-------- 1 root root 34035 2018-04-03 10:35 DSDT
                drwxr-xr-x 2 root root     0 2018-04-03 10:35 dynamic
                -r-------- 1 root root   244 2018-04-03 10:35 FACP
                -r-------- 1 root root    64 2018-04-03 10:35 FACS1
                -r-------- 1 root root    64 2018-04-03 10:35 FACS2
                -r-------- 1 root root    56 2018-04-03 10:35 HPET
                -r-------- 1 root root    60 2018-04-03 10:35 MCFG
                -r-------- 1 root root   692 2018-04-03 10:35 SSDT1
                -r-------- 1 root root  1263 2018-04-03 10:35 SSDT2
                -r-------- 1 root root   458 2018-04-03 10:35 SSDT3
                -r-------- 1 root root  4329 2018-04-03 10:35 SSDT4
                -r-------- 1 root root  1095 2018-04-03 10:35 SSDT5

* For some reason I don't understand, the `ls` output changes (it prints lots
of ??? and also an error message) when I `cd` to the folder:

                root@notebooksak02:~# cd /sys/firmware/acpi/tables/
                root@notebooksak02:/sys/firmware/acpi/tables# command ls -l
                ls: cannot access : No such file or directory
                total 0
                -????????? ? ?    ?        ?                ? 
                -r-------- 1 root root   104 2018-04-03 10:35 APIC
                -r-------- 1 root root    40 2018-04-03 10:35 BOOT
                -r-------- 1 root root 34035 2018-04-03 10:35 DSDT
                drwxr-xr-x 2 root root     0 2018-04-03 10:35 dynamic
                -r-------- 1 root root   244 2018-04-03 10:35 FACP
                -r-------- 1 root root    64 2018-04-03 10:35 FACS1
                -r-------- 1 root root    64 2018-04-03 10:35 FACS2
                -r-------- 1 root root    56 2018-04-03 10:35 HPET
                -r-------- 1 root root    60 2018-04-03 10:35 MCFG
                -r-------- 1 root root   692 2018-04-03 10:35 SSDT1
                -r-------- 1 root root  1263 2018-04-03 10:35 SSDT2
                -r-------- 1 root root   458 2018-04-03 10:35 SSDT3
                -r-------- 1 root root  4329 2018-04-03 10:35 SSDT4
                -r-------- 1 root root  1095 2018-04-03 10:35 SSDT5

* You can see the folder without a name in the second line of the `find`
output, but it's impossible to differentiate it from the parent folder because
both lines seem to end with `/`:

                root@notebooksak02:/sys/firmware/acpi/tables# cd
                root@notebooksak02:~# find /sys/firmware/acpi/tables/
                /sys/firmware/acpi/tables/
                /sys/firmware/acpi/tables/
                /sys/firmware/acpi/tables/MCFG
                /sys/firmware/acpi/tables/FACS1
                /sys/firmware/acpi/tables/SSDT4
                /sys/firmware/acpi/tables/APIC
                /sys/firmware/acpi/tables/SSDT2
                /sys/firmware/acpi/tables/BOOT
                /sys/firmware/acpi/tables/dynamic
                /sys/firmware/acpi/tables/dynamic/SSDT6
                /sys/firmware/acpi/tables/dynamic/SSDT9
                /sys/firmware/acpi/tables/dynamic/SSDT7
                /sys/firmware/acpi/tables/dynamic/SSDT8
                /sys/firmware/acpi/tables/DSDT
                /sys/firmware/acpi/tables/FACS2
                /sys/firmware/acpi/tables/SSDT5
                /sys/firmware/acpi/tables/FACP
                /sys/firmware/acpi/tables/SSDT3
                /sys/firmware/acpi/tables/SSDT1
                /sys/firmware/acpi/tables/HPET

* `find` in the dir also looks a bit different, now you can differentiate the
parent folder and the unnamed folder:

                root@notebooksak02:~# cd -
                /sys/firmware/acpi/tables
                root@notebooksak02:/sys/firmware/acpi/tables# find
                .
                ./
                ./MCFG
                ./FACS1
                ./SSDT4
                ./APIC
                ./SSDT2
                ./BOOT
                ./dynamic
                ./dynamic/SSDT6
                ./dynamic/SSDT9
                ./dynamic/SSDT7
                ./dynamic/SSDT8
                ./DSDT
                ./FACS2
                ./SSDT5
                ./FACP
                ./SSDT3
                ./SSDT1
                ./HPET

* `find -ls` illustrates the problem better because `-ls` causes `find` to
print an error message when it encounters the affected folder. I don't know for
certain what `find` is trying to do when it encounters the error and I don't
have `strace` on the machine, but I believe it is trying to `chdir()` into the
unnamed folder:

                root@notebooksak02:/sys/firmware/acpi/tables# find -ls
                  1474    0 drwxr-xr-x   3 root     root            0 Apr  3
10:35 .
                find: `./': No such file or directory
                  1482    0 -r--------   1 root     root           60 Apr  3
10:35 ./MCFG
                  1479    0 -r--------   1 root     root           64 Apr  3
10:35 ./FACS1
                  1485    0 -r--------   1 root     root         4329 Apr  3
10:35 ./SSDT4
                  1487    0 -r--------   1 root     root          104 Apr  3
10:35 ./APIC
                  1483    0 -r--------   1 root     root         1263 Apr  3
10:35 ./SSDT2
                  1488    0 -r--------   1 root     root           40 Apr  3
10:35 ./BOOT
                  1475    0 drwxr-xr-x   2 root     root            0 Apr  3
10:35 ./dynamic
                  1493    0 -r--------   1 root     root          634 Apr  3
10:40 ./dynamic/SSDT6
                  1496    0 -r--------   1 root     root           71 Apr  3
10:40 ./dynamic/SSDT9
                  1494    0 -r--------   1 root     root         1575 Apr  3
10:40 ./dynamic/SSDT7
                  1495    0 -r--------   1 root     root          184 Apr  3
10:40 ./dynamic/SSDT8
                  1478    0 -r--------   1 root     root        34035 Apr  3
10:35 ./DSDT
                  1480    0 -r--------   1 root     root           64 Apr  3
10:35 ./FACS2
                  1486    0 -r--------   1 root     root         1095 Apr  3
10:35 ./SSDT5
                  1477    0 -r--------   1 root     root          244 Apr  3
10:35 ./FACP
                  1484    0 -r--------   1 root     root          458 Apr  3
10:35 ./SSDT3
                  1476    0 -r--------   1 root     root          692 Apr  3
10:35 ./SSDT1
                  1481    0 -r--------   1 root     root           56 Apr  3
10:35 ./HPET

* Not sure if `dmidecode` is helpful at all, but it probably won't hurt to have
as much information about the hardware as possible :) [see attached file]

                root@notebooksak02:~# dmidecode > dmidecode.txt

* `os.listdir` is a Python function that lists the folder contents. This is
used by `glob.glob` internally; as I explained above, this function returns an
array, but the first element is an empty string (due to the unnamed folder)
which causes `glob.glob` to fail. I've added the output as proof for my
explanation above:

                root@notebooksak02:/sys/firmware/acpi/tables# cd
                root@notebooksak02:~# python -c '
                import os
                print os.listdir("/sys/firmware/acpi/tables/")
                '
                ['', 'MCFG', 'FACS1', 'SSDT4', 'APIC', 'SSDT2', 'BOOT',
'dynamic', 'DSDT', 'FACS2', 'SSDT5', 'FACP', 'SSDT3', 'SSDT1', 'HPET']

* I hope `acpidump` output might be useful. `acpidump -s` (summary):

                root@notebooksak02:~# ./acpidump-acpica -s
                ACPI: RSDP 0x000F67C0 000024 (v02 FUJ   )
                ACPI: RSDT 0x7F6D4944 00004C (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: XSDT 0x7F6D4990 000074 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: DSDT 0x7F6D4A04 0084F3 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: FACS 0x7F6E2FC0 000040
                ACPI: SSDT 0x7F6DCEF7 0002B4 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: FACP 0x7F6DD1AB 0000F4 (v03 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: HPET 0x7F6DD29F 000038 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: MCFG 0x7F6DD2D7 00003C (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: SSDT 0x7F6DD313 0004EF (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: SSDT 0x7F6DD802 0001CA (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: SSDT 0x7F6DD9CC 0010E9 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: SSDT 0x7F6DEAB5 000447 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: APIC 0x7F6DEEFC 000068 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: BOOT 0x7F6DEF64 000028 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: SSDT 0x00000000 00027A (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: SSDT 0x00000000 000047 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: SSDT 0x00000000 000627 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)
                ACPI: SSDT 0x00000000 0000B8 (v01 FUJ    FJNB1CE  01140000 FUJ 
00000100)

* `acpidump` complete plain text dump: [see attached file]

                root@notebooksak02:~# ./acpidump-acpica | gzip -c >
acpidump.txt.gz

* `acpidump -b` complete binary dump: [see attached file]

                root@notebooksak02:~# mkdir dump
                root@notebooksak02:~# cd dump/
                root@notebooksak02:~/dump# ../acpidump-acpica -b
                root@notebooksak02:~# tar cfz acpi.bin.tar.gz dump

* Last but not least the output of Zhang Rui's script. I was wrong with my
assumption "Also, it would work only after cd'ing...", but I think I was right
by suspecting that the output wouldn't be of any help because `ls` prints an
empty line for the unnamed folder, which the `for` loop will of course ignore
:) (I had to remove the leading > inserted by the shell when pasting the
multi-line command because they wreak havoc with bugzillas markdown parser)

                root@notebooksak02:~# for table in $(ls
/sys/firmware/acpi/tables)
                do
                   if [ -d $table ]
                   then
                       echo found directory: $table
                       continue
                   else
                       echo found file: $table
                   fi
                done
                found file: APIC
                found file: BOOT
                found file: DSDT
                found file: dynamic
                found file: FACP
                found file: FACS1
                found file: FACS2
                found file: HPET
                found file: MCFG
                found file: SSDT1
                found file: SSDT2
                found file: SSDT3
                found file: SSDT4
                found file: SSDT5

I can't think of any more things to collect now.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
acpi-bugzilla mailing list
acpi-bugzilla@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to