~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux-2.6.17/drivers/char/ChangeLog

Version: ~ [ 2.6.16 ] ~ [ 2.6.17 ] ~
Architecture: ~ [ ia64 ] ~ [ i386 ] ~ [ arm ] ~ [ ppc ] ~ [ sparc64 ] ~

  1 2001-08-11  Tim Waugh  <twaugh@redhat.com>
  2 
  3         * serial.c (get_pci_port): Deal with awkward Titan cards.
  4 
  5 1998-08-26  Theodore Ts'o  <tytso@rsts-11.mit.edu>
  6 
  7         * serial.c (rs_open): Correctly decrement the module in-use count
  8                 on errors.
  9 
 10 Thu Feb 19 14:24:08 1998  Theodore Ts'o  <tytso@rsts-11.mit.edu>
 11 
 12         * tty_io.c (tty_name): Remove the non-reentrant (and non-SMP safe)
 13                 version of tty_name, and rename the reentrant _tty_name
 14                 function to be tty_name.
 15                 (tty_open): Add a warning message stating callout devices
 16                 are deprecated.
 17 
 18 Mon Dec  1 08:24:15 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
 19 
 20         * tty_io.c (tty_get_baud_rate): Print a warning syslog if the
 21                 tty->alt_speed kludge is used; this means the system is
 22                 using the deprecated SPD_HI ioctls.
 23 
 24 Mon Nov 24 10:37:49 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
 25 
 26         * serial.c, esp.c, rocket.c: Change drivers to take advantage of
 27                 tty_get_baud_rate().
 28         
 29         * tty_io.c (tty_get_baud_rate): New function which computes the
 30                 correct baud rate for the tty.  More factoring out of
 31                 common code out of the serial driver to the high-level tty
 32                 functions....
 33 
 34 Sat Nov 22 07:53:36 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
 35 
 36         * serial.c, esp.c, rocket.c: Add tty->driver.break() routine, and
 37                 allow high-level tty code to handle the break and soft
 38                 carrier ioctls.
 39         
 40         * tty_ioctl.c (n_tty_ioctl): Support TIOCGSOFTCAR and
 41                 TIOCSSOFTCAR, so that device drivers don't have to support
 42                 it.
 43 
 44         * serial.c (autoconfig): Change 16750 test to hopefully eliminate
 45                 false results by people with strange 16550As being
 46                 detected as 16750s.  Hopefully 16750s will still be
 47                 detected as 16750, and other weird UARTs won't get poorly
 48                 autodetected.  If this doesn't work, I'll have to disable
 49                 the auto identification for the 16750.
 50 
 51         * tty_io.c (tty_hangup): Now actually do the tty hangup
 52                 processing during the timer processing, and disable
 53                 interrupts while doing the hangup processing.  This avoids
 54                 several nasty race conditions which happened when the
 55                 hangup processing was done asynchronously.
 56                 (tty_ioctl): Do break handling in the tty driver if
 57                 driver's break function is supported.  
 58                 (tty_flip_buffer_push): New exported function which should
 59                 be used by drivers to push characters in the flip buffer
 60                 to the tty handler.  This may either be done using a task
 61                 queue function for better CPU efficiency, or directly for
 62                 low latency operation.
 63 
 64         * serial.c (rs_set_termios): Fix bug rs_set_termios when
 65                 transitioning away from B0, submitted by Stanislav
 66                 Voronyi. 
 67 
 68 Thu Jun 19 20:05:58 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
 69 
 70         * serial.c (begin_break, end_break, rs_ioctl): Applied patch
 71                 to support BSD ioctls to set and clear the break
 72                 condition explicitly.
 73 
 74         * console.c (scrup, scrdown, insert_line, delete_line): Applied
 75                 fix suggested by Aaron Tiensivu to speed up block scrolls
 76                 up and down.
 77 
 78         * n_tty.c (opost_block, write_chan): Added a modified "fast
 79                 console" patch which processes a block of text via
 80                 "cooking" efficiently.
 81 
 82 Wed Jun 18 15:25:50 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
 83 
 84         * tty_io.c (init_dev, release_dev): Applied fix suggested by Bill
 85                 Hawes to prevent race conditions in the tty code.
 86 
 87         * n_tty.c (n_tty_chars_in_buffer): Applied fix suggested by Bill
 88                 Hawes so that n_tty_chars_in_buffer returns the correct
 89                 value in the case when the tty is in cannonical mode.  (To
 90                 avoid a pty deadlock with telnetd.)
 91 
 92 Thu Feb 27 01:53:08 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
 93 
 94         * serial.c (change_speed): Add support for the termios flag
 95                 CMSPAR, which allows the user to select stick parity.
 96                 (i.e, if PARODD is set, the parity bit is always 1; if
 97                 PARRODD is not set, then the parity bit is always 0).
 98 
 99 Wed Feb 26 19:03:10 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
