web-dev-qa-db-fra.com

Quel méchant systemd-udevd surcharger mon processeur?

Top me donnera ce qui suit: (94% de la charge de l'UC à partir du PID 28055)

PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                            
28055 root      39  19 1295192 1,167g   3120 R  93,8  7,5  65:49.38 systemd-udevd   

Quand je fais strace -p 28055 je reçois les lignes suivantes qui se répètent à l'infini:

getrandom("\246\306\216<\340\244a\256|\34\352\257\334\223\227\304", 16, GRND_NONBLOCK) = 16
getrandom("j\216\331 \361|X\241\333\270\260\202\377\224\3537", 16, GRND_NONBLOCK) = 16
getrandom("\36\301\27vkE\351\16\336\23\314\366y\t\272\307", 16, GRND_NONBLOCK) = 16
getrandom("U\234\235\2763\3257\37\314q\301\272i\301W\t", 16, GRND_NONBLOCK) = 16
getrandom("\223\27\244\26\365\251\335\263\233.\347\3\263]\205\4", 16, GRND_NONBLOCK) = 16
getrandom("\366,{+Tt\t\27\16z\257N^\235r,", 16, GRND_NONBLOCK) = 16
epoll_wait(10, [{EPOLLIN, {u32=798983008, u64=94889511453536}}], 11, 0) = 1
clock_gettime(CLOCK_BOOTTIME, {7011, 470364038}) = 0
epoll_wait(10, [{EPOLLIN, {u32=798983008, u64=94889511453536}}], 11, 0) = 1
clock_gettime(CLOCK_BOOTTIME, {7011, 470404228}) = 0
recvmsg(4, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000001}, msg_iov(1)=[{"change@/devices/pci0000:00/0000:"..., 8192}], msg_controllen=32, [{cmsg_len=28, cmsg_level=SOL_SOCKET, cmsg_type=SCM_CREDENTIALS, {pid=0, uid=0, gid=0}}], msg_flags=0}, 0) = 299

udevadm monitor donnera cette ligne, qui se répète aussi à l'infini:

KERNEL[66275.112602] change   /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.0/Host4/target4:0:0/4:0:0:0/block/sdb (block)

Je ne sais pas du tout où se situe le problème. Toute astuce pour aller de l'avant en examinant ce problème? Merci...

Ubuntu 16.04, 64 bits, 4.13.0-37-generic

PS: la question a été déplacée de StackOverflow à ici. D'autres rapports de problèmes similaires sur les forums n'ont pas apporté de solution réelle.

PS2: Ajout des sorties de commande après le premier commentaire. D'abord je les ai omis parce que je n'étais pas convaincu de la moindre relation avec le premier problème, mais maintenant je ne suis plus sûr. Donc voici encore quelques tests:

journalctl

Mar 20 10:58:36 cosy kernel: sd 4:0:0:0: ioctl_internal_command return code = 8000002
Mar 20 10:58:36 cosy kernel: sd 4:0:0:0: Sense Key : Aborted Command [current]
Mar 20 10:58:36 cosy kernel: sd 4:0:0:0: Add. Sense: No additional sense information
Mar 20 10:58:36 cosy systemd-udevd[382]: inotify_add_watch(9, /dev/sdb1, 10) failed: No such file or directory

