From: Asai Thambi S P <asamymuthupa@micron.com>
To: Jens Axboe <jaxboe@fusionio.com>
Cc: Christoph Hellwig <hch@infradead.org>,
"Sam Bradshaw (sbradshaw)" <sbradshaw@micron.com>,
"alan@lxorguk.ukuu.org.uk" <alan@lxorguk.ukuu.org.uk>,
"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Jeff Garzik <jgarzik@pobox.com>,
"jmoyer@redhat.com" <jmoyer@redhat.com>
Subject: Re: [PATCH v4] drivers/block/mtip32xx: Adding new driver mtip32xx
Date: Fri, 30 Sep 2011 13:49:30 -0600 [thread overview]
Message-ID: <4E861D4A.9030009@micron.com> (raw)
In-Reply-To: <4E69D519.8070802@fusionio.com>
On 9/9/2011 2:58 AM, Jens Axboe wrote:
> On 2011-09-09 10:54, Christoph Hellwig wrote:
>> On Mon, Aug 22, 2011 at 02:28:11PM -0700, Sam Bradshaw (sbradshaw) wrote:
>>> New patch for mtip32xx driver based on feedback from
>>> Jens Axboe, Christoph Hellwig, and Alan Cox.
>>
>> A few comments that need addressing:
>>
>> - the ioctl handler always returns 0 for the BLKFLSBUF ioctl, without
>> doing anything. Given that the ioctl is supposed to flush all kinds
>> of higher level cached data this is a serious data integrity issue.
>> It must simply do the default -ENOTTY return for it and let the block
>> layer do the right thing.
>> - handling of REQ_FUA / REQ_FLUSH requests is completely broken.
>> There is a weird barrier flag to mtip_hw_submit_io which set the
>> hwardware FUA bit if the FLUSH bit is set on a request.
>> Please take a look at how this should be handled, the
>> Documentation/block/writeback_cache_control.txt file is the canonical
>> resource. Implementing your driver at the make_request layer
>> unfortunately means you will have to do all the hard work yourself.
>> - also the call to blk_queue_flush(queue, 0); from ->make_request for
>> a non-data request is completely wrong.
>
> I noticed both of these flush/fua problems too and have fixed them up.
>
>> - the 64-bit case in fill_command_sg will blow up on big endian
>> systems, please use your current 32-bit case unconditionally
>> - mtip_block_getgeo should just use sector_div instead of the ifdef
>> mess.
>> - please check the driver using sparse, and most importantly the
>> optional endianess checking pass of it. Currently the driver
>> uses plain unsigned int and similar types for little endian
>> hardware structures. Take a look at Documentation/sparse.txt
>> on how to use it.
>> - the mtip_check_surprise_removal check should be unconditional, not
>> under #ifdef CONFIG_HOTPLUG
>
> In general, the dependency on HOTPLUG_PCI_PCIE is odd as well.
For the device to support surprise removal and surprise insertion
(SRSI), need pciehp module loaded.
--
Regards,
Asai Thambi
next prev parent reply other threads:[~2011-09-30 19:49 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-11 18:52 [PATCH v3 2/3] drivers/block/mtip32xx: Adding source for hardware related operations Asai Thambi Samymuthu Pattrayasamy (asamymuthupa) [CONTRACTOR]
2011-08-11 18:52 ` Asai Thambi Samymuthu Pattrayasamy (asamymuthupa) [CONTRACTOR]
2011-08-12 8:42 ` Jens Axboe
2011-08-18 0:18 ` Asai Thambi S P
2011-08-22 21:28 ` [PATCH v4] drivers/block/mtip32xx: Adding new driver mtip32xx Sam Bradshaw (sbradshaw)
2011-08-22 21:28 ` Sam Bradshaw (sbradshaw)
2011-09-01 19:43 ` Jeff Moyer
2011-09-01 19:43 ` Jeff Moyer
2011-09-01 19:46 ` Jens Axboe
2011-09-09 8:54 ` Christoph Hellwig
2011-09-09 8:58 ` Jens Axboe
2011-09-09 9:02 ` Christoph Hellwig
2011-09-09 15:10 ` Sam Bradshaw (sbradshaw)
2011-09-09 15:10 ` Sam Bradshaw (sbradshaw)
2011-09-12 15:02 ` Christoph Hellwig
2011-09-12 18:25 ` Jens Axboe
2011-09-30 13:33 ` Christoph Hellwig
2011-09-30 19:45 ` Asai Thambi S P
2011-09-30 21:20 ` Jens Axboe
2011-09-30 19:49 ` Asai Thambi S P [this message]
2011-09-13 12:49 ` Christoph Hellwig
2011-09-13 16:46 ` Eric Seppanen
2011-09-13 21:03 ` Jens Axboe
[not found] <2A9BE4FF6209B644B6F8EB62DE6AEA1E07765C71@ntxfrembx01.micron.com>
2011-09-01 22:23 ` Sam Bradshaw
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=4E861D4A.9030009@micron.com \
--to=asamymuthupa@micron.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=hch@infradead.org \
--cc=jaxboe@fusionio.com \
--cc=jgarzik@pobox.com \
--cc=jmoyer@redhat.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sbradshaw@micron.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.