[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1002711: linux-image-5.14.0-4-amd64: poll syscall does not work on some /proc files



Package: src:linux
Version: 5.14.16-1
Severity: normal

Hi,

While writing a script with busybox parsing /proc/bus/input/devices,
I discovered that poll syscall seems to not give correct information
on this file. Before reporting, I checked with a small C program
(in attachment).

The main part of the program is:
	ret = poll(fds, 1, -1);
	ret = read(fd, &c, 1);
	ret = poll(fds, 1, -1);

On a plain (with more than two bytes) file, the second poll succeed.
On /proc/bus/input/devices, the second poll hangs.

$ ./poll-test ./poll-test.c 
ret=1, revent=1 (POLLIN=1)
ret=1, revent=1 (POLLIN=1)
$ ./poll-test /proc/bus/input/devices 
ret=1, revent=1 (POLLIN=1)
[hangs until C-c]

I discovered the problem writing a script similar to:
while read l; do
  ... [ modifying global shell variables, so using a pipe is not an option ]
done < /proc/bus/input/devices

I hangs when executed with busybox (not bash that probably uses another way to
get its input)
Using strace give me the idea to look at poll behavior.

Note: this is an old behavior. I initially observe it on an embeded system with
a 4.1 kernel.

  Regards,
    Vincent


-- Package-specific info:
** Version:
Linux version 5.14.0-4-amd64 (debian-kernel@lists.debian.org) (gcc-10 (Debian 10.3.0-12) 10.3.0, GNU ld (GNU Binutils for Debian) 2.37) #1 SMP Debian 5.14.16-1 (2021-11-03)

** Command line:
BOOT_IMAGE=/vmlinuz-5.14.0-4-amd64 root=/dev/mapper/eyak-root ro apparmor=0 security= swapaccount=1 cgroup_enable=memory atkbd.softraw=0 vsyscall=emulate syscall.x32=y quiet

** Tainted: O (4096)
 * externally-built ("out-of-tree") module was loaded

** Kernel log:
[1831798.548063] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831801.552011] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831804.556033] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831807.564376] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831810.559917] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831813.560164] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831816.568135] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831819.572297] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831822.572134] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831825.568408] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831828.572187] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831831.580257] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831834.576209] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831837.576477] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831840.584549] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831843.580438] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831846.580507] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831849.584526] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831852.584449] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831855.588255] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831858.592325] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831861.596533] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831864.596270] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831867.596294] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831870.596267] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831873.600754] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831876.600514] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831879.604364] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831882.608328] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831885.608359] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831888.612459] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831891.612468] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831894.616589] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831897.624509] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831900.624468] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831903.620557] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831906.628565] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831909.628647] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831912.628629] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831915.632643] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831918.636505] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831921.636754] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831924.640733] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831927.644601] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831930.644787] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831933.648764] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831936.652652] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831939.652713] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831942.660682] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831945.656718] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831948.660562] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831951.660604] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831954.664902] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831957.664738] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831960.668620] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831963.672906] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831966.672826] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831969.672952] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831972.676731] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831975.676700] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831978.680724] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831981.684727] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831984.684655] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831987.684760] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831990.688855] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831993.692756] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831996.692990] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1831999.697065] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832002.701260] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832005.700971] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832008.700802] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832011.705050] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832014.704757] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832017.708971] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832020.713166] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832023.713217] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832026.712907] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832029.716949] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832032.716957] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832035.725223] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832038.725163] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832041.724997] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832044.725232] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832047.733120] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832050.729147] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832053.733074] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832056.737201] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832059.737114] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832062.741113] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832065.741141] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832068.745342] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832071.749218] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832074.749402] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832077.753355] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832080.753264] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832083.753231] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832086.757291] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832089.761262] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832092.757235] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7
[1832095.761138] Lockdown: rpc-worker: debugfs access is restricted; see man kernel_lockdown.7

** Model information
sys_vendor: Dell Inc.
product_name: Precision 5520
product_version: 
chassis_vendor: Dell Inc.
chassis_version: 
bios_vendor: Dell Inc.
bios_version: 1.24.0
board_vendor: Dell Inc.
board_name: 0GPNW9
board_version: A00

