Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1573370

Re: [PATCH 3/6] async_tx: Handle DMA devices having support for fewer PQ coefficients

From Dan Williams <dan.j.williams@intel.com>
Newsgroups linux.kernel
Subject Re: [PATCH 3/6] async_tx: Handle DMA devices having support for fewer PQ coefficients
Date 2017-02-03 19:50 +0100
Message-ID <t6R5M-5tr-11@gated-at.bofh.it> (permalink)
References <t6hvj-7m6-7@gated-at.bofh.it> <t6hvj-7m6-15@gated-at.bofh.it> <t6iKJ-5L-9@gated-at.bofh.it> <t6R5M-5tr-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Fri, Feb 3, 2017 at 2:59 AM, Anup Patel <anup.patel@broadcom.com> wrote:
>
>
> On Thu, Feb 2, 2017 at 11:31 AM, Dan Williams <dan.j.williams@intel.com>
> wrote:
>>
>> On Wed, Feb 1, 2017 at 8:47 PM, Anup Patel <anup.patel@broadcom.com>
>> wrote:
>> > The DMAENGINE framework assumes that if PQ offload is supported by a
>> > DMA device then all 256 PQ coefficients are supported. This assumption
>> > does not hold anymore because we now have BCM-SBA-RAID offload engine
>> > which supports PQ offload with limited number of PQ coefficients.
>> >
>> > This patch extends async_tx APIs to handle DMA devices with support
>> > for fewer PQ coefficients.
>> >
>> > Signed-off-by: Anup Patel <anup.patel@broadcom.com>
>> > Reviewed-by: Scott Branden <scott.branden@broadcom.com>
>> > ---
>> >  crypto/async_tx/async_pq.c          |  3 +++
>> >  crypto/async_tx/async_raid6_recov.c | 12 ++++++++++--
>> >  include/linux/dmaengine.h           | 19 +++++++++++++++++++
>> >  include/linux/raid/pq.h             |  3 +++
>> >  4 files changed, 35 insertions(+), 2 deletions(-)
>>
>> So, I hate the way async_tx does these checks on each operation, and
>> it's ok for me to say that because it's my fault. Really it's md that
>> should be validating engine offload capabilities once at the beginning
>> of time. I'd rather we move in that direction than continue to pile
>> onto a bad design.
>
>
> Yes, indeed. All async_tx APIs have lot of checks and for high throughput
> RAID offload engine these checks can add some overhead.
>
> I think doing checks in Linux md would be certainly better but this would
> mean lot of changes in Linux md as well as remove checks in async_tx.
>
> Also, async_tx APIs should not find DMA channel on its own instead it
> should rely on Linux md to provide DMA channel pointer as parameter.
>
> It's better to do checks cleanup in async_tx as separate patchset and
> keep this patchset simple.

That's been the problem with async_tx being broken like this for
years. Once you get this "small / simple" patch upstream, that
arguably makes async_tx a little bit worse, there is no longer any
motivation to fix the underlying issues. If you care about the long
term health of raid offload and are enabling new hardware support you
should first tackle the known problems with it before adding new
features.

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/6] Broadcom SBA RAID support Anup Patel <anup.patel@broadcom.com> - 2017-02-02 05:50 +0100
  [PATCH 3/6] async_tx: Handle DMA devices having support for fewer PQ coefficients Anup Patel <anup.patel@broadcom.com> - 2017-02-02 05:50 +0100
    Re: [PATCH 3/6] async_tx: Handle DMA devices having support for fewer  PQ coefficients Dan Williams <dan.j.williams@intel.com> - 2017-02-02 07:10 +0100
      Re: [PATCH 3/6] async_tx: Handle DMA devices having support for fewer  PQ coefficients Anup Patel <anup.patel@broadcom.com> - 2017-02-03 12:10 +0100
      Re: [PATCH 3/6] async_tx: Handle DMA devices having support for fewer  PQ coefficients Dan Williams <dan.j.williams@intel.com> - 2017-02-03 19:50 +0100
        Re: [PATCH 3/6] async_tx: Handle DMA devices having support for fewer  PQ coefficients Anup Patel <anup.patel@broadcom.com> - 2017-02-06 05:00 +0100
  [PATCH 1/6] mailbox: Add new API mbox_channel_device() for clients Anup Patel <anup.patel@broadcom.com> - 2017-02-02 05:50 +0100
    Re: [PATCH 1/6] mailbox: Add new API mbox_channel_device() for clients Jassi Brar <jassisinghbrar@gmail.com> - 2017-02-03 13:10 +0100
      Re: [PATCH 1/6] mailbox: Add new API mbox_channel_device() for clients Anup Patel <anup.patel@broadcom.com> - 2017-02-06 05:30 +0100
  [PATCH 4/6] async_tx: Fix DMA_PREP_FENCE usage in do_async_gen_syndrome() Anup Patel <anup.patel@broadcom.com> - 2017-02-02 05:50 +0100
  [PATCH 6/6] dt-bindings: Add DT bindings document for Broadcom SBA RAID driver Anup Patel <anup.patel@broadcom.com> - 2017-02-02 05:50 +0100
  Re: [PATCH 5/6] dmaengine: Add Broadcom SBA RAID driver Vinod Koul <vinod.koul@intel.com> - 2017-02-05 07:10 +0100
    Re: [PATCH 5/6] dmaengine: Add Broadcom SBA RAID driver Anup Patel <anup.patel@broadcom.com> - 2017-02-06 13:10 +0100
      Re: [PATCH 5/6] dmaengine: Add Broadcom SBA RAID driver Vinod Koul <vinod.koul@intel.com> - 2017-02-06 18:00 +0100
        Re: [PATCH 5/6] dmaengine: Add Broadcom SBA RAID driver Anup Patel <anup.patel@broadcom.com> - 2017-02-07 07:10 +0100

csiph-web