Esempio n. 1
0
TEST_F(MemkindPmemTests, test_TC_MEMKIND_PmemCalloc)
{
    const size_t size = 1024;
    const size_t num = 1;
    char *default_str = NULL;

    default_str = (char *)memkind_calloc(pmem_kind, num, size);
    EXPECT_TRUE(NULL != default_str);
    EXPECT_EQ(*default_str, 0);

    sprintf(default_str, "memkind_calloc MEMKIND_PMEM\n");
    printf("%s", default_str);

    memkind_free(pmem_kind, default_str);

    // allocate the buffer of the same size (likely at the same address)
    default_str = (char *)memkind_calloc(pmem_kind, num, size);
    EXPECT_TRUE(NULL != default_str);
    EXPECT_EQ(*default_str, 0);

    sprintf(default_str, "memkind_calloc MEMKIND_PMEM\n");
    printf("%s", default_str);

    memkind_free(pmem_kind, default_str);
}
Esempio n. 2
0
void *hbw_calloc(size_t num, size_t size)
{
    memkind_t kind;

    kind = hbw_get_kind(HBW_PAGESIZE_4KB);
    return memkind_calloc(kind, num, size);
}
	memory_operation wrapped_calloc(size_t num, size_t size)
	{
		START_TEST(type_id, FunctionCalls::CALLOC)
		data.ptr = memkind_calloc(kind, num, size);
		data.error_code = errno;
		END_TEST
	}
TEST_F(MemkindDefaultTests, test_TC_MEMKIND_DefaultCalloc)
{
    const size_t size = 1024;
    const size_t num = 1;
    char *default_str = NULL;

    default_str = (char *)memkind_calloc(MEMKIND_DEFAULT, num, size);
    EXPECT_TRUE(NULL != default_str);

    sprintf(default_str, "memkind_calloc MEMKIND_DEFAULT\n");
    printf("%s", default_str);

    memkind_free(MEMKIND_DEFAULT, default_str);
}
Esempio n. 5
0
////////////////////////////////////////////////////////////////////////////
// My calloc implementation calling memkind_calloc.
////////////////////////////////////////////////////////////////////////////
void *myMemkindCalloc(size_t nmemb, size_t size)
{

    DBG(2) printf("In my memkind calloc sz:%ld ..", size*nmemb);

    //setLibcSymbols();

    void *pp;

    // if we have not initialized memkind HBW arena yet, call default kind
    //
    if (!MemkindInitDone || !isAllocInHBW(size*nmemb))
        pp = memkind_calloc(MEMKIND_DEFAULT, nmemb, size);
    else {
        DBG(2) printf("\tHBW");
        pp = memkind_calloc(HBW_Type, nmemb, size);
        logHBW(pp, size*nmemb);
    }

    DBG(2) printf("\tptr:%p\n", pp);

    return pp;

}
Esempio n. 6
0
MEMKIND_EXPORT void *hbw_calloc(size_t num, size_t size)
{
    return memkind_calloc(hbw_get_kind(HBW_PAGESIZE_4KB), num, size);
}