[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [UNIKRAFT PATCH 2/4] lib/uksched: create and delete thread-local storage area



Hi Costin, Simon,

regarding the location of include/uk/arch/thread.h:

First of all, I don't care whether it's called thread.h or tls.h, I'm happy to name it tls.h for now, and then, if we add further thread switching stuff to it later, we can always rename it at that point.

However, regarding the location, I've been thinking about this a bit again, and I see three suggestions on the table right now (tell me if I'm missing one):

1) Putting thread.h into plat/common/include/x86

2) Putting thread.h into include/uk/plat

3) Putting thread.h into include/uk/arch

My original understand was that Costin's suggestion was to go for 1), and I said I don't care too much either way. However, now that I thought about it: that won't work, because libraries can't access headers from the plat/ hierarchy. So if we wanted to put the code there, we'd have to "punch a hole" into the separation between lib/ and plat/ by adding plat/common/include explicitly to the include path of uksched. That sounds like just calling for trouble and establishing a precedent that might come to haunt us.

That leaves 2) and 3). I don't think 2) makes any sense, because thread.h contains three functions, all three of which are architecture-specific and none of which are platform-specific. So, after all, I think 3) makes the most sense, which is where they are now in v1.

Cheers,
Florian

_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.