Actions
Feature #3233
open068: Incorrect release of USB information structures
Status:
New
Priority:
Normal
Assignee:
-
Start date:
07/19/2012
Due date:
% Done:
0%
Estimated time:
Published in build:
Description
Description
- Resources allocated by usb_alloc_urb should be correctly freed by usb_free_urb.
- Resources allocated by usb_alloc_coherent should be correctly freed by usb_free_coherent.
Links
Sample bugfixes 2.6.24 -> 2.6.25, cb7cd429, 0653136, 08bf11d
Updated by Evgeny Novikov over 12 years ago
Corresponding plain model 68_1 was successfully implemented. But after fixing #453 and related issues, this model behaves strangely. My local launch demonstrated such the difference for medium regression test set:
-driver=kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=drivers/kbdrivers/0068-2.6.31.6/test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c/cdc_eem.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=safe +driver=kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=drivers/kbdrivers/0068-2.6.31.6/test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c/cdc_eem.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=unknown;RCV_status=fail;problems=Time_limit -driver=online-drivers--from_oldserv--usb-core-message-unsafe.tar.bz2.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=message.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=unknown;RCV_status=fail;problems=Exception,NoNewPredicates +driver=online-drivers--from_oldserv--usb-core-message-unsafe.tar.bz2.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=message.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=unknown;RCV_status=fail;problems=Exception
while night tests have shown:
-driver=kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=drivers/kbdrivers/0068-2.6.31.6/test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c/cdc_eem.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=safe +driver=kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=drivers/kbdrivers/0068-2.6.31.6/test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c/cdc_eem.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=unknown;RCV_status=fail;problems=Time_limit -driver=online-drivers--from_oldserv--usb-core-message-unsafe.tar.bz2.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=message.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=unknown;RCV_status=fail;problems=Exception,NoNewPredicates +driver=online-drivers--from_oldserv--usb-core-message-unsafe.tar.bz2.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=message.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=safe
That is the first change is the same while the second one is different.
Updated by Evgeny Novikov over 12 years ago
Commit 1f558ed of the master branch has changed corresponding verdicts temporary to pass night tests.
Updated by Evgeny Novikov over 12 years ago
Two times night tests showed the following difference for the given rule:
-driver=kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=drivers/kbdrivers/0068-2.6.31.6/test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c/cdc_eem.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=unknown;RCV_status=fail;problems=Time_limit +driver=kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=drivers/kbdrivers/0068-2.6.31.6/test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c/cdc_eem.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=safe -driver=kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--input--mouse--bcm5974.c.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=drivers/kbdrivers/0068-2.6.31.6/test-0068-2.6.31.6-verdict-unsafe-drivers--input--mouse--bcm5974.c/bcm5974.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=safe +driver=kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--input--mouse--bcm5974.c.tar.bz2;origin=external;kernel=linux-2.6.31.6;model=68_1;module=drivers/kbdrivers/0068-2.6.31.6/test-0068-2.6.31.6-verdict-unsafe-drivers--input--mouse--bcm5974.c/bcm5974.ko;main=ldv_main0_sequence_infinite_withcheck_stateful;verdict=unknown;RCV_status=fail;problems=Blocks_SAT,Exception
Thus, kbdrivers--0068-2.6.31.6--test-0068-2.6.31.6-verdict-unsafe-drivers--net--usb--cdc_eem.c.tar.bz2 is unstable driver and I'm going to exclude it from general test suite (but one who will take care of this model should understand what happens). To pass night tests I also should apply the second change to the suite...
Updated by Alexey Khoroshilov over 11 years ago
- Subject changed from 68_1: Incorrect release of USB information structures to 068_1: Incorrect release of USB information structures
Updated by Vadim Mutilin almost 11 years ago
- Subject changed from 068_1: Incorrect release of USB information structures to 068: Incorrect release of USB information structures
Actions