Holger Hans Peter Freyther wrote:
Doing the stress-testing I described on 4th and 6th of May. A compiled sysmobts binary with your changes is crashing on a talloc_free. zecke/hacks/stress-testing, executing allocate-all-channels will crash the code. I am confident that this is not due a binary incompatible change to the header files (we need to bump the so version of libosmocore in the next cycle)
You are undoing all the lchan->s changes we did based on my review we did from 12th of March to 15th of March. To be honest I find this quite offensive.
The extra msgb_alloc/memcpy to go from primitive to native is wasteful. One should re-write the header around the payload.
The change to introduce the primitives is too big. Otherwise the above two issues could have been spotted with review. My proposal is to introduce primitives inside the sysmoBTS code piece by piece in one primitive per patch.
E.g. introduce a 'native' primitive and the l1sapup, then start converting that to other primitives until there are no native primitives left. Avoid creating a thousand lines switch/case statement. Modern compilers will nicely inline small static methods.
The benefit is that each change can be easily reviewed and stress tested (e.g. compare it with the changeset I did for the sapi queuing), and one avoids such things like undoing lchan->s changes that are burried somewhere in the patch.
hi holger,
i am currently out of time, but i will hopefully find the time to take a look at it and provide reworked patches.
regards,
andreas