Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933107AbbELPqf (ORCPT ); Tue, 12 May 2015 11:46:35 -0400 Received: from mail-yk0-f175.google.com ([209.85.160.175]:35406 "EHLO mail-yk0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932711AbbELPqe (ORCPT ); Tue, 12 May 2015 11:46:34 -0400 Message-ID: <55522056.9050102@kernel.dk> Date: Tue, 12 May 2015 11:46:30 -0400 From: Jens Axboe User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: Asai Thambi SP CC: linux-kernel@vger.kernel.org, Sam Bradshaw , Selvan Mani Subject: Re: [PATCH 8/9] mtip32xx: abort secure erase operation if the device is mounted References: <55513388.9030600@micron.com> In-Reply-To: <55513388.9030600@micron.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1446 Lines: 40 On 05/11/2015 06:56 PM, Asai Thambi SP wrote: > Signed-off-by: Sam Bradshaw > Signed-off-by: Asai Thambi S P > --- > drivers/block/mtip32xx/mtip32xx.c | 12 ++++++++++++ > 1 files changed, 12 insertions(+), 0 deletions(-) > > diff --git a/drivers/block/mtip32xx/mtip32xx.c b/drivers/block/mtip32xx/mtip32xx.c > index 0b223e3..f8c12e1 100644 > --- a/drivers/block/mtip32xx/mtip32xx.c > +++ b/drivers/block/mtip32xx/mtip32xx.c > @@ -2147,6 +2147,18 @@ static int exec_drive_taskfile(struct driver_data *dd, > fis.lba_hi, > fis.device); > > + /* Check for secure erase while fs mounted */ > + if ((fis.command == ATA_CMD_SEC_ERASE_PREP) || > + (fis.command == ATA_CMD_SEC_ERASE_UNIT) || > + (fis.command == 0xFC && fis.features == 0x12)) { > + if (dd->bdev && dd->bdev->bd_holders > 0) { > + dev_warn(&dd->pdev->dev, "Drive erase aborted due to non-zero refcount (%d)\n", > + dd->bdev->bd_holders); > + err = -ERESTARTSYS; > + goto abort; > + } > + } I don't like this. If you want to do something like this, why not claim before these commands and unclaim after? If the claim fails, fail the command. -- Jens Axboe -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/