This series fixes some long-standing memory leaks in the net2280 and net2272 drivers. Along the way it expands the UDC/gadget API and addresses a stale pointer issue. The real problem in net2280 and net2272 is that they need to do a bunch of cleanup operations using their private data structure after the gadget has been unregistered but before it is deallocated. The current API does not offer any way to do this, nor any way to perform setup operations after the gadget is initialized but before it is registered. Patch 2/4 fixes this by enlarging the API. Using this new functionality, fixing the issues in the two UDC drivers is easy. The stale pointer issue (patch 1/4) is related to the matter of re-registering a gadget multiple times, which is the subject of a separate email thread. Alan Stern