Date: Fri, 15 Feb 2013 15:01:19 -0500 From: Lowell Gilbert <freebsd-questions-local@be-well.ilk.org> To: Fleuriot Damien <ml@my.gd> Cc: FreeBSD questions <questions@freebsd.org> Subject: Re: vmstat -w not honored Message-ID: <44bobl9wj4.fsf@lowell-desk.lan> In-Reply-To: <3D8611F5-7AF0-44D1-87FB-DF183A94B1FF@my.gd> (Fleuriot Damien's message of "Wed, 13 Feb 2013 22:42:01 %2B0100") References: <3D8611F5-7AF0-44D1-87FB-DF183A94B1FF@my.gd>
next in thread | previous in thread | raw e-mail | index | archive | help
Fleuriot Damien <ml@my.gd> writes: > I'm running 8.3-STABLE and apparently, vmstat won't honor both -i > (interrupts) and -w (repeat display every wait delay seconds) flags at > the same time. > The problem also arises with -z. > > The manual doesn't mention these flags being incompatible with -w. They are. And with -c as well. *Only* the actual VM-related information display supports the looping. [The full set of flags incompatible with w and c is: f, i, m, s, z. > Anyone knows if this is intended behavior ? A better question would be whether it would actually be useful to change. In theory, other display routines could be modified to repeat. But their output formats would have to change, to fit all of the output on a single line. That would be a lot less readable for humans. If you've got an idea for what it could look like, I'd be happy to implement it for you. It would also have to figure out what the results would be if multiple kinds of output (e.g., interrupt counts *and* virtual memory) were specified. For the one-shot types of output, you can get more than one in a single command. > I wanna make sure before filling a PR, either to get this fixed or the man pages adjusted. Well, the following patch will at least warn the user about it at run time: --- vmstat.c (revision 246551) +++ vmstat.c (working copy) @@ -304,6 +304,8 @@ reps = -1; } else if (reps) interval = 1 * 1000; + if (interval && !(todo & VMSTAT)) + warnx("Ignoring repeat request: cannot repeat on this type of output"); if (todo & FORKSTAT) doforkst();
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44bobl9wj4.fsf>