(la sortie ci-dessus se répète à l'infini)

dmesg

[72070.670913]  sdb: sdb1
[72070.745597] sd 4:0:0:0: ioctl_internal_command return code = 8000002
[72070.745600] sd 4:0:0:0: Sense Key : Aborted Command [current] 
[72070.745601] sd 4:0:0:0: Add. Sense: No additional sense information
[72070.747604] sdb: detected capacity change from 681574400 to 0
[72070.991468] sd 4:0:0:0: ioctl_internal_command return code = 8000002

/lib/systemd/systemd-udevd -D

adding watch on '/dev/sdb'
created db file '/run/udev/data/b8:16' for '/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.0/Host4/target4:0:0/4:0:0:0/block/sdb'
passed device to netlink monitor 0x556a9c04b5d0
seq 4896728 processed
passed 282 byte device to netlink monitor 0x556a9c051740seq 4896729 running

removing watch on '/dev/sdb1'
value '[dmi/id]sys_vendor' is 'System manufacturer'
value '[dmi/id]sys_vendor' is 'System manufacturer'
no reference left, remove '/dev/disk/by-id/usb-BUFFALO_HD-HXU3_00000204B9AC-0:0-part1'
no reference left, remove '/dev/disk/by-label/UTIL_HDHXU3'
no reference left, remove '/dev/disk/by-path/pci-0000:00:1d.0-usb-0:1.4:1.0-scsi-0:0:0:0-part1'
no reference left, remove '/dev/disk/by-uuid/6BA5-31BF'
passed device to netlink monitor 0x556a9c04b5d0
seq 4896729 processed
passed 263 byte device to netlink monitor 0x556a9c051740
^Cseq 4896730 running
removing watch on '/dev/sdb'
value '[dmi/id]sys_vendor' is 'System manufacturer'
value '[dmi/id]sys_vendor' is 'System manufacturer'
IMPORT builtin 'usb_id' /lib/udev/rules.d/60-persistent-storage.rules:41
/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.0: if_class 8 protocol 6
LINK 'disk/by-id/usb-BUFFALO_HD-HXU3_00000204B9AC-0:0' /lib/udev/rules.d/60-persistent-storage.rules:46
IMPORT builtin 'path_id' /lib/udev/rules.d/60-persistent-storage.rules:64
LINK 'disk/by-path/pci-0000:00:1d.0-usb-0:1.4:1.0-scsi-0:0:0:0' /lib/udev/rules.d/60-persistent-storage.rules:65
IMPORT builtin 'blkid' /lib/udev/rules.d/60-persistent-storage.rules:76
probe /dev/sdb raid offset=0
handling device node '/dev/sdb', devnum=b8:16, mode=0600, uid=0, gid=0
preserve already existing symlink '/dev/block/8:16' to '../sdb'
found 'b8:16' claiming '/run/udev/links/\x2fdisk\x2fby-id\x2fusb-BUFFALO_HD-HXU3_00000204B9AC-0:0'
creating link '/dev/disk/by-id/usb-BUFFALO_HD-HXU3_00000204B9AC-0:0' to '/dev/sdb'
preserve already existing symlink '/dev/disk/by-id/usb-BUFFALO_HD-HXU3_00000204B9AC-0:0' to '../../sdb'
found 'b8:16' claiming '/run/udev/links/\x2fdisk\x2fby-path\x2fpci-0000:00:1d.0-usb-0:1.4:1.0-scsi-0:0:0:0'
creating link '/dev/disk/by-path/pci-0000:00:1d.0-usb-0:1.4:1.0-scsi-0:0:0:0' to '/dev/sdb'
preserve already existing symlink '/dev/disk/by-path/pci-0000:00:1d.0-usb-0:1.4:1.0-scsi-0:0:0:0' to '../../sdb'
created db file '/run/udev/data/b8:16' for '/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.0/Host4/target4:0:0/4:0:0:0/block/sdb'

Maintenant, je suppose que cela a à voir avec un disque dur externe USB. Mais j'en ai besoin aussi ...

3
user152037

Pour mon ordinateur portable Dell, ce problème est dû au Touchpad.

$ udevadm monitor
Eyl 03 22:02:58 Inspiron systemd-udevd[380]: Process 'hid2hci
--method=Dell --devpath=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.6/2-1.6.2/2-1.6.2:1.0' failed with exit code 1.

$ cat /sys/bus/usb/devices/2-1/2-1.6/2-1.6.2/id*
8162 413c

$ lsusb -d 413c:8162
Bus 002 Device 006:  ID 413c:8162 Dell Computer Corp. Integrated Touchpad [Synaptics]

Pour arrêter systemd-udevd:

Sudo systemctl stop systemd-udevd systemd-udevd-control.socket systemd-udevd-kernel.socket

Pour plus d'informations:

1
Ismail Kalay