** Loaded modules:
omfs
jfs
xfs
reiserfs
hfs
nls_utf8
hfsplus
isofs
udf
crc_itu_t
cdrom
sd_mod
sg
uas
usb_storage
essiv
authenc
nfnetlink_queue
nfnetlink_log
ftdi_sio
usbserial
vhost_net
vhost
vhost_iotlb
tap
tun
xt_CHECKSUM
ipt_REJECT
nf_reject_ipv4
thunderbolt
cdc_acm
exfat
nls_iso8859_1
mmc_block
snd_usb_audio
snd_usbmidi_lib
snd_rawmidi
cdc_ether
usbnet
r8152
mii
ctr
ccm
rfcomm
veth
snd_seq_dummy
snd_hrtimer
snd_seq
snd_seq_device
xt_nat
xt_tcpudp
xt_conntrack
nft_chain_nat
xt_MASQUERADE
nf_conntrack_netlink
xfrm_user
xfrm_algo
nft_counter
xt_addrtype
nft_compat
nf_tables
nfnetlink
br_netfilter
bridge
cpufreq_ondemand
cpufreq_userspace
cpufreq_conservative
cpufreq_powersave
8021q
garp
stp
mrp
llc
overlay
openvswitch
nsh
nf_conncount
nf_nat
nf_conntrack
nf_defrag_ipv6
nf_defrag_ipv4
cmac
algif_hash
algif_skcipher
af_alg
bnep
uinput
binfmt_misc
btusb
btrtl
btbcm
btintel
bluetooth
jitterentropy_rng
drbg
ansi_cprng
uvcvideo
videobuf2_vmalloc
videobuf2_memops
videobuf2_v4l2
ecdh_generic
ecc
videobuf2_common
hid_multitouch
iTCO_wdt
intel_pmc_bxt
nls_ascii
iTCO_vendor_support
nls_cp437
vfat
fat
mei_hdcp
mei_wdt
rtsx_pci_sdmmc
watchdog
ee1004
snd_hda_codec_hdmi
mmc_core
intel_rapl_msr
x86_pkg_temp_thermal
intel_powerclamp
snd_ctl_led
kvm_intel
snd_hda_codec_realtek
snd_hda_codec_generic
dell_rbtn
snd_hda_intel
snd_intel_dspcfg
snd_intel_sdw_acpi
dell_laptop
ledtrig_audio
iwlmvm
mac80211
kvm
libarc4
dell_smm_hwmon
irqbypass
crc32_pclmul
snd_hda_codec
iwlwifi
snd_hda_core
snd_hwdep
ghash_clmulni_intel
rapl
intel_cstate
snd_pcm
dell_wmi
intel_uncore
ahci
dell_smbios
dcdbas
snd_timer
libahci
cfg80211
processor_thermal_device_pci_legacy
pcspkr
processor_thermal_device
snd
joydev
processor_thermal_rfim
i2c_i801
efi_pstore
dell_wmi_descriptor
processor_thermal_mbox
intel_wmi_thunderbolt
mei_me
processor_thermal_rapl
soundcore
i2c_smbus
cuse
dm_snapshot
intel_lpss_pci
dm_bufio
intel_rapl_common
i2c_hid_acpi
wmi_bmof
rtsx_pci
rfkill
coretemp
intel_lpss
libata
mei
idma64
intel_soc_dts_iosf
intel_pch_thermal
i2c_hid
battery
int3403_thermal
intel_hid
int3400_thermal
acpi_thermal_rel
intel_pmc_core
sparse_keymap
int340x_thermal_zone
ac
acpi_pad
loop
v4l2loopback(O)
videodev
mc
msr
ecryptfs
drivetemp
scsi_mod
dahdi_transcode(O)
dahdi(O)
sha512_ssse3
nfsd
sha512_generic
parport_pc
auth_rpcgss
fuse
nfs_acl
lockd
grace
ppdev
lp
parport
configfs
sunrpc
ip_tables
x_tables
autofs4
ext4
crc16
mbcache
jbd2
dm_crypt
efivarfs
raid10
raid456
libcrc32c
crc32c_generic
async_raid6_recov
async_memcpy
async_pq
async_xor
xor
async_tx
raid6_pq
raid1
raid0
multipath
linear
md_mod
hid_generic
usbhid
hid
dm_mod
i915
crc32c_intel
i2c_algo_bit
nvme
ttm
nvme_core
t10_pi
drm_kms_helper
crc_t10dif
cec
rc_core
crct10dif_generic
aesni_intel
xhci_pci
crypto_simd
xhci_hcd
evdev
cryptd
psmouse
drm
serio_raw
usbcore
crct10dif_pclmul
crct10dif_common
usb_common
wmi
video
button

