History log of /freebsd-current/usr.bin/ipcs/ipcs.c
Revision Date Author Comments
# 5e3934b1 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

usr.bin: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix


# 1d386b48 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 558fe071 07-Feb-2019 Andriy Voskoboinyk <avos@FreeBSD.org>

ipcs(1): drop obsolete error checking

This code is not reached since r77551.

PR: 201728
MFC after: 5 days


# ab4a4d40 16-Feb-2018 Li-Wen Hsu <lwhsu@FreeBSD.org>

Follow r329348 in ipcs for getting rid of the requirement to include SysV IPC
headers with _KERNEL

Reviewed by: jhb
Differential Revision: https://reviews.freebsd.org/D14398


# 1de7b4b8 27-Nov-2017 Pedro F. Giffuni <pfg@FreeBSD.org>

various: general adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

No functional change intended.


# 11f4012f 13-Apr-2015 Eitan Adler <eadler@FreeBSD.org>

ipcs: fix warnings (WARNS=1 -> WARNS=6)
- fix shadow warnings
- change type from off_t to size_t which is more correct and avoids
signed/unsigned compare
- use new initializer format to avoid "missing values" warning

Reviewed by: jhb


# 1080a2c8 14-Jul-2011 Bjoern A. Zeeb <bz@FreeBSD.org>

Remove semaphore map entry count "semmap" field and its tuning
option that is highly recommended to be adjusted in too much
documentation while doing nothing in FreeBSD since r2729 (rev 1.1).

ipcs(1) needs to be recompiled as it is accessing _KERNEL private
variables.

Reviewed by: jhb (before comment change on linux code)
Sponsored by: Sandvine Incorporated


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# fe0506d7 09-Mar-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Create the altix project branch. The altix project will add support
for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting
is a two-module system, consisting of a base compute module and a
CPU expansion module. SGI's NUMAFlex architecture can be an excellent
platform to test CPU affinity and NUMA-aware features in FreeBSD.


# b648d480 24-Jun-2009 John Baldwin <jhb@FreeBSD.org>

Change the ABI of some of the structures used by the SYSV IPC API:
- The uid/cuid members of struct ipc_perm are now uid_t instead of unsigned
short.
- The gid/cgid members of struct ipc_perm are now gid_t instead of unsigned
short.
- The mode member of struct ipc_perm is now mode_t instead of unsigned short
(this is merely a style bug).
- The rather dubious padding fields for ABI compat with SV/I386 have been
removed from struct msqid_ds and struct semid_ds.
- The shm_segsz member of struct shmid_ds is now a size_t instead of an
int. This removes the need for the shm_bsegsz member in struct
shmid_kernel and should allow for complete support of SYSV SHM regions
>= 2GB.
- The shm_nattch member of struct shmid_ds is now an int instead of a
short.
- The shm_internal member of struct shmid_ds is now gone. The internal
VM object pointer for SHM regions has been moved into struct
shmid_kernel.
- The existing __semctl(), msgctl(), and shmctl() system call entries are
now marked COMPAT7 and new versions of those system calls which support
the new ABI are now present.
- The new system calls are assigned to the FBSD-1.1 version in libc. The
FBSD-1.0 symbols in libc now refer to the old COMPAT7 system calls.
- A simplistic framework for tagging system calls with compatibility
symbol versions has been added to libc. Version tags are added to
system calls by adding an appropriate __sym_compat() entry to
src/lib/libc/incldue/compat.h. [1]

PR: kern/16195 kern/113218 bin/129855
Reviewed by: arch@, rwatson
Discussed with: kan, kib [1]


# 65067cc8 02-Mar-2009 Konstantin Belousov <kib@FreeBSD.org>

Correct types of variables used to track amount of allocated SysV shared
memory from int to size_t. Implement a workaround for current ABI not
allowing to properly save size for and report more then 2Gb sized segment
of shared memory.

