Lines Matching full:end

84  * @endp: A pointer to the end of the parsed string will be placed here
99 * @endp: A pointer to the end of the parsed string will be placed here
113 * @endp: A pointer to the end of the parsed string will be placed here
145 * @endp: A pointer to the end of the parsed string will be placed here
449 char *number(char *buf, char *end, unsigned long long num, in number() argument
513 if (buf < end) in number()
520 if (buf < end) in number()
527 if (buf < end) in number()
532 if (buf < end) in number()
542 if (buf < end) in number()
549 if (buf < end) in number()
555 if (buf < end) in number()
561 if (buf < end) in number()
570 char *special_hex_number(char *buf, char *end, unsigned long long num, int size) in special_hex_number() argument
580 return number(buf, end, num, spec); in special_hex_number()
583 static void move_right(char *buf, char *end, unsigned len, unsigned spaces) in move_right() argument
586 if (buf >= end) /* nowhere to put anything */ in move_right()
588 size = end - buf; in move_right()
605 * @end: end of output buffer
610 char *widen_string(char *buf, int n, char *end, struct printf_spec spec) in widen_string() argument
619 move_right(buf - n, end, n, spaces); in widen_string()
623 if (buf < end) in widen_string()
631 static char *string_nocheck(char *buf, char *end, const char *s, in string_nocheck() argument
641 if (buf < end) in string_nocheck()
646 return widen_string(buf, len, end, spec); in string_nocheck()
649 static char *err_ptr(char *buf, char *end, void *ptr, in err_ptr() argument
656 return string_nocheck(buf, end, sym, spec); in err_ptr()
665 return number(buf, end, err, spec); in err_ptr()
669 static char *error_string(char *buf, char *end, const char *s, in error_string() argument
680 return string_nocheck(buf, end, s, spec); in error_string()
699 static int check_pointer(char **buf, char *end, const void *ptr, in check_pointer() argument
706 *buf = error_string(*buf, end, err_msg, spec); in check_pointer()
714 char *string(char *buf, char *end, const char *s, in string() argument
717 if (check_pointer(&buf, end, s, spec)) in string()
720 return string_nocheck(buf, end, s, spec); in string()
723 static char *pointer_string(char *buf, char *end, in pointer_string() argument
734 return number(buf, end, (unsigned long int)ptr, spec); in pointer_string()
821 static char *ptr_to_id(char *buf, char *end, const void *ptr, in ptr_to_id() argument
833 return pointer_string(buf, end, ptr, spec); in ptr_to_id()
838 return pointer_string(buf, end, (const void *)hashval, spec); in ptr_to_id()
845 return error_string(buf, end, str, spec); in ptr_to_id()
848 return pointer_string(buf, end, (const void *)hashval, spec); in ptr_to_id()
854 char *restricted_pointer(char *buf, char *end, const void *ptr, in restricted_pointer() argument
860 return ptr_to_id(buf, end, ptr, spec); in restricted_pointer()
871 return error_string(buf, end, "pK-error", spec); in restricted_pointer()
897 return pointer_string(buf, end, ptr, spec); in restricted_pointer()
901 char *dentry_name(char *buf, char *end, const struct dentry *d, struct printf_spec spec, in dentry_name() argument
919 if (check_pointer(&buf, end, d, spec)) { in dentry_name()
942 if (buf < end) in dentry_name()
946 return widen_string(buf, n, end, spec); in dentry_name()
950 char *file_dentry_name(char *buf, char *end, const struct file *f, in file_dentry_name() argument
953 if (check_pointer(&buf, end, f, spec)) in file_dentry_name()
956 return dentry_name(buf, end, f->f_path.dentry, spec, fmt); in file_dentry_name()
960 char *bdev_name(char *buf, char *end, struct block_device *bdev, in bdev_name() argument
965 if (check_pointer(&buf, end, bdev, spec)) in bdev_name()
969 buf = string(buf, end, hd->disk_name, spec); in bdev_name()
972 if (buf < end) in bdev_name()
976 buf = number(buf, end, bdev->bd_partno, spec); in bdev_name()
983 char *symbol_string(char *buf, char *end, void *ptr, in symbol_string() argument
1007 return string_nocheck(buf, end, sym, spec); in symbol_string()
1009 return special_hex_number(buf, end, value, sizeof(void *)); in symbol_string()
1044 char *resource_string(char *buf, char *end, struct resource *res, in resource_string() argument
1091 if (check_pointer(&buf, end, res, spec)) in resource_string()
1120 if (res->start != res->end) { in resource_string()
1122 p = number(p, pend, res->end, *specp); in resource_string()
1141 return string_nocheck(buf, end, sym, spec); in resource_string()
1145 char *hex_string(char *buf, char *end, u8 *addr, struct printf_spec spec, in hex_string() argument
1156 if (check_pointer(&buf, end, addr, spec)) in hex_string()
1178 if (buf < end) in hex_string()
1181 if (buf < end) in hex_string()
1186 if (buf < end) in hex_string()
1196 char *bitmap_string(char *buf, char *end, unsigned long *bitmap, in bitmap_string() argument
1204 if (check_pointer(&buf, end, bitmap, spec)) in bitmap_string()
1225 if (buf < end) in bitmap_string()
1232 buf = number(buf, end, val, spec); in bitmap_string()
1240 char *bitmap_list_string(char *buf, char *end, unsigned long *bitmap, in bitmap_list_string() argument
1248 if (check_pointer(&buf, end, bitmap, spec)) in bitmap_list_string()
1259 if (buf < end) in bitmap_list_string()
1265 buf = number(buf, end, rbot, default_dec_spec); in bitmap_list_string()
1267 if (buf < end) in bitmap_list_string()
1271 buf = number(buf, end, rtop, default_dec_spec); in bitmap_list_string()
1280 char *mac_address_string(char *buf, char *end, u8 *addr, in mac_address_string() argument
1289 if (check_pointer(&buf, end, addr, spec)) in mac_address_string()
1317 return string_nocheck(buf, end, mac_addr, spec); in mac_address_string()
1470 char *ip6_addr_string(char *buf, char *end, const u8 *addr, in ip6_addr_string() argument
1480 return string_nocheck(buf, end, ip6_addr, spec); in ip6_addr_string()
1484 char *ip4_addr_string(char *buf, char *end, const u8 *addr, in ip4_addr_string() argument
1491 return string_nocheck(buf, end, ip4_addr, spec); in ip4_addr_string()
1495 char *ip6_addr_string_sa(char *buf, char *end, const struct sockaddr_in6 *sa, in ip6_addr_string_sa() argument
1553 return string_nocheck(buf, end, ip6_addr, spec); in ip6_addr_string_sa()
1557 char *ip4_addr_string_sa(char *buf, char *end, const struct sockaddr_in *sa, in ip4_addr_string_sa() argument
1588 return string_nocheck(buf, end, ip4_addr, spec); in ip4_addr_string_sa()
1592 char *ip_addr_string(char *buf, char *end, const void *ptr, in ip_addr_string() argument
1597 if (check_pointer(&buf, end, ptr, spec)) in ip_addr_string()
1602 return ip6_addr_string(buf, end, ptr, spec, fmt); in ip_addr_string()
1604 return ip4_addr_string(buf, end, ptr, spec, fmt); in ip_addr_string()
1614 return ip4_addr_string_sa(buf, end, &sa->v4, spec, fmt); in ip_addr_string()
1616 return ip6_addr_string_sa(buf, end, &sa->v6, spec, fmt); in ip_addr_string()
1618 return error_string(buf, end, "(einval)", spec); in ip_addr_string()
1623 return error_string(buf, end, err_fmt_msg, spec); in ip_addr_string()
1627 char *escaped_string(char *buf, char *end, u8 *addr, struct printf_spec spec, in escaped_string() argument
1638 if (check_pointer(&buf, end, addr, spec)) in escaped_string()
1680 buf += string_escape_mem(addr, len, buf, buf < end ? end - buf : 0, flags, NULL); in escaped_string()
1685 static char *va_format(char *buf, char *end, struct va_format *va_fmt, in va_format() argument
1690 if (check_pointer(&buf, end, va_fmt, spec)) in va_format()
1694 buf += vsnprintf(buf, end > buf ? end - buf : 0, va_fmt->fmt, va); in va_format()
1701 char *uuid_string(char *buf, char *end, const u8 *addr, in uuid_string() argument
1710 if (check_pointer(&buf, end, addr, spec)) in uuid_string()
1742 return string_nocheck(buf, end, uuid, spec); in uuid_string()
1746 char *netdev_bits(char *buf, char *end, const void *addr, in netdev_bits() argument
1752 if (check_pointer(&buf, end, addr, spec)) in netdev_bits()
1761 return error_string(buf, end, "(%pN?)", spec); in netdev_bits()
1764 return special_hex_number(buf, end, num, size); in netdev_bits()
1768 char *fourcc_string(char *buf, char *end, const u32 *fourcc, in fourcc_string() argument
1777 return error_string(buf, end, "(%p4?)", spec); in fourcc_string()
1779 if (check_pointer(&buf, end, fourcc, spec)) in fourcc_string()
1800 return string(buf, end, output, spec); in fourcc_string()
1804 char *address_val(char *buf, char *end, const void *addr, in address_val() argument
1810 if (check_pointer(&buf, end, addr, spec)) in address_val()
1825 return special_hex_number(buf, end, num, size); in address_val()
1829 char *date_str(char *buf, char *end, const struct rtc_time *tm, bool r) in date_str() argument
1834 buf = number(buf, end, year, default_dec04_spec); in date_str()
1835 if (buf < end) in date_str()
1839 buf = number(buf, end, mon, default_dec02_spec); in date_str()
1840 if (buf < end) in date_str()
1844 return number(buf, end, tm->tm_mday, default_dec02_spec); in date_str()
1848 char *time_str(char *buf, char *end, const struct rtc_time *tm, bool r) in time_str() argument
1850 buf = number(buf, end, tm->tm_hour, default_dec02_spec); in time_str()
1851 if (buf < end) in time_str()
1855 buf = number(buf, end, tm->tm_min, default_dec02_spec); in time_str()
1856 if (buf < end) in time_str()
1860 return number(buf, end, tm->tm_sec, default_dec02_spec); in time_str()
1864 char *rtc_str(char *buf, char *end, const struct rtc_time *tm, in rtc_str() argument
1872 if (check_pointer(&buf, end, tm, spec)) in rtc_str()
1901 buf = date_str(buf, end, tm, raw); in rtc_str()
1903 if (buf < end) in rtc_str()
1908 buf = time_str(buf, end, tm, raw); in rtc_str()
1914 char *time64_str(char *buf, char *end, const time64_t time, in time64_str() argument
1933 return rtc_str(buf, end, &rtc_time, spec, fmt); in time64_str()
1937 char *time_and_date(char *buf, char *end, void *ptr, struct printf_spec spec, in time_and_date() argument
1942 return rtc_str(buf, end, (const struct rtc_time *)ptr, spec, fmt); in time_and_date()
1944 return time64_str(buf, end, *(const time64_t *)ptr, spec, fmt); in time_and_date()
1946 return error_string(buf, end, "(%pt?)", spec); in time_and_date()
1951 char *clock(char *buf, char *end, struct clk *clk, struct printf_spec spec, in clock() argument
1955 return error_string(buf, end, "(%pC?)", spec); in clock()
1957 if (check_pointer(&buf, end, clk, spec)) in clock()
1964 return string(buf, end, __clk_get_name(clk), spec); in clock()
1966 return ptr_to_id(buf, end, clk, spec); in clock()
1972 char *format_flags(char *buf, char *end, unsigned long flags, in format_flags() argument
1982 buf = string(buf, end, names->name, default_str_spec); in format_flags()
1986 if (buf < end) in format_flags()
1993 buf = number(buf, end, flags, default_flag_spec); in format_flags()
2020 char *format_page_flags(char *buf, char *end, unsigned long flags) in format_page_flags() argument
2028 buf = format_flags(buf, end, main_flags, pageflag_names); in format_page_flags()
2040 if (buf < end) in format_page_flags()
2045 buf = string(buf, end, pff[i].name, default_str_spec); in format_page_flags()
2046 if (buf < end) in format_page_flags()
2049 buf = number(buf, end, (flags >> pff[i].shift) & pff[i].mask, in format_page_flags()
2059 char *flags_string(char *buf, char *end, void *flags_ptr, in flags_string() argument
2065 if (check_pointer(&buf, end, flags_ptr, spec)) in flags_string()
2070 return format_page_flags(buf, end, *(unsigned long *)flags_ptr); in flags_string()
2080 return error_string(buf, end, "(%pG?)", spec); in flags_string()
2083 return format_flags(buf, end, flags, names); in flags_string()
2088 char *end) in fwnode_full_name_string() argument
2097 buf = string(buf, end, fwnode_get_name_prefix(__fwnode), in fwnode_full_name_string()
2099 buf = string(buf, end, fwnode_get_name(__fwnode), in fwnode_full_name_string()
2109 char *device_node_string(char *buf, char *end, struct device_node *dn, in device_node_string() argument
2123 return error_string(buf, end, "(%pO?)", spec); in device_node_string()
2126 return error_string(buf, end, "(%pOF?)", spec); in device_node_string()
2128 if (check_pointer(&buf, end, dn, spec)) in device_node_string()
2139 if (buf < end) in device_node_string()
2147 end); in device_node_string()
2153 buf = string(buf, end, p, str_spec); in device_node_string()
2157 buf = number(buf, end, (unsigned int)dn->phandle, default_dec_spec); in device_node_string()
2163 buf = string(buf, end, p, str_spec); in device_node_string()
2171 buf = string_nocheck(buf, end, tbuf, str_spec); in device_node_string()
2176 buf = string(buf, end, p, str_spec); in device_node_string()
2182 buf = string_nocheck(buf, end, ",", str_spec); in device_node_string()
2183 buf = string_nocheck(buf, end, "\"", str_spec); in device_node_string()
2184 buf = string(buf, end, p, str_spec); in device_node_string()
2185 buf = string_nocheck(buf, end, "\"", str_spec); in device_node_string()
2195 return widen_string(buf, buf - buf_start, end, spec); in device_node_string()
2199 char *fwnode_string(char *buf, char *end, struct fwnode_handle *fwnode, in fwnode_string() argument
2208 return error_string(buf, end, "(%pf?)", spec); in fwnode_string()
2210 if (check_pointer(&buf, end, fwnode, spec)) in fwnode_string()
2217 buf = string(buf, end, fwnode_get_name(fwnode), str_spec); in fwnode_string()
2221 buf = fwnode_full_name_string(fwnode, buf, end); in fwnode_string()
2225 return widen_string(buf, buf - buf_start, end, spec); in fwnode_string()
2385 char *pointer(const char *fmt, char *buf, char *end, void *ptr, in pointer() argument
2394 return symbol_string(buf, end, ptr, spec, fmt); in pointer()
2397 return resource_string(buf, end, ptr, spec, fmt); in pointer()
2399 return hex_string(buf, end, ptr, spec, fmt); in pointer()
2403 return bitmap_list_string(buf, end, ptr, spec, fmt); in pointer()
2405 return bitmap_string(buf, end, ptr, spec, fmt); in pointer()
2411 return mac_address_string(buf, end, ptr, spec, fmt); in pointer()
2421 return ip_addr_string(buf, end, ptr, spec, fmt); in pointer()
2423 return escaped_string(buf, end, ptr, spec, fmt); in pointer()
2425 return uuid_string(buf, end, ptr, spec, fmt); in pointer()
2427 return va_format(buf, end, ptr, spec, fmt); in pointer()
2429 return restricted_pointer(buf, end, ptr, spec); in pointer()
2431 return netdev_bits(buf, end, ptr, spec, fmt); in pointer()
2433 return fourcc_string(buf, end, ptr, spec, fmt); in pointer()
2435 return address_val(buf, end, ptr, spec, fmt); in pointer()
2437 return dentry_name(buf, end, ptr, spec, fmt); in pointer()
2439 return time_and_date(buf, end, ptr, spec, fmt); in pointer()
2441 return clock(buf, end, ptr, spec, fmt); in pointer()
2443 return file_dentry_name(buf, end, ptr, spec, fmt); in pointer()
2446 return bdev_name(buf, end, ptr, spec, fmt); in pointer()
2450 return flags_string(buf, end, ptr, spec, fmt); in pointer()
2452 return device_node_string(buf, end, ptr, spec, fmt + 1); in pointer()
2454 return fwnode_string(buf, end, ptr, spec, fmt + 1); in pointer()
2456 return pointer_string(buf, end, ptr, spec); in pointer()
2461 return err_ptr(buf, end, ptr, spec); in pointer()
2466 return string(buf, end, ptr, spec); in pointer()
2468 return error_string(buf, end, "(einval)", spec); in pointer()
2477 return pointer_string(buf, end, ptr, spec); in pointer()
2479 return ptr_to_id(buf, end, ptr, spec); in pointer()
2730 char *str, *end; in vsnprintf() local
2739 end = buf + size; in vsnprintf()
2741 /* Make sure end is always >= buf */ in vsnprintf()
2742 if (end < buf) { in vsnprintf()
2743 end = ((void *)-1); in vsnprintf()
2744 size = end - buf; in vsnprintf()
2756 if (str < end) { in vsnprintf()
2757 if (copy > end - str) in vsnprintf()
2758 copy = end - str; in vsnprintf()
2778 if (str < end) in vsnprintf()
2785 if (str < end) in vsnprintf()
2789 if (str < end) in vsnprintf()
2797 str = string(str, end, va_arg(args, char *), spec); in vsnprintf()
2801 str = pointer(fmt, str, end, va_arg(args, void *), in vsnprintf()
2808 if (str < end) in vsnprintf()
2863 str = number(str, end, num, spec); in vsnprintf()
2869 if (str < end) in vsnprintf()
2872 end[-1] = '\0'; in vsnprintf()
3033 char *str, *end; in vbin_printf() local
3037 end = (char *)(bin_buf + size); in vbin_printf()
3046 if (str + sizeof(type) <= end) { \ in vbin_printf()
3055 if (str + sizeof(type) <= end) \ in vbin_printf()
3097 if (str + len < end) in vbin_printf()
3119 str = pointer(fmt, str, end, va_arg(args, void *), in vbin_printf()
3121 if (str + 1 < end) in vbin_printf()
3124 end[-1] = '\0'; /* Must be nul terminated */ in vbin_printf()
3192 char *str, *end; in bstr_printf() local
3199 end = buf + size; in bstr_printf()
3216 /* Make sure end is always >= buf */ in bstr_printf()
3217 if (end < buf) { in bstr_printf()
3218 end = ((void *)-1); in bstr_printf()
3219 size = end - buf; in bstr_printf()
3231 if (str < end) { in bstr_printf()
3232 if (copy > end - str) in bstr_printf()
3233 copy = end - str; in bstr_printf()
3253 if (str < end) in bstr_printf()
3259 if (str < end) in bstr_printf()
3263 if (str < end) in bstr_printf()
3273 str = string(str, end, (char *)str_arg, spec); in bstr_printf()
3295 if (str < end) { in bstr_printf()
3297 if (copy > end - str) in bstr_printf()
3298 copy = end - str; in bstr_printf()
3305 str = pointer(fmt, str, end, get_arg(void *), spec); in bstr_printf()
3313 if (str < end) in bstr_printf()
3358 str = number(str, end, num, spec); in bstr_printf()
3365 if (str < end) in bstr_printf()
3368 end[-1] = '\0'; in bstr_printf()