** PCI devices:
00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [8086:5910] (rev 05)
	Subsystem: Dell Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [1028:07bf]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx-
	Latency: 0
	IOMMU group: 0
	Capabilities: <access denied>
	Kernel driver in use: skl_uncore

00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 630 [8086:591b] (rev 04) (prog-if 00 [VGA controller])
	DeviceName:  Onboard IGD
	Subsystem: Dell HD Graphics 630 [1028:07bf]
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 133
	IOMMU group: 1
	Region 0: Memory at eb000000 (64-bit, non-prefetchable) [size=16M]
	Region 2: Memory at a0000000 (64-bit, prefetchable) [size=256M]
	Region 4: I/O ports at f000 [size=64]
	Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
	Capabilities: <access denied>
	Kernel driver in use: i915
	Kernel modules: i915

00:04.0 Signal processing controller [1180]: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem [8086:1903] (rev 05)
	Subsystem: Dell Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem [1028:07bf]
	Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Interrupt: pin A routed to IRQ 16
	IOMMU group: 2
	Region 0: Memory at ecc20000 (64-bit, non-prefetchable) [size=32K]
	Capabilities: <access denied>
	Kernel driver in use: proc_thermal
	Kernel modules: processor_thermal_device_pci_legacy

00:14.0 USB controller [0c03]: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller [8086:a12f] (rev 31) (prog-if 30 [XHCI])
	Subsystem: Dell 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller [1028:07bf]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 128
	IOMMU group: 3
	Region 0: Memory at ecc10000 (64-bit, non-prefetchable) [size=64K]
	Capabilities: <access denied>
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci

00:14.2 Signal processing controller [1180]: Intel Corporation 100 Series/C230 Series Chipset Family Thermal Subsystem [8086:a131] (rev 31)
	Subsystem: Dell 100 Series/C230 Series Chipset Family Thermal Subsystem [1028:07bf]
	Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Interrupt: pin C routed to IRQ 18
	IOMMU group: 3
	Region 0: Memory at ecc39000 (64-bit, non-prefetchable) [size=4K]
	Capabilities: <access denied>
	Kernel driver in use: intel_pch_thermal
	Kernel modules: intel_pch_thermal

00:15.0 Signal processing controller [1180]: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO I2C Controller #0 [8086:a160] (rev 31)
	Subsystem: Dell 100 Series/C230 Series Chipset Family Serial IO I2C Controller [1028:07bf]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 16
	IOMMU group: 4
	Region 0: Memory at ecc38000 (64-bit, non-prefetchable) [size=4K]
	Capabilities: <access denied>
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci

00:15.1 Signal processing controller [1180]: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO I2C Controller #1 [8086:a161] (rev 31)
	Subsystem: Dell 100 Series/C230 Series Chipset Family Serial IO I2C Controller [1028:07bf]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin B routed to IRQ 17
	IOMMU group: 4
	Region 0: Memory at ecc37000 (64-bit, non-prefetchable) [size=4K]
	Capabilities: <access denied>
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci

00:16.0 Communication controller [0780]: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 [8086:a13a] (rev 31)
	Subsystem: Dell 100 Series/C230 Series Chipset Family MEI Controller [1028:07bf]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 127
	IOMMU group: 5
	Region 0: Memory at ecc36000 (64-bit, non-prefetchable) [size=4K]
	Capabilities: <access denied>
	Kernel driver in use: mei_me
	Kernel modules: mei_me

00:16.3 Serial controller [0700]: Intel Corporation 100 Series/C230 Series Chipset Family KT Redirection [8086:a13d] (rev 31) (prog-if 02 [16550])
	Subsystem: Dell 100 Series/C230 Series Chipset Family KT Redirection [1028:07bf]
	Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Interrupt: pin D routed to IRQ 19
	IOMMU group: 5
	Region 0: I/O ports at f0a0 [size=8]
	Region 1: Memory at ecc35000 (32-bit, non-prefetchable) [size=4K]
	Capabilities: <access denied>
	Kernel driver in use: serial

00:17.0 SATA controller [0106]: Intel Corporation Q170/Q150/B150/H170/H110/Z170/CM236 Chipset SATA Controller [AHCI Mode] [8086:a102] (rev 31) (prog-if 01 [AHCI 1.0])
	Subsystem: Dell Q170/Q150/B150/H170/H110/Z170/CM236 Chipset SATA Controller [AHCI Mode] [1028:07bf]
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 136
	IOMMU group: 6
	Region 0: Memory at ecc30000 (32-bit, non-prefetchable) [size=8K]
	Region 1: Memory at ecc34000 (32-bit, non-prefetchable) [size=256]
	Region 2: I/O ports at f090 [size=8]
	Region 3: I/O ports at f080 [size=4]
	Region 4: I/O ports at f060 [size=32]
	Region 5: Memory at ecc33000 (32-bit, non-prefetchable) [size=2K]
	Capabilities: <access denied>
	Kernel driver in use: ahci
	Kernel modules: ahci

