MIGHT_SLEEP(9) Driver Basics MIGHT_SLEEP(9)NAME
might_sleep - annotation for functions that can sleep
SYNOPSIS
might_sleep(void);
ARGUMENTS
None
DESCRIPTION
this macro will print a stack trace if it is executed in an atomic context (spinlock, irq-handler, ...).
This is a useful debugging help to be able to catch problems early and not be bitten later when the calling function happens to sleep when
it is not supposed to.
COPYRIGHT Kernel Hackers Manual 2.6. July 2010 MIGHT_SLEEP(9)
Check Out this Related Man Page
STACK(9) BSD Kernel Developer's Manual STACK(9)NAME
stack -- kernel thread stack tracing routines
SYNOPSIS
#include <sys/param.h>
#include <sys/stack.h>
In the kernel configuration file:
options DDB
options STACK
struct stack *
stack_create(void);
void
stack_destroy(struct stack *st);
int
stack_put(struct stack *st, vm_offset_t pc);
void
stack_copy(struct stack *src, struct stack dst);
void
stack_zero(struct stack *st);
void
stack_print(struct stack *st);
void
stack_print_ddb(struct stack *st);
void
stack_print_short(struct stack *st);
void
stack_print_short_ddb(struct stack *st);
void
stack_sbuf_print(struct sbuf sb*, struct stack *st);
void
stack_sbuf_print_ddb(struct sbuf sb*, struct stack *st);
void
stack_save(struct stack *st);
DESCRIPTION
The stack KPI allows querying of kernel stack trace information and the automated generation of kernel stack trace strings for the purposes
of debugging and tracing. To use the KPI, at least one of options DDB and options STACK must be compiled into the kernel.
Each stack trace is described by a struct stack. Before a trace may be created or otherwise manipulated, storage for the trace must be allo-
cated with stack_create(), which may sleep. Memory associated with a trace is freed by calling stack_destroy().
A trace of the current kernel thread's call stack may be captured using stack_save().
stack_print() and stack_print_short() may be used to print a stack trace using the kernel printf(9), and may sleep as a result of acquiring
sx(9) locks in the kernel linker while looking up symbol names. In locking-sensitive environments, the unsynchronized stack_print_ddb() and
stack_print_short_ddb() variants may be invoked. This function bypasses kernel linker locking, making it usable in ddb(4), but not in a live
system where linker data structures may change.
stack_sbuf_print() may be used to construct a human-readable string, including conversion (where possible) from a simple kernel instruction
pointer to a named symbol and offset. The argument sb must be an initialized struct sbuf as described in sbuf(9). This function may sleep
if an auto-extending struct sbuf is used, or due to kernel linker locking. In locking-sensitive environments, such as ddb(4), the unsynchro-
nized stack_sbuf_print_ddb() variant may be invoked to avoid kernel linker locking; it should be used with a fixed-length sbuf.
The utility functions stack_zero, stack_copy, and stack_put may be used to manipulate stack data structures directly.
SEE ALSO ddb(4), printf(9), sbuf(9), sx(9)AUTHORS
The stack(9) function suite was created by Antoine Brodin. stack(9) was extended by Robert Watson for general-purpose use outside of ddb(4).
BSD June 24, 2009 BSD
Hi all,
I want to create a new user and grant him ONLY transfer files access to a specific directory where he can only upload and read the files. He should be restricted to this activity only.
Regards (6 Replies)
Hi everyone,
I know the following questions are noobish questions but I am asking them because I am confused about the basics of history behind UNIX and LINUX.
Ok onto business, my questions are-:
Was/Is UNIX ever an open source operating system ?
If UNIX was... (21 Replies)
Hi,
Last 2 weeks I have searched many forums and i haven't found the answer for the question:
How to get all command output to Putty title?
Needed it for other programs to know when some jobs on a server is done and is it done right or wrong. Plink stdout and stdin wasn't working, i used many... (1 Reply)
anyone have any idea how do to this with auth_attr?
I suspect if I grant him
solaris.device.:RO::Device Allocation::help=DevAllocHeader.html
that will work but I'm unsure. Just looking for a second opinion. (10 Replies)
I am looking for a stable, reliable system to replace my current Windows systems in the home. These are simple systems that I purchased from the local Big Box store.
I have heard many good things about Unix and it's various children and it sounds like a good option to me. I have worked... (2 Replies)
We have a lot of scripts using cut as :
cut -c 0-8 --works for cut (GNU coreutils) 5.97, but does not work for cut (GNU coreutils) 8.4.
Gives error -
cut: fields and positions are numbered from 1
Try `cut --help' for more information.
The position needs to start with 1 for later... (6 Replies)
I've got a problem with a proxy configuration. We have an LDAP group that lists all users who are authorised to use the proxy to FTP (usually Filezilla) out to the world, and by implication those not in the group should be denied. My users are delighted that this has been enabled and those that... (9 Replies)
hi folks,
how to using tar with exclude directory and compress it using tar.Z
i only know how to exclude dir only with this command below:
tar -cvf /varios/restore/test.tar -X excludefile.txt /jfma/test1/
how to compress it using 1 command?
Thanx
Please use CODE tags as... (6 Replies)
Hello All,
I had recently learnt a bit of Docker(which provides containerization process).
Here are some of my learning points from it.
Let us start first with very basic question:
What is Docker:
Docker is a platform for sysadmins and developers to DEPLOY, DEVELOP and RUN applications ... (7 Replies)
What is the point of this? Whenever I close my shell it appends to the history file without adding this. I have never seen it overwrite my history file.
# When the shell exits, append to the history file instead of overwriting it
shopt -s histappend (3 Replies)
Hello for all,
I am testing the behavior of a 32 bit application running on Solaris 5.10 (SPARC), and realize it reaches 4GB of memory and then crashes.
It doesn't matter the amount of used memory as application is intended to perform many transactions; rather, what I want to achieve is to... (2 Replies)