On Fri, 20 Dec 2002, Sean Kelly wrote:

> On my 5.0-CURRENT kernel built 45 minutes ago, I can bring my system to its
> knees by doing
>
> # cat /dev/io
>
> While I understand that this isn't exactly something one would normally be
> doing, is it really something that should bring the system down?

No.  Writing to /dev/io is not supported.  write(2) to a device that
doesn't support writing should return -1 and set errno to ENODEV.

This was broken mainly by removing the default case from mem.c:mmrw().
This causes mmrw() to loop endlessly without giving up control.  Giant
locking in -current makes this especially fatal -- mmrw() holds Giant
so even most interrupt handlers are blocked.

In RELENG_4 the only bug near here is that mmrw() returns ENXIO instead
of ENODEV for writes to /dev/io.

Bruce


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to