Re: [PATCH 6/6] mqueue: fix mq_open() file descriptor leak on user-space processes

From: Xiaotian Feng
Date: Wed Feb 24 2010 - 23:09:15 EST


2010/2/25 AmÃrico Wang <xiyou.wangcong@xxxxxxxxx>:
> On Tue, Feb 23, 2010 at 3:04 PM, Andrà Goddard Rosa
> <andre.goddard@xxxxxxxxx> wrote:
>> It can be triggered by the following test program:
>>
>
> <snip>
>
>>
>> When not running valgrind, user-space program segfaults trying to execute
>> strerror(errno). With valgrind, it executes successfully and prints the
>> 5 open files: stdin, stdout, stderr, pipe[0] and pipe[1].
>>
>> Signed-off-by: Andrà Goddard Rosa <andre.goddard@xxxxxxxxx>
>> ---
>
> The code has more than just this problem, could you please try
> my patch below?
>
> Thanks.
>
> ---------------------------->
>
> Clean up the failure path of sys_mq_open().
>
> Reorder the goto labels;
> Rename 'upsem' to 'upunlock';
> Remove some unused labels;
> Fix some wrong goto path.
>

I think it's wrong to move dput after mntput

> Signed-off-by: WANG Cong <xiyou.wangcong@xxxxxxxxx>
>
> ---
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/