diff options
| author | Shirish Pargaonkar <shirishpargaonkar@gmail.com> | 2011-02-03 15:31:18 -0500 |
|---|---|---|
| committer | Steve French <sfrench@us.ibm.com> | 2011-02-04 15:18:06 -0500 |
| commit | 64474bdd07f673cc48509ea0375274422c8f73bf (patch) | |
| tree | 406db93b0bae474281a13d83f8e621bafcca6af4 /fs | |
| parent | 76429c148b939f5a6863c0a024eb8960ae91469a (diff) | |
cifs: Possible slab memory corruption while updating extended stats (repost)
Updating extended statistics here can cause slab memory corruption
if a callback function frees slab memory (mid_entry).
Signed-off-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs')
| -rw-r--r-- | fs/cifs/connect.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index 945b2202275f..1f32a2893b5f 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c | |||
| @@ -633,11 +633,11 @@ incomplete_rcv: | |||
| 633 | mid_entry->largeBuf = isLargeBuf; | 633 | mid_entry->largeBuf = isLargeBuf; |
| 634 | multi_t2_fnd: | 634 | multi_t2_fnd: |
| 635 | mid_entry->midState = MID_RESPONSE_RECEIVED; | 635 | mid_entry->midState = MID_RESPONSE_RECEIVED; |
| 636 | list_del_init(&mid_entry->qhead); | ||
| 637 | mid_entry->callback(mid_entry); | ||
| 638 | #ifdef CONFIG_CIFS_STATS2 | 636 | #ifdef CONFIG_CIFS_STATS2 |
| 639 | mid_entry->when_received = jiffies; | 637 | mid_entry->when_received = jiffies; |
| 640 | #endif | 638 | #endif |
| 639 | list_del_init(&mid_entry->qhead); | ||
| 640 | mid_entry->callback(mid_entry); | ||
| 641 | break; | 641 | break; |
| 642 | } | 642 | } |
| 643 | mid_entry = NULL; | 643 | mid_entry = NULL; |
