Re: [PATCH v3 20/41] fbdev/pvr2fb: convert put_page() to put_user_page*()

2019-08-09 Thread Bartlomiej Zolnierkiewicz
sion, as described in commit fc1d8e7cca2d > ("mm: introduce put_user_page*(), placeholder versions"). > > Cc: Bartlomiej Zolnierkiewicz > Cc: Kees Cook > Cc: Al Viro > Cc: Bhumika Goyal > Cc: Arvind Yadav > Cc: dri-de...@lists.freedesktop.org > Cc: linux-fb..

Re: [PATCH V13 00/10] mmc: Add Command Queue support

2017-11-16 Thread Bartlomiej Zolnierkiewicz
ed request to be issued directly from within ->done() > callback of the current request. Tested-by: Bartlomiej Zolnierkiewicz [ for non-CQE changes ] Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 00/12 v5] Multiqueue for MMC/SD

2017-11-14 Thread Bartlomiej Zolnierkiewicz
On Tuesday, November 14, 2017 01:17:34 PM Bartlomiej Zolnierkiewicz wrote: > This works much better than initial version and a simple dd read > test shows more consistent results than with vanilla kernel. > > However there are still some issues: > > 1. 30 seconds delay on &q

Re: [PATCH 00/12 v5] Multiqueue for MMC/SD

2017-11-14 Thread Bartlomiej Zolnierkiewicz
ed, 557 insertions(+), 568 deletions(-) This works much better than initial version and a simple dd read test shows more consistent results than with vanilla kernel. However there are still some issues: 1. 30 seconds delay on "Waiting for /dev to be fully populated..." during boot

Re: [PATCH V9 13/15] mmc: block: Add CQE and blk-mq support

2017-10-05 Thread Bartlomiej Zolnierkiewicz
On Thursday, October 05, 2017 02:00:48 PM Bartlomiej Zolnierkiewicz wrote: > > > > I am trying to wrap my head around this large patch. The size makes it > > > > hard but I am doing my best. > > > > > > I also think that this patch should be split on

Re: [PATCH V9 13/15] mmc: block: Add CQE and blk-mq support

2017-10-05 Thread Bartlomiej Zolnierkiewicz
Hi, On Wednesday, October 04, 2017 07:23:07 PM Hunter, Adrian wrote: > > -Original Message- > > From: Bartlomiej Zolnierkiewicz [mailto:b.zolnier...@samsung.com] > > Sent: Wednesday, October 4, 2017 12:40 PM > > To: Linus Walleij > > Cc: Hunter, Adrian

Re: [PATCH V9 13/15] mmc: block: Add CQE and blk-mq support

2017-10-05 Thread Bartlomiej Zolnierkiewicz
p the new Kconfig option for > enabling the blkmq path from MMC. This seems premature - the new Kconfig option change for "mmc-mq" should belong to the patch adding "mmc-mq" support (otherwise it may just confuse users who enable it). Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH V9 13/15] mmc: block: Add CQE and blk-mq support

2017-10-04 Thread Bartlomiej Zolnierkiewicz
l Also the patchset itself has never worked on my setup: https://www.spinics.net/lists/linux-mmc/msg42759.html > MQ code that doesn't perform and therefore we cannot switch seamlessly > to MQ. I think that switching seamlessly to blk-mq in short/medium-term is not possible (SCSI tried and failed to do so). The changes to the old path are very complex and besides affecting performance they also affect error recovery handling (which needs to be tested properly before the switch). Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 1/5] mmc: core: Delete bounce buffer Kconfig option

2017-05-15 Thread Bartlomiej Zolnierkiewicz
++ b/include/linux/mmc/host.h > @@ -310,6 +310,7 @@ struct mmc_host { > /* host specific block data */ > unsigned intmax_seg_size; /* see > blk_queue_max_segment_size */ > unsigned short max_segs; /* see blk_queue_max_segments */ > + booldisable_bounce; /* disable bounce buffers */ > unsigned short unused; > unsigned intmax_req_size; /* maximum number of bytes in > one req */ > unsigned intmax_blk_size; /* maximum size of one mmc > block */ Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 3/3] ide-pm: always pass 0 error to ide_complete_rq in ide_do_devset

