Date: Sun, 02 Mar 2003 09:47:39 -0800 From: Terry Lambert <tlambert2@mindspring.com> To: Christoph Kukulies <kuku@physik.rwth-aachen.de> Cc: freebsd-current@freebsd.org Subject: Re: mgetty in ttys hoses system Message-ID: <3E6243BB.282E436A@mindspring.com> References: <200303021037.LAA30904@accms33.physik.rwth-aachen.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Christoph Kukulies wrote: > I installed the /usr/ports/comms/mgetty+sendfax to get my > new servers functions completed and found after installing the > port and giving a kill -HUP 1 - the port adds the > line > cuaa0 "/usr/local/sbin/mgetty" unknown on insecure > to /etc/ttys. > > After that the system was hosed. After rebooting > the system seemed to got hung in multi user mode. > No vtys and I booted into single user. > > Found that /etc/ttys contained passwd entries instead, totally > hosed. It never happended to me that I got FS corruption > like this before. This is a well-known FreeBSD VM bug, having to do with writes to COW pages for objects mapped read-only. It happens when you modify the contents of the data areas returned by getpwent(). We had the same problem with Vixie "cron" on the InterJet; it would spam the crontab with a page of data from the passwd database. No one ever fixed it, because no one after Dyson has really bothered to fully understand the VM system, before making changes to it. You can work around it by modifying the program to copy the pwent contents (or use it's own pwent structure) instead of modifying the returned data areas. This avoids triggering the COW, where the dirty buffer gets attached to the wrong vnode. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3E6243BB.282E436A>