>>>>> On Tue, 27 Dec 2005 18:41:52 +0000, Russell King <rmk@xxxxxxxxxxxxxxxx> said: >> Yes, you are right. I missed the register_console call in >> uart_add_one_port(). So your patch will fix the problem. But I >> suppose the spinlock should be initialized in serial_core. How >> about this? rmk> I think you're layering work-around on top of work-around on top rmk> of work-around here. Russell, could you tell me where is the right place to initialize port's spinlock ? Currently, serial_core do initialize the spinlock in uart_set_options (for console) and uart_add_one_port (for other ports). And some low level drivers also initialize it in some place. (serial8250_isa_init_ports, etc.) A. The initialization in serial_core is just for failsafe and low level drivers should initialize the spinlock. B. Those initializations in low level drivers are there just by historical (or any other) reason and now redundant. They can be omitted because serial_core is responsible to initialize the spinlock. Which is right ? (if both are wrong, could you correct me ?) I will update and send patch(es) based on your answer. Thank you. --- Atsushi Nemoto