All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bart Van Assche <bvanassche@acm.org>
To: Yanling Song <songyl@ramaxel.com>
Cc: martin.petersen@oracle.com, linux-scsi@vger.kernel.org
Subject: Re: [PATCH] spraid: initial commit of Ramaxel spraid driver
Date: Wed, 13 Oct 2021 15:00:07 -0700	[thread overview]
Message-ID: <9d9d2f95-7782-85a7-b79a-ce481292c451@acm.org> (raw)
In-Reply-To: <20211013065012.02b76336@songyl>

On 10/12/21 11:50 PM, Yanling Song wrote:
> On Tue, 12 Oct 2021 09:59:30 -0700
> Bart Van Assche <bvanassche@acm.org> wrote:
>> Why is it that SG_IO is not sufficient? This is something that should
>> have been explained in the patch description.
> 
> There are two cases that there are no SG devices and SG_IO cannot work.
> 1. To access raid controller:
> a. Raid controller is a scsi host, not a scsi device, so there
> is no SG device associated with it.
> b. Even there is a scsi device for raid controller, SG_IO
> cannot work when something wrong with IO queue and only admin queue can
> work;
> 2. To access the physical disks behinds raid controller:
> raid controller only reports VDs to OS and only VDs have SG devices. OS
> has no idea about physical disks behinds raid controller and there is no
> SG devices associated with physical disks.

Please take a look at the bsg_setup_queue() call in ufs_bsg_probe(). 
That call associates a BSG queue with the UFS host. That queue supports 
requests of type struct ufs_bsg_request. The Fibre Channel transport 
driver does something similar. I believe that this is a better solution 
than introducing entirely new ioctls.

>>>> Additionally, mixing driver-internal and user space definitions in
>>>> a single header file is not OK. Definitions of data structures and
>>>> ioctls that are needed by user space software should occur in a
>>>> header file in the directory include/uapi/scsi/.
>>>
>>> Sounds reasonable. But after checking the directory
>>> include/uapi/scsi/, there are only several files in it. It is
>>> expected that there should be many files if developers follow the
>>> rule. Do you know why?
>>
>> If this rule is not followed, that will be a red flag for the SCSI
>> maintainer and something that will probably delay upstream acceptance
>> of this patch.
> 
> Since there are not much examples in include/uapi/scsi/, what' your
> suggestion on how to put the definitions into the folder? for example,
> what's the file name? spraid_ioctrl.h?

How about include/uapi/scsi/spraid.h, since I assume that that header 
file will cover all user space interfaces for interaction with the 
spraid driver?

Thanks,

Bart.


  reply	other threads:[~2021-10-13 22:00 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-30  3:47 [PATCH] spraid: initial commit of Ramaxel spraid driver Yanling Song
2021-09-30  5:36 ` Randy Dunlap
2021-10-01  1:03   ` Yanling Song
2021-10-01  4:15 ` Christoph Hellwig
2021-10-08  9:22   ` Yanling Song
2021-10-09  3:58 ` Bart Van Assche
2021-10-09 13:32   ` Yanling Song
2021-10-10  3:52     ` Bart Van Assche
2021-10-11  8:34       ` Yanling Song
2021-10-11 19:40         ` Bart Van Assche
2021-10-12 11:10           ` Yanling Song
2021-10-11 19:54 ` Bart Van Assche
2021-10-12 14:49   ` Yanling Song
2021-10-12 16:59     ` Bart Van Assche
2021-10-13  6:50       ` Yanling Song
2021-10-13 22:00         ` Bart Van Assche [this message]
2021-10-15  5:48           ` Yanling Song
2021-10-20  0:33           ` Yanling Song
2021-10-20  3:24             ` Bart Van Assche
2021-11-03  1:43               ` Yanling Song
2021-11-05 13:02               ` Yanling Song
2021-11-05 16:13                 ` Bart Van Assche
2021-11-06  8:30                   ` Yanling Song

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=9d9d2f95-7782-85a7-b79a-ce481292c451@acm.org \
    --to=bvanassche@acm.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=songyl@ramaxel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.