2017-04-26 Thread Bartlomiej Zolnierkiewicz
On Wednesday, April 26, 2017 09:34:22 AM Christoph Hellwig wrote: > The caller only looks at the scsi_request result field anyway. > > Signed-off-by: Christoph Hellwig Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute P

Re: [PATCH 2/3] ide-pm: always pass 0 error to __blk_end_request_all

2017-04-26 Thread Bartlomiej Zolnierkiewicz
> Signed-off-by: Christoph Hellwig Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 11/16] mmc: block: shuffle retry and error handling

2017-03-01 Thread Bartlomiej Zolnierkiewicz
On Wednesday, March 01, 2017 04:52:38 PM Bartlomiej Zolnierkiewicz wrote: > I assume that the problem got introduced even earlier, > commit 4515dc6 ("mmc: block: shuffle retry and error > handling") just makes it happen every time. It seems to be introduced by patch #6. P

Re: [PATCH 11/16] mmc: block: shuffle retry and error handling

2017-03-01 Thread Bartlomiej Zolnierkiewicz
On Wednesday, March 01, 2017 04:52:38 PM Bartlomiej Zolnierkiewicz wrote: > I assume that the problem got introduced even earlier, > commit 4515dc6 ("mmc: block: shuffle retry and error > handling") just makes it happen every time. Patch #16 makes it worse as now I g

Re: [PATCH 11/16] mmc: block: shuffle retry and error handling

2017-03-01 Thread Bartlomiej Zolnierkiewicz
On Wednesday, March 01, 2017 12:45:57 PM Bartlomiej Zolnierkiewicz wrote: > > Hi, > > On Tuesday, February 28, 2017 06:45:20 PM Bartlomiej Zolnierkiewicz wrote: > > On Thursday, February 09, 2017 04:33:58 PM Linus Walleij wrote: > > > Instead of doing retries at the sa

Re: [PATCH 15/16] mmc: queue: issue requests in massive parallel

