Subversion Repositories HelenOS

Rev

Rev 2315 | Rev 2400 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2315 Rev 2330
Line 34... Line 34...
34
#include <proc/tasklet.h>
34
#include <proc/tasklet.h>
35
#include <arch/barrier.h>
35
#include <arch/barrier.h>
36
#include <arch.h>
36
#include <arch.h>
37
#include <preemption.h>
37
#include <preemption.h>
38
bool gquiet;
38
bool gquiet;
39
bool called;
39
volatile bool called;
40
 
40
 
41
static void callback(void* data)
41
static void callback(void* data)
42
{
42
{
43
    if (!gquiet)
43
    if (!gquiet)
44
        printf("callback called\n");
44
        printf("callback called\n");
Line 55... Line 55...
55
        printf("p:%x\n",rcu_dereference_pointer(p));
55
        printf("p:%x\n",rcu_dereference_pointer(p));
56
    rcu_read_unlock();
56
    rcu_read_unlock();
57
    rcu_sync_callback(&callback, NULL);
57
    rcu_sync_callback(&callback, NULL);
58
    if (!quiet)
58
    if (!quiet)
59
        printf("Callback scheduled\n");
59
        printf("Callback scheduled\n");
60
    while(!called);
60
//  while(!called);
61
    rcu_synchronize();
61
    rcu_synchronize();
62
    if (!quiet)
62
    if (!quiet)
63
        printf("Synchronized\n");
63
        printf("Synchronized\n");
64
    return NULL;
64
    return NULL;
65
 
65