diff options
| author | 2015-07-09 13:27:52 -0400 | |
|---|---|---|
| committer | 2015-07-14 18:34:59 -0700 | |
| commit | 8d0119d8e81f93cf3c1bc2b6e7a39e28620cda1a (patch) | |
| tree | eb5937e25c016c25ecb3c9897b38ebc1be4bc9aa /tools/perf/scripts/python/net_dropmonitor.py | |
| parent | staging: unisys: visornic: use preferred interface for setting netdev's parent (diff) | |
staging: unisys: visornic: prevent erroneous kfree of devdata pointer
A struct visornic_devdata for each visornic device is actually allocated as
part of alloc_etherdev(), here in visornic_probe():
netdev = alloc_etherdev(sizeof(struct visornic_devdata));
But code in devdata_release() was treating devdata as a pointer that needed
to be kfree()d! This was causing all sorts of weird behavior after doing
an rmmod of visornic, both because free_netdev() was actually freeing the
memory used for devdata, and because devdata wasn't pointing to
dynamically-allocated memory in the first place.
The kfree(devdata) and the kref that tracked devdata's usage have been
appropriately deleted.
Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/perf/scripts/python/net_dropmonitor.py')
0 files changed, 0 insertions, 0 deletions
