Re: [PATCH] epoll: fix dereferenced before check pt

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

 



On Thu, Dec 21, 2017 at 04:54:17PM +0100, Vasyl Gomonovych wrote:
> This patch fixes the warning reported by smatch:
> 
> fs/eventpoll.c:889 ep_item_poll() warn: variable dereferenced before check 'pt'

... and of course, that is all the analysis one might want - the tool has
spoken.  Except that the only thing proven is that the tool is either misused
or just plain crappy.

Callers of ep_item_poll() are easily found - it's static, so they all are in
the same file.  All four of them -
                if (ep_item_poll(epi, &pt, depth)) {
        revents = ep_item_poll(epi, &epq.pt, 1);
        if (ep_item_poll(epi, &pt, 1)) {
                revents = ep_item_poll(epi, &pt, 1);

Figuring out why an address of a local variable or of a field thereof can never
be NULL is left as an exercise for an introductory course on C.

"Fixing warnings" is bloody wrong - warning (from any tool) is a heuristic
pointing to a place that might be worth looking into.  In cases when you've
found a real problem with help from some tool, sure, go ahead and credit that
tool in the commit message.  Along with the description of the problem
you've found.



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux