Re: [PATCH] UBI: new module ubiblk: block layer on top of UBI

Artem Bityutskiy
2011-06-29T06:51:20Z

On Tue, 2011-06-28 at 13:35 +0200, David Wagner wrote:
> Hi,
>
> On 06/27/2011 09:26 PM, Artem Bityutskiy wrote:
> > On Fri, 2011-06-24 at 15:34 +0200, david.wagner@free-electrons.com
> > wrote:
> >> + /* Stolen from mtd_blkdevs.c */
> >> + /* Create processing thread */
> >> + dev->thread = kthread_run(ubi_ubiblk_thread, dev, "%s%d_%d",
> >> + "kubiblkd", dev->ubi_num, dev->vol_id);
> >> + if (IS_ERR(dev->thread)) {
> >> + ret = PTR_ERR(dev->thread);
> >> + goto out_thread;
> >> + }
> >
> > Why we need a kernel thread? Could you please describe when exactly it
> > is needed and why we cannot avoid having it?
>
> Do you mean that there could be another/better way ?

No, I just do not understand why it is there. I think this is juts block
layer's design, but I wanted you to explain this - the design, how block
requests are handled, and where exactly the thread is needed. I expected
you just have the explanation.

--
Best Regards,
Artem Bityutskiy