====== Differences ====== This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
soc:2010:peper:journal:week10 [2010/07/27 04:42] peper |
soc:2010:peper:journal:week10 [2010/07/31 15:13] (current) peper |
||
---|---|---|---|
Line 38: | Line 38: | ||
I like the last option most cause it uses the current malloc() implementation, works for tap and doesn't feel so hackish (just sophisticated ;). I am going to implement that soonish unless other ideas arise. | I like the last option most cause it uses the current malloc() implementation, works for tap and doesn't feel so hackish (just sophisticated ;). I am going to implement that soonish unless other ideas arise. | ||
+ | |||
+ | == Update == | ||
+ | |||
+ | "Sophisticated" didn't really work for Josh, but I have come up with something different. I have introduced separate memery pools for normal and DMA memory allocation with an API for switching the latter. | ||
+ | See [[http://git.etherboot.org/?p=people/peper/gpxe.git&a=search&h=refs/heads/drivers&st=commit&s=[malloc]+Introduce+memory+pools+and+hide+internal+API|[malloc] Introduce memory pools and hide internal API]] | ||
=== Smaller issues === | === Smaller issues === | ||
Line 43: | Line 48: | ||
* currently ''gpxe.linux'' binary doesn't contain the ''tap'' driver - easily fixable | * currently ''gpxe.linux'' binary doesn't contain the ''tap'' driver - easily fixable | ||
* out/in* segfault in userspace if ''iopl()'' wasn't called - will probably have to check whether the ioports were initialized on each call | * out/in* segfault in userspace if ''iopl()'' wasn't called - will probably have to check whether the ioports were initialized on each call | ||
+ | |||
+ | == Update == | ||
+ | |||
+ | These have been fixed. Moreover, slighty related to the first one, I have come up with a [[http://git.etherboot.org/?p=people/peper/gpxe.git;a=shortlog;h=refs/heads/buildall|buildall branch]], | ||
+ | which allows building alldrivers builds on all supported arch/platform combinations and also adds a everything target that takes advantage of that and builds everything that I could think of. Should come in handy for testing patches. | ||
+ | The changes are mostly trivial, but if you want to refresh your make-foo have a look at [[http://git.etherboot.org/?p=people/peper/gpxe.git&a=search&h=refs/heads/buildall&st=commit&s=[build]+Properly+handle+multiple+goals+per+BIN+directory|[build] Properly handle multiple goals per BIN directory]]. | ||
+ | |||
+ | |||
+ | === Update === | ||
+ | |||
+ | I have updated pretty much every commit in the [[http://git.etherboot.org/?p=people/peper/gpxe.git;a=shortlog;h=refs/heads/drivers|drivers branch]], adding comments and doing cleanup. | ||
+ |