[PATCH v2 00/11] common: introduce bthreads, co-operative

Stafford Horne shorne at gmail.com
Wed Mar 3 13:35:54 GMT 2021


On Wed, Mar 03, 2021 at 09:15:47PM +0900, Stafford Horne wrote:
> On Mon, Mar 01, 2021 at 12:00:55PM +0100, Ahmad Fatoum wrote:
> > Hello,
> > 
> > This is v2 of barebox coroutine support:
> >     https://lists.infradead.org/pipermail/barebox/2021-February/035032.html
> > 
> > As discussed with Sascha, if this is to be added, this should be added for
> > all architectures and not be optional. If we have this as integral part,
> > it means we can substitute coroutines for:
> >     - pollers: just wrap the code in a loop
> >     - async pollers: just call a delay function in the loop
> >     - workqueues: assert_command_context yields until in command context
> > 
> > In addition, we will have much less work porting over threaded code from
> > Linux. See the referenced series for an example of a USB mass storage
> > gadget.
> > 
> > To prepare for replacing them, the functionality is renamed to
> > bthreads (as in barebox threads) and is made separate from pollers.
> > 
> > How to add new architecture support:
> > 
> >   - Apply this series or check out https://github.com/a3f/barebox/tree/bthread
> 
> Now that I got a dev environment booting off master I have switched to your
> bthread branch.  I found there is already a commit to remove openrisc in next.
> 
> I will revert this in my branch.
> 
> Is there a timeframe you aim to have this all done?
> 
> Also, It seems networking it not working for me that is ok for the work here,
> but it will be something I have to look into next for OpenRISC.

The openrisc implementation is on this branch, I will send a patch in bit.

  https://github.com/stffrdhrn/barebox/tree/openrisc-bthread

-Stafford



More information about the barebox mailing list