forked from rpms/kernel
		
	Add patch to allow "8250." prefix to keep working (rhbz 911771)
This commit is contained in:
		
							parent
							
								
									7a56714061
								
							
						
					
					
						commit
						40514766bf
					
				| @ -738,12 +738,14 @@ Patch21267: keys-fix-race-with-concurrent-install_user_keyrings.patch | |||||||
| #rhbz 857954 | #rhbz 857954 | ||||||
| Patch21268: w1-fix-oops-when-w1_search-is-called-from.patch | Patch21268: w1-fix-oops-when-w1_search-is-called-from.patch | ||||||
| 
 | 
 | ||||||
|  | #rhbz 911771 | ||||||
|  | Patch21269: serial-8250-Keep-8250.-xxxx-module-options-functiona.patch | ||||||
|  | 
 | ||||||
| Patch22000: weird-root-dentry-name-debug.patch | Patch22000: weird-root-dentry-name-debug.patch | ||||||
| 
 | 
 | ||||||
| #selinux ptrace child permissions | #selinux ptrace child permissions | ||||||
| Patch22001: selinux-apply-different-permission-to-ptrace-child.patch | Patch22001: selinux-apply-different-permission-to-ptrace-child.patch | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
| # END OF PATCH DEFINITIONS | # END OF PATCH DEFINITIONS | ||||||
| 
 | 
 | ||||||
| %endif | %endif | ||||||
| @ -1434,6 +1436,9 @@ ApplyPatch keys-fix-race-with-concurrent-install_user_keyrings.patch | |||||||
| #rhbz 857954 | #rhbz 857954 | ||||||
| ApplyPatch w1-fix-oops-when-w1_search-is-called-from.patch | ApplyPatch w1-fix-oops-when-w1_search-is-called-from.patch | ||||||
| 
 | 
 | ||||||
|  | #rhbz 911771 | ||||||
|  | ApplyPatch serial-8250-Keep-8250.-xxxx-module-options-functiona.patch | ||||||
|  | 
 | ||||||
| # END OF PATCH APPLICATIONS | # END OF PATCH APPLICATIONS | ||||||
| 
 | 
 | ||||||
| %endif | %endif | ||||||
| @ -2276,6 +2281,7 @@ fi | |||||||
| #                 ||     || | #                 ||     || | ||||||
| %changelog | %changelog | ||||||
| * Mon Mar 11 2013 Josh Boyer <jwboyer@redhat.com> | * Mon Mar 11 2013 Josh Boyer <jwboyer@redhat.com> | ||||||
|  | - Add patch to allow "8250." prefix to keep working (rhbz 911771) | ||||||
| - Add patch to fix w1_search oops (rhbz 857954) | - Add patch to fix w1_search oops (rhbz 857954) | ||||||
| 
 | 
 | ||||||
| * Sun Mar 10 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc1.git2.1 | * Sun Mar 10 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc1.git2.1 | ||||||
|  | |||||||
							
								
								
									
										63
									
								
								serial-8250-Keep-8250.-xxxx-module-options-functiona.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								serial-8250-Keep-8250.-xxxx-module-options-functiona.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,63 @@ | |||||||
|  | From e94256528a988231ccc7a2a0b6b206a1131cb358 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Josh Boyer <jwboyer@redhat.com> | ||||||
|  | Date: Fri, 8 Mar 2013 21:13:52 -0500 | ||||||
|  | Subject: [PATCH] serial: 8250: Keep 8250.<xxxx> module options functional | ||||||
|  |  after driver rename | ||||||
|  | 
 | ||||||
|  | With commit 835d844d1 (8250_pnp: do pnp probe before legacy probe), the | ||||||
|  | 8250 driver was renamed to 8250_core.  This means any existing usage of | ||||||
|  | the 8259.<xxxx> module parameters or as a kernel command line switch is | ||||||
|  | now broken, as the 8250_core driver doesn't parse options belonging to | ||||||
|  | something called "8250". | ||||||
|  | 
 | ||||||
|  | To solve this, we redefine the module options in a dummy function using | ||||||
|  | a redefined MODULE_PARAM_PREFX when built into the kernel.  In the case | ||||||
|  | where we're building as a module, we provide an alias to the old 8250 | ||||||
|  | name.  The dummy function prevents compiler errors due to global variable | ||||||
|  | redefinitions that happen as part of the module_param_ macro expansions. | ||||||
|  | 
 | ||||||
|  | Signed-off-by: Josh Boyer <jwboyer@redhat.com> | ||||||
|  | ---
 | ||||||
|  |  drivers/tty/serial/8250/8250.c | 29 +++++++++++++++++++++++++++++ | ||||||
|  |  1 file changed, 29 insertions(+) | ||||||
|  | 
 | ||||||
|  | diff --git a/drivers/tty/serial/8250/8250.c b/drivers/tty/serial/8250/8250.c
 | ||||||
|  | index 0efc815..f982633 100644
 | ||||||
|  | --- a/drivers/tty/serial/8250/8250.c
 | ||||||
|  | +++ b/drivers/tty/serial/8250/8250.c
 | ||||||
|  | @@ -3396,3 +3396,32 @@ module_param_array(probe_rsa, ulong, &probe_rsa_count, 0444);
 | ||||||
|  |  MODULE_PARM_DESC(probe_rsa, "Probe I/O ports for RSA"); | ||||||
|  |  #endif | ||||||
|  |  MODULE_ALIAS_CHARDEV_MAJOR(TTY_MAJOR); | ||||||
|  | +
 | ||||||
|  | +#ifndef MODULE
 | ||||||
|  | +/* This module was renamed to 8250_core in 3.7.  Keep the old "8250" name
 | ||||||
|  | + * working as well for the module options so we don't break people.  We
 | ||||||
|  | + * need to keep the names identical and the convenient macros will happily
 | ||||||
|  | + * refuse to let us do that by failing the build with redefinition errors
 | ||||||
|  | + * of global variables.  So we stick them inside a dummy function to avoid
 | ||||||
|  | + * those conflicts.  The options still get parsed, and the redefined
 | ||||||
|  | + * MODULE_PARAM_PREFIX lets us keep the "8250." syntax alive.
 | ||||||
|  | + *
 | ||||||
|  | + * This is hacky.  I'm sorry.
 | ||||||
|  | + */
 | ||||||
|  | +static void __used s8250_options(void)
 | ||||||
|  | +{
 | ||||||
|  | +#undef MODULE_PARAM_PREFIX
 | ||||||
|  | +#define MODULE_PARAM_PREFIX "8250."
 | ||||||
|  | +
 | ||||||
|  | +	module_param_cb(share_irqs, ¶m_ops_uint, &share_irqs, 0644);
 | ||||||
|  | +	module_param_cb(nr_uarts, ¶m_ops_uint, &nr_uarts, 0644);
 | ||||||
|  | +	module_param_cb(skip_txen_test, ¶m_ops_uint, &skip_txen_test, 0644);
 | ||||||
|  | +#ifdef CONFIG_SERIAL_8250_RSA
 | ||||||
|  | +	__module_param_call(MODULE_PARAM_PREFIX, probe_rsa,
 | ||||||
|  | +		¶m_array_ops, .arr = &__param_arr_probe_rsa,
 | ||||||
|  | +		0444, -1);
 | ||||||
|  | +#endif
 | ||||||
|  | +}
 | ||||||
|  | +#else
 | ||||||
|  | +MODULE_ALIAS("8250");
 | ||||||
|  | +#endif
 | ||||||
|  | -- 
 | ||||||
|  | 1.8.1.2 | ||||||
|  | 
 | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user