From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Mike Christie <michael.christie@oracle.com>
Cc: bvanassche@acm.org, bstroesser@ts.fujitsu.com,
martin.petersen@oracle.com, linux-scsi@vger.kernel.org,
target-devel@vger.kernel.org
Subject: Re: [PATCH 11/17] target: add session sysfs class support
Date: Tue, 9 Jun 2020 08:05:57 +0200 [thread overview]
Message-ID: <20200609060557.GA498310@kroah.com> (raw)
In-Reply-To: <e16dedcd-10ae-3d25-c49a-c24b5d964434@oracle.com>
On Mon, Jun 08, 2020 at 02:02:16PM -0500, Mike Christie wrote:
>
>
> On 6/8/20 11:36 AM, Greg Kroah-Hartman wrote:
> > On Mon, Jun 08, 2020 at 10:35:56AM -0500, Mike Christie wrote:
> > >
> > >
> > > On 6/8/20 12:32 AM, Greg Kroah-Hartman wrote:
> > > > On Sun, Jun 07, 2020 at 03:35:58PM -0500, Mike Christie wrote:
> > > > > +int target_sysfs_add_session(struct se_portal_group *se_tpg,
> > > > > + struct se_session *se_sess)
> > > > > +{
> > > > > + struct t10_transport_id *tpt_id = se_sess->tpt_id;
> > > > > + int ret;
> > > > > +
> > > > > + if (!try_module_get(se_sess->tfo->module))
> > > > > + return -EINVAL;
> > > > > +
> > > > > + ret = target_cp_endpoint_strs(se_tpg, se_sess);
> > > > > + if (ret)
> > > > > + goto put_mod;
> > > > > +
> > > > > + se_sess->dev.groups = se_sess->tfo->session_attr_groups;
> > > > > + ret = device_add(&se_sess->dev);
> > > > > + if (ret) {
> > > > > + pr_err("Could not add session%d to sysfs. Error %d.\n",
> > > > > + se_sess->sid, ret);
> > > > > + goto free_ep_strs;
> > > > > + }
> > > > > +
> > > > > + pr_info("TCM added session-%d from [fabric: %s, target: %s, tpg %s, acl: %s] to [initiator port: %s%s%s]",
> > > > > + se_sess->sid, se_sess->fabric_name, se_sess->target_name,
> > > > > + se_sess->tpg_name, se_sess->acl_name ? se_sess->acl_name : "dynamic",
> > > > > + tpt_id->name, tpt_id->session_id ? "," : "",
> > > > > + tpt_id->session_id ? tpt_id->session_id : "");
> > > >
> > > > You have a 'struct device', so please use it, no need for pr_info(),
> > > > always use the dev_*() calls instead.
> > > >
> > > > but, when drivers and kernel code is all working properly, no need to be
> > > > noisy at all, this should just be a dev_dbg() call, right?
> > >
> > > I liked the info one, because the the code can work correctly, but the
> > > remote devices we are connecting to are normally going to hit issues.
> > >
> > > For example every time the storage network goes down temporarily the driver
> > > code will call remove function, then call the add again when it comes back
> > > up. Having it always logged helps us figure out the root problem later when
> > > the customer only has logs available.
> >
> > Then make this a tracepoint or something, again, do not be noisy for
> > normal system operations. Do you want this to be the case for all of
>
> What's a special case vs normal?
>
> I would agree having a SCSI HBA in your system and having it setup during
> system boot up is normal.
>
> I would agree hardware failing is special.
>
> Having a remote client connect to us, lose its connected then recover seems
> special, because it's a failure case.
>
> Even the initial connection seems like a special event, because the user has
> done some extra steps to have the client connect to us. It's like adding a
> new disk to the system which we log today or like plugging in or removing a
> USB device which we also log.
>
>
> > your hardware devices all the time?
> >
>
> I do, but I'm a kernel developer :)
>
> For the sys admin and distro debugging type of case, yes, they want this
> type of thing logged, because they have done some extra setup to have a
> remote client connect to us. When the connection is lost and then re-added
> they want all that info logged with the lower level info we are already
> logging, so they can follow the time of events.
Ok, then, if they really need this, use the standard format for logging
and use the dev_info() function instead. That allows them to properly
determine what device/driver sent that message at that point in time.
thanks,
greg k-h
next prev parent reply other threads:[~2020-06-09 6:06 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-07 20:35 [PATCH v6 00/17] target: add sysfs support Mike Christie
2020-06-07 20:35 ` [PATCH 01/17] target: check enforce_pr_isids during registration Mike Christie
2020-06-07 20:35 ` [PATCH 02/17] target: separate acl name from port ids Mike Christie
2020-06-09 10:11 ` Stefan Hajnoczi
2020-06-09 14:13 ` Himanshu Madhani
2020-06-07 20:35 ` [PATCH 03/17] target: add helper to parse acl and transport name Mike Christie
2020-06-07 20:35 ` [PATCH 04/17] tcm loop: use target_parse_emulated_name Mike Christie
2020-06-07 20:35 ` [PATCH 05/17] vhost scsi: " Mike Christie
2020-06-09 10:21 ` Stefan Hajnoczi
2020-06-07 20:35 ` [PATCH 06/17] xen scsiback: " Mike Christie
2020-06-07 20:35 ` [PATCH 07/17] iscsi target: setup transport_id Mike Christie
2020-06-07 20:35 ` [PATCH 08/17] target: use tpt_id in target_stat_iport_port_ident_show Mike Christie
2020-06-07 20:35 ` [PATCH 09/17] target: drop sess_get_initiator_sid from PR code Mike Christie
2020-06-07 20:35 ` [PATCH 10/17] target: drop sess_get_initiator_sid Mike Christie
2020-06-07 20:35 ` [PATCH 11/17] target: add session sysfs class support Mike Christie
2020-06-08 5:32 ` Greg Kroah-Hartman
2020-06-08 15:35 ` Mike Christie
2020-06-08 16:36 ` Greg Kroah-Hartman
2020-06-08 19:02 ` Mike Christie
2020-06-09 6:05 ` Greg Kroah-Hartman [this message]
2020-06-08 6:14 ` Hannes Reinecke
2020-06-08 15:21 ` Mike Christie
2020-06-08 15:55 ` Michael Christie
2020-06-09 3:10 ` Michael Christie
2020-06-08 12:06 ` Bodo Stroesser
2020-06-08 14:49 ` Mike Christie
2020-06-08 12:18 ` Greg Kroah-Hartman
2020-06-08 12:18 ` Greg Kroah-Hartman
2020-06-07 20:35 ` [PATCH 12/17] target: hook most target users into sysfs API Mike Christie
2020-06-08 6:15 ` Hannes Reinecke
2020-06-08 10:20 ` kernel test robot
2020-06-07 20:36 ` [PATCH 13/17] iscsi target: replace module sids with lio's sid Mike Christie
2020-06-08 6:16 ` Hannes Reinecke
2020-06-07 20:36 ` [PATCH 14/17] target: add free_session callout Mike Christie
2020-06-08 6:19 ` Hannes Reinecke
2020-06-07 20:36 ` [PATCH 15/17] iscsi target: hook iscsi target into sysfs API Mike Christie
2020-06-08 6:20 ` Hannes Reinecke
2020-06-07 20:36 ` [PATCH 16/17] iscsi target: export session state and alias in sysfs Mike Christie
2020-06-08 6:21 ` Hannes Reinecke
2020-06-07 20:36 ` [PATCH 17/17] target: drop sess_get_index Mike Christie
2020-06-08 6:21 ` Hannes Reinecke
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200609060557.GA498310@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=bstroesser@ts.fujitsu.com \
--cc=bvanassche@acm.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=michael.christie@oracle.com \
--cc=target-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox