History log of /openbsd-src/sys/ddb/db_interface.h (Results 1 – 25 of 28)
Revision Date Author Comments
# 64a93525 05-Sep-2024 bluhm <bluhm@openbsd.org>

In ddb(4) print mbuf chain and packet list.

For debugging hardware offloading, DMA requirements, bounce buffers,
and performance optimizations, knowing the memory layout of mbuf
content helps.
Imple

In ddb(4) print mbuf chain and packet list.

For debugging hardware offloading, DMA requirements, bounce buffers,
and performance optimizations, knowing the memory layout of mbuf
content helps.
Implement /c and /p modifiers in ddb show mbuf. It traverses the
pointer m_next for mbuf chain or m_nextpkt for packet list. Show
mbuf type, data offset, mbuf length, packet length, cluster size,
and total number of elements, length and size.

OK claudio@ mvs@

show more ...


# 81fb472f 03-Feb-2024 beck <beck@openbsd.org>

Remove Softdep.

Softdep has been a no-op for some time now, this removes it to get
it out of the way.

Flensing mostly done in Talinn, with some help from krw@

ok deraadt@


# b2653891 02-Jul-2023 cheloha <cheloha@openbsd.org>

all platforms, kernel: remove __HAVE_CLOCKINTR symbol

Every platform made the clockintr switch at least six months ago.
The __HAVE_CLOCKINTR symbol is now redundant. Remove it.

Prompted by claudio

all platforms, kernel: remove __HAVE_CLOCKINTR symbol

Every platform made the clockintr switch at least six months ago.
The __HAVE_CLOCKINTR symbol is now redundant. Remove it.

Prompted by claudio@.

Link: https://marc.info/?l=openbsd-tech&m=168826181015032&w=2

"makes sense" mlarkin@

show more ...


# 329e3480 05-Nov-2022 cheloha <cheloha@openbsd.org>

clockintr(9): initial commit

clockintr(9) is a machine-independent clock interrupt scheduler. It
emulates most of what the machine-dependent clock interrupt code is
doing on every platform. Every

clockintr(9): initial commit

clockintr(9) is a machine-independent clock interrupt scheduler. It
emulates most of what the machine-dependent clock interrupt code is
doing on every platform. Every CPU has a work schedule based on the
system uptime clock. For now, every CPU has a hardclock(9) and a
statclock(). If schedhz is set, every CPU has a schedclock(), too.

This commit only contains the MI pieces. All code is conditionally
compiled with __HAVE_CLOCKINTR. This commit changes no behavior yet.

At a high level, clockintr(9) is configured and used as follows:

1. During boot, the primary CPU calls clockintr_init(9). Global state
is initialized.
2. Primary CPU calls clockintr_cpu_init(9). Local, per-CPU state is
initialized. An "intrclock" struct may be installed, too.
3. Secondary CPUs call clockintr_cpu_init(9) to initialize their
local state.
4. All CPUs repeatedly call clockintr_dispatch(9) from the MD clock
interrupt handler. The CPUs complete work and rearm their local
interrupt clock, if any, during the dispatch.
5. Repeat step (4) until the system shuts down, suspends, or hibernates.
6. During resume, the primary CPU calls inittodr(9) and advances the
system uptime.
7. Go to step (2). This time around, clockintr_cpu_init(9) also
advances the work schedule on the calling CPU to skip events that
expired during suspend. This prevents a "thundering herd" of
useless work during the first clock interrupt.

In the long term, we need an MI clock interrupt scheduler in order to
(1) provide control over the clock interrupt to MI subsystems like
timeout(9) and dt(4) to improve their accuracy, (2) provide drivers
like acpicpu(4) a means for slowing or stopping the clock interrupt on
idle CPUs to conserve power, and (3) reduce the amount of duplicated
code in the MD clock interrupt code.

Before we can do any of that, though, we need to switch every platform
over to using clockintr(9) and do some cleanup.

Prompted by "the vmm(4) time bug," among other problems, and a
discussion at a2k19 on the subject. Lots of design input from
kettenis@. Early versions reviewed by kettenis@ and mlarkin@.
Platform-specific help and testing from kettenis@, gkoehler@,
mlarkin@, miod@, aoyama@, visa@, and dv@. Babysitting and spiritual
guidance from mlarkin@ and kettenis@.

Link: https://marc.info/?l=openbsd-tech&m=166697497302283&w=2

ok kettenis@ mlarkin@

show more ...


# 02de433d 29-Jul-2022 semarie <semarie@openbsd.org>

Replace the swap extent(9) usage by a blist data structure.

It makes uvm_swap_free() faster: extents have a cost of O(n*n) which doesn't
really scale with gigabytes of swap.

Based on initial work f

Replace the swap extent(9) usage by a blist data structure.

It makes uvm_swap_free() faster: extents have a cost of O(n*n) which doesn't
really scale with gigabytes of swap.

Based on initial work from mpi@
The blist implementation comes from DragonFlyBSD.

The diff adds also a ddb(4) 'show swap' command to show the blist and help
debugging, and fix some off-by-one in size printed during hibernate.

ok mpi@

show more ...


# d06d27a7 28-Jul-2022 bluhm <bluhm@openbsd.org>