This makes it possible to use > 2 Gb shared memory segments on 64bit
architectures. Please note the new BUGS section in shmctl(2) and
UPDATING note for limitations of this temporal solution.

Reviewed by: csjp
Tested by: Nikolay Dzham <i levsha org ua>
MFC after: 2 weeks


# 49f8bb9a 16-Dec-2008 Ruslan Ermilov <ru@FreeBSD.org>

Fix printing of shared memory limits.

MFC after: 3 days


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# 55e2cb41 24-Dec-2007 Edwin Groothuis <edwin@FreeBSD.org>

Add the ability to clean up all shared memory segments which are
unused in one go.

From the original PR:

I've observed that linux apps running under the linuxulator
have a habit of leaving behind shared memory segments which
are unused, but which eventually cause the system to run
out of free segments and these apps will stop working.
ipcrm(1) currently only allows removal of unused message
queues, shared memory segments and semaphores on an individual
basis, or those having a matching (non-zero) key. However
it would often be convenient to just do a complete cleanup
of everything, usually as root.

PR: bin/118292
Submitted by: Callum Gibson <callumgibson@optusnet.com.au>
Not reviewed by: grog@
Approved by: grog@


# fa44a292 18-Dec-2007 Edwin Groothuis <edwin@FreeBSD.org>

Stylify ipcs/ipcs.c and ipcrm/ipcrm in preparation of the upcoming
changes as proposed in bin/118292.

Feel free to mention any I have missed, there is much to learn with
regarding to style(9).

Approved by: grog@


# df2e45f7 15-May-2006 Maxim Konovalov <maxim@FreeBSD.org>

o Fix typo in a comment.

PR: bin/97292
Submitted by: clsung
MFC after: 3 days


# 9baea4b4 06-Aug-2005 Christian S.J. Peron <csjp@FreeBSD.org>

Change the data type of the upper shared memory limits from a signed
integer to an unsigned long. This lifts variables like the maximum
number of pages available for shared memory from 2^31 to 2^32 on 32
bit architectures, and from 2^31 to 2^64 on 64 bit architectures.

It should be noted that this changes breaks ABI on 64 bit architectures
because the size of the shmmax, shmmin, shmmni, shmseg and shmall members
of the shminfo structure has changed.

Silence on: current@


# 701fabc7 24-May-2005 Christian S.J. Peron <csjp@FreeBSD.org>

If sysctlbyname fails for kernel related reasons, tag the errno
string to the end of the error message. I think we used errx()
there when we really wanted an err().

MFC after: 1 week


# 336c393f 08-Mar-2005 Giorgos Keramidas <keramida@FreeBSD.org>

Use 12 columns for (int) values, 20 columns for (long) and align
headers properly (right justified for numbers, left justified for
everything else).

This fixes the alignment of the fields on i386, sparc64 and amd64
today but does not dynamically assign column widths or bear in mind
that some of the values may be 64-bit in the future.

Reviewed by: alfred


# 5bcb8532 10-Feb-2005 Stefan Farfeleder <stefanf@FreeBSD.org>

Turn K&R functions into prototypes.


# 75d6abdb 12-Nov-2004 Robert Watson <rwatson@FreeBSD.org>

third of several commits to allow kernel System V IPC data structures
to be modified and extended without breaking the user space ABI:

Make the "ipcs" tool, which grubs around in kernel memory to report
status relating to System V IPC, use the _kernel variants on the
System V IPC data structures.

Submitted by: Dandekar Hrishikesh <rishi_dandekar at sbcglobal dot net>
Obtained from: TrustedBSD Project
Sponsored by: DARPA, SPAWAR, McAfee Research


# 4d2e8e5f 23-Mar-2004 Bosko Milekic <bmilekic@FreeBSD.org>

Add -u option to ipcs(1) and document it in ipcs.1

It allows you to list IPC facilities owned by username/uid.

Submitted by: Christian S.J. Peron <maneo@bsdpro.com>
PR: bin/63463