00:1c.0 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #1 [8086:a110] (rev f1) (prog-if 00 [Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 122
	IOMMU group: 7
	Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
	I/O behind bridge: [disabled]
	Memory behind bridge: ecb00000-ecbfffff [size=1M]
	Prefetchable memory behind bridge: [disabled]
	Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
	BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16+ MAbort- >Reset- FastB2B-
		PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
	Capabilities: <access denied>
	Kernel driver in use: pcieport

00:1c.1 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #2 [8086:a111] (rev f1) (prog-if 00 [Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin B routed to IRQ 123
	IOMMU group: 8
	Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
	I/O behind bridge: 0000e000-0000efff [size=4K]
	Memory behind bridge: ec000000-ec9fffff [size=10M]
	Prefetchable memory behind bridge: 00000000d2100000-00000000d2afffff [size=10M]
	Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
	BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16+ MAbort- >Reset- FastB2B-
		PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
	Capabilities: <access denied>
	Kernel driver in use: pcieport

00:1d.0 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #9 [8086:a118] (rev f1) (prog-if 00 [Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 124
	IOMMU group: 9
	Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
	I/O behind bridge: [disabled]
	Memory behind bridge: eca00000-ecafffff [size=1M]
	Prefetchable memory behind bridge: [disabled]
	Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
	BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16+ MAbort- >Reset- FastB2B-
		PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
	Capabilities: <access denied>
	Kernel driver in use: pcieport

00:1d.4 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #13 [8086:a11c] (rev f1) (prog-if 00 [Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 125
	IOMMU group: 10
	Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
	I/O behind bridge: [disabled]
	Memory behind bridge: [disabled]
	Prefetchable memory behind bridge: [disabled]
	Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
	BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16+ MAbort- >Reset- FastB2B-
		PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
	Capabilities: <access denied>
	Kernel driver in use: pcieport

00:1d.6 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #15 [8086:a11e] (rev f1) (prog-if 00 [Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin C routed to IRQ 126
	IOMMU group: 11
	Bus: primary=00, secondary=05, subordinate=3d, sec-latency=0
	I/O behind bridge: 00002000-00002fff [size=4K]
	Memory behind bridge: d4000000-ea0fffff [size=353M]
	Prefetchable memory behind bridge: 00000000b0000000-00000000d1ffffff [size=544M]
	Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
	BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16+ MAbort- >Reset- FastB2B-
		PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
	Capabilities: <access denied>
	Kernel driver in use: pcieport

00:1f.0 ISA bridge [0601]: Intel Corporation CM238 Chipset LPC/eSPI Controller [8086:a154] (rev 31)
	Subsystem: Dell CM238 Chipset LPC/eSPI Controller [1028:07bf]
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	IOMMU group: 12

00:1f.2 Memory controller [0580]: Intel Corporation 100 Series/C230 Series Chipset Family Power Management Controller [8086:a121] (rev 31)
	Subsystem: Dell 100 Series/C230 Series Chipset Family Power Management Controller [1028:07bf]
	Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	IOMMU group: 12
	Region 0: Memory at ecc2c000 (32-bit, non-prefetchable) [disabled] [size=16K]

00:1f.3 Audio device [0403]: Intel Corporation CM238 HD Audio Controller [8086:a171] (rev 31) (prog-if 80)
	Subsystem: Dell CM238 HD Audio Controller [1028:07bf]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 32
	Interrupt: pin B routed to IRQ 138
	IOMMU group: 12
	Region 0: Memory at ecc28000 (64-bit, non-prefetchable) [size=16K]
	Region 4: Memory at ecc00000 (64-bit, non-prefetchable) [size=64K]
	Capabilities: <access denied>
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel

00:1f.4 SMBus [0c05]: Intel Corporation 100 Series/C230 Series Chipset Family SMBus [8086:a123] (rev 31)
	Subsystem: Dell 100 Series/C230 Series Chipset Family SMBus [1028:07bf]
	Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Interrupt: pin A routed to IRQ 16
	IOMMU group: 12
	Region 0: Memory at ecc32000 (64-bit, non-prefetchable) [size=256]
	Region 4: I/O ports at f040 [size=32]
	Kernel driver in use: i801_smbus
	Kernel modules: i2c_i801

