Re: Slow I/O on USB media after commit f664a3cc17b7d0a2bc3b3ab96181e1029b0ec0e6

Andrea Vai
2019-11-04T16:00:59Z

[-- Attachment #1: Type: text/plain, Size: 2368 bytes --]

Il giorno ven, 27/09/2019 alle 17.47 +0200, Andrea Vai ha scritto:
> Il giorno mer, 25/09/2019 alle 21.36 +0200, Jens Axboe ha scritto:
> > On 9/25/19 9:30 PM, Alan Stern wrote:
> > [...]
> > >
> > > I have attached the two patches to this email. You should start
> > with a
> > > recent kernel source tree and apply the patches by doing:
> > >
> > > git apply patch1 patch2
> > >
> > > or something similar. Then build a kernel from the new source
> > code and
> > > test it.
> > >
> > > Ultimately, if nobody can find a way to restore the sequential
> I/O
> > > behavior we had prior to commit f664a3cc17b7, that commit may
> have
> > to
> > > be reverted.
> >
> > Don't use patch1, it's buggy. patch2 should be enough to test the
> > theory.

As I didn't have any answer, I am quoting my last reply here:

>
> Sorry, but if I cd into the "linux" directory and run the command
>
> # git apply -v patch2
>
> the result is that the patch cannot be applied correctly:
>
> --------------------------------------------------------------------
> ----------
> Controllo della patch block/blk-mq.c in corso...
> error: durante la ricerca per:
> ?
> static blk_qc_t blk_mq_make_request(struct request_queue *q, struct
> bio *bio)?
> {?
> const int is_sync = op_is_sync(bio->bi_opf);?
> const int is_flush_fua = op_is_flush(bio->bi_opf);?
> struct blk_mq_alloc_data data = { .flags = 0};?
> struct request *rq;?
>
> error: patch non riuscita: block/blk-mq.c:1931
> error: block/blk-mq.c: la patch non si applica correttamente
> --------------------------------------------------------------------
> ----------
>
> The "linux" directory is the one generated by a fresh git clone:
>
> git clone
> git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>
> What am I doing wrong?
>

Meanwhile, Alan tried to help me and gave me another patch (attached),
which doesn't work too, but gives a different error: "The git diff
header does not contain information about the file once removed 1
initial component of the path (row 14)" (actually, this is my
translation from the original message in Italian: "error:
l'intestazione git diff non riporta le informazioni sul file una volta
rimosso 1 componente iniziale del percorso (riga 14)")

I tested the two patches after a fresh git clone today, a few minutes
ago.

What can I do?

Thank you,
Bye
Andrea

[-- Attachment #2: patch2_alan --]
[-- Type: message/rfc822, Size: 296 bytes --]

From: Hannes Reinecke <hare@suse.com>
Subject: No Subject
Date: Mon, 04 Nov 2019 16:58:21 +0100
Message-ID: <fe072bc69e13435573d824133c3981f8841cf2c7.camel@suse.com>