misc: adjust formatting

This commit is contained in:
2026-03-12 20:34:31 +00:00
parent 3f21e888d6
commit 7d4cede788
5 changed files with 51 additions and 20 deletions

View File

@@ -16,11 +16,14 @@
causes garbage symbols to be generated. causes garbage symbols to be generated.
*/ */
#define DEFINE(sym, val) \ #define DEFINE(sym, val) \
asm volatile("\n.global " #sym "\n.type " #sym ", @object" "\n.set " #sym ", %a0" : : "i" (val)) asm volatile("\n.global " #sym "\n.type " #sym \
", @object" \
"\n.set " #sym ", %a0" \
: \
: "i"(val))
#define OFFSET(sym, str, mem) \ #define OFFSET(sym, str, mem) DEFINE(sym, offsetof(str, mem))
DEFINE(sym, offsetof(str, mem))
static void __used common(void) static void __used common(void)
{ {

View File

@@ -10,7 +10,7 @@ size_t ringbuffer_unread(struct ringbuffer *ring_buffer)
if (ring_buffer->r_read_ptr > ring_buffer->r_write_ptr) { if (ring_buffer->r_read_ptr > ring_buffer->r_write_ptr) {
return (ring_buffer->r_size - ring_buffer->r_read_ptr) return (ring_buffer->r_size - ring_buffer->r_read_ptr)
+ ring_buffer->r_write_ptr; + ring_buffer->r_write_ptr;
} else { } else {
return (ring_buffer->r_write_ptr - ring_buffer->r_read_ptr); return (ring_buffer->r_write_ptr - ring_buffer->r_read_ptr);
} }
@@ -26,7 +26,7 @@ size_t ringbuffer_avail(struct ringbuffer *ring_buffer)
return ring_buffer->r_read_ptr - ring_buffer->r_write_ptr - 1; return ring_buffer->r_read_ptr - ring_buffer->r_write_ptr - 1;
} else { } else {
return (ring_buffer->r_size - ring_buffer->r_write_ptr) return (ring_buffer->r_size - ring_buffer->r_write_ptr)
+ ring_buffer->r_read_ptr - 1; + ring_buffer->r_read_ptr - 1;
} }
} }
@@ -46,7 +46,11 @@ static inline void increment_write(struct ringbuffer *ring_buffer)
} }
} }
size_t ringbuffer_read(struct ringbuffer *ring_buffer, size_t size, void *p, mango_flags_t flags) size_t ringbuffer_read(
struct ringbuffer *ring_buffer,
size_t size,
void *p,
mango_flags_t flags)
{ {
if (!ring_buffer) { if (!ring_buffer) {
return 0; return 0;
@@ -59,7 +63,9 @@ size_t ringbuffer_read(struct ringbuffer *ring_buffer, size_t size, void *p, man
while (collected < size) { while (collected < size) {
spin_lock_irqsave(&ring_buffer->r_lock, &lock_flags); spin_lock_irqsave(&ring_buffer->r_lock, &lock_flags);
while (ringbuffer_unread(ring_buffer) > 0 && collected < size) { while (ringbuffer_unread(ring_buffer) > 0 && collected < size) {
buffer[collected] = ring_buffer->r_buffer[ring_buffer->r_read_ptr]; buffer[collected]
= ring_buffer
->r_buffer[ring_buffer->r_read_ptr];
increment_read(ring_buffer); increment_read(ring_buffer);
collected++; collected++;
} }
@@ -67,7 +73,9 @@ size_t ringbuffer_read(struct ringbuffer *ring_buffer, size_t size, void *p, man
wakeup_queue(&ring_buffer->r_wait_writers); wakeup_queue(&ring_buffer->r_wait_writers);
if (flags & S_NOBLOCK) { if (flags & S_NOBLOCK) {
spin_unlock_irqrestore(&ring_buffer->r_lock, lock_flags); spin_unlock_irqrestore(
&ring_buffer->r_lock,
lock_flags);
break; break;
} }
@@ -87,7 +95,11 @@ size_t ringbuffer_read(struct ringbuffer *ring_buffer, size_t size, void *p, man
return collected; return collected;
} }
size_t ringbuffer_write(struct ringbuffer *ring_buffer, size_t size, const void *p, mango_flags_t flags) size_t ringbuffer_write(
struct ringbuffer *ring_buffer,
size_t size,
const void *p,
mango_flags_t flags)
{ {
if (!ring_buffer || !size) { if (!ring_buffer || !size) {
return 0; return 0;
@@ -101,7 +113,8 @@ size_t ringbuffer_write(struct ringbuffer *ring_buffer, size_t size, const void
spin_lock_irqsave(&ring_buffer->r_lock, &lock_flags); spin_lock_irqsave(&ring_buffer->r_lock, &lock_flags);
while (ringbuffer_avail(ring_buffer) > 0 && written < size) { while (ringbuffer_avail(ring_buffer) > 0 && written < size) {
ring_buffer->r_buffer[ring_buffer->r_write_ptr] = buffer[written]; ring_buffer->r_buffer[ring_buffer->r_write_ptr]
= buffer[written];
increment_write(ring_buffer); increment_write(ring_buffer);
written++; written++;
} }
@@ -109,7 +122,9 @@ size_t ringbuffer_write(struct ringbuffer *ring_buffer, size_t size, const void
wakeup_queue(&ring_buffer->r_wait_readers); wakeup_queue(&ring_buffer->r_wait_readers);
if (flags & S_NOBLOCK) { if (flags & S_NOBLOCK) {
spin_unlock_irqrestore(&ring_buffer->r_lock, lock_flags); spin_unlock_irqrestore(
&ring_buffer->r_lock,
lock_flags);
break; break;
} }

View File

@@ -27,7 +27,7 @@ struct cpu_data {
/* maximum number of processor cores that the kernel can support. /* maximum number of processor cores that the kernel can support.
TODO move to build config option */ TODO move to build config option */
#define CPU_MAX 128 #define CPU_MAX 128
#define this_cpu() (ml_cpu_block_get_id(ml_this_cpu())) #define this_cpu() (ml_cpu_block_get_id(ml_this_cpu()))
@@ -50,7 +50,7 @@ static inline cycles_t cycles_diff(cycles_t then, cycles_t now)
return now >= then ? now - then : (CYCLES_MAX - then) + now; return now >= then ? now - then : (CYCLES_MAX - then) + now;
} }
#define irq_enable() ml_int_enable() #define irq_enable() ml_int_enable()
#define irq_disable() ml_int_disable() #define irq_disable() ml_int_disable()
extern void preempt_disable(void); extern void preempt_disable(void);

View File

@@ -24,12 +24,21 @@ extern kern_status_t ringbuffer_deinit(struct ringbuffer *buf);
extern size_t ringbuffer_unread(struct ringbuffer *buf); extern size_t ringbuffer_unread(struct ringbuffer *buf);
extern size_t ringbuffer_avail(struct ringbuffer *buf); extern size_t ringbuffer_avail(struct ringbuffer *buf);
extern size_t ringbuffer_read(struct ringbuffer *buf, size_t size, void *buffer, mango_flags_t flags); extern size_t ringbuffer_read(
extern size_t ringbuffer_write(struct ringbuffer *buf, size_t size, const void *buffer, mango_flags_t flags); struct ringbuffer *buf,
size_t size,
void *buffer,
mango_flags_t flags);
extern size_t ringbuffer_write(
struct ringbuffer *buf,
size_t size,
const void *buffer,
mango_flags_t flags);
/* TODO */ /* TODO */
//extern size_t ringbuffer_peek(struct ringbuffer *buf, size_t at, size_t size, void *buffer); // extern size_t ringbuffer_peek(struct ringbuffer *buf, size_t at, size_t size,
//extern size_t ringbuffer_skip(struct ringbuffer *buf, size_t count); // void *buffer); extern size_t ringbuffer_skip(struct ringbuffer *buf, size_t
// count);
extern int ringbuffer_write_would_block(struct ringbuffer *buf); extern int ringbuffer_write_would_block(struct ringbuffer *buf);

View File

@@ -49,8 +49,12 @@ static void worker_func()
continue; continue;
} }
struct queue_entry *work_item_qe = queue_pop_front(&this_cpu->c_wq.wq_queue); struct queue_entry *work_item_qe
struct work_item *work_item = QUEUE_CONTAINER(struct work_item, w_head, work_item_qe); = queue_pop_front(&this_cpu->c_wq.wq_queue);
struct work_item *work_item = QUEUE_CONTAINER(
struct work_item,
w_head,
work_item_qe);
spin_unlock_irqrestore(&this_cpu->c_wq.wq_lock, flags); spin_unlock_irqrestore(&this_cpu->c_wq.wq_lock, flags);
put_cpu(this_cpu); put_cpu(this_cpu);