* [PATCH 4/5] drivers/net: Drop unnecessary NULL test
@ 2009-07-12 20:05 ` Julia Lawall
0 siblings, 0 replies; 5+ messages in thread
From: Julia Lawall @ 2009-07-12 20:05 UTC (permalink / raw)
To: yi.zhu, jketreno, reinette.chatre, linux-wireless, ipw2100-devel,
linux-kernel, kernel-janitors
From: Julia Lawall <julia@diku.dk>
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@diku.dk>
---
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)
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 4/5] drivers/net: Drop unnecessary NULL test
@ 2009-07-12 20:05 ` Julia Lawall
0 siblings, 0 replies; 5+ messages in thread
From: Julia Lawall @ 2009-07-12 20:05 UTC (permalink / raw)
To: yi.zhu, jketreno, reinette.chatre, linux-wireless, ipw2100-devel,
linux-kernel, kernel-janitors
From: Julia Lawall <julia@diku.dk>
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@diku.dk>
---
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)
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 4/5] drivers/net: Drop unnecessary NULL test
2009-07-12 20:05 ` Julia Lawall
(?)
@ 2009-07-13 0:56 ` Zhu Yi
-1 siblings, 0 replies; 5+ messages in thread
From: Zhu Yi @ 2009-07-13 0:56 UTC (permalink / raw)
To: Julia Lawall
Cc: jketreno, Chatre, Reinette, linux-wireless, ipw2100-devel,
linux-kernel, kernel-janitors
On Mon, 2009-07-13 at 04:05 +0800, Julia Lawall wrote:
> From: Julia Lawall <julia@diku.dk>
>
> 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@diku.dk>
Acked-by: Zhu Yi <yi.zhu@intel.com>
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)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 4/5] drivers/net: Drop unnecessary NULL test
@ 2009-07-13 0:56 ` Zhu Yi
0 siblings, 0 replies; 5+ messages in thread
From: Zhu Yi @ 2009-07-13 0:56 UTC (permalink / raw)
To: Julia Lawall
Cc: jketreno, Chatre, Reinette, linux-wireless, ipw2100-devel,
linux-kernel, kernel-janitors
On Mon, 2009-07-13 at 04:05 +0800, Julia Lawall wrote:
> From: Julia Lawall <julia@diku.dk>
>
> 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@diku.dk>
Acked-by: Zhu Yi <yi.zhu@intel.com>
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)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 4/5] drivers/net: Drop unnecessary NULL test
@ 2009-07-13 0:56 ` Zhu Yi
0 siblings, 0 replies; 5+ messages in thread
From: Zhu Yi @ 2009-07-13 0:56 UTC (permalink / raw)
To: Julia Lawall
Cc: jketreno, Chatre, Reinette, linux-wireless, ipw2100-devel,
linux-kernel, kernel-janitors
On Mon, 2009-07-13 at 04:05 +0800, Julia Lawall wrote:
> From: Julia Lawall <julia@diku.dk>
>
> 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@diku.dk>
Acked-by: Zhu Yi <yi.zhu@intel.com>
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)
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-07-13 0:56 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-07-12 20:05 [PATCH 4/5] drivers/net: Drop unnecessary NULL test Julia Lawall
2009-07-12 20:05 ` Julia Lawall
2009-07-13 0:56 ` Zhu Yi
2009-07-13 0:56 ` Zhu Yi
2009-07-13 0:56 ` Zhu Yi
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.