Received: by 2002:a05:6602:2086:0:0:0:0 with SMTP id a6csp3314809ioa; Tue, 26 Apr 2022 00:47:26 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz/A2ZsRs7E47zJuojzWSjcUZ3RFEGw4qZOq8pOKNw73HkOpfgbpK3yS8DNBgn6PhZDhmGH X-Received: by 2002:a62:685:0:b0:50a:5870:10b1 with SMTP id 127-20020a620685000000b0050a587010b1mr22746885pfg.61.1650959246231; Tue, 26 Apr 2022 00:47:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1650959246; cv=none; d=google.com; s=arc-20160816; b=VHss3QHa3TXSxPmPo8W/Z4JZbCKVaCP7FAn05T3hQT7bzpNhoO1RZC18yW3AYhkbgL MC2MzKr67NxGNXkQmSjRLf0JwzvM1T6AndSsrM7HLaIppR06qpmkr5hCruPVGYg5F21/ vrau6M/mHQfiqlaK7DRGHpHmizbPEF/g/THcOjFPLJyAiecltEA1MUjUVBBdmo8R/NPP r2QJk/zLj3FC9+MwwgFSs+15H4gifGUiB7jToW+pup9l8l3JrCkbXKr76kog8HvVL3ru dCfNQLIuuALqnrBQ/8JiVHVrwLNpkyNawsNB4wDHCOQ4/sys9NVHo+cXXYc0V5SIgvnX u3MA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=oBhHtEy1UwAD7VJTZa2DJpdjf37l4LwuPNwSNpkwgXs=; b=vEW9E1onUSrrqeb9rZ14e2PSyMxjxzepv64uy9er4FPGNZAjPVEtspUDl2ZnJxjJvF iCHwi9SSgEI2VI4MgTAtcPWesHfJM7ojDSMikeS2wr/xcx8FrqkVhrri5al4JVUDc5Qu KMjM69mDdUauRXJdawROUw9aJ/TIi7fUIpAQrXVQcOvSSmbPcLhAY5FtZUkxEptdCzdc tahHQpFSIkyYyAjuAgPEOJKKLRz92UOl2w54wM6TzGMay7WS0ggeGvcLiWb9ydY6RMv5 lVFrPa76GK/QuhU1Ak9nrHEdCW6+oq99WUW0U3BeNoFKjL6u+bsdEIjpmg3QxcLhT4a8 XQCQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id h5-20020a625305000000b0050d606c1c3csi458320pfb.207.2022.04.26.00.47.11; Tue, 26 Apr 2022 00:47:26 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240776AbiDZBTl (ORCPT + 99 others); Mon, 25 Apr 2022 21:19:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60464 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229662AbiDZBTk (ORCPT ); Mon, 25 Apr 2022 21:19:40 -0400 Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E7510F2A23; Mon, 25 Apr 2022 18:16:33 -0700 (PDT) Received: by mail-pl1-f177.google.com with SMTP id n8so28874859plh.1; Mon, 25 Apr 2022 18:16:33 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=oBhHtEy1UwAD7VJTZa2DJpdjf37l4LwuPNwSNpkwgXs=; b=ZgFlDg4uuIIzx+/sd3QjakOZGzRdtDxLqEqMXXa2VV4jTZyzS43p9SGpeRVv4j+JS6 PhOefNaYOeL0xMavCxmP4Hes5TrsWFsJnIZt8SdVHOqkaP2n9JMmq8TT7xcHO8n4WJFh 8yaSfuX7MGxFm3OD2PiaXRYmDDdVANIuntk8n8/nYvj3iew5P0zalAC9+xqSoZykqPBS xgACb3T8NFN8gos5VyAH+nDi00Y29xySo4mroAaREQeqtSEDBpq3PdL+TEGjdGJCaAys uGOEon94D5zwfJMl3n2/e7MuV75XYHp0x3FG6lSPgic96LYoOe1aAGfvpOeOX1ts95eD DA+g== X-Gm-Message-State: AOAM5314etTEF8RJzOETT003FhZirTsYrP3TzXP8AJ2f5ARiCO1meyIs 92j9Hov19uNeLfD2pJ2MMO0= X-Received: by 2002:a17:902:b092:b0:156:a40f:f716 with SMTP id p18-20020a170902b09200b00156a40ff716mr20901842plr.72.1650935792984; Mon, 25 Apr 2022 18:16:32 -0700 (PDT) Received: from ?IPV6:2601:647:4000:d7:feaa:14ff:fe9d:6dbd? ([2601:647:4000:d7:feaa:14ff:fe9d:6dbd]) by smtp.gmail.com with ESMTPSA id o64-20020a62cd43000000b0050d416200e6sm4285329pfg.5.2022.04.25.18.16.31 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 25 Apr 2022 18:16:32 -0700 (PDT) Message-ID: Date: Mon, 25 Apr 2022 18:16:30 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH 1/4] scsi: core: constify pointer to scsi_host_template Content-Language: en-US To: John Garry , Krzysztof Kozlowski , Christoph Hellwig Cc: "Ewan D. Milne" , "James E.J. Bottomley" , "Martin K. Petersen" , Alim Akhtar , Avri Altman , Doug Gilbert , linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org, james.smart@broadcom.com References: <20220408103027.311624-1-krzysztof.kozlowski@linaro.org> <2a88a992-641a-b3ff-fe39-7a61fff87cb6@huawei.com> <4c3be5b6-50ef-9e9a-6cee-9642df943342@linaro.org> <7b3885e3-dbae-ff0b-21dc-c28d635d950b@huawei.com> <24bfb681-faec-3567-3089-9cd5ee182710@linaro.org> <1bb53912-c5c3-7690-e82f-cf356ca87404@huawei.com> From: Bart Van Assche In-Reply-To: <1bb53912-c5c3-7690-e82f-cf356ca87404@huawei.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00, FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS, NICE_REPLY_A,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 4/25/22 06:04, John Garry wrote: > On 25/04/2022 10:22, Krzysztof Kozlowski wrote: >> For example scsi_proc_hostdir_rm(): 'present' and 'proc_dir' members. >> Where should they be stored? Should they be moved to the Scsi_Host? >> > > I don't think scsi_Host is appropriate as this is per-scsi host > template, unless you see a way to do it that way. Alternatively we could > keep a separate list of registered sht, like this: > > struct sht_proc_dir { >     int cnt; >     struct list_head list; >     struct proc_dir_entry *proc_dir; >     struct scsi_host_template *sht; > }; > static LIST_HEAD(sht_proc_dir_list); > > void scsi_proc_hostdir_add(struct scsi_host_template *sht) > { >     struct sht_proc_dir *dir; > >     if (!sht->show_info) >         return; > >     mutex_lock(&global_host_template_mutex); >     list_for_each_entry(dir, &sht_proc_dir_list, list) { >         if (dir->sht == sht) { >             dir->cnt++; >             goto out; >         } >     } >     dir = kzalloc(sizeof(*dir), GFP_KERNEL); >     if (!dir) >         goto out; > >     dir->proc_dir = proc_mkdir(sht->proc_name, proc_scsi); >     if (!dir->proc_dir) { >         printk(KERN_ERR "%s: proc_mkdir failed for %s\n", >                    __func__, sht->proc_name); >         kfree(dir); >         goto out; >     } > >     dir->cnt++; >     list_add_tail(&dir->list, &sht_proc_dir_list); > out: >     mutex_unlock(&global_host_template_mutex); > } How about removing scsi_proc_hostdir_add(), scsi_proc_hostdir_rm() and all other code that creates files or directories under /proc/scsi? There should be corresponding entries in sysfs for all /proc/scsi entries. Some tools in sg3_utils use that directory so sg3_utils will have to be updated. Thanks, Bart.