addr_range
static struct addr_range prep_initrd(struct addr_range vmlinux, void *chosen,
return (struct addr_range){0, 0};
return (struct addr_range){(void *)initrd_addr, initrd_size};
static void prep_esm_blob(struct addr_range vmlinux, void *chosen)
static inline void prep_esm_blob(struct addr_range vmlinux, void *chosen) { }
struct addr_range vmlinux, initrd;
static struct addr_range prep_kernel(void)
return (struct addr_range){addr, ei.memsize};
union register_pair addr_range = {.even = addr, .odd = range};
: [addr_range] "d" (addr_range.pair)
static inline void pt_load_msr(struct pt_ctx *ctx, u32 addr_range)
for (i = 0; i < addr_range; i++) {
static inline void pt_save_msr(struct pt_ctx *ctx, u32 addr_range)
for (i = 0; i < addr_range; i++) {
const struct dpcd_address_range *addr_range;
addr_range = &mandatory_dpcd_blocks[i];
if (addr_range->start <= in_address && addr_range->end >= in_address)
new_addr_range.start = addr_range->start;
if (addr_range->start <= end_address && addr_range->end >= end_address)
new_addr_range.end = addr_range->end;
static DEVICE_ATTR_RW(addr_range);
static DEVICE_ATTR_RW(addr_range);
unsigned addr_range; /* max # of addrs; max # of possible ports */
asd_ha->hw_prof.addr_range = 8;
asd_ha->hw_prof.addr_range = 4;
struct damon_addr_range addr_range;
start = ALIGN_DOWN(filter->addr_range.start, min_region_sz);
end = ALIGN_DOWN(filter->addr_range.end, min_region_sz);
struct damon_addr_range addr_range;
addr_range.start = *start;
addr_range.end = *end;
return damon_set_regions(t, &addr_range, 1, min_region_sz);
dst->addr_range = src->addr_range;
struct damon_addr_range addr_range;
addr_range.start = damon_stat_res_to_core_addr(
addr_range.end = damon_stat_res_to_core_addr(
if (addr_range.end <= addr_range.start)
return damon_set_regions(t, &addr_range, 1, min_region_sz);
if (sysfs_filter->addr_range.end <
sysfs_filter->addr_range.start) {
filter->addr_range = sysfs_filter->addr_range;
struct damon_addr_range addr_range;
return sysfs_emit(buf, "%lu\n", filter->addr_range.start);
int err = kstrtoul(buf, 0, &filter->addr_range.start);
return sysfs_emit(buf, "%lu\n", filter->addr_range.end);
int err = kstrtoul(buf, 0, &filter->addr_range.end);
f->addr_range = (struct damon_addr_range){.start = 2, .end = 6};
KUNIT_EXPECT_EQ(test, dst->addr_range.start,
src->addr_range.start);
KUNIT_EXPECT_EQ(test, dst->addr_range.end,
src->addr_range.end);
.addr_range = {.start = 456, .end = 567},
struct addr_range *ar;
const struct addr_range *ranges, int entries)
const struct addr_range *ar;
static struct addr_range text_ranges[] = {
struct addr_range *ranges, int entries)
OPT_INTEGER(0, "addr-range", &symbol_conf.addr_range,
static bool check_address_range(struct intlist *addr_list, int addr_range,
if (addr >= pos->i && addr < pos->i + addr_range)
if (!ret && symbol_conf.addr_range) {
symbol_conf.addr_range,
int addr_range;
struct addr_range libc, vdso;
extern struct addr_range libc, vdso;