lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 23 May 2010 11:18:22 -0700
From:	walt <w41ter@...il.com>
To:	linux-kernel@...r.kernel.org
Subject: Re: [2.6.34-git8][regression] massive polling problems with udevd
 and  other processes

On 05/22/2010 03:59 PM, Eric Paris wrote:
> On Sat, May 22, 2010 at 4:44 PM, Al Viro<viro@...iv.linux.org.uk>  wrote:
>> On Sat, May 22, 2010 at 01:21:19PM -0700, walt wrote:
>>> On 05/22/2010 12:35 PM, Shawn Starr wrote:
>>>> Just built today's snapshot from linus's tree and have problems with udev
>>>> using 100% cpu and KDE processes also pegging cpus.
>>>>
>>>> This is with Fedora 13 + snapshot kernel from git.
>>>>
>>>> Anyone else noticing this?
>>>
>>> Yes, just bisected it to this:
>>>
>>> commit a7cf4145bb86aaf85d4d4d29a69b50b688e2e49d
>>> Author: Eric Paris<eparis@>
>>> Date:   Fri May 14 11:44:10 2010 -0400
>>>
>>>      anon_inode: set S_IFREG on the anon_inode
>>
>> Cute...  Frankly, I'd be fine with just reverting that one and teaching
>> selinux to STFU.  However, I wonder what specifically is getting polled.
>> Which anon_inode users?
>
> On my system udev has both inotify and signalfd open.  He's asking for
> more of the strace.  If the ONLY thing that udev is doing is polling
> with no other syscalls at all it's a udev problem (although maybe one
> where we have to maintain bug for bug compatibility.
>
> Can you show us a more lines of strace context and the output of ls -l
> /proc/$PID/fd ?  That should give us a better idea what udev is doing
> and which anon_inode we are dealing with.

strace is just very rapidly printing out thousands of identical lines like
the one I posted earlier.  Here is a new run:

$head /tmp/strace
ioctl(6, FIONREAD, [0])                 = 0
poll([{fd=4, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=7, events=POLLIN}, {fd=8, events=POLLIN}], 5, -1) = 1 ([{fd=6, revents=POLLIN}])
ioctl(6, FIONREAD, [0])                 = 0
poll([{fd=4, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=7, events=POLLIN}, {fd=8, events=POLLIN}], 5, -1) = 1 ([{fd=6, revents=POLLIN}])
ioctl(6, FIONREAD, [0])                 = 0
poll([{fd=4, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=7, events=POLLIN}, {fd=8, events=POLLIN}], 5, -1) = 1 ([{fd=6, revents=POLLIN}])
ioctl(6, FIONREAD, [0])                 = 0
poll([{fd=4, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=7, events=POLLIN}, {fd=8, events=POLLIN}], 5, -1) = 1 ([{fd=6, revents=POLLIN}])
ioctl(6, FIONREAD, [0])                 = 0
poll([{fd=4, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=7, events=POLLIN}, {fd=8, events=POLLIN}], 5, -1) = 1 ([{fd=6, revents=POLLIN}])

Here is the fd listing for the udevd process:
$cat /tmp/fd
lrwx------ 1 root root 64 2010-05-23 08:38 0 -> /dev/null
lrwx------ 1 root root 64 2010-05-23 08:38 1 -> /dev/null
lrwx------ 1 root root 64 2010-05-23 08:38 2 -> /dev/null
lrwx------ 1 root root 64 2010-05-23 08:38 3 -> /dev/.udev/queue.bin
lrwx------ 1 root root 64 2010-05-23 08:38 4 -> socket:[274]
lrwx------ 1 root root 64 2010-05-23 08:38 5 -> socket:[275]
lr-x------ 1 root root 64 2010-05-23 08:38 6 -> anon_inode:inotify
lrwx------ 1 root root 64 2010-05-23 08:38 7 -> anon_inode:[signalfd]
lrwx------ 1 root root 64 2010-05-23 08:38 8 -> socket:[276]
lrwx------ 1 root root 64 2010-05-23 08:38 9 -> socket:[277]



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