# edc4d47f 30-Oct-2003 Mitsuru IWASAKI <iwasaki@FreeBSD.org>

Cosmetic fix on some TIME related columns.


# 147fb5d7 24-Mar-2003 Tim J. Robbins <tjr@FreeBSD.org>

Add -M, -Q, -S, and -T to the usage message.


# e026a48c 29-Jun-2002 David E. O'Brien <obrien@FreeBSD.org>

Consistently use FBSDID


# 76e46948 30-Mar-2002 David Malone <dwmalone@FreeBSD.org>

1) Add missing prototypes for fmt_perm and cvt_time.
2) Move a break outside a #if block to keep gcc3 from seeing a "default:"
at the end of a block.
3) Fix some format warnings. Some remain which can be fixed more easily
when we have a full C99 printf.


# f1bb2cd2 21-Mar-2002 Warner Losh <imp@FreeBSD.org>

remove __P


# 576541a9 18-Feb-2002 Warner Losh <imp@FreeBSD.org>

Fixed divots that I created when I moved prototypes of group_from_gid
and user_from_uid to grp.h and pwd.h. Update the man pages.

Submitted by: David Malone
Pointy hat to: imp


# 7a19d1bb 24-Jun-2001 Dima Dorfman <dd@FreeBSD.org>

Include missing header files which define functions for which gcc has
builtins (e.g., exit, strcmp).


# b15abeff 31-May-2001 Dima Dorfman <dd@FreeBSD.org>

Convert to use the sysctl interface to obtain the data when operating
on a running system. Using kvm is still supported, primarily for
postmortem analysis.

Reviewed by: tmm


# 3627ad6c 01-May-2000 Peter Wemm <peter@FreeBSD.org>

Remove the undocumented semconfig() system calls. These cause more trouble
than they are worth.


# 07aa6ef0 31-Mar-2000 Jacques Vidrine <nectar@FreeBSD.org>

Instead of checking for a non-zero return value from kvm_read, check
whether we read as many bytes as we expected.


# c4473420 28-Dec-1999 Peter Wemm <peter@FreeBSD.org>

Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot). This is consistant with the other
BSD's who made this change quite some time ago. More commits to come.


# c3aac50f 27-Aug-1999 Peter Wemm <peter@FreeBSD.org>

$Id$ -> $FreeBSD$


# 00bbaadc 15-Jul-1997 Philippe Charnier <charnier@FreeBSD.org>

Add rcsid, Remove unused vars.


# 1c8af878 28-Mar-1997 Warner Losh <imp@FreeBSD.org>

compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.


# c115df18 22-Feb-1997 Peter Wemm <peter@FreeBSD.org>

Revert $FreeBSD$ to $Id$


# 1130b656 14-Jan-1997 Jordan K. Hubbard <jkh@FreeBSD.org>

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


# 6fd25edc 18-Jul-1996 Joerg Wunsch <joerg@FreeBSD.org>

s/msg/shm/ for one variable.

Submitted by: jin@george.lbl.gov (Jin Guojun[ITG])


# 661a5e43 29-May-1996 Paul Traina <pst@FreeBSD.org>

Drop privileges if we're not reading standard kernel file or namelist.
Submitted by: smpatel (Sujal Patel)


# 30df0b88 12-Jul-1995 Bruce Evans <bde@FreeBSD.org>

Instantiate our own variables instead of depending on bogus common
declarations in system headers that will be fixed soon.


# 3012a727 19-Sep-1994 David Greenman <dg@FreeBSD.org>

Declared msginfo, shminfo, and seminfo structs.


# 49fbc2ac 13-Sep-1994 Doug Rabson <dfr@FreeBSD.org>

Imported the NetBSD version which acts a lot more like the SYSV program.

Obtained from: NetBSD


# 4816f94e 13-Sep-1994 Doug Rabson <dfr@FreeBSD.org>

Added from FreeBSD-1.1.5 with some additions to list shared memory segments.