memory_failure
memory_failure(pde >> PAGE_SHIFT, 0);
memory_failure(pfn, 0);
memory_failure(paddr_start >> PAGE_SHIFT, 0);
ret = memory_failure(pfn, flags);
if (!memory_failure(pfn, 0))
if (!memory_failure(pfn, 0)) {
ret = memory_failure(twcb->pfn, twcb->flags);
ret = memory_failure(pfn, MF_SW_SIMULATED);
if (!memory_failure(pfn, 0))
err = memory_failure(pfn, MF_ACTION_REQUIRED);
.memory_failure = pmem_pagemap_memory_failure,
memory_failure(addr, 0);
int (*memory_failure)(struct dev_pagemap *pgmap, unsigned long pfn,
return pgmap->ops && pgmap->ops->memory_failure;
extern int memory_failure(unsigned long pfn, int flags);
#define TRACE_SYSTEM memory_failure
err = memory_failure(pfn, MF_SW_SIMULATED);
ret = memory_failure(pfn, MF_ACTION_REQUIRED | MF_COUNT_INCREASED | MF_SW_SIMULATED);
rc = pgmap->ops->memory_failure(pgmap, pfn, 1, flags);
EXPORT_SYMBOL_GPL(memory_failure);
memory_failure(entry.pfn, entry.flags);
FIXTURE_TEARDOWN(memory_failure)
static void prepare(struct __test_metadata *_metadata, FIXTURE_DATA(memory_failure) * self,
static void check(struct __test_metadata *_metadata, FIXTURE_DATA(memory_failure) * self,
static void cleanup(struct __test_metadata *_metadata, FIXTURE_DATA(memory_failure) * self,
TEST_F(memory_failure, anon)
TEST_F(memory_failure, clean_pagecache)
TEST_F(memory_failure, dirty_pagecache)
FIXTURE(memory_failure)
FIXTURE_VARIANT(memory_failure)
int (*inject)(FIXTURE_DATA(memory_failure) * self, void *vaddr);
static int madv_hard_inject(FIXTURE_DATA(memory_failure) * self, void *vaddr)
FIXTURE_VARIANT_ADD(memory_failure, madv_hard)
static int madv_soft_inject(FIXTURE_DATA(memory_failure) * self, void *vaddr)
FIXTURE_VARIANT_ADD(memory_failure, madv_soft)
FIXTURE_SETUP(memory_failure)