#include <sys/types.h>
#include <debug.h>
+#include <delay.h>
-#include <osmocore/msgb.h>
-
-#include <calypso/backlight.h>
+#include <osmocom/core/msgb.h>
#define NO_TALLOC
void *_talloc_zero(void *ctx, unsigned int size, const char *name)
{
unsigned int i;
+
if (size > sizeof(struct msgb) + MSGB_DATA_SIZE)
goto panic;
- while (1) {
- for (i = 0; i < ARRAY_SIZE(msgs); i++) {
- if (!msgs[i].allocated) {
- msgs[i].allocated = 1;
- memset(&msgs[i].msg, 0, sizeof(&msgs[i].msg));
- memset(&msgs[i].buf, 0, sizeof(&msgs[i].buf));
- return &msgs[i].msg;
- }
+ for (i = 0; i < ARRAY_SIZE(msgs); i++) {
+ if (!msgs[i].allocated) {
+ msgs[i].allocated = 1;
+ memset(&msgs[i].msg, 0, sizeof(&msgs[i].msg));
+ memset(&msgs[i].buf, 0, sizeof(&msgs[i].buf));
+ return &msgs[i].msg;
}
- cons_puts("unable to allocate msgb\n");
- bl_level(++i % 50);
- delay_ms(50);
}
+
panic:
- return NULL;
+ cons_puts("unable to allocate msgb\n");
+ while (1);
+
+ return NULL; /* not reached */
}
void talloc_free(void *msg)
{