100 
101         * serial.c (cleanup_module): Fix memory leak when using the serial
102                 driver as a module; make sure tmp_buf gets freed!
103 
104 Tue Feb 25 11:01:59 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
105 
106         * serial.c (set_modem_info): Add support for setting and clearing
107                 the OUT1 and OUT2 bits.  (For special case UART's, usually
108                 for half-duplex.)
109                 (autoconfig, change_speed): Fix TI 16750 support.
110 
111 Sun Feb 16 00:14:43 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
112 
113         * tty_io.c (release_dev): Add sanity check to make sure there are
114                 no waiters on tty->read_wait or tty->write_wait.
115 
116         * serial.c (rs_init): Don't autoconfig a device if the I/O region
117                 is already reserved.
118 
119         * serial.c (serial_proc_info): Add support for /proc/serial.
120 
121 Thu Feb 13 00:49:10 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
122 
123         * serial.c (receive_chars): When the UART repotrs an overrun
124                 condition, it does so with a valid character.  Changed to
125                 not throw away the valid character, but instead report the
126                 overrun after the valid character.
127 
128         * serial.c: Added new #ifdef's for some of the advanced serial
129                 driver features.  A minimal driver that only supports COM
130                 1/2/3/4 without sharing serial interrupts only takes 17k;
131                 the full driver takes 32k.
132                 
133 Wed Feb 12 14:50:44 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
134 
135         * vt.c:
136         * pty.c: 
137         * tty_ioctl.c: 
138         * serial.c: Update routines to use the new 2.1 memory access
139                 routines.
140 
141 Wed Dec  4 07:51:52 1996  Theodore Ts'o  <tytso@localhost.mit.edu>
142 
143         * serial.c (change_speed): Use save_flags(); cli() and
144                 restore_flags() in order to ensure we don't accidentally
145                 turn on interrupts when starting up the port.
146                 (startup): Move the insertion of serial structure into the
147                 IRQ chain earlier into the startup processing.  Interrupts
148                 should be off this whole time, but we eventually will want
149                 to reduce this window.
150 
151 Thu Nov 21 10:05:22 1996  Theodore Ts'o  <tytso@localhost.mit.edu>
152 
153         * tty_ioctl.c (tty_wait_until_sent): Always check the driver
154                 wait_until_ready routine, even if there are no characters
155                 in the xmit buffer.  (There may be charactes in the device
156                 FIFO.)
157                 (n_tty_ioctl): Add new flag tty->flow_stopped which
158                 indicates whether the tty is stopped due to a request by
159                 the TCXONC ioctl (used by tcflow).  If so, don't let an
160                 incoming XOFF character restart the tty.  The tty can only
161                 be restarted by another TCXONC request.
162 
163         * tty_io.c (start_tty): Don't allow the tty to be restarted if
164                 tty->flow_stopped is true.
165 
166         * n_tty.c (n_tty_receive_char): If tty->flow_stopped is true, and
167                 IXANY is set, don't eat a character trying to restart the
168                 tty.
169 
170         * serial.c (startup): Remove need for MCR_noint from the
171                 async_struct structure.  Only turn on DTR and RTS if the
172                 baud rate is not zero.
173                 (change_speed): More accurately calculate the timeout
174                 value based on the word size.  Move responsibility of
175                 hangup when speed becomes B0 to rs_set_termios()
176                 (set_serial_info): When changing the UART type set the
177                 current xmit_fifo_size as well as the permanent
178                 xmit_fifo_size.
179                 (rs_ioctl): Fix TCSBRK (used by tcdrain) and TCSBRKP
180                 ioctls to return EINTR if interrupted by a signal.
181                 (rs_set_termios): If the baud rate changes to or from B0,
182                 this function is now responsible for setting or clearing
183                 DTR and RTS.  DTR and RTS are only be changed on the
184                 transition to or from the B0 state.
185                 (rs_close): Wait for the characters to drain based on
186                 info->timeout.  At low baud rates (50 bps), it may take a
187                 long time for the FIFO to completely drain out!
188                 (rs_wait_until_sent): Fixed timeout handling.  Now
189                 releases control to the scheduler, but checks frequently
190                 enough so that the function is sensitive enough to pass
191                 the timing requirements of the NIST-PCTS.
192                 (block_til_ready): When opening the device, don't turn on
193                 DTR and RTS if the baud rate is B0.
194 
195 Thu Nov 14 00:06:09 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
196 
197         * serial.c (autoconfig): Fix autoconfiguration problems;
198                 info->flags wasn't getting initialized from the state
199                 structure.  Put in more paranoid test for the 16750.
200 
201 Fri Nov  8 20:19:50 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
202 
203         * n_tty.c (n_tty_flush_buffer): Only call driver->unthrottle() if
204                 the tty was previous throttled.
205                 (n_tty_set_termios, write_chan): Add changes suggested by
206                         Simon P. Allen to allow hardware cooking.
207 
208         * tty_ioctl.c (set_termios): If we get a signal while waiting for
209                 the tty to drain, return -EINTR.
210         
211         * serial.c (change_speed): Add support for CREAD, as required by
212                 POSIX.
213 
214 Sat Nov  2 20:43:10 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
215 
216         * serial.c: Wholesale changes.  Added support for the Startech
217                 16650 and 16650V2 chips.  (WARNING: the new startech
218                 16650A may or may not work!)  Added support for the
219                 TI16750 (not yet tested).  Split async_struct into a
220                 transient part (async_struct) and a permanent part
221                 (serial_state) which contains the configuration
222                 information for the ports.  Added new driver routines
223                 wait_until_sent() and send_xchar() to help with POSIX
224                 compliance.  Added support for radio clocks which waggle
225                 the carrier detect line (CONFIG_HARD_PPS).
226         
227         * tty_ioctl.c (tty_wait_until_sent): Added call to new driver
228                 function tty->driver.wait_until_sent(), which returns when
229                 the tty's device xmit buffers are drained.  Needed for
230                 full POSIX compliance.
231 
232                 (send_prio_char): New function, called by the ioctl's
233                 TCIOFF and TCION; uses the new driver call send_xchar(),
234                 which will send the XON or XOFF character at high priority
235                 (and even if tty output is stopped).
236 
237 Wed Jun  5 18:52:04 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
238 
239         * pty.c (pty_close): When closing a pty, make sure packet mode is
240                 cleared.
241 
242 Sun May 26 09:33:52 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
243 
244         * vesa_blank.c (set_vesa_blanking): Add missing verify_area() call.
245 
246         * selection.c (set_selection): Add missing verify_area() call.
247 
248         * tty_io.c (tty_ioctl): Add missing verify_area() calls.
249 
250         * serial.c (rs_ioctl): Add missing verify_area() calls.
251                 (rs_init): Allow initialization of serial driver
252                 configuration from a module.
253 
254         * random.c (extract_entropy): Add missing verify_area call.
255                 Don't limit number of characters returned to
256                 32,768. Extract entropy is now no longer a inlined
257                 function.
258 
259                 (random_read): Check return value in case extract_entropy
260                 returns an error.
261 
262                 (secure_tcp_sequence_number): New function which returns a
263                 secure TCP sequence number.  This is needed to prevent some
264                 nasty TCP hijacking attacks.
265         
266                 (init_std_data): Initialize using gettimeofday() instead of
267                 struct timeval xtime.
268 
269                 (fast_add_entropy_word, add_entropy_word): Rename the
270                 inline function add_entropy_word() to
271                 fast_add_entropy_word().  Make add_entropy_word() be the
272                 non-inlined function which is used in non-timing critical
273                 places, in order to save space.
274 
275                 (initialize_benchmark, begin_benchmark, end_benchmark): New
276                 functions defined when RANDOM_BENCHMARK is defined.  They
277                 allow us to benchmark the speed of the
278                 add_timer_randomness() call.
279 
280                 (int_ln, rotate_left): Add two new inline functions with
281                 i386 optimized asm instructions.  This speeds up the
282                 critical add_entropy_word() and add_timer_randomness()
283                 functions, which are called from interrupt handlers.
284 
285 Tue May  7 22:51:11 1996    <tytso@rsts-11.mit.edu>
286 
287         * random.c (add_timer_randomness): Limit the amount randomness
288                 that we estimate to 12 bits.  (An arbitrary amount).
289 
290                 (extract_entropy): To make it harder to analyze the hash
291                 function, fold the hash function in half using XOR, and
292                 use the folded result as the value to emit to the user.
293                 Also, add timer randomness each pass through the
294                 exact_entropy call, to increase the amount of unknown
295                 values during the extraction process.
296 
297                 (random_ioctl): Use IOR/IOW definitions to define the
298                 ioctl values used by the /dev/random driver.  Allow the
299                 old ioctl values to be used for backwards compatibility
300                 (for a limited amount of time).
301 
302 Wed Apr 24 14:02:04 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
303 
304         * random.c (add_timer_randomness): Use 2nd derivative as well to
305                 better estimate entropy.
306 
307                 (rand_initialize): Explicitly initialize all the pointers
308                 to NULL.  (Clearing pointers using memset isn't portable.)
309                 Initialize the random pool with OS-dependent data.
310 
311                 (random_write): Add sanity checking to the arguments to
312                 random_write(), so that bad arguments won't cause a kernel
313                 SEGV. 
314 
315                 (random_read): Update the access time of the device inode
316                 when you return data to the user.
317 
318                 (random_ioctl): Wake up the random_wait channel when there
319                 are only WAIT_INPUT_BITS available.  Add more paranoia
320                 checks to make sure entropy_count doesn't go beyond the
321                 bounds of (0, POOLSIZE).  Add a few missing verify_area
322                 checks.  Add support for the RNDCLEARPOOL ioctl, which
323                 zaps the random pool.
324 
325                 (add_timer_randomness): Wake up the random_wait
326                 channel only when there are WAIT_INPUT_BITS available.
327 
328                 (random_select): Allow a random refresh daemon process to
329                 select on /dev/random for writing; wake up the daemon when
330                 there are less than WAIT_OUTPUT_BITS bits of randomness
331                 available.
332 
333 Tue Apr 23 22:56:07 1996    <tytso@rsts-11.mit.edu>
334 
335         * tty_io.c (init_dev): Change return code when user attempts to
336                 open master pty which is already open from EAGAIN to EIO,
337                 to match with BSD expectations.  EIO is more correct
338                 anyway, since EAGAIN implies that retrying will be
339                 successful --- which it might be.... Eventually!!
340 
341         * pty.c (pty_open, pty_close): Fix wait loop so that we don't
342                 busy loop while waiting for the master side to open.
343                 Fix tty opening/closing logic.  TTY_SLAVE_CLOSED was
344                 renamed to TTY_OTHER_CLOSED, so that the name is more
345                 descriptive.  Also fixed code so that the tty flag
346                 actually works correctly now....
347 
348 Mon Apr  1 10:22:01 1996    <tytso@rsts-11.mit.edu>
349 
350         * serial.c (rs_close): Cleaned up modularization changes.
351                 Remove code which forced line discipline back to N_TTY
352                 this is done in the tty upper layers, and there's no
353                 reason to do it here.  (Making this change also
354                 removed the requirement that the serial module access
355                 the internal kernel symbol "ldiscs".)
356 
357         * tty_io.c (tty_init): Formally register a tty_driver entry for
358                 /dev/tty (device 4, 0) and /dev/console (device 5, 0).
359                 This guarantees that major device numbers 4 and 5 will be
360                 reserved for the tty subsystem (as they have to be because
361                 of /dev/tty and /dev/console).  Removed tty_regdev, as
362                 this interface is no longer necessary.
363 
364 Sun Mar 17 20:42:47 GMT 1996 <ah@doc.ic.ac.uk>
365 
366         * serial.c : modularisation (changes in linux/fs/device.c allow
367                 kerneld to automatically load the serial module).
368 
369         * Makefile, Config.in : serial modularisation adds.
370 
371         * tty_io.c : tty_init_ctty used by to register "cua" driver just
372                 for the /dev/tty device (5,0).  Added tty_regdev.
373         
374         * serial.c (shutdown, rs_ioctl) : when port shuts down wakeup processes
375           waiting on delta_msr_wait. The TIOCMIWAIT ioctl returns EIO
376           if no change was done since the time of call.
377 
378 Sat Mar 16 14:33:13 1996 <aeb@cwi.nl>
379 
380         * tty_io.c (disassociate_ctty): If disassociate_ctty is called by
381                 exit, do not perform an implicit vhangup on a pty.
382 
383 Fri Feb  9 14:15:47 1996    <tytso@rsts-11.mit.edu>
384 
385         * serial.c (block_til_ready): Fixed another race condition which
386                 happens if a hangup happens during the open.
387 
388 Wed Jan 10 10:08:00 1996    <tytso@rsts-11.mit.edu>
389 
390         * serial.c (block_til_ready): Remove race condition which happened
391                 if a hangup condition happened during the setup of the
392                 UART, before rs_open() called block_til_ready().  This
393                 caused the info->count counter to be erroneously
394                 decremented.
395 
396         * serial.c (startup, rs_open): Remove race condition that could
397                 cause a memory leak of one page.  (Fortunately, both race
398                 conditions were relatively rare in practice.)
399 
400 Tue Dec  5 13:21:27 1995    <tytso@rsts-11.mit.edu>
401 
402         * serial.c (check_modem_status, rs_ioctl): Support the new
403                 ioctl()'s TIOCGICOUNT, TIOCMIWAIT.  These allow an
404                 application program to wait on a modem serial register
405                 status bit change, and to find out how many changes have
406                 taken place for the MSR bits.
407 
408                 (rs_write): Eliminate a race condition which is introduced
409                 if it is necessary to wait for the semaphore.
410 
411 Sat Nov  4 17:14:45 1995    <tytso@rsts-11.mit.edu>
412 
413         * tty_io.c (tty_init): Move registration of TTY_MAJOR and
414                 TTY_AUX_MAJOR to the end, so that /proc/devices looks
415                 prettier. 
416 
417         * pty.c (pty_init): Use new major numbers for PTY master and slave
418                 devices.  This allow us to have more than 64 pty's.  We
419                 register the old pty devices for backwards compatibility.
420                 Note that a system should either be using the old pty
421                 devices or the new pty devices --- in general, it should
422                 try to use both, since they map into the same pty table.
423                 The old pty devices are strictly for backwards compatibility.
424 
425 Wed Oct 11 12:45:24 1995    <tytso@rsts-11.mit.edu>
426 
427         * tty_io.c (disassociate_ctty): If disassociate_ctty is called by
428                 exit, perform an implicit vhangup on the tty.
429 
430         * pty.c (pty_close): When the master pty is closed, send a hangup
431                 to the slave pty.
432                 (pty_open): Use the flag TTY_SLAVE_CLOSED to test to see
433                 if there are any open slave ptys, instead of using
434                 tty->link->count.  The old method got confused if there
435                 were processes that had hung-up file descriptors on the
436                 slave tty.
437 
438 Tue May  2 00:53:25 1995    <tytso@rsx-11.mit.edu>
439 
440         * tty_io.c (tty_set_ldisc): Wait until the output buffer is
441                 drained before closing the old line discipline --- needed
442                 in only one case: XON/XOFF processing.
443 
444         * n_tty.c (n_tty_close): Don't bother waiting until the output
445                 driver is closed; in general, the line discipline
446                 shouldn't care if the hardware is finished
447                 transmitting before the line discipline terminates.
448 
449         * tty_io.c (release_dev): Shutdown the line discipline after
450                 decrementing the tty count variable; but set the
451                 TTY_CLOSING flag so that we know that this tty structure
452                 isn't long for this world.
453 
454         * tty_io.c (init_dev): Add sanity code to check to see if
455                 TTY_CLOSING is set on a tty structure; if so, something
456                 bad has happened (probably a line discipline close blocked
457                 when it shouldn't have; so do a kernel printk and then
458                 return an error).
459 
460 Wed Apr 26 10:23:44 1995  Theodore Y. Ts'o  <tytso@localhost>
461 
462         * tty_io.c (release_dev): Try to shutdown the line discipline
463                 *before* decrementing the tty count variable; this removes
464                 a potential race condition which occurs when the line
465                 discipline close blocks, and another process then tries
466                 open the same serial port.
467 
468         * serial.c (rs_hangup): When hanging up, flush the output buffer
469                 before shutting down the UART.  Otherwise the line
470                 discipline close blocks waiting for the characters to get
471                 flushed, which never happens until the serial port gets reused.
472 
473 Wed Apr 12 08:06:16 1995  Theodore Y. Ts'o  <tytso@localhost>
474 
475         * serial.c (do_serial_hangup, do_softint, check_modem_status,
476                 rs_init):  Hangups are now scheduled via a separate tqueue
477                 structure in the async_struct structure, tqueue_hangup.
478                 This task is pushed on to the tq_schedule queue, so that
479                 it is processed synchronously by the scheduler.
480 
481 Sat Feb 18 12:13:51 1995  Theodore Y. Ts'o  (tytso@rt-11)
482 
483         * tty_io.c (disassociate_ctty, tty_open, tty_ioctl): Clear
484                 current->tty_old_pgrp field when a session leader
485                 acquires a controlling tty, and after a session leader
486                 has disassociated from a controlling tty.
487 
488 Fri Feb 17 09:34:09 1995  Theodore Y. Ts'o  (tytso@rt-11)
489 
490         * serial.c (rs_interrupt_single, rs_interrupt, rs_interrupt_multi): 
491                 Change the number of passes made from 64 to be 256,
492                 configurable with the #define RS_ISR_PASS_LIMIT.
493 
494         * serial.c (rs_init, set_serial_info, get_serial_info, rs_close):
495                 Remove support for closing_wait2.  Instead, set
496                 tty->closing and rely on the line discipline to prevent
497                 echo wars.
498 
499         * n_tty.c (n_tty_receive_char):  IEXTEN does not need to be
500                 enabled in order for IXANY to be active.
501 
502                 If tty->closing is set, then only process XON and XOFF
503                 characters.
504 
505 Sun Feb 12 23:57:48 1995  Theodore Y. Ts'o  (tytso@rt-11)
506 
507         * serial.c (rs_timer): Change the interrupt poll time from 60
508                 seconds to 10 seconds, configurable with the #define
509                 RS_STROBE_TIME.
510 
511         * serial.c (rs_interrupt_multi, startup, shutdown, rs_ioctl,
512                 set_multiport_struct, get_multiport_struct): Add
513                 provisions for a new type of interrupt service routine,
514                 which better supports multiple serial ports on a single
515                 IRQ.  
516 
517 Sun Feb  5 19:35:11 1995  Theodore Y. Ts'o  (tytso@rt-11)
518 
519         * tty_ioctl.c (n_tty_ioctl, set_termios, tty_wait_until_sent): 
520         * serial.c (rs_ioctl, rs_close): 
521         * cyclades.c (cy_ioctl, cy_close): 
522         * n_tty.c (n_tty_close):  Rename wait_until_sent to
523                 tty_wait_until_sent, so that it's a better name to export
524                 in ksyms.c.
525 
526 Sat Feb  4 23:36:20 1995  Theodore Y. Ts'o  (tytso@rt-11)
527 
528         * serial.c (rs_close): Added missing check for closing_wait2 being
529                 ASYNC_CLOSING_WAIT_NONE.
530 
531 Thu Jan 26 09:02:49 1995  Theodore Y. Ts'o  (tytso@rt-11)
532 
533         * serial.c (rs_init, set_serial_info, get_serial_info,
534                 rs_close): Support close_wait in the serial driver.
535                 This is helpful for slow devices (like serial
536                 plotters) so that their outputs don't get flushed upon
537                 device close.  This has to be configurable because
538                 normally we don't want ports to be hung up for long
539                 periods of time during a close when they are not
540                 connected to a device, or the device is powered off.
541 
542                 The default is to wait 30 seconds; in the case of a
543                 very slow device, the close_wait timeout should be
544                 lengthened.  If it is set to 0, the kernel will wait
545                 forever for all of the data to be transmitted.
546 
547 Thu Jan 17 01:17:20 1995  Theodore Y. Ts'o  (tytso@rt-11)
548 
549         * serial.c (startup, change_speed, rs_init): Add support to detect
550                 the StarTech 16650 chip.  Treat it as a 16450 for now,
551                 because of its FIFO bugs.
552 
553 Thu Jan  5 21:21:57 1995  <dahinds@users.sourceforge.net>
554 
555         * serial.c: (receive_char): Added counter to prevent infinite loop
556                 when a PCMCIA serial device is ejected.
557 
558 Thu Dec 29 17:53:48 1994    <tytso@rsx-11.mit.edu>
559 
560         * tty_io.c (check_tty_count): New procedure which checks
561                 tty->count to make sure that it matches with the number of
562                 open file descriptors which point at the structure.  If
563                 the number doesn't match, it prints a warning message.
564 
565 Wed Dec 28 15:41:51 1994    <tytso@rsx-11.mit.edu>
566 
567         * tty_io.c (do_tty_hangup, disassociate_ctty): At hangup time,
568                 save the tty's current foreground process group in the
569                 session leader's task structure.  When the session leader
570                 terminates, send a SIGHUP, SIGCONT to that process group.
571                 This is not required by POSIX, but it's not prohibited
572                 either, and it appears to be the least intrusive way
573                 to fix a problem that dialup servers have with
574                 orphaned process groups caused by modem hangups.
575 
576 Thu Dec  8 14:52:11 1994    <tytso@rsx-11.mit.edu>
577 
578         * serial.c (rs_ioctl): Don't allow most ioctl's if the serial port
579                 isn't initialized.
580 
581         * serial.c (rs_close): Don't clear the IER if the serial port
582                 isn't initialized. 
583 
584         * serial.c (block_til_ready): Don't try to block on the dialin
585                 port if the serial port isn't initialized.
586 
587 Wed Dec  7 10:48:30 1994  Si Park (si@wimpol.demon.co.uk)
588         * tty_io.c (tty_register_driver): Fix bug when linking onto
589                 the tty_drivers list. We now test that there are elements
590                 already on the list before setting the back link from the
591                 first element to the new driver.
592 
593         * tty_io.c (tty_unregister_driver): Fix bug in unlinking the
594                 specified driver from the tty_drivers list. We were not
595                 setting the back link correctly. This used to result in
596                 a dangling back link pointer and cause panics on the next
597                 call to get_tty_driver().
598 
599 Tue Nov 29 10:21:09 1994  Theodore Y. Ts'o  (tytso@rt-11)
600 
601         * tty_io.c (tty_unregister_driver): Fix bug in
602                 tty_unregister_driver where the pointer to the refcount is
603                 tested, instead of the refcount itself.  This caused
604                 tty_unregister_driver to always return EBUSY.
605 
606 Sat Nov 26 11:59:24 1994  Theodore Y. Ts'o  (tytso@rt-11)
607 
608         * tty_io.c (tty_ioctl): Add support for the new ioctl
609                 TIOCTTYGSTRUCT, which allow a kernel debugging program
610                 direct read access to the tty and tty_driver structures.
611 
612 Fri Nov 25 17:26:22 1994  Theodore Y. Ts'o  (tytso@rt-11)
613 
614         * serial.c (rs_set_termios): Don't wake up processes blocked in
615                 open when the CLOCAL flag changes, since a blocking
616                 open only samples the CLOCAL flag once when it blocks,
617                 and doesn't check it again.  (n.b.  FreeBSD has a
618                 different behavior for blocking opens; it's not clear
619                 whether Linux or FreeBSD's interpretation is correct.
620                 POSIX doesn't give clear guidance on this issue, so
621                 this may change in the future....)
622 
623         * serial.c (block_til_ready): Use the correct termios structure to
624                 check the CLOCAL flag.  If the cuaXX device is active,
625                 then check the saved termios for the ttySXX device.
626                 Otherwise, use the currently active termios structure.
627 
628 Sun Nov  6 21:05:44 1994  Theodore Y. Ts'o  (tytso@rt-11)
629 
630         * serial.c (change_speed): Add support for direct access of
631                 57,600 and 115,200 bps.
632 
633 Wed Nov  2 10:32:36 1994  Theodore Y. Ts'o  (tytso@rt-11)
634 
635         * n_tty.c (n_tty_receive_room): Only allow excess characters
636                 through if we are in ICANON mode *and* there are other no
637                 pending lines in the buffer.  Otherwise cut and paste over
638                 4k breaks.
639 
640 Sat Oct 29 18:17:34 1994  Theodore Y. Ts'o  (tytso@rt-11)
641 
642         * serial.c (rs_ioctl, get_lsr_info): Added patch suggested by Arne
643                 Riiber so that user mode programs can tell when the
644                 transmitter shift register is empty.
645 
646 Thu Oct 27 23:14:29 1994  Theodore Y. Ts'o  (tytso@rt-11)
647 
648         * tty_ioctl.c (wait_until_sent): Added debugging printk statements
649                 (under the #ifdef TTY_DEBUG_WAIT_UNTIL_SENT)  
650 
651         * serial.c (rs_interrupt, rs_interrupt_single, receive_chars,
652                 change_speed, rs_close): rs_close now disables receiver
653                 interrupts when closing the serial port.  This allows the
654                 serial port to close quickly when Linux and a modem (or a
655                 mouse) are engaged in an echo war; when closing the serial
656                 port, we now first stop listening to incoming characters,
657                 and *then* wait for the transmit buffer to drain.  
658 
659                 In order to make this change, the info->read_status_mask
660                 is now used to control what bits of the line status
661                 register are looked at in the interrupt routine in all
662                 cases; previously it was only used in receive_chars to
663                 select a few of the status bits.
664 
665 Mon Oct 24 23:36:21 1994  Theodore Y. Ts'o  (tytso@rt-11)
666 
667         * serial.c (rs_close): Add a timeout to the transmitter flush
668                 loop; this is just a sanity check in case we have flaky
669                 (or non-existent-but-configured-by-the-user) hardware.
670 
671 Fri Oct 21 09:37:23 1994  Theodore Y. Ts'o  (tytso@rt-11)
672 
673         * tty_io.c (tty_fasync): When asynchronous I/O is enabled, if the
674                 process or process group has not be specified yet, set it
675                 to be the tty's process group, or if that is not yet set,
676                 to the current process's pid.
677 
678 Thu Oct 20 23:17:28 1994  Theodore Y. Ts'o  (tytso@rt-11)
679 
680         * n_tty.c (n_tty_receive_room): If we are doing input
681                 canonicalization, let as many characters through as
682                 possible, so that the excess characters can be "beeped".
683 
684 Tue Oct 18 10:02:43 1994  Theodore Y. Ts'o  (tytso@rt-11)
685 
686         * serial.c (rs_start): Removed an incorrect '!' that was
687                 preventing transmit interrupts from being re-enabled in
688                 rs_start().  Fortunately in most cases it would be
689                 re-enabled elsewhere, but this still should be fixed
690                 correctly.
691 
692 Sun Oct  9 23:46:03 1994  Theodore Y. Ts'o  (tytso@rt-11)
693 
694         * tty_io.c (do_tty_hangup): If the tty driver flags
695                 TTY_DRIVER_RESET_TERMIOS is set, then reset the termios
696                 settings back to the driver's initial configuration.  This
697                 allows the termios settings to be reset even if a process
698                 has hung up file descriptors keeping a pty's termios from
699                 being freed and reset.
700 
701         * tty_io.c (release_dev): Fix memory leak.  The pty's other
702                 termios structure should also be freed.
703 
704         * serial.c (rs_close, shutdown): Change how we wait for the
705                 transmitter to completely drain before shutting down the
706                 serial port.  We now do it by scheduling in another
707                 process instead of busy looping with the interrupts turned
708                 on.  This may eliminate some race condition problems that
709                 some people seem to be reporting.
710 
711 Sun Sep 25 14:18:14 1994  Theodore Y. Ts'o  (tytso@rt-11)
712 
713         * tty_io.c (release_dev): When freeing a tty make sure that both
714                 the tty and the o_tty (if present) aren't a process's
715                 controlling tty.  (Previously, we only checked the tty.)
716 
717         * serial.c (change_speed): Only enable the Modem Status
718                 Interrupt for a port if CLOCAL is not set or CRTSCTS
719                 is set.  If we're not checking the carrier detect and
720                 CTS line, there's no point in enabling the modem
721                 status interrupt.  This will save spurious interrupts
722                 from slowing down systems who have terminals that
723                 don't support either line.  (Of course, if you want
724                 only one of CD and CTS support, you will need a
725                 properly wired serial cable.)
726 
727 Thu Sep 22 08:32:48 1994  Theodore Y. Ts'o  (tytso@rt-11)
728 
729         * tty_io.c (do_SAK): Return if tty is null.
730 
731         * tty_io.c (_tty_name): Return "NULL tty" if the passed in tty is
732                 NULL.
733 
734 Sat Sep 17 13:19:25 1994  Theodore Y. Ts'o  (tytso@rt-11)
735 
736         * tty_ioctl.c (n_tty_ioctl): Fix TIOCGLCKTRMIOS and
737                 TIOCSLCKTRMIOS, which were totally broken.  Remove
738                 extra indirection from argument; it should be a struct
739                 termios *, not a struct termios **.
740                 &real_tty->termios_locked should have been
741                 real_tty->termios_locked.  This caused us to be
742                 reading and writing the termios_locked structure to
743                 random places in kernel memory.  
744 
745         * tty_io.c (release_dev): Oops!  Forgot to delete a critical kfree
746                 of the locked_termios.  This leaves the locked_termios
747                 structure pointed at a freed object.  
748 
749 Fri Sep 16 08:13:25 1994  Theodore Y. Ts'o  (tytso@rt-11)
750 
751         * tty_io.c (tty_open): Don't check for an exclusive open until
752                 after the device specific open routine has been called.
753                 Otherwise, the serial device ref counting will be screwed
754                 up.
755 
756         * serial.c (rs_open, block_til_ready): Don't set termios structure
757                 until after block_til_ready has returned successfully.
758                 Modify block_til_ready to check the normal_termios
759                 structure directly, so it doesn't rely on termios being
760                 set before it's called.
761 
762 Thu Sep 15 23:34:01 1994  Theodore Y. Ts'o  (tytso@rt-11)
763 
764         * serial.c (rs_close): Turn off interrupts during rs_close() to
765                 prevent a race condition with the hangup code (which
766                 runs during a software interrupt).
767 
768         * tty_io.c (release_dev): Don't free the locked_termios structure;
769                 its state must be retained across device opens.
770 
771 
772         * tty_io.c (tty_unregister_driver): Added function to unregister a
773                 tty driver.  (For loadable device drivers.)
774 
775 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.