Re: [PATCH 4/5] drivers/net: Drop unnecessary NULL test

From: Zhu Yi
Date: Sun Jul 12 2009 - 20:56:20 EST


On Mon, 2009-07-13 at 04:05 +0800, Julia Lawall wrote:
> From: Julia Lawall <julia@xxxxxxx>
>
> The result of container_of should not be NULL. In particular, in this case
> the argument to the enclosing function has passed though INIT_WORK, which
> dereferences it, implying that its container cannot be NULL.
>
> A simplified version of the semantic patch that makes this change is as
> follows:
> (http://www.emn.fr/x-info/coccinelle/)
>
> // <smpl>
> @@
> identifier fn,work,x,fld;
> type T;
> expression E1,E2;
> statement S;
> @@
>
> static fn(struct work_struct *work) {
> ... when != work = E1
> x = container_of(work,T,fld)
> ... when != x = E2
> - if (x == NULL) S
> ...
> }
> // </smpl>
>
> Signed-off-by: Julia Lawall <julia@xxxxxxx>

Acked-by: Zhu Yi <yi.zhu@xxxxxxxxx>

Thanks,
-yi
> ---
> drivers/net/wireless/ipw2x00/ipw2200.c | 3 ---
> 1 files changed, 0 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/wireless/ipw2x00/ipw2200.c b/drivers/net/wireless/ipw2x00/ipw2200.c
> index d726b3c..2dc1cdb 100644
> --- a/drivers/net/wireless/ipw2x00/ipw2200.c
> +++ b/drivers/net/wireless/ipw2x00/ipw2200.c
> @@ -7250,9 +7250,6 @@ static void ipw_bg_qos_activate(struct work_struct *work)
> struct ipw_priv *priv =
> container_of(work, struct ipw_priv, qos_activate);
>
> - if (priv == NULL)
> - return;
> -
> mutex_lock(&priv->mutex);
>
> if (priv->status & STATUS_ASSOCIATED)

--
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/