mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-11-27 09:12:44 +00:00
kdump: Print splice structures
MFC after: 3 months Sponsored by: Klara, Inc. Sponsored by: Stormshield
This commit is contained in:
parent
051a2132f4
commit
b76961e3a2
BIN
lib/libsysdecode/ktrace.out
Normal file
BIN
lib/libsysdecode/ktrace.out
Normal file
Binary file not shown.
@ -105,6 +105,7 @@ void ktruser(int, void *);
|
|||||||
void ktrcaprights(cap_rights_t *);
|
void ktrcaprights(cap_rights_t *);
|
||||||
void ktritimerval(struct itimerval *it);
|
void ktritimerval(struct itimerval *it);
|
||||||
void ktrsockaddr(struct sockaddr *);
|
void ktrsockaddr(struct sockaddr *);
|
||||||
|
void ktrsplice(struct splice *);
|
||||||
void ktrstat(struct stat *);
|
void ktrstat(struct stat *);
|
||||||
void ktrstruct(char *, size_t);
|
void ktrstruct(char *, size_t);
|
||||||
void ktrcapfail(struct ktr_cap_fail *);
|
void ktrcapfail(struct ktr_cap_fail *);
|
||||||
@ -1923,6 +1924,14 @@ ktrsockaddr(struct sockaddr *sa)
|
|||||||
printf(" }\n");
|
printf(" }\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ktrsplice(struct splice *sp)
|
||||||
|
{
|
||||||
|
printf("struct splice { fd=%d, max=%#jx, idle=%jd.%06jd }\n",
|
||||||
|
sp->sp_fd, (uintmax_t)sp->sp_max, (intmax_t)sp->sp_idle.tv_sec,
|
||||||
|
(intmax_t)sp->sp_idle.tv_usec);
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
ktrstat(struct stat *statp)
|
ktrstat(struct stat *statp)
|
||||||
{
|
{
|
||||||
@ -2111,6 +2120,13 @@ ktrstruct(char *buf, size_t buflen)
|
|||||||
memcpy(set, data, datalen);
|
memcpy(set, data, datalen);
|
||||||
ktrbitset(name, set, datalen);
|
ktrbitset(name, set, datalen);
|
||||||
free(set);
|
free(set);
|
||||||
|
} else if (strcmp(name, "splice") == 0) {
|
||||||
|
struct splice sp;
|
||||||
|
|
||||||
|
if (datalen != sizeof(sp))
|
||||||
|
goto invalid;
|
||||||
|
memcpy(&sp, data, datalen);
|
||||||
|
ktrsplice(&sp);
|
||||||
} else {
|
} else {
|
||||||
#ifdef SYSDECODE_HAVE_LINUX
|
#ifdef SYSDECODE_HAVE_LINUX
|
||||||
if (ktrstruct_linux(name, data, datalen) == false)
|
if (ktrstruct_linux(name, data, datalen) == false)
|
||||||
|
Loading…
Reference in New Issue
Block a user