Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 551 → Rev 552

/kernel/trunk/tools/config.py
39,7 → 39,7
 
def print_title(self):
if not self.printed:
sys.stdout.write("*** %s ***\n" % self.title)
sys.stdout.write("\n*** %s ***\n" % self.title)
self.printed = True
 
def set_title(self, text):
312,7 → 312,7
if re.match(r'^#[^#]', line):
# Last comment before question will be displayed to the user
comment = line[1:].strip()
elif line.startswith('##'):
elif line.startswith('## '):
# Set title of the dialog window
dlg.set_title(line[2:].strip())
/kernel/trunk/generic/include/synch/spinlock.h
35,10 → 35,13
 
#ifdef CONFIG_SMP
struct spinlock {
#ifdef CONFIG_DEBUG_SPINLOCK
char *name;
#endif
int val;
};
 
extern void spinlock_initialize(spinlock_t *sl);
extern void spinlock_initialize(spinlock_t *sl, char *name);
extern void spinlock_lock(spinlock_t *sl);
extern int spinlock_trylock(spinlock_t *sl);
extern void spinlock_unlock(spinlock_t *sl);
/kernel/trunk/generic/src/console/chardev.c
39,7 → 39,7
void chardev_initialize(chardev_t *chardev, chardev_operations_t *op)
{
waitq_initialize(&chardev->wq);
spinlock_initialize(&chardev->lock);
spinlock_initialize(&chardev->lock, "chardev");
chardev->counter = 0;
chardev->index = 0;
chardev->op = op;
/kernel/trunk/generic/src/console/kconsole.c
92,7 → 92,7
/** Initialize kconsole data structures. */
void kconsole_init(void)
{
spinlock_initialize(&cmd_lock);
spinlock_initialize(&cmd_lock, "kconsole_cmd");
list_initialize(&cmd_head);
help_info.name = "help";
102,7 → 102,7
help_info.argc = 0;
help_info.argv = NULL;
 
spinlock_initialize(&help_info.lock);
spinlock_initialize(&help_info.lock, "kconsole_help");
link_initialize(&help_info.link);
 
if (!cmd_register(&help_info))
116,7 → 116,7
desc_info.argc = 1;
desc_info.argv = &desc_argv;
spinlock_initialize(&desc_info.lock);
spinlock_initialize(&desc_info.lock, "kconsole_desc");
link_initialize(&desc_info.link);
if (!cmd_register(&desc_info))
130,7 → 130,7
halt_info.argc = 0;
halt_info.argv = NULL;
 
spinlock_initialize(&halt_info.lock);
spinlock_initialize(&halt_info.lock, "kconsole_halt");
link_initialize(&halt_info.link);
 
if (!cmd_register(&halt_info))
/kernel/trunk/generic/src/proc/task.c
48,7 → 48,7
void task_init(void)
{
TASK = NULL;
spinlock_initialize(&tasks_lock);
spinlock_initialize(&tasks_lock, "tasks_lock");
list_initialize(&tasks_head);
}
 
69,7 → 69,7
ta = (task_t *) malloc(sizeof(task_t));
if (ta) {
spinlock_initialize(&ta->lock);
spinlock_initialize(&ta->lock, "task_ta_lock");
list_initialize(&ta->th_head);
list_initialize(&ta->tasks_link);
ta->vm = m;
/kernel/trunk/generic/src/proc/thread.c
96,7 → 96,7
{
THREAD = NULL;
nrdy = 0;
spinlock_initialize(&threads_lock);
spinlock_initialize(&threads_lock, "threads_lock");
list_initialize(&threads_head);
}
 
173,7 → 173,7
if (t) {
ipl_t ipl;
spinlock_initialize(&t->lock);
spinlock_initialize(&t->lock, "thread_t_lock");
frame_ks = frame_alloc(FRAME_KA, ONE_FRAME);
if (THREAD_USER_STACK & flags) {
/kernel/trunk/generic/src/synch/rwlock.c
75,7 → 75,7
* @param rwl Reader/Writer lock.
*/
void rwlock_initialize(rwlock_t *rwl) {
spinlock_initialize(&rwl->lock);
spinlock_initialize(&rwl->lock, "rwlock");
mutex_initialize(&rwl->exclusive);
rwl->readers_in = 0;
}
/kernel/trunk/generic/src/synch/spinlock.c
33,6 → 33,7
#include <preemption.h>
#include <print.h>
#include <debug.h>
#include <symtab.h>
 
#ifdef CONFIG_SMP
 
42,9 → 43,12
*
* @param sl Pointer to spinlock_t structure.
*/
void spinlock_initialize(spinlock_t *sl)
void spinlock_initialize(spinlock_t *sl, char *name)
{
sl->val = 0;
#ifdef CONFIG_DEBUG_SPINLOCK
sl->name = name;
#endif
}
 
#ifdef CONFIG_DEBUG_SPINLOCK
59,12 → 63,18
void spinlock_lock(spinlock_t *sl)
{
int i = 0;
__address caller = ((__u32 *) &sl)[-1];
__address caller = ((__address *) &sl)[-1];
char *symbol;
 
preemption_disable();
while (test_and_set(&sl->val)) {
if (i++ > 300000) {
printf("cpu%d: looping on spinlock %X, caller=%X\n", CPU->id, sl, caller);
printf("cpu%d: looping on spinlock %p:%s, caller=%p",
CPU->id, sl, sl->name, caller);
symbol = get_symtab_entry(caller);
if (symbol)
printf("(%s)", symbol);
printf("\n");
i = 0;
}
}
/kernel/trunk/generic/src/synch/waitq.c
46,7 → 46,7
*/
void waitq_initialize(waitq_t *wq)
{
spinlock_initialize(&wq->lock);
spinlock_initialize(&wq->lock, "waitq_lock");
list_initialize(&wq->head);
wq->missed_wakeups = 0;
}
/kernel/trunk/generic/src/mm/tlb.c
43,7 → 43,7
void tlb_init(void)
{
if (config.cpu_active == 1)
spinlock_initialize(&tlblock);
spinlock_initialize(&tlblock, "tlb_lock");
 
tlb_init_arch();
}
/kernel/trunk/generic/src/mm/vm.c
55,7 → 55,7
 
m = (vm_t *) malloc(sizeof(vm_t));
if (m) {
spinlock_initialize(&m->lock);
spinlock_initialize(&m->lock, "vm_lock");
list_initialize(&m->vm_area_head);
 
m->asid = asid_get();
117,7 → 117,7
for (i=0; i<size; i++)
a->mapping[i] = frame_alloc(0, ONE_FRAME);
spinlock_initialize(&a->lock);
spinlock_initialize(&a->lock, "vm_area_lock");
link_initialize(&a->link);
a->type = type;
/kernel/trunk/generic/src/mm/frame.c
241,7 → 241,7
*/
void zone_init(void)
{
spinlock_initialize(&zone_head_lock);
spinlock_initialize(&zone_head_lock, "zone_head_lock");
list_initialize(&zone_head);
}
 
316,7 → 316,7
z = (zone_t *) early_malloc(sizeof(zone_t));
if (z) {
link_initialize(&z->link);
spinlock_initialize(&z->lock);
spinlock_initialize(&z->lock, "zone_lock");
z->base = start;
z->flags = flags;
/kernel/trunk/generic/src/mm/heap.c
46,7 → 46,7
 
void early_heap_init(__address heap, size_t size)
{
spinlock_initialize(&heaplock);
spinlock_initialize(&heaplock, "heap_lock");
memsetb(heap, size, 0);
chunk0 = (chunk_t *) heap;
chunk0->used = 0;
/kernel/trunk/generic/src/time/timeout.c
47,7 → 47,7
*/
void timeout_init(void)
{
spinlock_initialize(&CPU->timeoutlock);
spinlock_initialize(&CPU->timeoutlock, "timeout_lock");
list_initialize(&CPU->timeout_active_head);
}
 
78,7 → 78,7
*/
void timeout_initialize(timeout_t *t)
{
spinlock_initialize(&t->lock);
spinlock_initialize(&t->lock, "timeout_t_lock");
timeout_reinitialize(t);
}
 
/kernel/trunk/arch/ia32/src/drivers/i8042.c
240,7 → 240,7
{
trap_register(VECTOR_KBD, i8042_interrupt);
trap_virtual_enable_irqs(1<<IRQ_KBD);
spinlock_initialize(&keylock);
spinlock_initialize(&keylock, "i8042_lock");
chardev_initialize(&kbrd, &ops);
stdin = &kbrd;
}