[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen: allow 8bit input in Xen serial console
On 28/07/15 18:02, Manfred Haertel wrote: > The Xen serial console cuts off the most significant bit from input > characters, so you can't use e.g. German umlauts when logging in to > the DOM0 Linux system from the serial console. > > The following patch fixes that problem. Thanks for the submission. However, please sign your patch off, per http://wiki.xen.org/wiki/Submitting_Xen_Project_Patches#Signing_off_a_patch > > --- xen/drivers/char/serial.c.orig 2015-07-28 18:44:49.443889719 +0200 > +++ xen/drivers/char/serial.c 2015-07-28 18:47:10.593728590 +0200 > @@ -66,7 +66,7 @@ > spin_unlock_irqrestore(&port->rx_lock, flags); > > if ( fn != NULL ) > - (*fn)(c & 0x7f, regs); > + (*fn)(c, regs); > } > > void serial_tx_interrupt(struct serial_port *port, struct > cpu_user_regs *regs) > @@ -297,7 +297,11 @@ > } while ( ((handle & SERHND_LO) && (c & 0x80)) || > ((handle & SERHND_HI) && !(c & 0x80)) ); > > - return c & 0x7f; > + if (handle & SERHND_HI) Please read CODING_STYLE in the root of the tree, but to summarise here, spaces inside the first level of brackes, so "if ( handle & SERHND_HI )", and no braces for single statements. > + { > + c &= 0x7f; > + } > + return c; I think in both cases you need to mask out the top bit if either SERHND_HI or SERHND_LO is set, and leave all 8 bits alone if neither are set. Both of these are opt-in with command line options, so the default configuration in most cases pass 8-bit characters unmodified. You probably also want to patch docs/misc/xen-command-line.markdown to indicate that choosing the 'H' or 'L' option will prevent the use of 8-bit characters. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |