Can we characterize the severity of this issue? The referenced fix has been
made upstream in 2.6 but not 2.4, and to do so would require backporting
fget_light()/fput_light(). I wonder if this is too invasive for a late
update... adding sct to cc list for his opinion.

It's worse than just a missing fput(). The 2.4 code does:
struct file *file = fget(fd);
struct tty_struct *real_tty;
if (!fd)
return -EBADF;
It's checking fd for != 0 instead of file. So it's (a) failing to operate
correctly if fd == 0 (which is a perfectly legal fd), and is (b) failing to
detect when fget() returns NULL.
The fix is simple and localised. There is no need at all to back-port
fget/fput_light() --- those are optimisations available only in 2.6. For 2.4,
just use fget()/fput().

An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.
http://rhn.redhat.com/errata/RHSA-2006-0140.html

Note

You need to
log in
before you can comment on or make changes to this bug.