Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp3409199ybb; Tue, 31 Mar 2020 04:48:53 -0700 (PDT) X-Google-Smtp-Source: ADFU+vtrshaYRL4rjaSL883CYShYWgDkP2GuD2ze7gyyvKqEcZ+q+nuhE7tCACV0oBHFIEGkP0Qv X-Received: by 2002:a05:6808:495:: with SMTP id z21mr1798814oid.30.1585655333645; Tue, 31 Mar 2020 04:48:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585655333; cv=none; d=google.com; s=arc-20160816; b=T5jzjeWXkn74qZ+hC+Y66fLRp97nou7JfoewsKWlvK1F/K1Ucx1EboGzzIE5lt4BQs kY0S6H5Jla7IBF/+DFzGHMR2dlHOyxaAMUx+XMbHClLv2T9J1Jmyv2Ad7tCGQ+u3A5Sq +jXKTKcg8myefBj1XmDHORx8UzAAU/Ez2KeOJISwNNqKmRi0k6Rhm9CGAFj3Dx7WxRf+ Bq3f7PmLNgxAUAIeWt+Mnbw/4butwzc/ULBqfhL0sKXokcLrH1KlCvrgTNNOPbnV17Q8 tWY8ZCBv1uEESMrFa35kPXwo3lFfqYjr0ixaciCoaw4V+V+aMrDqOcwvPSfUnUdHZyAp p8rQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=6O0gMjSRqXI23LYvCLV0ocypchgJQJFmBiZQ3a3Giu4=; b=Rcb1rHCIxG0kCGSFbWtOYYi6rU2NrTBcec3Yzb9YR0DPgRQOE8JQcEFO5RWtk+3EIy WtM3KUrLywnJzoC1UYHd+CehE2QfnupMUkwnv/NyLAMhjbKqPkgiXXFrXDzxnFsXlbck nYu9C+KXHb+HUcbm1zRi+HwmyTxSUiUvPKDueNjWfOyFk/jeCfRHbIY5rP0TWah8UClp KydVqYP0F08nja9BQw9KKgESwLkIVhodgPfBxdxMrjRblYDA5h94Rz3akJCKDDg7eyDj sjr1+Qotysgp+strSmMAbPIEeaCAGpimQUK3gPNQu1KWLue/eyExVy7o1PRvkOXrDShb EPpw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ca+J3yvo; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d185si7034398oif.234.2020.03.31.04.48.41; Tue, 31 Mar 2020 04:48:53 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ca+J3yvo; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730650AbgCaLsN (ORCPT + 99 others); Tue, 31 Mar 2020 07:48:13 -0400 Received: from mail-pj1-f68.google.com ([209.85.216.68]:53723 "EHLO mail-pj1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730424AbgCaLsM (ORCPT ); Tue, 31 Mar 2020 07:48:12 -0400 Received: by mail-pj1-f68.google.com with SMTP id l36so964720pjb.3; Tue, 31 Mar 2020 04:48:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=6O0gMjSRqXI23LYvCLV0ocypchgJQJFmBiZQ3a3Giu4=; b=ca+J3yvo4W0T3ogR1fHJz8ZkjV8TeVcDN2yw0jVHdxZuficHrC3RPN1zyrjrh8mPhv vJ+2E5iTBwDCq/RAaUCeMswujQBQ6eePHlKPVUQvvIqA3zqbCyU88xypTbn1UmOZVDHP HL89ItRq6fJrm2RvQ5BFi2OHnrJvfU8tH0Me1GY0YPfufbqwD/KYxSfZIti0D5/+UALi WdO/ZDK87hOwvsST+NXh4NPqRj13hr+YzT78cdYge4IsvAZpMiF654qGNpEk4vbK3p8N FJpQ6pUTzlB4FNf283HQxtL+CRYWk7+OqQM284FbCUhn92rybGNm6QRQyLxz5k9E9rgT P1eQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=6O0gMjSRqXI23LYvCLV0ocypchgJQJFmBiZQ3a3Giu4=; b=UoBivIzKr8Un0HMwYK2okixTKiCZAJwD4upRkaFjEVvHSfHf+5e63D6ubYm6VJzgil Ek2ACybKPhb/qU1TCH6F7uIZblbhX+D115hs7fEs+UmFBJNaqFZ1geqJCYle5aNddXNt 1hLUbmIuHvqKpok/e7U70Sthd663Cp90Bwn5mEps1/jMzxYd8QRu0jVpg/tVrjIYxpb+ eOq9Vs+rsv/ysLXf3Tl42TWpPhTrc5e+EmNybMxf4VDjCRbQ3gBk3yRarz9OxFRvNZ2c MqOlL06b6j84NQgovlzCwv9gYFOLICfKTEysDPsGTp0XBWR1vPof4f2Tl2u7jDXCoofh eLaA== X-Gm-Message-State: AGi0PuYGO9jEZAHJkIa1NQ7hb9TC3IVEs+bHJqFbovnyeznDPIZz0l3S 7gtYjoiGm5m92suijLkTkECmYdTW8EieJg== X-Received: by 2002:a17:90a:1911:: with SMTP id 17mr3448899pjg.65.1585655291196; Tue, 31 Mar 2020 04:48:11 -0700 (PDT) Received: from localhost.localdomain ([122.178.242.244]) by smtp.gmail.com with ESMTPSA id i15sm11601220pgc.74.2020.03.31.04.48.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 31 Mar 2020 04:48:10 -0700 (PDT) From: Rohit Sarkar To: linux-iio@vger.kernel.org Cc: dragos.bogdan@analog.com, Rohit Sarkar , Lars-Peter Clausen , Michael Hennerich , Stefan Popa , Jonathan Cameron , Hartmut Knaack , Peter Meerwald-Stadler , linux-kernel@vger.kernel.org Subject: [PATCH v2 1/2] iio: imu: adis16400: use DEFINE_DEBUGFS_ATTRIBUTE instead of DEFINE_SIMPLE_ATTRIBUTE Date: Tue, 31 Mar 2020 17:17:30 +0530 Message-Id: <20200331114732.14739-2-rohitsarkar5398@gmail.com> X-Mailer: git-send-email 2.23.0.385.gbc12974a89 In-Reply-To: <20200331114732.14739-1-rohitsarkar5398@gmail.com> References: <20200328063456.24012-1-rohitsarkar5398@gmail.com> <20200331114732.14739-1-rohitsarkar5398@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org debugfs_create_file_unsafe does not protect the fops handed to it against file removal. DEFINE_DEBUGFS_ATTRIBUTE makes the fops aware of the file lifetime and thus protects it against removal. Signed-off-by: Rohit Sarkar --- drivers/iio/imu/adis16400.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/drivers/iio/imu/adis16400.c b/drivers/iio/imu/adis16400.c index cfb1c19eb930..c8fcd40f58c0 100644 --- a/drivers/iio/imu/adis16400.c +++ b/drivers/iio/imu/adis16400.c @@ -258,7 +258,7 @@ static int adis16400_show_product_id(void *arg, u64 *val) return 0; } -DEFINE_SIMPLE_ATTRIBUTE(adis16400_product_id_fops, +DEFINE_DEBUGFS_ATTRIBUTE(adis16400_product_id_fops, adis16400_show_product_id, NULL, "%lld\n"); static int adis16400_show_flash_count(void *arg, u64 *val) @@ -275,7 +275,7 @@ static int adis16400_show_flash_count(void *arg, u64 *val) return 0; } -DEFINE_SIMPLE_ATTRIBUTE(adis16400_flash_count_fops, +DEFINE_DEBUGFS_ATTRIBUTE(adis16400_flash_count_fops, adis16400_show_flash_count, NULL, "%lld\n"); static int adis16400_debugfs_init(struct iio_dev *indio_dev) @@ -283,15 +283,16 @@ static int adis16400_debugfs_init(struct iio_dev *indio_dev) struct adis16400_state *st = iio_priv(indio_dev); if (st->variant->flags & ADIS16400_HAS_SERIAL_NUMBER) - debugfs_create_file("serial_number", 0400, - indio_dev->debugfs_dentry, st, - &adis16400_serial_number_fops); + debugfs_create_file_unsafe("serial_number", 0400, + indio_dev->debugfs_dentry, st, + &adis16400_serial_number_fops); if (st->variant->flags & ADIS16400_HAS_PROD_ID) - debugfs_create_file("product_id", 0400, + debugfs_create_file_unsafe("product_id", 0400, + indio_dev->debugfs_dentry, st, + &adis16400_product_id_fops); + debugfs_create_file_unsafe("flash_count", 0400, indio_dev->debugfs_dentry, st, - &adis16400_product_id_fops); - debugfs_create_file("flash_count", 0400, indio_dev->debugfs_dentry, - st, &adis16400_flash_count_fops); + &adis16400_flash_count_fops); return 0; } -- 2.23.0.385.gbc12974a89