From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752666AbbGILHI (ORCPT ); Thu, 9 Jul 2015 07:07:08 -0400 Received: from cantor2.suse.de ([195.135.220.15]:39154 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751261AbbGILHD (ORCPT ); Thu, 9 Jul 2015 07:07:03 -0400 Message-ID: <1436439959.1682.0.camel@suse.com> Subject: Re: [PATCH] cdc-acm: Destroy acm_minors IDR on module exit From: Oliver Neukum To: Johannes Thumshirn Cc: Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Date: Thu, 09 Jul 2015 13:05:59 +0200 In-Reply-To: <1436369142-31303-1-git-send-email-jthumshirn@suse.de> References: <1436369142-31303-1-git-send-email-jthumshirn@suse.de> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.12.11 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 2015-07-08 at 17:25 +0200, Johannes Thumshirn wrote: > Destroy acm_minors IDR on module exit, reclaiming the allocated > memory. > > This was detected by the following semantic patch (written by Luis > Rodriguez > ) > > @ defines_module_init @ > declarer name module_init, module_exit; > declarer name DEFINE_IDR; > identifier init; > @@ > > module_init(init); > > @ defines_module_exit @ > identifier exit; > @@ > > module_exit(exit); > > @ declares_idr depends on defines_module_init && defines_module_exit @ > identifier idr; > @@ > > DEFINE_IDR(idr); > > @ on_exit_calls_destroy depends on declares_idr && defines_module_exit > @ > identifier declares_idr.idr, defines_module_exit.exit; > @@ > > exit(void) > { > ... > idr_destroy(&idr); > ... > } > > @ missing_module_idr_destroy depends on declares_idr && > defines_module_exit && !on_exit_calls_destroy @ > identifier declares_idr.idr, defines_module_exit.exit; > @@ > > exit(void) > { > ... > +idr_destroy(&idr); > } > > > Signed-off-by: Johannes Thumshirn Acked-by: Oliver Neukum -- Oliver Neukum