profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/vafeiadis/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

vafeiadis/hahn 23

Hahn: A Coq library

vafeiadis/cslsound 4

CSL and RGSep soundness proofs

ashutosh0gupta/cfrontend 1

LLVM based cfrontend for verification tools

vafeiadis/arm-model 0

ARM8 weak memory model

vafeiadis/llvm 0

Mirror of official llvm git repository located at http://llvm.org/git/llvm. Updated every five minutes.

issue closedMPI-SWS/genmc

Avoid blocked executions when reading with __VERIFIER_assume

The possibility of reading from values that immediately result in blocked executions results in an exponential number of blocked executions.

In case a __VERIFIER_assume condition only depends on one remaining atomic read, and between the atomic read and the __VERIFIER_assume no other memory operations are generated, we do not need to explore the graphs in which the atomic read results in a blocked execution.

The code below should result in 1 execution but results in 2^NTHREADS many executions (of which all but 1 are blocked).


#include <pthread.h>
#include <assert.h>

#include <stdatomic.h>

#ifndef NTHREADS
#define NTHREADS 3
#endif

#include <stdbool.h>
#include <stdint.h>
#include <stdio.h>

#include <genmc.h>



struct task {
    atomic_bool run_worker;
} TASK[NTHREADS];

void *run(void * task_v) {
    struct task *task = task_v;
    __VERIFIER_assume(task->run_worker);
    return 0;
}



int main()
{
        pthread_t t[NTHREADS];
        for (size_t i = 0; i < NTHREADS; i++)
        {
            TASK[i].run_worker = false;
            pthread_create(&t[i], 0, run, &TASK[i]);
            TASK[i].run_worker = true;
        }

        
        for (uintptr_t i = 0; i < NTHREADS; i++)
                pthread_join(t[i], NULL);

        return 0;
}



closed time in 20 days

JonasOberhauser

issue commentMPI-SWS/genmc

Avoid blocked executions when reading with __VERIFIER_assume

Thanks again for the suggestion, Jonas. GenMC v0.6 does something similar for assume statements.

JonasOberhauser

comment created time in 20 days

issue commentMPI-SWS/genmc

free(NULL)

Fixed in v0.6.

JonasOberhauser

comment created time in 20 days

issue closedMPI-SWS/genmc

free(NULL)

Is a nop in C, but segfaults in GenMC

closed time in 20 days

JonasOberhauser

issue closedMPI-SWS/genmc

malloc + pthread_mutex_init does not seem to work

#include <stdio.h>
#include <pthread.h>
#include <stdlib.h>

typedef struct {
  pthread_mutex_t m;
} lock;

int main(void) 
{
 lock *t = malloc(sizeof(lock));
 pthread_mutex_init(&t->m, NULL);
 pthread_mutex_lock(&t->m);
 return 0;
}

Considered access to uninitialized memory

closed time in 20 days

JonasOberhauser

issue commentMPI-SWS/genmc

malloc + pthread_mutex_init does not seem to work

This is fixed in v0.6.

JonasOberhauser

comment created time in 20 days

push eventMPI-SWS/genmc

Michalis Kokologiannakis

commit sha 1142c61028eea365c01a2d370210b6350ce2452f

Delete unused script

view details

push time in 20 days

push eventMPI-SWS/genmc

Michalis Kokologiannakis

commit sha 73de7623d6a3b38d8e1886e4962d9bbedf3b6ad8

Delete tmp file

view details

push time in 20 days

push eventMPI-SWS/genmc

Michalis Kokologiannakis

commit sha 364e02afa1dec0e5c9fbedca6a2306d0ed5f1abf

Release GenMC v0.6 Signed-off-by: Michalis Kokologiannakis <mixaskok@gmail.com>

view details

push time in 20 days

created tagMPI-SWS/genmc

tagv0.6

Generic model checker for concurrent C programs

created time in 20 days

push eventJonathanMace/xtrace-cpp

Jonathan Mace

commit sha 19a3136f7f1fabe8b8856322c2a3dc2b3939ef8b

Changes

view details

Jonathan Mace

commit sha 52b8b3a8643a96f6ed450a298610d1d84eca3279

Add flatbuf reporting to xtraceserver

view details

push time in a month

push eventJonathanMace/xtrace-cpp

Jonathan Mace

commit sha 9ea894b8e1f28c2ebd1d000f25e7b29609486f54

Quick tweak of main

view details

push time in a month

create barnchJonathanMace/xtrace-cpp

branch : flatbuffers

created branch time in a month

push eventJonathanMace/xtrace-cpp

Jonathan Mace

commit sha 9ecd2e5bf87f2d20e88aaa3c7241531610e3aa33

Fix protobuf include in build script

view details

push time in a month

push eventsnu-sf/promising-coq

Sung-Hwan Lee

commit sha a2dc5960a2debdc630c1cdc319f87c0986c0c584

Remove travis

view details

push time in 2 months

push eventsnu-sf/promising-coq

Sung-Hwan Lee

commit sha 54907b5e78857b16002597404e617148698ddaab

Remove warnings regarding hints

view details

Sung-Hwan Lee

commit sha 3cf6b675c353f0da70591d03dde4ff206bde8535

Remove more warnings

view details

push time in 2 months

startedvafeiadis/cslsound

started time in 2 months

fork clayrat/cslsound

CSL and RGSep soundness proofs

fork in 2 months

startedvafeiadis/cslsound

started time in 2 months

startedvafeiadis/hahn

started time in 3 months