Lines Matching full:end

106  * @endp: A pointer to the end of the parsed string will be placed here
121 * @endp: A pointer to the end of the parsed string will be placed here
142 * @endp: A pointer to the end of the parsed string will be placed here
174 * @endp: A pointer to the end of the parsed string will be placed here
466 char *number(char *buf, char *end, unsigned long long num, in number() argument
530 if (buf < end) in number()
537 if (buf < end) in number()
544 if (buf < end) in number()
549 if (buf < end) in number()
559 if (buf < end) in number()
566 if (buf < end) in number()
572 if (buf < end) in number()
578 if (buf < end) in number()
595 char *special_hex_number(char *buf, char *end, unsigned long long num, int size) in special_hex_number() argument
597 return number(buf, end, num, special_hex_spec(size)); in special_hex_number()
600 static void move_right(char *buf, char *end, unsigned len, unsigned spaces) in move_right() argument
603 if (buf >= end) /* nowhere to put anything */ in move_right()
605 size = end - buf; in move_right()
622 * @end: end of output buffer
627 char *widen_string(char *buf, int n, char *end, struct printf_spec spec) in widen_string() argument
636 move_right(buf - n, end, n, spaces); in widen_string()
640 if (buf < end) in widen_string()
648 static char *string_nocheck(char *buf, char *end, const char *s, in string_nocheck() argument
658 if (buf < end) in string_nocheck()
663 return widen_string(buf, len, end, spec); in string_nocheck()
666 static char *err_ptr(char *buf, char *end, void *ptr, in err_ptr() argument
673 return string_nocheck(buf, end, sym, spec); in err_ptr()
682 return number(buf, end, err, spec); in err_ptr()
686 static char *error_string(char *buf, char *end, const char *s, in error_string() argument
697 return string_nocheck(buf, end, s, spec); in error_string()
716 static int check_pointer(char **buf, char *end, const void *ptr, in check_pointer() argument
723 *buf = error_string(*buf, end, err_msg, spec); in check_pointer()
731 char *string(char *buf, char *end, const char *s, in string() argument
734 if (check_pointer(&buf, end, s, spec)) in string()
737 return string_nocheck(buf, end, s, spec); in string()
740 static char *pointer_string(char *buf, char *end, in pointer_string() argument
751 return number(buf, end, (unsigned long int)ptr, spec); in pointer_string()
816 static char *ptr_to_id(char *buf, char *end, const void *ptr, in ptr_to_id() argument
828 return pointer_string(buf, end, ptr, spec); in ptr_to_id()
833 return pointer_string(buf, end, (const void *)hashval, spec); in ptr_to_id()
840 return error_string(buf, end, str, spec); in ptr_to_id()
843 return pointer_string(buf, end, (const void *)hashval, spec); in ptr_to_id()
846 static char *default_pointer(char *buf, char *end, const void *ptr, in default_pointer() argument
854 return pointer_string(buf, end, ptr, spec); in default_pointer()
856 return ptr_to_id(buf, end, ptr, spec); in default_pointer()
862 char *restricted_pointer(char *buf, char *end, const void *ptr, in restricted_pointer() argument
868 return default_pointer(buf, end, ptr, spec); in restricted_pointer()
879 return error_string(buf, end, "pK-error", spec); in restricted_pointer()
905 return pointer_string(buf, end, ptr, spec); in restricted_pointer()
909 char *dentry_name(char *buf, char *end, const struct dentry *d, struct printf_spec spec, in dentry_name() argument
927 if (check_pointer(&buf, end, d, spec)) { in dentry_name()
950 if (buf < end) in dentry_name()
954 return widen_string(buf, n, end, spec); in dentry_name()
958 char *file_dentry_name(char *buf, char *end, const struct file *f, in file_dentry_name() argument
961 if (check_pointer(&buf, end, f, spec)) in file_dentry_name()
964 return dentry_name(buf, end, f->f_path.dentry, spec, fmt); in file_dentry_name()
968 char *bdev_name(char *buf, char *end, struct block_device *bdev, in bdev_name() argument
973 if (check_pointer(&buf, end, bdev, spec)) in bdev_name()
977 buf = string(buf, end, hd->disk_name, spec); in bdev_name()
980 if (buf < end) in bdev_name()
984 buf = number(buf, end, bdev_partno(bdev), spec); in bdev_name()
991 char *symbol_string(char *buf, char *end, void *ptr, in symbol_string() argument
1015 return string_nocheck(buf, end, sym, spec); in symbol_string()
1017 return special_hex_number(buf, end, value, sizeof(void *)); in symbol_string()
1052 char *hex_range(char *buf, char *end, u64 start_val, u64 end_val, in hex_range() argument
1055 buf = number(buf, end, start_val, spec); in hex_range()
1059 if (buf < end) in hex_range()
1062 return number(buf, end, end_val, spec); in hex_range()
1066 char *resource_string(char *buf, char *end, struct resource *res, in resource_string() argument
1113 if (check_pointer(&buf, end, res, spec)) in resource_string()
1141 p = hex_range(p, pend, res->start, res->end, *specp); in resource_string()
1159 return string_nocheck(buf, end, sym, spec); in resource_string()
1163 char *range_string(char *buf, char *end, const struct range *range, in range_string() argument
1169 if (check_pointer(&buf, end, range, spec)) in range_string()
1173 p = hex_range(p, pend, range->start, range->end, special_hex_spec(sizeof(range->start))); in range_string()
1177 return string_nocheck(buf, end, sym, spec); in range_string()
1181 char *hex_string(char *buf, char *end, u8 *addr, struct printf_spec spec, in hex_string() argument
1192 if (check_pointer(&buf, end, addr, spec)) in hex_string()
1214 if (buf < end) in hex_string()
1217 if (buf < end) in hex_string()
1222 if (buf < end) in hex_string()
1232 char *bitmap_string(char *buf, char *end, const unsigned long *bitmap, in bitmap_string() argument
1240 if (check_pointer(&buf, end, bitmap, spec)) in bitmap_string()
1261 if (buf < end) in bitmap_string()
1268 buf = number(buf, end, val, spec); in bitmap_string()
1276 char *bitmap_list_string(char *buf, char *end, const unsigned long *bitmap, in bitmap_list_string() argument
1283 if (check_pointer(&buf, end, bitmap, spec)) in bitmap_list_string()
1288 if (buf < end) in bitmap_list_string()
1294 buf = number(buf, end, rbot, default_dec_spec); in bitmap_list_string()
1298 if (buf < end) in bitmap_list_string()
1300 buf = number(++buf, end, rtop - 1, default_dec_spec); in bitmap_list_string()
1306 char *mac_address_string(char *buf, char *end, u8 *addr, in mac_address_string() argument
1315 if (check_pointer(&buf, end, addr, spec)) in mac_address_string()
1343 return string_nocheck(buf, end, mac_addr, spec); in mac_address_string()
1496 char *ip6_addr_string(char *buf, char *end, const u8 *addr, in ip6_addr_string() argument
1506 return string_nocheck(buf, end, ip6_addr, spec); in ip6_addr_string()
1510 char *ip4_addr_string(char *buf, char *end, const u8 *addr, in ip4_addr_string() argument
1517 return string_nocheck(buf, end, ip4_addr, spec); in ip4_addr_string()
1521 char *ip6_addr_string_sa(char *buf, char *end, const struct sockaddr_in6 *sa, in ip6_addr_string_sa() argument
1579 return string_nocheck(buf, end, ip6_addr, spec); in ip6_addr_string_sa()
1583 char *ip4_addr_string_sa(char *buf, char *end, const struct sockaddr_in *sa, in ip4_addr_string_sa() argument
1614 return string_nocheck(buf, end, ip4_addr, spec); in ip4_addr_string_sa()
1618 char *ip_addr_string(char *buf, char *end, const void *ptr, in ip_addr_string() argument
1623 if (check_pointer(&buf, end, ptr, spec)) in ip_addr_string()
1628 return ip6_addr_string(buf, end, ptr, spec, fmt); in ip_addr_string()
1630 return ip4_addr_string(buf, end, ptr, spec, fmt); in ip_addr_string()
1640 return ip4_addr_string_sa(buf, end, &sa->v4, spec, fmt); in ip_addr_string()
1642 return ip6_addr_string_sa(buf, end, &sa->v6, spec, fmt); in ip_addr_string()
1644 return error_string(buf, end, "(einval)", spec); in ip_addr_string()
1649 return error_string(buf, end, err_fmt_msg, spec); in ip_addr_string()
1653 char *escaped_string(char *buf, char *end, u8 *addr, struct printf_spec spec, in escaped_string() argument
1664 if (check_pointer(&buf, end, addr, spec)) in escaped_string()
1706 buf += string_escape_mem(addr, len, buf, buf < end ? end - buf : 0, flags, NULL); in escaped_string()
1714 static char *va_format(char *buf, char *end, struct va_format *va_fmt, in va_format() argument
1719 if (check_pointer(&buf, end, va_fmt, spec)) in va_format()
1723 buf += vsnprintf(buf, end > buf ? end - buf : 0, va_fmt->fmt, va); in va_format()
1731 char *uuid_string(char *buf, char *end, const u8 *addr, in uuid_string() argument
1740 if (check_pointer(&buf, end, addr, spec)) in uuid_string()
1772 return string_nocheck(buf, end, uuid, spec); in uuid_string()
1776 char *netdev_bits(char *buf, char *end, const void *addr, in netdev_bits() argument
1782 if (check_pointer(&buf, end, addr, spec)) in netdev_bits()
1791 return error_string(buf, end, "(%pN?)", spec); in netdev_bits()
1794 return special_hex_number(buf, end, num, size); in netdev_bits()
1798 char *fourcc_string(char *buf, char *end, const u32 *fourcc, in fourcc_string() argument
1808 return error_string(buf, end, "(%p4?)", spec); in fourcc_string()
1810 if (check_pointer(&buf, end, fourcc, spec)) in fourcc_string()
1830 return error_string(buf, end, "(%p4?)", spec); in fourcc_string()
1854 return string(buf, end, output, spec); in fourcc_string()
1858 char *address_val(char *buf, char *end, const void *addr, in address_val() argument
1864 if (check_pointer(&buf, end, addr, spec)) in address_val()
1879 return special_hex_number(buf, end, num, size); in address_val()
1883 char *date_str(char *buf, char *end, const struct rtc_time *tm, bool r) in date_str() argument
1888 buf = number(buf, end, year, default_dec04_spec); in date_str()
1889 if (buf < end) in date_str()
1893 buf = number(buf, end, mon, default_dec02_spec); in date_str()
1894 if (buf < end) in date_str()
1898 return number(buf, end, tm->tm_mday, default_dec02_spec); in date_str()
1902 char *time_str(char *buf, char *end, const struct rtc_time *tm, bool r) in time_str() argument
1904 buf = number(buf, end, tm->tm_hour, default_dec02_spec); in time_str()
1905 if (buf < end) in time_str()
1909 buf = number(buf, end, tm->tm_min, default_dec02_spec); in time_str()
1910 if (buf < end) in time_str()
1914 return number(buf, end, tm->tm_sec, default_dec02_spec); in time_str()
1918 char *rtc_str(char *buf, char *end, const struct rtc_time *tm, in rtc_str() argument
1952 buf = date_str(buf, end, tm, raw); in rtc_str()
1954 if (buf < end) in rtc_str()
1959 buf = time_str(buf, end, tm, raw); in rtc_str()
1965 char *time64_str(char *buf, char *end, const time64_t time, in time64_str() argument
1984 return rtc_str(buf, end, &rtc_time, spec, fmt); in time64_str()
1988 char *timespec64_str(char *buf, char *end, const struct timespec64 *ts, in timespec64_str() argument
1999 buf = number(buf, end, ts->tv_sec, default_dec_spec); in timespec64_str()
2001 buf = time64_str(buf, end, ts->tv_sec, spec, fmt); in timespec64_str()
2002 if (buf < end) in timespec64_str()
2006 return number(buf, end, ts->tv_nsec, default_dec09_spec); in timespec64_str()
2010 char *time_and_date(char *buf, char *end, void *ptr, struct printf_spec spec, in time_and_date() argument
2013 if (check_pointer(&buf, end, ptr, spec)) in time_and_date()
2018 return rtc_str(buf, end, (const struct rtc_time *)ptr, spec, fmt); in time_and_date()
2020 return timespec64_str(buf, end, (const struct timespec64 *)ptr, spec, fmt); in time_and_date()
2022 return time64_str(buf, end, *(const time64_t *)ptr, spec, fmt); in time_and_date()
2024 return error_string(buf, end, "(%pt?)", spec); in time_and_date()
2029 char *clock(char *buf, char *end, struct clk *clk, struct printf_spec spec, in clock() argument
2033 return error_string(buf, end, "(%pC?)", spec); in clock()
2035 if (check_pointer(&buf, end, clk, spec)) in clock()
2039 return string(buf, end, __clk_get_name(clk), spec); in clock()
2041 return ptr_to_id(buf, end, clk, spec); in clock()
2046 char *format_flags(char *buf, char *end, unsigned long flags, in format_flags() argument
2056 buf = string(buf, end, names->name, default_str_spec); in format_flags()
2060 if (buf < end) in format_flags()
2067 buf = number(buf, end, flags, default_flag_spec); in format_flags()
2094 char *format_page_flags(char *buf, char *end, unsigned long flags) in format_page_flags() argument
2100 buf = number(buf, end, flags, default_flag_spec); in format_page_flags()
2101 if (buf < end) in format_page_flags()
2107 buf = format_flags(buf, end, main_flags, pageflag_names); in format_page_flags()
2119 if (buf < end) in format_page_flags()
2124 buf = string(buf, end, pff[i].name, default_str_spec); in format_page_flags()
2125 if (buf < end) in format_page_flags()
2128 buf = number(buf, end, (flags >> pff[i].shift) & pff[i].mask, in format_page_flags()
2133 if (buf < end) in format_page_flags()
2141 char *flags_string(char *buf, char *end, void *flags_ptr, in flags_string() argument
2147 if (check_pointer(&buf, end, flags_ptr, spec)) in flags_string()
2152 return format_page_flags(buf, end, *(unsigned long *)flags_ptr); in flags_string()
2162 return error_string(buf, end, "(%pG?)", spec); in flags_string()
2165 return format_flags(buf, end, flags, names); in flags_string()
2170 char *end) in fwnode_full_name_string() argument
2183 buf = string(buf, end, fwnode_get_name_prefix(__fwnode), in fwnode_full_name_string()
2185 buf = string(buf, end, fwnode_get_name(__fwnode), in fwnode_full_name_string()
2196 char *device_node_string(char *buf, char *end, struct device_node *dn, in device_node_string() argument
2210 return error_string(buf, end, "(%pO?)", spec); in device_node_string()
2213 return error_string(buf, end, "(%pOF?)", spec); in device_node_string()
2215 if (check_pointer(&buf, end, dn, spec)) in device_node_string()
2226 if (buf < end) in device_node_string()
2234 end); in device_node_string()
2240 buf = string(buf, end, p, str_spec); in device_node_string()
2244 buf = number(buf, end, (unsigned int)dn->phandle, default_dec_spec); in device_node_string()
2250 buf = string(buf, end, p, str_spec); in device_node_string()
2258 buf = string_nocheck(buf, end, tbuf, str_spec); in device_node_string()
2263 buf = string(buf, end, p, str_spec); in device_node_string()
2269 buf = string_nocheck(buf, end, ",", str_spec); in device_node_string()
2270 buf = string_nocheck(buf, end, "\"", str_spec); in device_node_string()
2271 buf = string(buf, end, p, str_spec); in device_node_string()
2272 buf = string_nocheck(buf, end, "\"", str_spec); in device_node_string()
2282 return widen_string(buf, buf - buf_start, end, spec); in device_node_string()
2286 char *fwnode_string(char *buf, char *end, struct fwnode_handle *fwnode, in fwnode_string() argument
2295 return error_string(buf, end, "(%pf?)", spec); in fwnode_string()
2297 if (check_pointer(&buf, end, fwnode, spec)) in fwnode_string()
2304 buf = string(buf, end, fwnode_get_name(fwnode), str_spec); in fwnode_string()
2308 buf = fwnode_full_name_string(fwnode, buf, end); in fwnode_string()
2312 return widen_string(buf, buf - buf_start, end, spec); in fwnode_string()
2316 char *resource_or_range(const char *fmt, char *buf, char *end, void *ptr, in resource_or_range() argument
2320 return range_string(buf, end, ptr, spec, fmt); in resource_or_range()
2321 return resource_string(buf, end, ptr, spec, fmt); in resource_or_range()
2527 char *pointer(const char *fmt, char *buf, char *end, void *ptr, in pointer() argument
2536 return symbol_string(buf, end, ptr, spec, fmt); in pointer()
2539 return resource_or_range(fmt, buf, end, ptr, spec); in pointer()
2541 return hex_string(buf, end, ptr, spec, fmt); in pointer()
2545 return bitmap_list_string(buf, end, ptr, spec, fmt); in pointer()
2547 return bitmap_string(buf, end, ptr, spec, fmt); in pointer()
2553 return mac_address_string(buf, end, ptr, spec, fmt); in pointer()
2563 return ip_addr_string(buf, end, ptr, spec, fmt); in pointer()
2565 return escaped_string(buf, end, ptr, spec, fmt); in pointer()
2567 return uuid_string(buf, end, ptr, spec, fmt); in pointer()
2569 return va_format(buf, end, ptr, spec); in pointer()
2571 return restricted_pointer(buf, end, ptr, spec); in pointer()
2573 return netdev_bits(buf, end, ptr, spec, fmt); in pointer()
2575 return fourcc_string(buf, end, ptr, spec, fmt); in pointer()
2577 return address_val(buf, end, ptr, spec, fmt); in pointer()
2579 return dentry_name(buf, end, ptr, spec, fmt); in pointer()
2581 return time_and_date(buf, end, ptr, spec, fmt); in pointer()
2583 return clock(buf, end, ptr, spec, fmt); in pointer()
2585 return file_dentry_name(buf, end, ptr, spec, fmt); in pointer()
2588 return bdev_name(buf, end, ptr, spec, fmt); in pointer()
2592 return flags_string(buf, end, ptr, spec, fmt); in pointer()
2594 return device_node_string(buf, end, ptr, spec, fmt + 1); in pointer()
2596 return fwnode_string(buf, end, ptr, spec, fmt + 1); in pointer()
2600 return error_string(buf, end, "(%pA?)", spec); in pointer()
2602 return rust_fmt_argument(buf, end, ptr); in pointer()
2604 return pointer_string(buf, end, ptr, spec); in pointer()
2608 return default_pointer(buf, end, ptr, spec); in pointer()
2609 return err_ptr(buf, end, ptr, spec); in pointer()
2614 return string(buf, end, ptr, spec); in pointer()
2616 return error_string(buf, end, "(einval)", spec); in pointer()
2619 return default_pointer(buf, end, ptr, spec); in pointer()
2866 char *str, *end; in vsnprintf() local
2879 end = buf + size; in vsnprintf()
2881 /* Make sure end is always >= buf */ in vsnprintf()
2882 if (end < buf) { in vsnprintf()
2883 end = ((void *)-1); in vsnprintf()
2884 size = end - buf; in vsnprintf()
2895 if (str < end) { in vsnprintf()
2897 if (copy > end - str) in vsnprintf()
2898 copy = end - str; in vsnprintf()
2912 str = number(str, end, num, spec); in vsnprintf()
2929 if (str < end) in vsnprintf()
2936 if (str < end) in vsnprintf()
2940 if (str < end) in vsnprintf()
2948 str = string(str, end, va_arg(args, char *), spec); in vsnprintf()
2952 str = pointer(fmt.str, str, end, va_arg(args, void *), in vsnprintf()
2959 if (str < end) in vsnprintf()
2979 if (str < end) in vsnprintf()
2982 end[-1] = '\0'; in vsnprintf()
3149 char *str, *end; in vbin_printf() local
3153 end = (char *)(bin_buf + size); in vbin_printf()
3162 if (str + sizeof(type) <= end) { \ in vbin_printf()
3171 if (str + sizeof(type) <= end) \ in vbin_printf()
3211 if (str + len < end) in vbin_printf()
3233 str = pointer(fmt.str, str, end, va_arg(args, void *), in vbin_printf()
3235 if (str + 1 < end) in vbin_printf()
3238 end[-1] = '\0'; /* Must be nul terminated */ in vbin_printf()
3289 char *str, *end; in bstr_printf() local
3296 end = buf + size; in bstr_printf()
3313 /* Make sure end is always >= buf */ in bstr_printf()
3314 if (end < buf) { in bstr_printf()
3315 end = ((void *)-1); in bstr_printf()
3316 size = end - buf; in bstr_printf()
3327 if (str < end) { in bstr_printf()
3329 if (copy > end - str) in bstr_printf()
3330 copy = end - str; in bstr_printf()
3350 if (str < end) in bstr_printf()
3356 if (str < end) in bstr_printf()
3360 if (str < end) in bstr_printf()
3370 str = string(str, end, (char *)str_arg, spec); in bstr_printf()
3392 if (str < end) { in bstr_printf()
3394 if (copy > end - str) in bstr_printf()
3395 copy = end - str; in bstr_printf()
3402 str = pointer(fmt.str, str, end, get_arg(void *), spec); in bstr_printf()
3410 if (str < end) in bstr_printf()
3423 str = number(str, end, num, spec); in bstr_printf()
3430 if (str < end) in bstr_printf()
3433 end[-1] = '\0'; in bstr_printf()