flushband(9F) Kernel Functions for Drivers flushband(9F)NAME
flushband - flush messages for a specified priority band
SYNOPSIS
#include <sys/stream.h>
void flushband(queue_t *q, unsigned char pri, int flag);
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
PARAMETERS
q Pointer to the queue.
pri Priority of messages to be flushed.
flag Valid flag values are:
FLUSHDATA Flush only data messages (types M_DATA, M_DELAY, M_PROTO, and M_PCPROTO ).
FLUSHALL Flush all messages.
DESCRIPTION
flushband() flushes messages associated with the priority band specified by pri. If pri is 0, only normal and high priority messages are
flushed. Otherwise, messages are flushed from the band pri according to the value of flag.
CONTEXT
flushband() can be called from user or interrupt context.
SEE ALSO flushq(9F)
Writing Device Drivers STREAMS Programming Guide
SunOS 5.10 11 Apr 1991 flushband(9F)
Check Out this Related Man Page
flushq(9F) Kernel Functions for Drivers flushq(9F)NAME
flushq - remove messages from a queue
SYNOPSIS
#include <sys/stream.h>
void flushq(queue_t *q, int flag);
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
PARAMETERS
q Pointer to the queue to be flushed.
flag Valid flag values are:
FLUSHDATA Flush only data messages (types M_DATA M_DELAY M_PROTO and M_PCPROTO).
FLUSHALL Flush all messages.
DESCRIPTION
flushq() frees messages and their associated data structures by calling freemsg(9F). If the queue's count falls below the low water mark
and the queue was blocking an upstream service procedure, the nearest upstream service procedure is enabled.
CONTEXT
flushq() can be called from user or interrupt context.
EXAMPLES
Example 1: Using flushq()
This example depicts the canonical flushing code for STREAMS modules. The module has a write service procedure and potentially has messages
on the queue. If it receives an M_FLUSH message, and if the FLUSHR bit is on in the first byte of the message (line 10), then the read
queue is flushed (line 11). If the FLUSHW bit is on (line 12), then the write queue is flushed (line 13). Then the message is passed along
to the next entity in the stream (line 14). See the example for qreply(9F) for the canonical flushing code for drivers.
1 /*
2 * Module write-side put procedure.
3 */
4 xxxwput(q, mp)
5 queue_t *q;
6 mblk_t *mp;
7 {
8 switch(mp->b_datap->db_type) {
9 case M_FLUSH:
10 if (*mp->b_rptr & FLUSHR)
11 flushq(RD(q), FLUSHALL);
12 if (*mp->b_rptr & FLUSHW)
13 flushq(q, FLUSHALL);
14 putnext(q, mp);
15 break;
. . .
16 }
17 }
SEE ALSO flushband(9F), freemsg(9F), putq(9F), qreply(9F)
Writing Device Drivers STREAMS Programming Guide
SunOS 5.10 11 Apr 1991 flushq(9F)
Why do shell builtins like echo and pwd have binaries in /bin? When I do which pwd, I get the one in /bin. that means that I am not using the builtin version? What determines which one gets used? Is the which command a definitive way to determine what is being run when I enter pwd? (16 Replies)
Introduction
I have seen some misinformation regarding Unix file permissions. I will try to set the record straight. Take a look at this example of some output from ls:
$ ls -ld /usr/bin /usr/bin/cat
drwxrwxr-x 3 root bin 8704 Sep 23 2004 /usr/bin
-r-xr-xr-x 1 bin bin ... (6 Replies)
I see lot of ad-hoc shell scripts in our servers which don't have a shebang at the beginning .
Does this mean that it will run on any shell ?
Is it a good practice to create scripts (even ad-hoc ones) without shebang ? (16 Replies)
For a starter I know the braces are NOT in the code...
Consider these code snippets:-
#!/bin/bash --posix
x=0
somefunction()
if
then
echo "I am here."
fi
# somefunction
#!/bin/bash --posix
x=0
somefunction()
if (2 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)
For those interested in installing dash shell on OSX Lion to help test POSIX compliancy of shell scripts, it is quite easy. I did it like this:
If you don't have gcc on your system:
0. Download and install the Command Line Tools for Xcode package from Sign In - Apple *
1. Download the dash... (2 Replies)
Hi all,
I am learning POSIX shell programming, and the book I read, uses the let command for integer arithmetic.
I have downloaded and use the shellcheck program on Linux.
This programs says:
In POSIX sh, 'let' is undefined.
See the screenshot attached.
What is the POSIX... (1 Reply)
I don't know how to start this but here goes.
I've been "using" Linux for over 10 years, possibly more and I still feel like I'm nowhere
where I should be. I'll be fair most of my time was spent either figuring out how
to run games on *nix at the time but as I got older and "wiser" I... (8 Replies)
In a professional environment with traditional application you often want (or are asked) to report the users.
Traditionally there is the who command
who | awk '{print $1}'telnetd or sshd register the users in the utmp file, to be shown with who, w, users, finger, pinky, ...
In addition they... (1 Reply)
Hi all, (mainly Neo)...
I keep noticing that the SQRT code I wrote recently for a POSIX shell keeps appearing, (the green colour sticks out like a sore thumb).
So I decided to take a look on Google.
Guess what?
UNIX.COM comes first in Google's listing just from two words, see image... (2 Replies)