2017-03-01 Thread Bartlomiej Zolnierkiewicz
old_req, 0, > brq->data.bytes_xfered); > - /* > - * If the blk_end_request function returns non-zero even > - * though all data has been transferred and no errors > - * were ret

Re: [PATCH 11/16] mmc: block: shuffle retry and error handling

2017-03-01 Thread Bartlomiej Zolnierkiewicz
Hi, On Tuesday, February 28, 2017 06:45:20 PM Bartlomiej Zolnierkiewicz wrote: > On Thursday, February 09, 2017 04:33:58 PM Linus Walleij wrote: > > Instead of doing retries at the same time as trying to submit new > > requests, do the retries when the request is reported as compl

Re: [PATCH 11/16] mmc: block: shuffle retry and error handling

2017-02-28 Thread Bartlomiej Zolnierkiewicz
fter this change we can end up queuing more work for kthread from the kthread worker itself and wait inside it for this nested work to complete. I hope that you've tested it with simulating errors and it all works. Under this assumption: Reviewed-by: Bartlomiej Zolnierkiewicz Also some

Re: [PATCH 13/16] mmc: queue: issue struct mmc_queue_req items

2017-02-28 Thread Bartlomiej Zolnierkiewicz
blk_issue_rq(struct mmc_queue *mq, struct request *req); > +void mmc_blk_issue_rq(struct mmc_queue_req *mq_rq); > > #endif > diff --git a/drivers/mmc/core/queue.c b/drivers/mmc/core/queue.c > index c9f28de7b0f4..c4e1ced55796 100644 > --- a/drivers/mmc/core/queue.c > +++ b/drivers/mmc/core/queue.c > @@ -54,6 +54,7 @@ static int mmc_queue_thread(void *d) > struct mmc_queue *mq = d; > struct request_queue *q = mq->queue; > bool claimed_host = false; > + struct mmc_queue_req *mq_rq; > > current->flags |= PF_MEMALLOC; > > @@ -65,7 +66,8 @@ static int mmc_queue_thread(void *d) > set_current_state(TASK_INTERRUPTIBLE); > req = blk_fetch_request(q); > mq->asleep = false; > - mq->mqrq_cur->req = req; > + mq_rq = mq->mqrq_cur; > + mq_rq->req = req; > spin_unlock_irq(q->queue_lock); > > if (req) { > @@ -74,7 +76,7 @@ static int mmc_queue_thread(void *d) > if (!claimed_host) > mmc_get_card(mq->card); > set_current_state(TASK_RUNNING); > - mmc_blk_issue_rq(mq, req); > + mmc_blk_issue_rq(mq_rq); > cond_resched(); > /* >* Current request becomes previous request Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 14/16] mmc: queue: get/put struct mmc_queue_req

2017-02-28 Thread Bartlomiej Zolnierkiewicz
make > our work efficient and parallel. > > Rewrite the mechanism to have a pool of struct mmc_queue_req > and take one when we need one and put it back when we don't > need it anymore. > > Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej Zolnierkiewicz Best regards,

Re: [PATCH 12/16] mmc: queue: stop flushing the pipeline with NULL

2017-02-28 Thread Bartlomiej Zolnierkiewicz
gt; + } > mq->mqrq_prev->brq.mrq.data = NULL; > mq->mqrq_prev->req = NULL; > swap(mq->mqrq_prev, mq->mqrq_cur); > @@ -97,6 +103,10 @@ static int mmc_queue_thread(void *d) > down(&mq->thread_sem); > } > } while (1); > + > + if (claimed_host) claimed_host is never set to true > + mmc_put_card(mq->card); > + > up(&mq->thread_sem); > > return 0; > diff --git a/include/linux/mmc/core.h b/include/linux/mmc/core.h > index 55b45dcddee6..af651e723ba2 100644 > --- a/include/linux/mmc/core.h > +++ b/include/linux/mmc/core.h > @@ -160,9 +160,8 @@ struct mmc_async_req; > > void mmc_finalize_areq(struct kthread_work *work); > int mmc_restart_areq(struct mmc_host *host, struct mmc_async_req *areq); > -struct mmc_async_req *mmc_start_areq(struct mmc_host *host, > - struct mmc_async_req *areq, > - enum mmc_blk_status *ret_stat); > +int mmc_start_areq(struct mmc_host *host, > +struct mmc_async_req *areq); > void mmc_wait_for_req(struct mmc_host *host, struct mmc_request *mrq); > int mmc_wait_for_cmd(struct mmc_host *host, struct mmc_command *cmd, > int retries); Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 08/16] mmc: core: do away with is_new_req

2017-02-28 Thread Bartlomiej Zolnierkiewicz
On Thursday, February 09, 2017 04:33:55 PM Linus Walleij wrote: > The host context member "is_new_req" is only assigned values, > never checked. Delete it. > > Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz

Re: [PATCH 06/16] mmc: core: replace waitqueue with worker

2017-02-28 Thread Bartlomiej Zolnierkiewicz
eport block requests as finished directly from > the worker. > > Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 07/16] mmc: core: do away with is_done_rcv

2017-02-28 Thread Bartlomiej Zolnierkiewicz
ceiving data, and when the finalization work > has run and completed the completion, we are indeed done. > > Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 09/16] mmc: core: kill off the context info

2017-02-28 Thread Bartlomiej Zolnierkiewicz
On Thursday, February 09, 2017 04:33:56 PM Linus Walleij wrote: > The last member of the context info: is_waiting_last_req is > just assigned values, never checked. Delete that and the whole > context info as a result. > > Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej

Re: [PATCH 02/16] mmc: core: refactor asynchronous request finalization

2017-02-28 Thread Bartlomiej Zolnierkiewicz
-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 10/16] mmc: queue: simplify queue logic

2017-02-28 Thread Bartlomiej Zolnierkiewicz
> Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 05/16] mmc: core: add a kthread for completing requests

2017-02-28 Thread Bartlomiej Zolnierkiewicz
adds the worker, later patches will make use of > it. > > Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 03/16] mmc: core: refactor mmc_request_done()

2017-02-28 Thread Bartlomiej Zolnierkiewicz
gt;block; > finalize; > > Which is simpler code. > > Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: [PATCH 01/16] mmc: core: move some code in mmc_start_areq()

2017-02-28 Thread Bartlomiej Zolnierkiewicz
le > on all code paths, so we might as well just do that immediately > after calling mmc_finalize_areq(). > > Signed-off-by: Linus Walleij Reviewed-by: Bartlomiej Zolnierkiewicz Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics

Re: remove the cmd_type field from struct request

2017-02-01 Thread Bartlomiej Zolnierkiewicz
). > libata that would need to be added, before we can git rm drivers/ide/ ? I was trying to start the removal with [1] last year but it has been NAK-ed by DaveM who seems to want to keep drivers/ide/ forever [2]. [1] https://lkml.org/lkml/2016/2/4/409 [2] https://lkml.org/lkml/2016/

[PATCH PoCv2 0/2] mmc: add blk-mq support

2017-01-03 Thread Bartlomiej Zolnierkiewicz
dropped support for qdepth == 2 as it hasn't survived the forward porting (it was ugly & not optimal anyway, rewrite to try hwqueue == 2 idea is on TODO) - misc cleanups Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics Bartlomiej

[PATCH PoCv2 2/2] mmc-mq: initial blk-mq support

2017-01-03 Thread Bartlomiej Zolnierkiewicz
Signed-off-by: Bartlomiej Zolnierkiewicz --- drivers/mmc/core/block.c| 104 -- drivers/mmc/core/block.h| 3 +- drivers/mmc/core/bus.c | 3 +- drivers/mmc/core/core.c | 120 +--- drivers/mmc/core

[PATCH PoCv2 1/2] Revert "mmc: queue: Share mmc request array between partitions"

2017-01-03 Thread Bartlomiej Zolnierkiewicz
Shared mmc queue changes break mmc-mq ones currently. This reverts commit 6540ce8420b7790ef0696ccfd6e911df7ba84c33. Conflicts: drivers/mmc/core/queue.c Signed-off-by: Bartlomiej Zolnierkiewicz --- drivers/mmc/core/block.c | 11 +-- drivers/mmc/core/queue.c | 252

Re: [PATCH v2] RFD: switch MMC/SD to use blk-mq multiqueueing

2016-12-20 Thread Bartlomiej Zolnierkiewicz
-mq handling of schedulers is only now being worked on). You may also consider re-basing your work on Adrian's swcmdq patches (up to "mmc: core: Do not prepare a new request twice" patch) as they cleanup MMC core queuing code significantly (some of the patches have been merged ups

Re: [PATCH 00/14] introduce the BFQ-v0 I/O scheduler as an extra scheduler

2016-10-28 Thread Bartlomiej Zolnierkiewicz
lk-mq work for MMC. I'm just quite busy with other things at the moment. > That still won't solve the issue of lying about it and causing IO > scheduler confusion, of course. > > Also, 4.8 and newer have support for BLK_MQ_F_BLOCKING, if you need to > block in ->queue_

Re: [PATCH V2 00/22] Replace the CFQ I/O Scheduler with BFQ

2016-09-05 Thread Bartlomiej Zolnierkiewicz
is very interesting and needs to be investigated further). Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics -- To unsubscribe from this list: send the line "unsubscribe linux-block" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html