In the kernel exist functions to print routes, but they were not
accessible from ddb. Implement "show all routes" to print routing
tables, and "show route 0xfffffd807e9b0000" for a single route
entr

In the kernel exist functions to print routes, but they were not
accessible from ddb. Implement "show all routes" to print routing
tables, and "show route 0xfffffd807e9b0000" for a single route
entry. Note that the rtable id is not part of a route entry, so
it makes no sense to print it there.
OK deraadt@

show more ...


# 08f058f8 07-Nov-2019 mpi <mpi@openbsd.org>

db_addr_t -> vaddr_t

ok deraadt@


# 8383b4f2 06-Nov-2019 mpi <mpi@openbsd.org>

Substitute boolean_t/TRUE/FALSE by int/1/0.

ok dlg@, jasper@, anton@


# a00d4ff8 29-Sep-2017 mpi <mpi@openbsd.org>

New ddb(4) command: kill.

Send an uncatchable SIGABRT to the process specified by the pid
argument. Useful in case of CPU exhaustion to kill the DoSing
process and generate a core for later inspect

New ddb(4) command: kill.

Send an uncatchable SIGABRT to the process specified by the pid
argument. Useful in case of CPU exhaustion to kill the DoSing
process and generate a core for later inspection.

ok phessler@, visa@, kettenis@, miod@

show more ...


# 2d23c802 09-Jan-2017 mpi <mpi@openbsd.org>

Revert previous, it's a documented behavior and people might rely on it.

Pointed by deraadt@


# 47ded3d0 09-Jan-2017 mpi <mpi@openbsd.org>

Stop and restart the watchdog timer when entering and leaving ddb(4).

From Christian Ludwig.


# ce5376a6 15-Jan-2016 dlg <dlg@openbsd.org>

add a "show socket" command to ddb

should help inspecting socket issues in the future.

enthusiasm from mpi@ bluhm@ deraadt@


# 76262c1d 05-Nov-2010 claudio <claudio@openbsd.org>

Implement m_print as real ddb command "show mbuf addr" in the way other
such commands are implemented.
"Ja! You'll need to update ddb.4 as well, of course." miod@


# da59dcae 17-Aug-2009 jasper <jasper@openbsd.org>

dd 'show all bufs' to show all the buffers in the system

ok beck@ thib@


# bfe91d83 14-Aug-2009 thib <thib@openbsd.org>

add ddb functions to be able to show all the nfsnodes in the system
and rewrite the nfsreq code to use pool_walk().

OK beck@, blambert@


# 4c6830d6 13-Aug-2009 thib <thib@openbsd.org>

add a show all vnodes command, use dlg's nice pool_walk() to accomplish
this.

ok beck@, dlg@


# be9c681d 17-Jun-2009 thib <thib@openbsd.org>

Revert bufq's. this is inline with the major midlayer reverts that
have been going on. this appears to bring us back to stable state.

lots of testing by oga and ariane and my self.


# 5a5beaf3 03-Jun-2009 thib <thib@openbsd.org>

add a flexible buffer queue (bufq) api, based on the never used
one by tedu@. It doesn't do anything smart yet, it just uses
plain old disksort. we also keep the old method of queueing bufs
since som

add a flexible buffer queue (bufq) api, based on the never used
one by tedu@. It doesn't do anything smart yet, it just uses
plain old disksort. we also keep the old method of queueing bufs
since some miods have crazy MD drivers that need some love.

ok beck@, art@
tested by many on many archs.

show more ...


# cecbdfb6 18-Jan-2009 thib <thib@openbsd.org>

Add nfs ddb hooks, for now only to show all the outstanding nfsreq's
and to print out struct nfsreq.

"get it in so people can pound on it" blambert@
OK and information_s_ on the manpage from miod@


# 336db846 12-Jul-2006 deraadt <deraadt@openbsd.org>

fake structs to let kernels compile on architectures that some german
companies do not use. Mickey, why did you break the tree for us like this,
all after not showing the diffs to lots of people? Ar

fake structs to let kernels compile on architectures that some german
companies do not use. Mickey, why did you break the tree for us like this,
all after not showing the diffs to lots of people? Are you that special
that you can get away with this? Do you really want to bet on that, again?

show more ...


# 76726696 11-Jul-2006 mickey <mickey@openbsd.org>

add mount/vnode/buf and softdep printing commands; tested on a few archs and will make pedro happy too (;


# 4db979bc 20-May-2006 mickey <mickey@openbsd.org>

add show all pools command listing all pools as vmstat -m does; miod@ ok


# f7342a4b 16-May-2006 mickey <mickey@openbsd.org>

fix comments


# 332a70d3 18-May-2002 art <art@openbsd.org>

Rename the MD db_stack_trace_cmd to db_stack_trace_print. Add an argument
that specifies which printf funciton it should use. Implement
db_stack_trace_cmd in MI code.

Thanks to miod@ for all the tes

Rename the MD db_stack_trace_cmd to db_stack_trace_print. Add an argument
that specifies which printf funciton it should use. Implement
db_stack_trace_cmd in MI code.

Thanks to miod@ for all the tests.

show more ...


# c4071fd1 14-Mar-2002 millert <millert@openbsd.org>

First round of __P removal in sys


12