_start
sym##_start = LOADADDR(section); \
extern char _start[];
setup_initial_init_mm(_start, _etext, _edata, _end);
memblock_reserve(__pa(_start), _end - _start);
_start, get_sp());
if ((unsigned long)_start < ei.loadsize)
_start, ei.loadsize);
unsigned long start = (unsigned long)_start, end = (unsigned long)_end;
extern char _start[];
name##_start = (start); \
.if (start) < sname##_start; \
. = (start) - sname##_start; \
.if (. - name > (start) + (size) - name##_start); \
. = ((start) + (size) - sname##_start); \
label##_absolute = (label - start_ ## sname + sname ## _start)
#define ABS_ADDR(label, sname) (label - start_ ## sname + sname ## _start)
sname##_start = (start); \
sname##_start = (start); \
#define SOFT_MASK_TABLE(_start, _end) \
stringify_in_c(.llong (_start);) \
#define RESTART_TABLE(_start, _end, _target) \
stringify_in_c(.llong (_start);) \
void *__start = (void *)VDSO##bits##_SYMBOL(&vdso##bits##_start, sec##_start); \
void *__end = (void *)VDSO##bits##_SYMBOL(&vdso##bits##_start, sec##_end); \
#define THEAD_CMO_OP(_op, _start, _size, _cachesize) \
"r"((unsigned long)(_start) & ~((_cachesize) - 1UL)), \
"r"((unsigned long)(_start) + (_size)) \
#define ALT_CMO_OP(_op, _start, _size, _cachesize) \
"r"((unsigned long)(_start) & ~((_cachesize) - 1UL)), \
"r"((unsigned long)(_start) + (_size)) \
extern char _start[];
extern char _sdata[], _start[], _end[]; \
+ (uintptr_t)&_sdata - (uintptr_t)&_start; \
+ (uintptr_t)&_end - (uintptr_t)&_start; \
#define MODULES_END (PFN_ALIGN((unsigned long)&_start))
extern char _start[];
uintptr_t start = (uintptr_t)_start;
uintptr_t start = (uintptr_t)lm_alias(_start);
__efistub__start = _start;
u32 kernel_size = (uintptr_t)(&_end) - (uintptr_t)(&_start);
kernel_map.size = (uintptr_t)(&_end) - (uintptr_t)(&_start);
+ (uintptr_t)&_sdata - (uintptr_t)&_start;
kernel_map.phys_addr = (uintptr_t)(&_start);
phys_addr_t ktext_start = __pa_symbol(_start);
phys_addr_t ktext_size = __init_data_begin - _start;
kernel_map.virt_addr = (uintptr_t)_start;
kernel_map.phys_addr = (uintptr_t)_start;
vmlinux_start = __pa_symbol(&_start);
extern char _start[];
start_va = kernel_map.virt_addr + (uintptr_t)&_sdata - (uintptr_t)&_start;
#define SKEY_REGION(_start, _end) \
stringify_in_c(.quad (_start);) \
extern char _start[];
void _start(void);
#define tdp_root_for_each_pte(_iter, _kvm, _root, _start, _end) \
for_each_tdp_pte(_iter, _kvm, _root, _start, _end)
#define tdp_root_for_each_leaf_pte(_iter, _kvm, _root, _start, _end) \
tdp_root_for_each_pte(_iter, _kvm, _root, _start, _end) \
return _start_kernel - _start;
kernel_size = _edata - _start;
kernel_codesize = __init_text_end - _start;
*image_addr = (unsigned long)_start;
static unsigned int calc_index(unsigned int offset, i915_reg_t _start,
u32 start = i915_mmio_reg_offset(_start);
SENSOR_ATTR_2(pwm##index##_start, S_IWUSR | S_IRUGO, \
SENSOR_ATTR_2(pwm##index##_start, S_IWUSR | S_IRUGO, \
#define BITS(_start, _end) ((BIT(_end) - BIT(_start)) + BIT(_end))
#define BAW_WITHIN(_start, _bawsz, _seqno) \
((((_seqno) - (_start)) & 4095) < (_bawsz))
#define BAW_WITHIN(_start, _bawsz, _seqno) \
((((_seqno) - (_start)) & 0xfff) < (_bawsz))
#define SEQ_DIFF(_start, _seq) \
(((_start) - (_seq)) & 0x0fff)
#define WORD(_start) \
_start, \
_start + 1
#define GROUP_2G(_start) \
WORD(_start), \
WORD(_start + 2), \
WORD(_start + 4)
#define qlink_for_each_tlv(_tlv, _start, _datalen) \
for (_tlv = (const struct qlink_tlv_hdr *)(_start); \
(const u8 *)(_start) + (_datalen) - (const u8 *)_tlv >= \
(const u8 *)(_start) + (_datalen) - (const u8 *)_tlv >= \
#define qlink_tlv_parsing_ok(_tlv_last, _start, _datalen) \
(const u8 *)(_start) + round_up(_datalen, QLINK_ALIGN))
#define SOC_PMU_EVENT_ATTR_EXTRACTOR(_name, _config, _start, _end) \
return FIELD_GET(GENMASK_ULL(_end, _start), \
#define SMMU_PMU_EVENT_ATTR_EXTRACTOR(_name, _config, _start, _end) \
return FIELD_GET(GENMASK_ULL(_end, _start), \
#define HNS3_PMU_FILTER_ATTR(_name, _config, _start, _end) \
return FIELD_GET(GENMASK_ULL(_end, _start), \
#define MTK_PIN_IES_SMT_SPEC(_start, _end, _offset, _bit) \
.start = _start, \
#define PIN_GRP_GPIO_0(_name, _start, _nr) \
.start_pin = _start, \
#define PIN_GRP_GPIO(_name, _start, _nr, _mask, _func1) \
.start_pin = _start, \
#define PIN_GRP_GPIO_2(_name, _start, _nr, _mask, _val1, _val2, _func1) \
.start_pin = _start, \
#define PIN_GRP_GPIO_3(_name, _start, _nr, _mask, _v1, _v2, _v3, _f1, _f2) \
.start_pin = _start, \
#define PIN_GRP_EXTRA(_name, _start, _nr, _mask, _v1, _v2, _start2, _nr2, \
.start_pin = _start, \
#define S32_PIN_RANGE(_start, _end) { .start = _start, .end = _end }
&dev_attr_signal##_nr##_start.attr.attr, \
#define GET_FRAG_ID(_map,_start,_idmask) \
unsigned char *_m = _map + (_start >> 3); \
_frag >>= (_start & 7); \
loff_t *_start, size_t *_len, size_t upper_len,
loff_t *_start, size_t *_len, size_t upper_len,
loff_t start = *_start, pos;
start = round_down(*_start, PAGE_SIZE);
if (start != *_start || *_len > upper_len) {
loff_t *_start, size_t *_len, size_t upper_len,
_start, _len, upper_len,
unsigned long long *_start,
cres->ops->expand_readahead(cres, _start, _len, i_size);
BOUNDED_SECTION_POST_LABEL(.tracedata, __tracedata, _start, _end) \
BOUNDED_SECTION_POST_LABEL(.init.setup, __setup, _start, _end)
__initcall##level##_start = .; \
BOUNDED_SECTION_POST_LABEL(.con_initcall.init, __con_initcall, _start, _end)
BOUNDED_SECTION_POST_LABEL(.kunit_test_suites, __kunit_suites, _start, _end)
__kunit_init_suites, _start, _end)
#define genradix_for_each_from(_radix, _iter, _p, _start) \
for (_iter = genradix_iter_init(_radix, _start); \
#define DEFINE_RES_NAMED_DESC(_start, _size, _name, _flags, _desc) \
.start = (_start), \
.end = (_start) + (_size) - 1, \
#define DEFINE_RES_NAMED(_start, _size, _name, _flags) \
DEFINE_RES_NAMED_DESC(_start, _size, _name, _flags, IORES_DESC_NONE)
#define __DEFINE_RES3(_start, _size, _flags) \
DEFINE_RES_NAMED(_start, _size, NULL, _flags)
#define DEFINE_RES_IO_NAMED(_start, _size, _name) \
DEFINE_RES_NAMED((_start), (_size), (_name), IORESOURCE_IO)
#define DEFINE_RES_IO(_start, _size) \
DEFINE_RES_IO_NAMED((_start), (_size), NULL)
#define DEFINE_RES_MEM_NAMED(_start, _size, _name) \
DEFINE_RES_NAMED((_start), (_size), (_name), IORESOURCE_MEM)
#define DEFINE_RES_MEM(_start, _size) \
DEFINE_RES_MEM_NAMED((_start), (_size), NULL)
#define DEFINE_RES_REG_NAMED(_start, _size, _name) \
DEFINE_RES_NAMED((_start), (_size), (_name), IORESOURCE_REG)
#define DEFINE_RES_REG(_start, _size) \
DEFINE_RES_REG_NAMED((_start), (_size), NULL)
unsigned long long *_start,
loff_t *_start, size_t *_len, size_t upper_len,
#define DEFINE_RANGE(_start, _end) \
.start = (_start), \
_start: /* Requires: ip0 */
goto _start;
_start: /* Requires: ip0 */
goto _start;
static void scan_block(void *_start, void *_end,
unsigned long *start = PTR_ALIGN(_start, BYTES_PER_POINTER);
unsigned long _start, _end;
_start = max(dst_vma->vm_start, start);
err = uffd_wp_range(dst_vma, _start, _end - _start, enable_wp);
void _start(void);
void _start(void);
#define __sym_for_each(_iter, _tree, _start, _end) \
for (_iter = __sym_iter_first((_tree), (_start), (_end)); \
_iter; _iter = __sym_iter_next(_iter, (_start), (_end)))
#define for_offset_range(_offset, _start, _end) \
for (_offset = ((_start) & OFFSET_STRIDE_MASK); \
_offset >= ((_start) & OFFSET_STRIDE_MASK) && \
#define SOFT_MASK_TABLE(_start, _end) \
stringify_in_c(.llong (_start);) \
#define RESTART_TABLE(_start, _end, _target) \
stringify_in_c(.llong (_start);) \