From owner-freebsd-questions@FreeBSD.ORG Sun Oct 10 21:01:12 2004 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7EA1B16A4CE for ; Sun, 10 Oct 2004 21:01:12 +0000 (GMT) Received: from o2.hostbaby.com (o2.hostbaby.com [208.187.29.121]) by mx1.FreeBSD.org (Postfix) with SMTP id 3FC6643D1F for ; Sun, 10 Oct 2004 21:01:12 +0000 (GMT) (envelope-from ceo@l-i-e.com) Received: (qmail 89199 invoked by uid 1001); 10 Oct 2004 21:01:14 -0000 Received: from 66.243.145.38 (SquirrelMail authenticated user ceo@l-i-e.com); by www.l-i-e.com with HTTP; Sun, 10 Oct 2004 14:01:14 -0700 (PDT) Message-ID: <1362.66.243.145.38.1097442074.squirrel@www.l-i-e.com> In-Reply-To: <200410101257.05494.malcolm.kay@internode.on.net> References: <1315.67.167.52.21.1097357022.squirrel@www.l-i-e.com> <200410101257.05494.malcolm.kay@internode.on.net> Date: Sun, 10 Oct 2004 14:01:14 -0700 (PDT) From: "Richard Lynch" To: "Malcolm Kay" User-Agent: Hostbaby Webmail X-Mailer: Hostbaby Webmail MIME-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) Importance: Normal cc: freebsd-questions@freebsd.org Subject: Re: stdout/stderr/??? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: ceo@l-i-e.com List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Oct 2004 21:01:12 -0000 Malcolm Kay wrote: > On Sun, 10 Oct 2004 06:53 am, Richard Lynch wrote: >> I have a situation where NIC code printf's out stuff. >> >> I'd *LIKE* to collect that output. >> >> Under Linux, I'd use 2&>1 > > I think (hope) you mean 2>&1 According to "man bash" both should work, though one is preferred. Both work fine *EXCEPT* that I have to pull the plug, and the file never gets save/written/whatever. I am using bash, specifically so I *CAN* do re-directs, but would be happy to use *ANY* shell if I could just get what I want. > Can't see why it should work differently for 'ifconfig' > unless maybe this time you have the '&' in the wrong place. > In any case I would not expect massive amounts of output from > ifconfig. It works differently because the driver goes into an infinite loop, and the file never manages to get written. Perhaps I could reduce some kind of buffer somewhere to force the flush() to the file? >> I can sorta get what I want by starting X-Windows, and using a >> terminal/shell to do the command. Then the messages I desire to log are >> A) suppressed from by shell (which is BAD) but B) logged into >> /var/log/messages (which is close enough to what I want) > > I don't understand what you are saying here. X-windows (of itself) should > not process the commands differently. I suspect you have some fancy > desktop > program with options set that interfere. It's KDE. I'll be damned if I know why it's re-directing stderr to /var/log/messages and hiding it from me in the shell. I've tried poking around in the configuration of shells, but am presented with a dialog so confusing, with so many options, I can't even understand what all the choices mean. :-( All I really want is a shell just like CTRL-ALT-F#. Except it would be nice if shift-ctrl-c and shift-ctrl-v did copy/paste. I have that on one X shell on a RedHat 9 box, and it's pretty nice. All the other copy/paste options are cumbersome, at best, and frequently just plain won't cross applications boundaries. (IE, I can copy/paste from shell to shell, but not shell to browser. Grrrrrr) >> Alas, the real problem comes when my driver code sends the machine into >> an >> infinite loop, spewing out messages so fast I can't even read them, and >> the only way out is to forcibly power-off the laptop by removing battery >> and power cord. > > What driver code? Are you trying to write your own? for what device? I am attempting to modify /usr/src/sys/dev/bfe/if_bfe.c to work with the Broadcom 4401-B0 in my laptop. The existing code is known to work for the Broadcom 4401-A1. > An infinite loop while running or compiling the driver code? > > If when the driver code is installed and run then you are fiddling will > kernel mode, and if you mess up all bets are off. bfe has been disabled in the kernel, and the kernel has been re-built/installed. cd /usr/src/sys/modules/bfe/ make; make install; kldload /boot/kernel/if_bfe.ko; "ifconfig bfe0" works fine, and prints out my error messages, and I can capture them. "ifconfig bfe0 192.168.2.111" generates an infinite loop spewing messages so fast I can't even *READ* them. Nothing but total power loss stops this. > You have tried Cntrl-Z and Cntrl-Alt-F2 ? Ctrl-Z I have not tried. cntrl-alt-f2, hit repeatedly, will eventually "catch" an interrupt (or time-slice or whatever) and get me to tty2. But I can't seem to do anything useful there, as keyboard input is ignored. I could, perhaps, manage to press a key long enough to catch an interrupt/time-slice there... >> Upon re-boot, the additions I would expect in /var/log/messages (or the >> bziped older logs) do not contain the messages I need to see. >> >> I have also tried: >> ktrace xxx >> >> Again, for the case where the machine is not in an infinite loop, it >> works >> real nifty; But when I'm forced to chop power, I get nothing. >> >> Is there something that will: >> A) copy (or re-direct) all output somewhere, *AND* >> B) force it to be synchronous and unbuffered and whatever else has to >> occur to get the file to be saved? >> >> Any other suggestions for how to get this process to not lock up the >> machine? control-C ineffective >> CTRL-ALT-F2 followed by CTRL-ALT-DELETE can sometimes get me to another >> tty, but that tty does not accept input > > Are you sure? Yes, I'm quite sure. I can switch back to ctrl-alt-f1, but cannot log in. I can press ctrl-alt-f2 enough times, and eventually get switched to tty2... which is dead. > The CTRL-ALT-F2 hopefully gets you a character mode tty with a login > prompt. > But you'll need to login to proceed. CTRL-ALT-DELETE at this stage should > cause a reboot. ctrl-alt-delete does absolutely nothing, though perhaps if I held it down long enough to catch a time-slice (or interrupt or whatever) it *MIGHT* re-boot. Probably not much better than cold power loss, though, right? -- Like Music? http://l-i-e.com/artists.htm