01:00.0 Network controller [0280]: Intel Corporation Wireless 8265 / 8275 [8086:24fd] (rev 78)
	Subsystem: Intel Corporation Wireless 8265 / 8275 [8086:0050]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 137
	IOMMU group: 13
	Region 0: Memory at ecb00000 (64-bit, non-prefetchable) [size=8K]
	Capabilities: <access denied>
	Kernel driver in use: iwlwifi
	Kernel modules: iwlwifi

02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader [10ec:525a] (rev 01)
	Subsystem: Dell RTS525A PCI Express Card Reader [1028:07bf]
	Physical Slot: 1
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 134
	IOMMU group: 14
	Region 1: Memory at ec000000 (32-bit, non-prefetchable) [size=4K]
	Capabilities: <access denied>
	Kernel driver in use: rtsx_pci
	Kernel modules: rtsx_pci

03:00.0 Non-Volatile memory controller [0108]: Phison Electronics Corporation E12 NVMe Controller [1987:5012] (rev 01) (prog-if 02 [NVM Express])
	Subsystem: Phison Electronics Corporation E12 NVMe Controller [1987:5012]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 16
	NUMA node: 0
	IOMMU group: 15
	Region 0: Memory at eca00000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: <access denied>
	Kernel driver in use: nvme
	Kernel modules: nvme


** USB devices:
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 04f3:24a0 Elan Microelectronics Corp. Touchscreen
Bus 001 Device 002: ID 8087:0a2b Intel Corp. Bluetooth wireless interface
Bus 001 Device 004: ID 0c45:6713 Microdia Integrated_Webcam_HD
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


-- System Information:
Debian Release: bookworm/sid
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'oldstable-updates'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, armel, mipsel

Kernel: Linux 5.14.0-4-amd64 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_OOT_MODULE
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages linux-image-5.14.0-4-amd64 depends on:
ii  initramfs-tools [linux-initramfs-tool]  0.140
ii  kmod                                    29-1
ii  linux-base                              4.6

Versions of packages linux-image-5.14.0-4-amd64 recommends:
ii  apparmor             3.0.3-5
ii  firmware-linux-free  20200122-1

Versions of packages linux-image-5.14.0-4-amd64 suggests:
pn  debian-kernel-handbook  <none>
ii  extlinux                3:6.04~git20190206.bf6db5b4+dfsg1-3+b1
ii  grub-efi-amd64          2.04-20
pn  linux-doc-5.14          <none>

Versions of packages linux-image-5.14.0-4-amd64 is related to:
ii  firmware-amd-graphics     20210818-1
pn  firmware-atheros          <none>
pn  firmware-bnx2             <none>
pn  firmware-bnx2x            <none>
pn  firmware-brcm80211        <none>
pn  firmware-cavium           <none>
pn  firmware-intel-sound      <none>
pn  firmware-intelwimax       <none>
pn  firmware-ipw2x00          <none>
pn  firmware-ivtv             <none>
ii  firmware-iwlwifi          20210818-1
pn  firmware-libertas         <none>
ii  firmware-linux-nonfree    20210818-1
ii  firmware-misc-nonfree     20210818-1
pn  firmware-myricom          <none>
pn  firmware-netxen           <none>
pn  firmware-qlogic           <none>
ii  firmware-realtek          20210818-1
pn  firmware-samsung          <none>
pn  firmware-siano            <none>
pn  firmware-ti-connectivity  <none>
pn  xen-hypervisor            <none>

-- no debconf information
#include <sys/stat.h>
#include <fcntl.h>
#include <poll.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>

int main(int argc, const char *argv[]) {

	int fd = open(argv[1], O_RDONLY);
	if (fd == -1) {
		perror("open");
		exit(1);
	}

	struct pollfd fds[1] = {
		{
			.fd = fd,
			.events = POLLIN,
			.revents = 0,
		},
	};

	int ret;
	char c;
	ret = poll(fds, 1, -1);
	printf("ret=%x, revent=%x (POLLIN=%x)\n", ret, fds[0].revents, POLLIN);
	ret = read(fd, &c, 1);
	if (ret != 1) {
		perror("read");
		exit(1);
	}
	ret = poll(fds, 1, -1);
	printf("ret=%x, revent=%x (POLLIN=%x)\n", ret, fds[0].revents, POLLIN);

	return 0;
}

Reply to: