forked from mirrors/linux
		
	Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts were two cases of simple overlapping changes, nothing serious. In the UDP case, we need to add a hlist_add_tail_rcu() to linux/rculist.h, because we've moved UDP socket handling away from using nulls lists. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
						commit
						1602f49b58
					
				
					 317 changed files with 2917 additions and 1788 deletions
				
			
		| 
						 | 
					@ -1,23 +1,18 @@
 | 
				
			||||||
What:		/sys/devices/platform/<i2c-demux-name>/cur_master
 | 
					What:		/sys/devices/platform/<i2c-demux-name>/available_masters
 | 
				
			||||||
Date:		January 2016
 | 
					Date:		January 2016
 | 
				
			||||||
KernelVersion:	4.6
 | 
					KernelVersion:	4.6
 | 
				
			||||||
Contact:	Wolfram Sang <wsa@the-dreams.de>
 | 
					Contact:	Wolfram Sang <wsa@the-dreams.de>
 | 
				
			||||||
Description:
 | 
					Description:
 | 
				
			||||||
 | 
							Reading the file will give you a list of masters which can be
 | 
				
			||||||
 | 
							selected for a demultiplexed bus. The format is
 | 
				
			||||||
 | 
							"<index>:<name>". Example from a Renesas Lager board:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This file selects the active I2C master for a demultiplexed bus.
 | 
							0:/i2c@e6500000 1:/i2c@e6508000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Write 0 there for the first master, 1 for the second etc. Reading the file will
 | 
					What:		/sys/devices/platform/<i2c-demux-name>/current_master
 | 
				
			||||||
give you a list with the active master marked. Example from a Renesas Lager
 | 
					Date:		January 2016
 | 
				
			||||||
board:
 | 
					KernelVersion:	4.6
 | 
				
			||||||
 | 
					Contact:	Wolfram Sang <wsa@the-dreams.de>
 | 
				
			||||||
root@Lager:~# cat /sys/devices/platform/i2c@8/cur_master
 | 
					Description:
 | 
				
			||||||
* 0 - /i2c@9
 | 
							This file selects/shows the active I2C master for a demultiplexed
 | 
				
			||||||
  1 - /i2c@e6520000
 | 
							bus. It uses the <index> value from the file 'available_masters'.
 | 
				
			||||||
  2 - /i2c@e6530000
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
root@Lager:~# echo 2 > /sys/devices/platform/i2c@8/cur_master
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
root@Lager:~# cat /sys/devices/platform/i2c@8/cur_master
 | 
					 | 
				
			||||||
  0 - /i2c@9
 | 
					 | 
				
			||||||
  1 - /i2c@e6520000
 | 
					 | 
				
			||||||
* 2 - /i2c@e6530000
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,7 +9,8 @@ have dual GMAC each represented by a child node..
 | 
				
			||||||
Required properties:
 | 
					Required properties:
 | 
				
			||||||
- compatible: Should be "mediatek,mt7623-eth"
 | 
					- compatible: Should be "mediatek,mt7623-eth"
 | 
				
			||||||
- reg: Address and length of the register set for the device
 | 
					- reg: Address and length of the register set for the device
 | 
				
			||||||
- interrupts: Should contain the frame engines interrupt
 | 
					- interrupts: Should contain the three frame engines interrupts in numeric
 | 
				
			||||||
 | 
						order. These are fe_int0, fe_int1 and fe_int2.
 | 
				
			||||||
- clocks: the clock used by the core
 | 
					- clocks: the clock used by the core
 | 
				
			||||||
- clock-names: the names of the clock listed in the clocks property. These are
 | 
					- clock-names: the names of the clock listed in the clocks property. These are
 | 
				
			||||||
	"ethif", "esw", "gp2", "gp1"
 | 
						"ethif", "esw", "gp2", "gp1"
 | 
				
			||||||
| 
						 | 
					@ -42,7 +43,9 @@ eth: ethernet@1b100000 {
 | 
				
			||||||
		 <ðsys CLK_ETHSYS_GP2>,
 | 
							 <ðsys CLK_ETHSYS_GP2>,
 | 
				
			||||||
		 <ðsys CLK_ETHSYS_GP1>;
 | 
							 <ðsys CLK_ETHSYS_GP1>;
 | 
				
			||||||
	clock-names = "ethif", "esw", "gp2", "gp1";
 | 
						clock-names = "ethif", "esw", "gp2", "gp1";
 | 
				
			||||||
	interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_LOW>;
 | 
						interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_LOW
 | 
				
			||||||
 | 
							      GIC_SPI 199 IRQ_TYPE_LEVEL_LOW
 | 
				
			||||||
 | 
							      GIC_SPI 198 IRQ_TYPE_LEVEL_LOW>;
 | 
				
			||||||
	power-domains = <&scpsys MT2701_POWER_DOMAIN_ETH>;
 | 
						power-domains = <&scpsys MT2701_POWER_DOMAIN_ETH>;
 | 
				
			||||||
	resets = <ðsys MT2701_ETHSYS_ETH_RST>;
 | 
						resets = <ðsys MT2701_ETHSYS_ETH_RST>;
 | 
				
			||||||
	reset-names = "eth";
 | 
						reset-names = "eth";
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,13 +1,16 @@
 | 
				
			||||||
== Amlogic Meson pinmux controller ==
 | 
					== Amlogic Meson pinmux controller ==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Required properties for the root node:
 | 
					Required properties for the root node:
 | 
				
			||||||
 - compatible: "amlogic,meson8-pinctrl" or "amlogic,meson8b-pinctrl"
 | 
					 - compatible: one of "amlogic,meson8-cbus-pinctrl"
 | 
				
			||||||
 | 
							      "amlogic,meson8b-cbus-pinctrl"
 | 
				
			||||||
 | 
							      "amlogic,meson8-aobus-pinctrl"
 | 
				
			||||||
 | 
							      "amlogic,meson8b-aobus-pinctrl"
 | 
				
			||||||
 - reg: address and size of registers controlling irq functionality
 | 
					 - reg: address and size of registers controlling irq functionality
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== GPIO sub-nodes ===
 | 
					=== GPIO sub-nodes ===
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The 2 power domains of the controller (regular and always-on) are
 | 
					The GPIO bank for the controller is represented as a sub-node and it acts as a
 | 
				
			||||||
represented as sub-nodes and each of them acts as a GPIO controller.
 | 
					GPIO controller.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Required properties for sub-nodes are:
 | 
					Required properties for sub-nodes are:
 | 
				
			||||||
 - reg: should contain address and size for mux, pull-enable, pull and
 | 
					 - reg: should contain address and size for mux, pull-enable, pull and
 | 
				
			||||||
| 
						 | 
					@ -18,10 +21,6 @@ Required properties for sub-nodes are:
 | 
				
			||||||
 - gpio-controller: identifies the node as a gpio controller
 | 
					 - gpio-controller: identifies the node as a gpio controller
 | 
				
			||||||
 - #gpio-cells: must be 2
 | 
					 - #gpio-cells: must be 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Valid sub-node names are:
 | 
					 | 
				
			||||||
 - "banks" for the regular domain
 | 
					 | 
				
			||||||
 - "ao-bank" for the always-on domain
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
=== Other sub-nodes ===
 | 
					=== Other sub-nodes ===
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Child nodes without the "gpio-controller" represent some desired
 | 
					Child nodes without the "gpio-controller" represent some desired
 | 
				
			||||||
| 
						 | 
					@ -45,7 +44,7 @@ pinctrl-bindings.txt
 | 
				
			||||||
=== Example ===
 | 
					=== Example ===
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pinctrl: pinctrl@c1109880 {
 | 
						pinctrl: pinctrl@c1109880 {
 | 
				
			||||||
		compatible = "amlogic,meson8-pinctrl";
 | 
							compatible = "amlogic,meson8-cbus-pinctrl";
 | 
				
			||||||
		reg = <0xc1109880 0x10>;
 | 
							reg = <0xc1109880 0x10>;
 | 
				
			||||||
		#address-cells = <1>;
 | 
							#address-cells = <1>;
 | 
				
			||||||
		#size-cells = <1>;
 | 
							#size-cells = <1>;
 | 
				
			||||||
| 
						 | 
					@ -61,15 +60,6 @@ pinctrl-bindings.txt
 | 
				
			||||||
			#gpio-cells = <2>;
 | 
								#gpio-cells = <2>;
 | 
				
			||||||
               };
 | 
					               };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		gpio_ao: ao-bank@c1108030 {
 | 
					 | 
				
			||||||
			reg = <0xc8100014 0x4>,
 | 
					 | 
				
			||||||
			      <0xc810002c 0x4>,
 | 
					 | 
				
			||||||
			      <0xc8100024 0x8>;
 | 
					 | 
				
			||||||
			reg-names = "mux", "pull", "gpio";
 | 
					 | 
				
			||||||
			gpio-controller;
 | 
					 | 
				
			||||||
			#gpio-cells = <2>;
 | 
					 | 
				
			||||||
		};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		nand {
 | 
							nand {
 | 
				
			||||||
			mux {
 | 
								mux {
 | 
				
			||||||
				groups = "nand_io", "nand_io_ce0", "nand_io_ce1",
 | 
									groups = "nand_io", "nand_io_ce0", "nand_io_ce1",
 | 
				
			||||||
| 
						 | 
					@ -79,18 +69,4 @@ pinctrl-bindings.txt
 | 
				
			||||||
				function = "nand";
 | 
									function = "nand";
 | 
				
			||||||
			};
 | 
								};
 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
 | 
					 | 
				
			||||||
		uart_ao_a {
 | 
					 | 
				
			||||||
			mux {
 | 
					 | 
				
			||||||
				groups = "uart_tx_ao_a", "uart_rx_ao_a",
 | 
					 | 
				
			||||||
					 "uart_cts_ao_a", "uart_rts_ao_a";
 | 
					 | 
				
			||||||
				function = "uart_ao";
 | 
					 | 
				
			||||||
			};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
			conf {
 | 
					 | 
				
			||||||
				pins = "GPIOAO_0", "GPIOAO_1",
 | 
					 | 
				
			||||||
				       "GPIOAO_2", "GPIOAO_3";
 | 
					 | 
				
			||||||
				bias-disable;
 | 
					 | 
				
			||||||
			};
 | 
					 | 
				
			||||||
		};
 | 
					 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -15,9 +15,10 @@ Required properties:
 | 
				
			||||||
  is the rtc tick interrupt. The number of cells representing a interrupt
 | 
					  is the rtc tick interrupt. The number of cells representing a interrupt
 | 
				
			||||||
  depends on the parent interrupt controller.
 | 
					  depends on the parent interrupt controller.
 | 
				
			||||||
- clocks: Must contain a list of phandle and clock specifier for the rtc
 | 
					- clocks: Must contain a list of phandle and clock specifier for the rtc
 | 
				
			||||||
          and source clocks.
 | 
					          clock and in the case of a s3c6410 compatible controller, also
 | 
				
			||||||
- clock-names: Must contain "rtc" and "rtc_src" entries sorted in the
 | 
					          a source clock.
 | 
				
			||||||
               same order as the clocks property.
 | 
					- clock-names: Must contain "rtc" and for a s3c6410 compatible controller,
 | 
				
			||||||
 | 
					               a "rtc_src" sorted in the same order as the clocks property.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Example:
 | 
					Example:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4077,6 +4077,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
 | 
				
			||||||
					sector if the number is odd);
 | 
										sector if the number is odd);
 | 
				
			||||||
				i = IGNORE_DEVICE (don't bind to this
 | 
									i = IGNORE_DEVICE (don't bind to this
 | 
				
			||||||
					device);
 | 
										device);
 | 
				
			||||||
 | 
									j = NO_REPORT_LUNS (don't use report luns
 | 
				
			||||||
 | 
										command, uas only);
 | 
				
			||||||
				l = NOT_LOCKABLE (don't try to lock and
 | 
									l = NOT_LOCKABLE (don't try to lock and
 | 
				
			||||||
					unlock ejectable media);
 | 
										unlock ejectable media);
 | 
				
			||||||
				m = MAX_SECTORS_64 (don't transfer more
 | 
									m = MAX_SECTORS_64 (don't transfer more
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -43,7 +43,7 @@ For the gadget two work under Windows two conditions have to be met:
 | 
				
			||||||
First of all, Windows need to detect the gadget as an USB composite
 | 
					First of all, Windows need to detect the gadget as an USB composite
 | 
				
			||||||
gadget which on its own have some conditions[4].  If they are met,
 | 
					gadget which on its own have some conditions[4].  If they are met,
 | 
				
			||||||
Windows lets USB Generic Parent Driver[5] handle the device which then
 | 
					Windows lets USB Generic Parent Driver[5] handle the device which then
 | 
				
			||||||
tries to much drivers for each individual interface (sort of, don't
 | 
					tries to match drivers for each individual interface (sort of, don't
 | 
				
			||||||
get into too many details).
 | 
					get into too many details).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The good news is: you do not have to worry about most of the
 | 
					The good news is: you do not have to worry about most of the
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										27
									
								
								Documentation/x86/protection-keys.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								Documentation/x86/protection-keys.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,27 @@
 | 
				
			||||||
 | 
					Memory Protection Keys for Userspace (PKU aka PKEYs) is a CPU feature
 | 
				
			||||||
 | 
					which will be found on future Intel CPUs.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Memory Protection Keys provides a mechanism for enforcing page-based
 | 
				
			||||||
 | 
					protections, but without requiring modification of the page tables
 | 
				
			||||||
 | 
					when an application changes protection domains.  It works by
 | 
				
			||||||
 | 
					dedicating 4 previously ignored bits in each page table entry to a
 | 
				
			||||||
 | 
					"protection key", giving 16 possible keys.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					There is also a new user-accessible register (PKRU) with two separate
 | 
				
			||||||
 | 
					bits (Access Disable and Write Disable) for each key.  Being a CPU
 | 
				
			||||||
 | 
					register, PKRU is inherently thread-local, potentially giving each
 | 
				
			||||||
 | 
					thread a different set of protections from every other thread.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					There are two new instructions (RDPKRU/WRPKRU) for reading and writing
 | 
				
			||||||
 | 
					to the new register.  The feature is only available in 64-bit mode,
 | 
				
			||||||
 | 
					even though there is theoretically space in the PAE PTEs.  These
 | 
				
			||||||
 | 
					permissions are enforced on data access only and have no effect on
 | 
				
			||||||
 | 
					instruction fetches.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=========================== Config Option ===========================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This config option adds approximately 1.5kb of text. and 50 bytes of
 | 
				
			||||||
 | 
					data to the executable.  A workload which does large O_DIRECT reads
 | 
				
			||||||
 | 
					of holes in XFS files was run to exercise get_user_pages_fast().  No
 | 
				
			||||||
 | 
					performance delta was observed with the config option
 | 
				
			||||||
 | 
					enabled or disabled.
 | 
				
			||||||
| 
						 | 
					@ -6253,8 +6253,8 @@ S:	Maintained
 | 
				
			||||||
F:	tools/testing/selftests
 | 
					F:	tools/testing/selftests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
KERNEL VIRTUAL MACHINE (KVM)
 | 
					KERNEL VIRTUAL MACHINE (KVM)
 | 
				
			||||||
M:	Gleb Natapov <gleb@kernel.org>
 | 
					 | 
				
			||||||
M:	Paolo Bonzini <pbonzini@redhat.com>
 | 
					M:	Paolo Bonzini <pbonzini@redhat.com>
 | 
				
			||||||
 | 
					M:	Radim Krčmář <rkrcmar@redhat.com>
 | 
				
			||||||
L:	kvm@vger.kernel.org
 | 
					L:	kvm@vger.kernel.org
 | 
				
			||||||
W:	http://www.linux-kvm.org
 | 
					W:	http://www.linux-kvm.org
 | 
				
			||||||
T:	git git://git.kernel.org/pub/scm/virt/kvm/kvm.git
 | 
					T:	git git://git.kernel.org/pub/scm/virt/kvm/kvm.git
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
VERSION = 4
 | 
					VERSION = 4
 | 
				
			||||||
PATCHLEVEL = 6
 | 
					PATCHLEVEL = 6
 | 
				
			||||||
SUBLEVEL = 0
 | 
					SUBLEVEL = 0
 | 
				
			||||||
EXTRAVERSION = -rc2
 | 
					EXTRAVERSION = -rc4
 | 
				
			||||||
NAME = Blurry Fish Butt
 | 
					NAME = Blurry Fish Butt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# *DOCUMENTATION*
 | 
					# *DOCUMENTATION*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -593,7 +593,6 @@ config PCI_SYSCALL
 | 
				
			||||||
	def_bool PCI
 | 
						def_bool PCI
 | 
				
			||||||
 | 
					
 | 
				
			||||||
source "drivers/pci/Kconfig"
 | 
					source "drivers/pci/Kconfig"
 | 
				
			||||||
source "drivers/pci/pcie/Kconfig"
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
endmenu
 | 
					endmenu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -47,14 +47,6 @@ ethernet@0x18000 {
 | 
				
			||||||
			clocks = <&apbclk>;
 | 
								clocks = <&apbclk>;
 | 
				
			||||||
			clock-names = "stmmaceth";
 | 
								clock-names = "stmmaceth";
 | 
				
			||||||
			max-speed = <100>;
 | 
								max-speed = <100>;
 | 
				
			||||||
			mdio0 {
 | 
					 | 
				
			||||||
				#address-cells = <1>;
 | 
					 | 
				
			||||||
				#size-cells = <0>;
 | 
					 | 
				
			||||||
				compatible = "snps,dwmac-mdio";
 | 
					 | 
				
			||||||
				phy1: ethernet-phy@1 {
 | 
					 | 
				
			||||||
					reg = <1>;
 | 
					 | 
				
			||||||
				};
 | 
					 | 
				
			||||||
			};
 | 
					 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		ehci@0x40000 {
 | 
							ehci@0x40000 {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -42,6 +42,7 @@ CONFIG_DEVTMPFS=y
 | 
				
			||||||
# CONFIG_STANDALONE is not set
 | 
					# CONFIG_STANDALONE is not set
 | 
				
			||||||
# CONFIG_PREVENT_FIRMWARE_BUILD is not set
 | 
					# CONFIG_PREVENT_FIRMWARE_BUILD is not set
 | 
				
			||||||
# CONFIG_FIRMWARE_IN_KERNEL is not set
 | 
					# CONFIG_FIRMWARE_IN_KERNEL is not set
 | 
				
			||||||
 | 
					CONFIG_BLK_DEV_LOOP=y
 | 
				
			||||||
CONFIG_SCSI=y
 | 
					CONFIG_SCSI=y
 | 
				
			||||||
CONFIG_BLK_DEV_SD=y
 | 
					CONFIG_BLK_DEV_SD=y
 | 
				
			||||||
CONFIG_NETDEVICES=y
 | 
					CONFIG_NETDEVICES=y
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -43,6 +43,7 @@ CONFIG_DEVTMPFS=y
 | 
				
			||||||
# CONFIG_STANDALONE is not set
 | 
					# CONFIG_STANDALONE is not set
 | 
				
			||||||
# CONFIG_PREVENT_FIRMWARE_BUILD is not set
 | 
					# CONFIG_PREVENT_FIRMWARE_BUILD is not set
 | 
				
			||||||
# CONFIG_FIRMWARE_IN_KERNEL is not set
 | 
					# CONFIG_FIRMWARE_IN_KERNEL is not set
 | 
				
			||||||
 | 
					CONFIG_BLK_DEV_LOOP=y
 | 
				
			||||||
CONFIG_SCSI=y
 | 
					CONFIG_SCSI=y
 | 
				
			||||||
CONFIG_BLK_DEV_SD=y
 | 
					CONFIG_BLK_DEV_SD=y
 | 
				
			||||||
CONFIG_NETDEVICES=y
 | 
					CONFIG_NETDEVICES=y
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										19
									
								
								arch/arc/include/asm/fb.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								arch/arc/include/asm/fb.h
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,19 @@
 | 
				
			||||||
 | 
					#ifndef _ASM_FB_H_
 | 
				
			||||||
 | 
					#define _ASM_FB_H_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <linux/fb.h>
 | 
				
			||||||
 | 
					#include <linux/fs.h>
 | 
				
			||||||
 | 
					#include <asm/page.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma,
 | 
				
			||||||
 | 
									unsigned long off)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static inline int fb_is_primary_device(struct fb_info *info)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif /* _ASM_FB_H_ */
 | 
				
			||||||
| 
						 | 
					@ -470,9 +470,12 @@ &davinci_mdio {
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
&cpsw_emac0 {
 | 
					&cpsw_emac0 {
 | 
				
			||||||
	phy_id = <&davinci_mdio>, <0>;
 | 
					 | 
				
			||||||
	phy-mode = "rmii";
 | 
						phy-mode = "rmii";
 | 
				
			||||||
	dual_emac_res_vlan = <1>;
 | 
						dual_emac_res_vlan = <1>;
 | 
				
			||||||
 | 
						fixed-link {
 | 
				
			||||||
 | 
							speed = <100>;
 | 
				
			||||||
 | 
							full-duplex;
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
&cpsw_emac1 {
 | 
					&cpsw_emac1 {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -207,7 +207,7 @@ edma: edma@49000000 {
 | 
				
			||||||
			ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>,
 | 
								ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>,
 | 
				
			||||||
				   <&edma_tptc2 0>;
 | 
									   <&edma_tptc2 0>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			ti,edma-memcpy-channels = <32 33>;
 | 
								ti,edma-memcpy-channels = <58 59>;
 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		edma_tptc0: tptc@49800000 {
 | 
							edma_tptc0: tptc@49800000 {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -794,3 +794,8 @@ &mcasp1 {
 | 
				
			||||||
	tx-num-evt = <32>;
 | 
						tx-num-evt = <32>;
 | 
				
			||||||
	rx-num-evt = <32>;
 | 
						rx-num-evt = <32>;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					&synctimer_32kclk {
 | 
				
			||||||
 | 
						assigned-clocks = <&mux_synctimer32k_ck>;
 | 
				
			||||||
 | 
						assigned-clock-parents = <&clkdiv32k_ick>;
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -117,7 +117,7 @@ sata@a8000 {
 | 
				
			||||||
			};
 | 
								};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			/* USB part of the eSATA/USB 2.0 port */
 | 
								/* USB part of the eSATA/USB 2.0 port */
 | 
				
			||||||
			usb@50000 {
 | 
								usb@58000 {
 | 
				
			||||||
				status = "okay";
 | 
									status = "okay";
 | 
				
			||||||
			};
 | 
								};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -91,8 +91,8 @@ clk81: clk@0 {
 | 
				
			||||||
		clock-frequency = <141666666>;
 | 
							clock-frequency = <141666666>;
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pinctrl: pinctrl@c1109880 {
 | 
						pinctrl_cbus: pinctrl@c1109880 {
 | 
				
			||||||
		compatible = "amlogic,meson8-pinctrl";
 | 
							compatible = "amlogic,meson8-cbus-pinctrl";
 | 
				
			||||||
		reg = <0xc1109880 0x10>;
 | 
							reg = <0xc1109880 0x10>;
 | 
				
			||||||
		#address-cells = <1>;
 | 
							#address-cells = <1>;
 | 
				
			||||||
		#size-cells = <1>;
 | 
							#size-cells = <1>;
 | 
				
			||||||
| 
						 | 
					@ -108,29 +108,6 @@ gpio: banks@c11080b0 {
 | 
				
			||||||
			#gpio-cells = <2>;
 | 
								#gpio-cells = <2>;
 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		gpio_ao: ao-bank@c1108030 {
 | 
					 | 
				
			||||||
			reg = <0xc8100014 0x4>,
 | 
					 | 
				
			||||||
			      <0xc810002c 0x4>,
 | 
					 | 
				
			||||||
			      <0xc8100024 0x8>;
 | 
					 | 
				
			||||||
			reg-names = "mux", "pull", "gpio";
 | 
					 | 
				
			||||||
			gpio-controller;
 | 
					 | 
				
			||||||
			#gpio-cells = <2>;
 | 
					 | 
				
			||||||
		};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		uart_ao_a_pins: uart_ao_a {
 | 
					 | 
				
			||||||
			mux {
 | 
					 | 
				
			||||||
				groups = "uart_tx_ao_a", "uart_rx_ao_a";
 | 
					 | 
				
			||||||
				function = "uart_ao";
 | 
					 | 
				
			||||||
			};
 | 
					 | 
				
			||||||
		};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		i2c_ao_pins: i2c_mst_ao {
 | 
					 | 
				
			||||||
			mux {
 | 
					 | 
				
			||||||
				groups = "i2c_mst_sck_ao", "i2c_mst_sda_ao";
 | 
					 | 
				
			||||||
				function = "i2c_mst_ao";
 | 
					 | 
				
			||||||
			};
 | 
					 | 
				
			||||||
		};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		spi_nor_pins: nor {
 | 
							spi_nor_pins: nor {
 | 
				
			||||||
			mux {
 | 
								mux {
 | 
				
			||||||
				groups = "nor_d", "nor_q", "nor_c", "nor_cs";
 | 
									groups = "nor_d", "nor_q", "nor_c", "nor_cs";
 | 
				
			||||||
| 
						 | 
					@ -157,4 +134,34 @@ mux {
 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pinctrl_aobus: pinctrl@c8100084 {
 | 
				
			||||||
 | 
							compatible = "amlogic,meson8-aobus-pinctrl";
 | 
				
			||||||
 | 
							reg = <0xc8100084 0xc>;
 | 
				
			||||||
 | 
							#address-cells = <1>;
 | 
				
			||||||
 | 
							#size-cells = <1>;
 | 
				
			||||||
 | 
							ranges;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							gpio_ao: ao-bank@c1108030 {
 | 
				
			||||||
 | 
								reg = <0xc8100014 0x4>,
 | 
				
			||||||
 | 
								      <0xc810002c 0x4>,
 | 
				
			||||||
 | 
								      <0xc8100024 0x8>;
 | 
				
			||||||
 | 
								reg-names = "mux", "pull", "gpio";
 | 
				
			||||||
 | 
								gpio-controller;
 | 
				
			||||||
 | 
								#gpio-cells = <2>;
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							uart_ao_a_pins: uart_ao_a {
 | 
				
			||||||
 | 
								mux {
 | 
				
			||||||
 | 
									groups = "uart_tx_ao_a", "uart_rx_ao_a";
 | 
				
			||||||
 | 
									function = "uart_ao";
 | 
				
			||||||
 | 
								};
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							i2c_ao_pins: i2c_mst_ao {
 | 
				
			||||||
 | 
								mux {
 | 
				
			||||||
 | 
									groups = "i2c_mst_sck_ao", "i2c_mst_sda_ao";
 | 
				
			||||||
 | 
									function = "i2c_mst_ao";
 | 
				
			||||||
 | 
								};
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
}; /* end of / */
 | 
					}; /* end of / */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -155,8 +155,8 @@ clkc: clock-controller@c1104000 {
 | 
				
			||||||
			reg = <0xc1108000 0x4>, <0xc1104000 0x460>;
 | 
								reg = <0xc1108000 0x4>, <0xc1104000 0x460>;
 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		pinctrl: pinctrl@c1109880 {
 | 
							pinctrl_cbus: pinctrl@c1109880 {
 | 
				
			||||||
			compatible = "amlogic,meson8b-pinctrl";
 | 
								compatible = "amlogic,meson8b-cbus-pinctrl";
 | 
				
			||||||
			reg = <0xc1109880 0x10>;
 | 
								reg = <0xc1109880 0x10>;
 | 
				
			||||||
			#address-cells = <1>;
 | 
								#address-cells = <1>;
 | 
				
			||||||
			#size-cells = <1>;
 | 
								#size-cells = <1>;
 | 
				
			||||||
| 
						 | 
					@ -171,6 +171,14 @@ gpio: banks@c11080b0 {
 | 
				
			||||||
				gpio-controller;
 | 
									gpio-controller;
 | 
				
			||||||
				#gpio-cells = <2>;
 | 
									#gpio-cells = <2>;
 | 
				
			||||||
			};
 | 
								};
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							pinctrl_aobus: pinctrl@c8100084 {
 | 
				
			||||||
 | 
								compatible = "amlogic,meson8b-aobus-pinctrl";
 | 
				
			||||||
 | 
								reg = <0xc8100084 0xc>;
 | 
				
			||||||
 | 
								#address-cells = <1>;
 | 
				
			||||||
 | 
								#size-cells = <1>;
 | 
				
			||||||
 | 
								ranges;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			gpio_ao: ao-bank@c1108030 {
 | 
								gpio_ao: ao-bank@c1108030 {
 | 
				
			||||||
				reg = <0xc8100014 0x4>,
 | 
									reg = <0xc8100014 0x4>,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -70,7 +70,7 @@ local-timer@48240600 {
 | 
				
			||||||
		compatible = "arm,cortex-a9-twd-timer";
 | 
							compatible = "arm,cortex-a9-twd-timer";
 | 
				
			||||||
		clocks = <&mpu_periphclk>;
 | 
							clocks = <&mpu_periphclk>;
 | 
				
			||||||
		reg = <0x48240600 0x20>;
 | 
							reg = <0x48240600 0x20>;
 | 
				
			||||||
		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>;
 | 
							interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_EDGE_RISING)>;
 | 
				
			||||||
		interrupt-parent = <&gic>;
 | 
							interrupt-parent = <&gic>;
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -63,6 +63,9 @@ CONFIG_INPUT_TOUCHSCREEN=y
 | 
				
			||||||
CONFIG_TOUCHSCREEN_BU21013=y
 | 
					CONFIG_TOUCHSCREEN_BU21013=y
 | 
				
			||||||
CONFIG_INPUT_MISC=y
 | 
					CONFIG_INPUT_MISC=y
 | 
				
			||||||
CONFIG_INPUT_AB8500_PONKEY=y
 | 
					CONFIG_INPUT_AB8500_PONKEY=y
 | 
				
			||||||
 | 
					CONFIG_RMI4_CORE=y
 | 
				
			||||||
 | 
					CONFIG_RMI4_I2C=y
 | 
				
			||||||
 | 
					CONFIG_RMI4_F11=y
 | 
				
			||||||
# CONFIG_SERIO is not set
 | 
					# CONFIG_SERIO is not set
 | 
				
			||||||
CONFIG_VT_HW_CONSOLE_BINDING=y
 | 
					CONFIG_VT_HW_CONSOLE_BINDING=y
 | 
				
			||||||
# CONFIG_LEGACY_PTYS is not set
 | 
					# CONFIG_LEGACY_PTYS is not set
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -276,7 +276,7 @@ static inline int __attribute_const__ cpuid_feature_extract_field(u32 features,
 | 
				
			||||||
	int feature = (features >> field) & 15;
 | 
						int feature = (features >> field) & 15;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* feature registers are signed values */
 | 
						/* feature registers are signed values */
 | 
				
			||||||
	if (feature > 8)
 | 
						if (feature > 7)
 | 
				
			||||||
		feature -= 16;
 | 
							feature -= 16;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return feature;
 | 
						return feature;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -19,7 +19,7 @@
 | 
				
			||||||
 * This may need to be greater than __NR_last_syscall+1 in order to
 | 
					 * This may need to be greater than __NR_last_syscall+1 in order to
 | 
				
			||||||
 * account for the padding in the syscall table
 | 
					 * account for the padding in the syscall table
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#define __NR_syscalls  (392)
 | 
					#define __NR_syscalls  (396)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define __ARCH_WANT_STAT64
 | 
					#define __ARCH_WANT_STAT64
 | 
				
			||||||
#define __ARCH_WANT_SYS_GETHOSTNAME
 | 
					#define __ARCH_WANT_SYS_GETHOSTNAME
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -418,6 +418,8 @@
 | 
				
			||||||
#define __NR_membarrier			(__NR_SYSCALL_BASE+389)
 | 
					#define __NR_membarrier			(__NR_SYSCALL_BASE+389)
 | 
				
			||||||
#define __NR_mlock2			(__NR_SYSCALL_BASE+390)
 | 
					#define __NR_mlock2			(__NR_SYSCALL_BASE+390)
 | 
				
			||||||
#define __NR_copy_file_range		(__NR_SYSCALL_BASE+391)
 | 
					#define __NR_copy_file_range		(__NR_SYSCALL_BASE+391)
 | 
				
			||||||
 | 
					#define __NR_preadv2			(__NR_SYSCALL_BASE+392)
 | 
				
			||||||
 | 
					#define __NR_pwritev2			(__NR_SYSCALL_BASE+393)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * The following SWIs are ARM private.
 | 
					 * The following SWIs are ARM private.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -399,8 +399,10 @@
 | 
				
			||||||
		CALL(sys_execveat)
 | 
							CALL(sys_execveat)
 | 
				
			||||||
		CALL(sys_userfaultfd)
 | 
							CALL(sys_userfaultfd)
 | 
				
			||||||
		CALL(sys_membarrier)
 | 
							CALL(sys_membarrier)
 | 
				
			||||||
		CALL(sys_mlock2)
 | 
					/* 390 */	CALL(sys_mlock2)
 | 
				
			||||||
		CALL(sys_copy_file_range)
 | 
							CALL(sys_copy_file_range)
 | 
				
			||||||
 | 
							CALL(sys_preadv2)
 | 
				
			||||||
 | 
							CALL(sys_pwritev2)
 | 
				
			||||||
#ifndef syscalls_counted
 | 
					#ifndef syscalls_counted
 | 
				
			||||||
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
 | 
					.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
 | 
				
			||||||
#define syscalls_counted
 | 
					#define syscalls_counted
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -430,11 +430,13 @@ static void __init patch_aeabi_idiv(void)
 | 
				
			||||||
	pr_info("CPU: div instructions available: patching division code\n");
 | 
						pr_info("CPU: div instructions available: patching division code\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	fn_addr = ((uintptr_t)&__aeabi_uidiv) & ~1;
 | 
						fn_addr = ((uintptr_t)&__aeabi_uidiv) & ~1;
 | 
				
			||||||
 | 
						asm ("" : "+g" (fn_addr));
 | 
				
			||||||
	((u32 *)fn_addr)[0] = udiv_instruction();
 | 
						((u32 *)fn_addr)[0] = udiv_instruction();
 | 
				
			||||||
	((u32 *)fn_addr)[1] = bx_lr_instruction();
 | 
						((u32 *)fn_addr)[1] = bx_lr_instruction();
 | 
				
			||||||
	flush_icache_range(fn_addr, fn_addr + 8);
 | 
						flush_icache_range(fn_addr, fn_addr + 8);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	fn_addr = ((uintptr_t)&__aeabi_idiv) & ~1;
 | 
						fn_addr = ((uintptr_t)&__aeabi_idiv) & ~1;
 | 
				
			||||||
 | 
						asm ("" : "+g" (fn_addr));
 | 
				
			||||||
	((u32 *)fn_addr)[0] = sdiv_instruction();
 | 
						((u32 *)fn_addr)[0] = sdiv_instruction();
 | 
				
			||||||
	((u32 *)fn_addr)[1] = bx_lr_instruction();
 | 
						((u32 *)fn_addr)[1] = bx_lr_instruction();
 | 
				
			||||||
	flush_icache_range(fn_addr, fn_addr + 8);
 | 
						flush_icache_range(fn_addr, fn_addr + 8);
 | 
				
			||||||
| 
						 | 
					@ -510,7 +512,7 @@ static void __init elf_hwcap_fixup(void)
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
	if (cpuid_feature_extract(CPUID_EXT_ISAR3, 12) > 1 ||
 | 
						if (cpuid_feature_extract(CPUID_EXT_ISAR3, 12) > 1 ||
 | 
				
			||||||
	    (cpuid_feature_extract(CPUID_EXT_ISAR3, 12) == 1 &&
 | 
						    (cpuid_feature_extract(CPUID_EXT_ISAR3, 12) == 1 &&
 | 
				
			||||||
	     cpuid_feature_extract(CPUID_EXT_ISAR3, 20) >= 3))
 | 
						     cpuid_feature_extract(CPUID_EXT_ISAR4, 20) >= 3))
 | 
				
			||||||
		elf_hwcap &= ~HWCAP_SWP;
 | 
							elf_hwcap &= ~HWCAP_SWP;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1112,10 +1112,17 @@ static void __init hyp_cpu_pm_init(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	cpu_pm_register_notifier(&hyp_init_cpu_pm_nb);
 | 
						cpu_pm_register_notifier(&hyp_init_cpu_pm_nb);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					static void __init hyp_cpu_pm_exit(void)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						cpu_pm_unregister_notifier(&hyp_init_cpu_pm_nb);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
static inline void hyp_cpu_pm_init(void)
 | 
					static inline void hyp_cpu_pm_init(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					static inline void hyp_cpu_pm_exit(void)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void teardown_common_resources(void)
 | 
					static void teardown_common_resources(void)
 | 
				
			||||||
| 
						 | 
					@ -1141,9 +1148,7 @@ static int init_subsystems(void)
 | 
				
			||||||
	/*
 | 
						/*
 | 
				
			||||||
	 * Register CPU Hotplug notifier
 | 
						 * Register CPU Hotplug notifier
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
	cpu_notifier_register_begin();
 | 
						err = register_cpu_notifier(&hyp_init_cpu_nb);
 | 
				
			||||||
	err = __register_cpu_notifier(&hyp_init_cpu_nb);
 | 
					 | 
				
			||||||
	cpu_notifier_register_done();
 | 
					 | 
				
			||||||
	if (err) {
 | 
						if (err) {
 | 
				
			||||||
		kvm_err("Cannot register KVM init CPU notifier (%d)\n", err);
 | 
							kvm_err("Cannot register KVM init CPU notifier (%d)\n", err);
 | 
				
			||||||
		return err;
 | 
							return err;
 | 
				
			||||||
| 
						 | 
					@ -1193,6 +1198,8 @@ static void teardown_hyp_mode(void)
 | 
				
			||||||
	free_hyp_pgds();
 | 
						free_hyp_pgds();
 | 
				
			||||||
	for_each_possible_cpu(cpu)
 | 
						for_each_possible_cpu(cpu)
 | 
				
			||||||
		free_page(per_cpu(kvm_arm_hyp_stack_page, cpu));
 | 
							free_page(per_cpu(kvm_arm_hyp_stack_page, cpu));
 | 
				
			||||||
 | 
						unregister_cpu_notifier(&hyp_init_cpu_nb);
 | 
				
			||||||
 | 
						hyp_cpu_pm_exit();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int init_vhe_mode(void)
 | 
					static int init_vhe_mode(void)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -669,9 +669,9 @@ void __init dra7xxx_check_revision(void)
 | 
				
			||||||
		case 0:
 | 
							case 0:
 | 
				
			||||||
			omap_revision = DRA722_REV_ES1_0;
 | 
								omap_revision = DRA722_REV_ES1_0;
 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
 | 
							case 1:
 | 
				
			||||||
		default:
 | 
							default:
 | 
				
			||||||
			/* If we have no new revisions */
 | 
								omap_revision = DRA722_REV_ES2_0;
 | 
				
			||||||
			omap_revision = DRA722_REV_ES1_0;
 | 
					 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		break;
 | 
							break;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -368,6 +368,7 @@ void __init omap5_map_io(void)
 | 
				
			||||||
void __init dra7xx_map_io(void)
 | 
					void __init dra7xx_map_io(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	iotable_init(dra7xx_io_desc, ARRAY_SIZE(dra7xx_io_desc));
 | 
						iotable_init(dra7xx_io_desc, ARRAY_SIZE(dra7xx_io_desc));
 | 
				
			||||||
 | 
						omap_barriers_init();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1416,8 +1416,6 @@ static void _enable_sysc(struct omap_hwmod *oh)
 | 
				
			||||||
	    (sf & SYSC_HAS_CLOCKACTIVITY))
 | 
						    (sf & SYSC_HAS_CLOCKACTIVITY))
 | 
				
			||||||
		_set_clockactivity(oh, oh->class->sysc->clockact, &v);
 | 
							_set_clockactivity(oh, oh->class->sysc->clockact, &v);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* If the cached value is the same as the new value, skip the write */
 | 
					 | 
				
			||||||
	if (oh->_sysc_cache != v)
 | 
					 | 
				
			||||||
	_write_sysconfig(v, oh);
 | 
						_write_sysconfig(v, oh);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/*
 | 
						/*
 | 
				
			||||||
| 
						 | 
					@ -1481,6 +1479,8 @@ static void _idle_sysc(struct omap_hwmod *oh)
 | 
				
			||||||
		_set_master_standbymode(oh, idlemode, &v);
 | 
							_set_master_standbymode(oh, idlemode, &v);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* If the cached value is the same as the new value, skip the write */
 | 
				
			||||||
 | 
						if (oh->_sysc_cache != v)
 | 
				
			||||||
		_write_sysconfig(v, oh);
 | 
							_write_sysconfig(v, oh);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -582,9 +582,11 @@ static struct omap_hwmod_ocp_if dm81xx_alwon_l3_slow__gpmc = {
 | 
				
			||||||
	.user		= OCP_USER_MPU,
 | 
						.user		= OCP_USER_MPU,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* USB needs udelay 1 after reset at least on hp t410, use 2 for margin */
 | 
				
			||||||
static struct omap_hwmod_class_sysconfig dm81xx_usbhsotg_sysc = {
 | 
					static struct omap_hwmod_class_sysconfig dm81xx_usbhsotg_sysc = {
 | 
				
			||||||
	.rev_offs	= 0x0,
 | 
						.rev_offs	= 0x0,
 | 
				
			||||||
	.sysc_offs	= 0x10,
 | 
						.sysc_offs	= 0x10,
 | 
				
			||||||
 | 
						.srst_udelay	= 2,
 | 
				
			||||||
	.sysc_flags	= SYSC_HAS_SIDLEMODE | SYSC_HAS_MIDLEMODE |
 | 
						.sysc_flags	= SYSC_HAS_SIDLEMODE | SYSC_HAS_MIDLEMODE |
 | 
				
			||||||
				SYSC_HAS_SOFTRESET,
 | 
									SYSC_HAS_SOFTRESET,
 | 
				
			||||||
	.idlemodes	= SIDLE_SMART | MSTANDBY_FORCE | MSTANDBY_SMART,
 | 
						.idlemodes	= SIDLE_SMART | MSTANDBY_FORCE | MSTANDBY_SMART,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -489,6 +489,7 @@ IS_OMAP_TYPE(3430, 0x3430)
 | 
				
			||||||
#define DRA752_REV_ES2_0	(DRA7XX_CLASS | (0x52 << 16) | (0x20 << 8))
 | 
					#define DRA752_REV_ES2_0	(DRA7XX_CLASS | (0x52 << 16) | (0x20 << 8))
 | 
				
			||||||
#define DRA722_REV_ES1_0	(DRA7XX_CLASS | (0x22 << 16) | (0x10 << 8))
 | 
					#define DRA722_REV_ES1_0	(DRA7XX_CLASS | (0x22 << 16) | (0x10 << 8))
 | 
				
			||||||
#define DRA722_REV_ES1_0	(DRA7XX_CLASS | (0x22 << 16) | (0x10 << 8))
 | 
					#define DRA722_REV_ES1_0	(DRA7XX_CLASS | (0x22 << 16) | (0x10 << 8))
 | 
				
			||||||
 | 
					#define DRA722_REV_ES2_0	(DRA7XX_CLASS | (0x22 << 16) | (0x20 << 8))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void omap2xxx_check_revision(void);
 | 
					void omap2xxx_check_revision(void);
 | 
				
			||||||
void omap3xxx_check_revision(void);
 | 
					void omap3xxx_check_revision(void);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1235,5 +1235,6 @@ static struct platform_device pxa2xx_pxa_dma = {
 | 
				
			||||||
void __init pxa2xx_set_dmac_info(int nb_channels, int nb_requestors)
 | 
					void __init pxa2xx_set_dmac_info(int nb_channels, int nb_requestors)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	pxa_dma_pdata.dma_channels = nb_channels;
 | 
						pxa_dma_pdata.dma_channels = nb_channels;
 | 
				
			||||||
 | 
						pxa_dma_pdata.nb_requestors = nb_requestors;
 | 
				
			||||||
	pxa_register_device(&pxa2xx_pxa_dma, &pxa_dma_pdata);
 | 
						pxa_register_device(&pxa2xx_pxa_dma, &pxa_dma_pdata);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -61,10 +61,7 @@ config SA1100_H3100
 | 
				
			||||||
	select MFD_IPAQ_MICRO
 | 
						select MFD_IPAQ_MICRO
 | 
				
			||||||
	help
 | 
						help
 | 
				
			||||||
	  Say Y here if you intend to run this kernel on the Compaq iPAQ
 | 
						  Say Y here if you intend to run this kernel on the Compaq iPAQ
 | 
				
			||||||
	  H3100 handheld computer.  Information about this machine and the
 | 
						  H3100 handheld computer.
 | 
				
			||||||
	  Linux port to this machine can be found at:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	  <http://www.handhelds.org/Compaq/index.html#iPAQ_H3100>
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
config SA1100_H3600
 | 
					config SA1100_H3600
 | 
				
			||||||
	bool "Compaq iPAQ H3600/H3700"
 | 
						bool "Compaq iPAQ H3600/H3700"
 | 
				
			||||||
| 
						 | 
					@ -73,10 +70,7 @@ config SA1100_H3600
 | 
				
			||||||
	select MFD_IPAQ_MICRO
 | 
						select MFD_IPAQ_MICRO
 | 
				
			||||||
	help
 | 
						help
 | 
				
			||||||
	  Say Y here if you intend to run this kernel on the Compaq iPAQ
 | 
						  Say Y here if you intend to run this kernel on the Compaq iPAQ
 | 
				
			||||||
	  H3600 handheld computer.  Information about this machine and the
 | 
						  H3600 and H3700 handheld computers.
 | 
				
			||||||
	  Linux port to this machine can be found at:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	  <http://www.handhelds.org/Compaq/index.html#iPAQ_H3600>
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
config SA1100_BADGE4
 | 
					config SA1100_BADGE4
 | 
				
			||||||
	bool "HP Labs BadgePAD 4"
 | 
						bool "HP Labs BadgePAD 4"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -120,7 +120,7 @@ static int __init uniphier_smp_prepare_trampoline(unsigned int max_cpus)
 | 
				
			||||||
	if (ret)
 | 
						if (ret)
 | 
				
			||||||
		return ret;
 | 
							return ret;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	uniphier_smp_rom_boot_rsv2 = ioremap(rom_rsv2_phys, sizeof(SZ_4));
 | 
						uniphier_smp_rom_boot_rsv2 = ioremap(rom_rsv2_phys, SZ_4);
 | 
				
			||||||
	if (!uniphier_smp_rom_boot_rsv2) {
 | 
						if (!uniphier_smp_rom_boot_rsv2) {
 | 
				
			||||||
		pr_err("failed to map ROM_BOOT_RSV2 register\n");
 | 
							pr_err("failed to map ROM_BOOT_RSV2 register\n");
 | 
				
			||||||
		return -ENOMEM;
 | 
							return -ENOMEM;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -762,7 +762,8 @@ static void *__dma_alloc(struct device *dev, size_t size, dma_addr_t *handle,
 | 
				
			||||||
	if (!mask)
 | 
						if (!mask)
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	buf = kzalloc(sizeof(*buf), gfp);
 | 
						buf = kzalloc(sizeof(*buf),
 | 
				
			||||||
 | 
							      gfp & ~(__GFP_DMA | __GFP_DMA32 | __GFP_HIGHMEM));
 | 
				
			||||||
	if (!buf)
 | 
						if (!buf)
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -281,12 +281,12 @@ __v7_ca17mp_setup:
 | 
				
			||||||
	bl      v7_invalidate_l1
 | 
						bl      v7_invalidate_l1
 | 
				
			||||||
	ldmia	r12, {r1-r6, lr}
 | 
						ldmia	r12, {r1-r6, lr}
 | 
				
			||||||
#ifdef CONFIG_SMP
 | 
					#ifdef CONFIG_SMP
 | 
				
			||||||
 | 
						orr	r10, r10, #(1 << 6)		@ Enable SMP/nAMP mode
 | 
				
			||||||
	ALT_SMP(mrc	p15, 0, r0, c1, c0, 1)
 | 
						ALT_SMP(mrc	p15, 0, r0, c1, c0, 1)
 | 
				
			||||||
	ALT_UP(mov	r0, #(1 << 6))		@ fake it for UP
 | 
						ALT_UP(mov	r0, r10)		@ fake it for UP
 | 
				
			||||||
	tst	r0, #(1 << 6)			@ SMP/nAMP mode enabled?
 | 
						orr	r10, r10, r0			@ Set required bits
 | 
				
			||||||
	orreq	r0, r0, #(1 << 6)		@ Enable SMP/nAMP mode
 | 
						teq	r10, r0				@ Were they already set?
 | 
				
			||||||
	orreq	r0, r0, r10			@ Enable CPU-specific SMP bits
 | 
						mcrne	p15, 0, r10, c1, c0, 1		@ No, update register
 | 
				
			||||||
	mcreq	p15, 0, r0, c1, c0, 1
 | 
					 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
	b	__v7_setup_cont
 | 
						b	__v7_setup_cont
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -108,12 +108,15 @@ pci {
 | 
				
			||||||
		reg = <0x0 0x30000000  0x0 0x10000000>;
 | 
							reg = <0x0 0x30000000  0x0 0x10000000>;
 | 
				
			||||||
		reg-names = "PCI ECAM";
 | 
							reg-names = "PCI ECAM";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			  /* IO 0x4000_0000 - 0x4001_0000 */
 | 
							/*
 | 
				
			||||||
		ranges = <0x01000000 0 0x40000000 0 0x40000000 0 0x00010000
 | 
							 * PCI ranges:
 | 
				
			||||||
			  /* MEM 0x4800_0000 - 0x5000_0000 */
 | 
							 *   IO		no supported
 | 
				
			||||||
			  0x02000000 0 0x48000000 0 0x48000000 0 0x08000000
 | 
							 *   MEM        0x4000_0000 - 0x6000_0000
 | 
				
			||||||
			  /* MEM64 pref 0x6_0000_0000 - 0x7_0000_0000 */
 | 
							 *   MEM64 pref 0x40_0000_0000 - 0x60_0000_0000
 | 
				
			||||||
			  0x43000000 6 0x00000000 6 0x00000000 1 0x00000000>;
 | 
							 */
 | 
				
			||||||
 | 
							ranges =
 | 
				
			||||||
 | 
							  <0x02000000    0 0x40000000    0 0x40000000    0 0x20000000
 | 
				
			||||||
 | 
							   0x43000000 0x40 0x00000000 0x40 0x00000000 0x20 0x00000000>;
 | 
				
			||||||
		interrupt-map-mask = <0 0 0 7>;
 | 
							interrupt-map-mask = <0 0 0 7>;
 | 
				
			||||||
		interrupt-map =
 | 
							interrupt-map =
 | 
				
			||||||
		      /* addr  pin  ic   icaddr  icintr */
 | 
							      /* addr  pin  ic   icaddr  icintr */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -151,8 +151,7 @@
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#define VTCR_EL2_FLAGS		(VTCR_EL2_TG0_64K | VTCR_EL2_SH0_INNER | \
 | 
					#define VTCR_EL2_FLAGS		(VTCR_EL2_TG0_64K | VTCR_EL2_SH0_INNER | \
 | 
				
			||||||
				 VTCR_EL2_ORGN0_WBWA | VTCR_EL2_IRGN0_WBWA | \
 | 
									 VTCR_EL2_ORGN0_WBWA | VTCR_EL2_IRGN0_WBWA | \
 | 
				
			||||||
				 VTCR_EL2_SL0_LVL1 | VTCR_EL2_T0SZ_40B | \
 | 
									 VTCR_EL2_SL0_LVL1 | VTCR_EL2_RES1)
 | 
				
			||||||
				 VTCR_EL2_RES1)
 | 
					 | 
				
			||||||
#define VTTBR_X		(38 - VTCR_EL2_T0SZ_40B)
 | 
					#define VTTBR_X		(38 - VTCR_EL2_T0SZ_40B)
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					@ -163,8 +162,7 @@
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#define VTCR_EL2_FLAGS		(VTCR_EL2_TG0_4K | VTCR_EL2_SH0_INNER | \
 | 
					#define VTCR_EL2_FLAGS		(VTCR_EL2_TG0_4K | VTCR_EL2_SH0_INNER | \
 | 
				
			||||||
				 VTCR_EL2_ORGN0_WBWA | VTCR_EL2_IRGN0_WBWA | \
 | 
									 VTCR_EL2_ORGN0_WBWA | VTCR_EL2_IRGN0_WBWA | \
 | 
				
			||||||
				 VTCR_EL2_SL0_LVL1 | VTCR_EL2_T0SZ_40B | \
 | 
									 VTCR_EL2_SL0_LVL1 | VTCR_EL2_RES1)
 | 
				
			||||||
				 VTCR_EL2_RES1)
 | 
					 | 
				
			||||||
#define VTTBR_X		(37 - VTCR_EL2_T0SZ_40B)
 | 
					#define VTTBR_X		(37 - VTCR_EL2_T0SZ_40B)
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -54,7 +54,7 @@ extern void __vgic_v3_init_lrs(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
extern u32 __kvm_get_mdcr_el2(void);
 | 
					extern u32 __kvm_get_mdcr_el2(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
extern void __init_stage2_translation(void);
 | 
					extern u32 __init_stage2_translation(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -369,11 +369,12 @@ int kvm_arm_vcpu_arch_get_attr(struct kvm_vcpu *vcpu,
 | 
				
			||||||
int kvm_arm_vcpu_arch_has_attr(struct kvm_vcpu *vcpu,
 | 
					int kvm_arm_vcpu_arch_has_attr(struct kvm_vcpu *vcpu,
 | 
				
			||||||
			       struct kvm_device_attr *attr);
 | 
								       struct kvm_device_attr *attr);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* #define kvm_call_hyp(f, ...) __kvm_call_hyp(kvm_ksym_ref(f), ##__VA_ARGS__) */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static inline void __cpu_init_stage2(void)
 | 
					static inline void __cpu_init_stage2(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	kvm_call_hyp(__init_stage2_translation);
 | 
						u32 parange = kvm_call_hyp(__init_stage2_translation);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						WARN_ONCE(parange < 40,
 | 
				
			||||||
 | 
							  "PARange is %d bits, unsupported configuration!", parange);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif /* __ARM64_KVM_HOST_H__ */
 | 
					#endif /* __ARM64_KVM_HOST_H__ */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -20,9 +20,10 @@
 | 
				
			||||||
#include <asm/kvm_asm.h>
 | 
					#include <asm/kvm_asm.h>
 | 
				
			||||||
#include <asm/kvm_hyp.h>
 | 
					#include <asm/kvm_hyp.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void __hyp_text __init_stage2_translation(void)
 | 
					u32 __hyp_text __init_stage2_translation(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	u64 val = VTCR_EL2_FLAGS;
 | 
						u64 val = VTCR_EL2_FLAGS;
 | 
				
			||||||
 | 
						u64 parange;
 | 
				
			||||||
	u64 tmp;
 | 
						u64 tmp;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/*
 | 
						/*
 | 
				
			||||||
| 
						 | 
					@ -30,7 +31,39 @@ void __hyp_text __init_stage2_translation(void)
 | 
				
			||||||
	 * bits in VTCR_EL2. Amusingly, the PARange is 4 bits, while
 | 
						 * bits in VTCR_EL2. Amusingly, the PARange is 4 bits, while
 | 
				
			||||||
	 * PS is only 3. Fortunately, bit 19 is RES0 in VTCR_EL2...
 | 
						 * PS is only 3. Fortunately, bit 19 is RES0 in VTCR_EL2...
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
	val |= (read_sysreg(id_aa64mmfr0_el1) & 7) << 16;
 | 
						parange = read_sysreg(id_aa64mmfr0_el1) & 7;
 | 
				
			||||||
 | 
						val |= parange << 16;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* Compute the actual PARange... */
 | 
				
			||||||
 | 
						switch (parange) {
 | 
				
			||||||
 | 
						case 0:
 | 
				
			||||||
 | 
							parange = 32;
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case 1:
 | 
				
			||||||
 | 
							parange = 36;
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case 2:
 | 
				
			||||||
 | 
							parange = 40;
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case 3:
 | 
				
			||||||
 | 
							parange = 42;
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case 4:
 | 
				
			||||||
 | 
							parange = 44;
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case 5:
 | 
				
			||||||
 | 
						default:
 | 
				
			||||||
 | 
							parange = 48;
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/*
 | 
				
			||||||
 | 
						 * ... and clamp it to 40 bits, unless we have some braindead
 | 
				
			||||||
 | 
						 * HW that implements less than that. In all cases, we'll
 | 
				
			||||||
 | 
						 * return that value for the rest of the kernel to decide what
 | 
				
			||||||
 | 
						 * to do.
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						val |= 64 - (parange > 40 ? 40 : parange);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/*
 | 
						/*
 | 
				
			||||||
	 * Read the VMIDBits bits from ID_AA64MMFR1_EL1 and set the VS
 | 
						 * Read the VMIDBits bits from ID_AA64MMFR1_EL1 and set the VS
 | 
				
			||||||
| 
						 | 
					@ -42,4 +75,6 @@ void __hyp_text __init_stage2_translation(void)
 | 
				
			||||||
			VTCR_EL2_VS_8BIT;
 | 
								VTCR_EL2_VS_8BIT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	write_sysreg(val, vtcr_el2);
 | 
						write_sysreg(val, vtcr_el2);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return parange;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -158,11 +158,6 @@ static int mcfgpio_to_irq(struct gpio_chip *chip, unsigned offset)
 | 
				
			||||||
		return -EINVAL;
 | 
							return -EINVAL;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct bus_type mcfgpio_subsys = {
 | 
					 | 
				
			||||||
	.name		= "gpio",
 | 
					 | 
				
			||||||
	.dev_name	= "gpio",
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static struct gpio_chip mcfgpio_chip = {
 | 
					static struct gpio_chip mcfgpio_chip = {
 | 
				
			||||||
	.label			= "mcfgpio",
 | 
						.label			= "mcfgpio",
 | 
				
			||||||
	.request		= mcfgpio_request,
 | 
						.request		= mcfgpio_request,
 | 
				
			||||||
| 
						 | 
					@ -178,8 +173,7 @@ static struct gpio_chip mcfgpio_chip = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init mcfgpio_sysinit(void)
 | 
					static int __init mcfgpio_sysinit(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	gpiochip_add_data(&mcfgpio_chip, NULL);
 | 
						return gpiochip_add_data(&mcfgpio_chip, NULL);
 | 
				
			||||||
	return subsys_system_register(&mcfgpio_subsys, NULL);
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
core_initcall(mcfgpio_sysinit);
 | 
					core_initcall(mcfgpio_sysinit);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-amiga"
 | 
					CONFIG_LOCALVERSION="-amiga"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -64,7 +63,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -285,7 +283,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -359,6 +359,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -452,6 +453,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -468,6 +470,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -549,6 +552,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -557,7 +561,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -565,12 +568,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -594,7 +594,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-apollo"
 | 
					CONFIG_LOCALVERSION="-apollo"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -62,7 +61,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -283,7 +281,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -341,6 +341,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -411,6 +412,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -427,6 +429,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -508,6 +511,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -516,7 +520,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -524,12 +527,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -553,7 +553,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-atari"
 | 
					CONFIG_LOCALVERSION="-atari"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -62,7 +61,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -283,7 +281,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -350,6 +350,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -432,6 +433,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -448,6 +450,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -529,6 +532,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -537,7 +541,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -545,12 +548,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -574,7 +574,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-bvme6000"
 | 
					CONFIG_LOCALVERSION="-bvme6000"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -60,7 +59,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -281,7 +279,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -340,6 +340,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -403,6 +404,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -419,6 +421,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -500,6 +503,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -508,7 +512,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -516,12 +519,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -545,7 +545,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-hp300"
 | 
					CONFIG_LOCALVERSION="-hp300"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -62,7 +61,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -283,7 +281,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -341,6 +341,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -413,6 +414,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -429,6 +431,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -510,6 +513,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -518,7 +522,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -526,12 +529,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -555,7 +555,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-mac"
 | 
					CONFIG_LOCALVERSION="-mac"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -61,7 +60,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -285,7 +283,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -357,6 +357,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -435,6 +436,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -451,6 +453,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -532,6 +535,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -540,7 +544,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -548,12 +551,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -577,7 +577,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-multi"
 | 
					CONFIG_LOCALVERSION="-multi"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -71,7 +70,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -295,7 +293,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -390,6 +390,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -515,6 +516,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -531,6 +533,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -612,6 +615,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -620,7 +624,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -628,12 +631,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -657,7 +657,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-mvme147"
 | 
					CONFIG_LOCALVERSION="-mvme147"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -59,7 +58,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -280,7 +278,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -339,6 +339,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -403,6 +404,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -419,6 +421,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -500,6 +503,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -508,7 +512,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -516,12 +519,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -545,7 +545,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-mvme16x"
 | 
					CONFIG_LOCALVERSION="-mvme16x"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -60,7 +59,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -281,7 +279,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -340,6 +340,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -403,6 +404,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -419,6 +421,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -500,6 +503,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -508,7 +512,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -516,12 +519,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -545,7 +545,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-q40"
 | 
					CONFIG_LOCALVERSION="-q40"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -60,7 +59,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -281,7 +279,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -346,6 +346,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -426,6 +427,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -442,6 +444,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -523,6 +526,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -531,7 +535,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -539,12 +542,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -568,7 +568,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-sun3"
 | 
					CONFIG_LOCALVERSION="-sun3"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -57,7 +56,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -278,7 +276,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -337,6 +337,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -405,6 +406,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -421,6 +423,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -502,6 +505,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -509,7 +513,6 @@ CONFIG_TEST_BPF=m
 | 
				
			||||||
CONFIG_TEST_FIRMWARE=m
 | 
					CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -517,12 +520,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -546,7 +546,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
CONFIG_LOCALVERSION="-sun3x"
 | 
					CONFIG_LOCALVERSION="-sun3x"
 | 
				
			||||||
CONFIG_SYSVIPC=y
 | 
					CONFIG_SYSVIPC=y
 | 
				
			||||||
CONFIG_POSIX_MQUEUE=y
 | 
					CONFIG_POSIX_MQUEUE=y
 | 
				
			||||||
CONFIG_FHANDLE=y
 | 
					 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT=y
 | 
					CONFIG_BSD_PROCESS_ACCT=y
 | 
				
			||||||
CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
					CONFIG_BSD_PROCESS_ACCT_V3=y
 | 
				
			||||||
CONFIG_LOG_BUF_SHIFT=16
 | 
					CONFIG_LOG_BUF_SHIFT=16
 | 
				
			||||||
| 
						 | 
					@ -57,7 +56,6 @@ CONFIG_INET_IPCOMP=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
					CONFIG_INET_XFRM_MODE_TRANSPORT=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
					CONFIG_INET_XFRM_MODE_TUNNEL=m
 | 
				
			||||||
CONFIG_INET_XFRM_MODE_BEET=m
 | 
					CONFIG_INET_XFRM_MODE_BEET=m
 | 
				
			||||||
# CONFIG_INET_LRO is not set
 | 
					 | 
				
			||||||
CONFIG_INET_DIAG=m
 | 
					CONFIG_INET_DIAG=m
 | 
				
			||||||
CONFIG_INET_UDP_DIAG=m
 | 
					CONFIG_INET_UDP_DIAG=m
 | 
				
			||||||
CONFIG_IPV6=m
 | 
					CONFIG_IPV6=m
 | 
				
			||||||
| 
						 | 
					@ -278,7 +276,9 @@ CONFIG_NET_MPLS_GSO=m
 | 
				
			||||||
CONFIG_MPLS_ROUTING=m
 | 
					CONFIG_MPLS_ROUTING=m
 | 
				
			||||||
CONFIG_MPLS_IPTUNNEL=m
 | 
					CONFIG_MPLS_IPTUNNEL=m
 | 
				
			||||||
CONFIG_NET_L3_MASTER_DEV=y
 | 
					CONFIG_NET_L3_MASTER_DEV=y
 | 
				
			||||||
 | 
					CONFIG_AF_KCM=m
 | 
				
			||||||
# CONFIG_WIRELESS is not set
 | 
					# CONFIG_WIRELESS is not set
 | 
				
			||||||
 | 
					CONFIG_NET_DEVLINK=m
 | 
				
			||||||
# CONFIG_UEVENT_HELPER is not set
 | 
					# CONFIG_UEVENT_HELPER is not set
 | 
				
			||||||
CONFIG_DEVTMPFS=y
 | 
					CONFIG_DEVTMPFS=y
 | 
				
			||||||
CONFIG_DEVTMPFS_MOUNT=y
 | 
					CONFIG_DEVTMPFS_MOUNT=y
 | 
				
			||||||
| 
						 | 
					@ -337,6 +337,7 @@ CONFIG_MACVTAP=m
 | 
				
			||||||
CONFIG_IPVLAN=m
 | 
					CONFIG_IPVLAN=m
 | 
				
			||||||
CONFIG_VXLAN=m
 | 
					CONFIG_VXLAN=m
 | 
				
			||||||
CONFIG_GENEVE=m
 | 
					CONFIG_GENEVE=m
 | 
				
			||||||
 | 
					CONFIG_MACSEC=m
 | 
				
			||||||
CONFIG_NETCONSOLE=m
 | 
					CONFIG_NETCONSOLE=m
 | 
				
			||||||
CONFIG_NETCONSOLE_DYNAMIC=y
 | 
					CONFIG_NETCONSOLE_DYNAMIC=y
 | 
				
			||||||
CONFIG_VETH=m
 | 
					CONFIG_VETH=m
 | 
				
			||||||
| 
						 | 
					@ -405,6 +406,7 @@ CONFIG_JFS_FS=m
 | 
				
			||||||
CONFIG_XFS_FS=m
 | 
					CONFIG_XFS_FS=m
 | 
				
			||||||
CONFIG_OCFS2_FS=m
 | 
					CONFIG_OCFS2_FS=m
 | 
				
			||||||
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
					# CONFIG_OCFS2_DEBUG_MASKLOG is not set
 | 
				
			||||||
 | 
					CONFIG_FS_ENCRYPTION=m
 | 
				
			||||||
CONFIG_FANOTIFY=y
 | 
					CONFIG_FANOTIFY=y
 | 
				
			||||||
CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
					CONFIG_QUOTA_NETLINK_INTERFACE=y
 | 
				
			||||||
# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
					# CONFIG_PRINT_QUOTA_WARNING is not set
 | 
				
			||||||
| 
						 | 
					@ -421,6 +423,7 @@ CONFIG_VFAT_FS=m
 | 
				
			||||||
CONFIG_PROC_KCORE=y
 | 
					CONFIG_PROC_KCORE=y
 | 
				
			||||||
CONFIG_PROC_CHILDREN=y
 | 
					CONFIG_PROC_CHILDREN=y
 | 
				
			||||||
CONFIG_TMPFS=y
 | 
					CONFIG_TMPFS=y
 | 
				
			||||||
 | 
					CONFIG_ORANGEFS_FS=m
 | 
				
			||||||
CONFIG_AFFS_FS=m
 | 
					CONFIG_AFFS_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS=m
 | 
					CONFIG_ECRYPT_FS=m
 | 
				
			||||||
CONFIG_ECRYPT_FS_MESSAGING=y
 | 
					CONFIG_ECRYPT_FS_MESSAGING=y
 | 
				
			||||||
| 
						 | 
					@ -502,6 +505,7 @@ CONFIG_TEST_HEXDUMP=m
 | 
				
			||||||
CONFIG_TEST_STRING_HELPERS=m
 | 
					CONFIG_TEST_STRING_HELPERS=m
 | 
				
			||||||
CONFIG_TEST_KSTRTOX=m
 | 
					CONFIG_TEST_KSTRTOX=m
 | 
				
			||||||
CONFIG_TEST_PRINTF=m
 | 
					CONFIG_TEST_PRINTF=m
 | 
				
			||||||
 | 
					CONFIG_TEST_BITMAP=m
 | 
				
			||||||
CONFIG_TEST_RHASHTABLE=m
 | 
					CONFIG_TEST_RHASHTABLE=m
 | 
				
			||||||
CONFIG_TEST_LKM=m
 | 
					CONFIG_TEST_LKM=m
 | 
				
			||||||
CONFIG_TEST_USER_COPY=m
 | 
					CONFIG_TEST_USER_COPY=m
 | 
				
			||||||
| 
						 | 
					@ -510,7 +514,6 @@ CONFIG_TEST_FIRMWARE=m
 | 
				
			||||||
CONFIG_TEST_UDELAY=m
 | 
					CONFIG_TEST_UDELAY=m
 | 
				
			||||||
CONFIG_TEST_STATIC_KEYS=m
 | 
					CONFIG_TEST_STATIC_KEYS=m
 | 
				
			||||||
CONFIG_EARLY_PRINTK=y
 | 
					CONFIG_EARLY_PRINTK=y
 | 
				
			||||||
CONFIG_ENCRYPTED_KEYS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_RSA=m
 | 
					CONFIG_CRYPTO_RSA=m
 | 
				
			||||||
CONFIG_CRYPTO_MANAGER=y
 | 
					CONFIG_CRYPTO_MANAGER=y
 | 
				
			||||||
CONFIG_CRYPTO_USER=m
 | 
					CONFIG_CRYPTO_USER=m
 | 
				
			||||||
| 
						 | 
					@ -518,12 +521,9 @@ CONFIG_CRYPTO_CRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_MCRYPTD=m
 | 
					CONFIG_CRYPTO_MCRYPTD=m
 | 
				
			||||||
CONFIG_CRYPTO_TEST=m
 | 
					CONFIG_CRYPTO_TEST=m
 | 
				
			||||||
CONFIG_CRYPTO_CCM=m
 | 
					CONFIG_CRYPTO_CCM=m
 | 
				
			||||||
CONFIG_CRYPTO_GCM=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
					CONFIG_CRYPTO_CHACHA20POLY1305=m
 | 
				
			||||||
CONFIG_CRYPTO_CTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LRW=m
 | 
					CONFIG_CRYPTO_LRW=m
 | 
				
			||||||
CONFIG_CRYPTO_PCBC=m
 | 
					CONFIG_CRYPTO_PCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_XTS=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_KEYWRAP=m
 | 
					CONFIG_CRYPTO_KEYWRAP=m
 | 
				
			||||||
CONFIG_CRYPTO_XCBC=m
 | 
					CONFIG_CRYPTO_XCBC=m
 | 
				
			||||||
CONFIG_CRYPTO_VMAC=m
 | 
					CONFIG_CRYPTO_VMAC=m
 | 
				
			||||||
| 
						 | 
					@ -547,7 +547,6 @@ CONFIG_CRYPTO_SEED=m
 | 
				
			||||||
CONFIG_CRYPTO_SERPENT=m
 | 
					CONFIG_CRYPTO_SERPENT=m
 | 
				
			||||||
CONFIG_CRYPTO_TEA=m
 | 
					CONFIG_CRYPTO_TEA=m
 | 
				
			||||||
CONFIG_CRYPTO_TWOFISH=m
 | 
					CONFIG_CRYPTO_TWOFISH=m
 | 
				
			||||||
CONFIG_CRYPTO_ZLIB=m
 | 
					 | 
				
			||||||
CONFIG_CRYPTO_LZO=m
 | 
					CONFIG_CRYPTO_LZO=m
 | 
				
			||||||
CONFIG_CRYPTO_842=m
 | 
					CONFIG_CRYPTO_842=m
 | 
				
			||||||
CONFIG_CRYPTO_LZ4=m
 | 
					CONFIG_CRYPTO_LZ4=m
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,7 +4,7 @@
 | 
				
			||||||
#include <uapi/asm/unistd.h>
 | 
					#include <uapi/asm/unistd.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define NR_syscalls		377
 | 
					#define NR_syscalls		379
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define __ARCH_WANT_OLD_READDIR
 | 
					#define __ARCH_WANT_OLD_READDIR
 | 
				
			||||||
#define __ARCH_WANT_OLD_STAT
 | 
					#define __ARCH_WANT_OLD_STAT
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -382,5 +382,7 @@
 | 
				
			||||||
#define __NR_membarrier		374
 | 
					#define __NR_membarrier		374
 | 
				
			||||||
#define __NR_mlock2		375
 | 
					#define __NR_mlock2		375
 | 
				
			||||||
#define __NR_copy_file_range	376
 | 
					#define __NR_copy_file_range	376
 | 
				
			||||||
 | 
					#define __NR_preadv2		377
 | 
				
			||||||
 | 
					#define __NR_pwritev2		378
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif /* _UAPI_ASM_M68K_UNISTD_H_ */
 | 
					#endif /* _UAPI_ASM_M68K_UNISTD_H_ */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -397,3 +397,5 @@ ENTRY(sys_call_table)
 | 
				
			||||||
	.long sys_membarrier
 | 
						.long sys_membarrier
 | 
				
			||||||
	.long sys_mlock2		/* 375 */
 | 
						.long sys_mlock2		/* 375 */
 | 
				
			||||||
	.long sys_copy_file_range
 | 
						.long sys_copy_file_range
 | 
				
			||||||
 | 
						.long sys_preadv2
 | 
				
			||||||
 | 
						.long sys_pwritev2
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,8 +4,8 @@ config PARISC
 | 
				
			||||||
	select ARCH_MIGHT_HAVE_PC_PARPORT
 | 
						select ARCH_MIGHT_HAVE_PC_PARPORT
 | 
				
			||||||
	select HAVE_IDE
 | 
						select HAVE_IDE
 | 
				
			||||||
	select HAVE_OPROFILE
 | 
						select HAVE_OPROFILE
 | 
				
			||||||
	select HAVE_FUNCTION_TRACER if 64BIT
 | 
						select HAVE_FUNCTION_TRACER
 | 
				
			||||||
	select HAVE_FUNCTION_GRAPH_TRACER if 64BIT
 | 
						select HAVE_FUNCTION_GRAPH_TRACER
 | 
				
			||||||
	select ARCH_WANT_FRAME_POINTERS
 | 
						select ARCH_WANT_FRAME_POINTERS
 | 
				
			||||||
	select RTC_CLASS
 | 
						select RTC_CLASS
 | 
				
			||||||
	select RTC_DRV_GENERIC
 | 
						select RTC_DRV_GENERIC
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,9 +2,13 @@ menu "Kernel hacking"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
source "lib/Kconfig.debug"
 | 
					source "lib/Kconfig.debug"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config TRACE_IRQFLAGS_SUPPORT
 | 
				
			||||||
 | 
						def_bool y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config DEBUG_RODATA
 | 
					config DEBUG_RODATA
 | 
				
			||||||
       bool "Write protect kernel read-only data structures"
 | 
					       bool "Write protect kernel read-only data structures"
 | 
				
			||||||
       depends on DEBUG_KERNEL
 | 
					       depends on DEBUG_KERNEL
 | 
				
			||||||
 | 
					       default y
 | 
				
			||||||
       help
 | 
					       help
 | 
				
			||||||
         Mark the kernel read-only data as write-protected in the pagetables,
 | 
					         Mark the kernel read-only data as write-protected in the pagetables,
 | 
				
			||||||
         in order to catch accidental (and incorrect) writes to such const
 | 
					         in order to catch accidental (and incorrect) writes to such const
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -62,9 +62,7 @@ cflags-y	+= -mdisable-fpregs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Without this, "ld -r" results in .text sections that are too big
 | 
					# Without this, "ld -r" results in .text sections that are too big
 | 
				
			||||||
# (> 0x40000) for branches to reach stubs.
 | 
					# (> 0x40000) for branches to reach stubs.
 | 
				
			||||||
ifndef CONFIG_FUNCTION_TRACER
 | 
					cflags-y	+= -ffunction-sections
 | 
				
			||||||
  cflags-y	+= -ffunction-sections
 | 
					 | 
				
			||||||
endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Use long jumps instead of long branches (needed if your linker fails to
 | 
					# Use long jumps instead of long branches (needed if your linker fails to
 | 
				
			||||||
# link a too big vmlinux executable). Not enabled for building modules.
 | 
					# link a too big vmlinux executable). Not enabled for building modules.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,23 +4,7 @@
 | 
				
			||||||
#ifndef __ASSEMBLY__
 | 
					#ifndef __ASSEMBLY__
 | 
				
			||||||
extern void mcount(void);
 | 
					extern void mcount(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					#define MCOUNT_INSN_SIZE 4
 | 
				
			||||||
 * Stack of return addresses for functions of a thread.
 | 
					 | 
				
			||||||
 * Used in struct thread_info
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
struct ftrace_ret_stack {
 | 
					 | 
				
			||||||
	unsigned long ret;
 | 
					 | 
				
			||||||
	unsigned long func;
 | 
					 | 
				
			||||||
	unsigned long long calltime;
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 * Primary handler of a function return.
 | 
					 | 
				
			||||||
 * It relays on ftrace_return_to_handler.
 | 
					 | 
				
			||||||
 * Defined in entry.S
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
extern void return_to_handler(void);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
extern unsigned long return_address(unsigned int);
 | 
					extern unsigned long return_address(unsigned int);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,20 +44,18 @@ static inline long access_ok(int type, const void __user * addr,
 | 
				
			||||||
#define LDD_USER(ptr)		BUILD_BUG()
 | 
					#define LDD_USER(ptr)		BUILD_BUG()
 | 
				
			||||||
#define STD_KERNEL(x, ptr)	__put_kernel_asm64(x, ptr)
 | 
					#define STD_KERNEL(x, ptr)	__put_kernel_asm64(x, ptr)
 | 
				
			||||||
#define STD_USER(x, ptr)	__put_user_asm64(x, ptr)
 | 
					#define STD_USER(x, ptr)	__put_user_asm64(x, ptr)
 | 
				
			||||||
#define ASM_WORD_INSN		".word\t"
 | 
					 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
#define LDD_KERNEL(ptr)		__get_kernel_asm("ldd", ptr)
 | 
					#define LDD_KERNEL(ptr)		__get_kernel_asm("ldd", ptr)
 | 
				
			||||||
#define LDD_USER(ptr)		__get_user_asm("ldd", ptr)
 | 
					#define LDD_USER(ptr)		__get_user_asm("ldd", ptr)
 | 
				
			||||||
#define STD_KERNEL(x, ptr)	__put_kernel_asm("std", x, ptr)
 | 
					#define STD_KERNEL(x, ptr)	__put_kernel_asm("std", x, ptr)
 | 
				
			||||||
#define STD_USER(x, ptr)	__put_user_asm("std", x, ptr)
 | 
					#define STD_USER(x, ptr)	__put_user_asm("std", x, ptr)
 | 
				
			||||||
#define ASM_WORD_INSN		".dword\t"
 | 
					 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * The exception table contains two values: the first is an address
 | 
					 * The exception table contains two values: the first is the relative offset to
 | 
				
			||||||
 * for an instruction that is allowed to fault, and the second is
 | 
					 * the address of the instruction that is allowed to fault, and the second is
 | 
				
			||||||
 * the address to the fixup routine. Even on a 64bit kernel we could
 | 
					 * the relative offset to the address of the fixup routine. Since relative
 | 
				
			||||||
 * use a 32bit (unsigned int) address here.
 | 
					 * addresses are used, 32bit values are sufficient even on 64bit kernel.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define ARCH_HAS_RELATIVE_EXTABLE
 | 
					#define ARCH_HAS_RELATIVE_EXTABLE
 | 
				
			||||||
| 
						 | 
					@ -77,6 +75,7 @@ struct exception_table_entry {
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
struct exception_data {
 | 
					struct exception_data {
 | 
				
			||||||
	unsigned long fault_ip;
 | 
						unsigned long fault_ip;
 | 
				
			||||||
 | 
						unsigned long fault_gp;
 | 
				
			||||||
	unsigned long fault_space;
 | 
						unsigned long fault_space;
 | 
				
			||||||
	unsigned long fault_addr;
 | 
						unsigned long fault_addr;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -15,11 +15,7 @@ ifdef CONFIG_FUNCTION_TRACER
 | 
				
			||||||
# Do not profile debug and lowlevel utilities
 | 
					# Do not profile debug and lowlevel utilities
 | 
				
			||||||
CFLAGS_REMOVE_ftrace.o = -pg
 | 
					CFLAGS_REMOVE_ftrace.o = -pg
 | 
				
			||||||
CFLAGS_REMOVE_cache.o = -pg
 | 
					CFLAGS_REMOVE_cache.o = -pg
 | 
				
			||||||
CFLAGS_REMOVE_irq.o = -pg
 | 
					 | 
				
			||||||
CFLAGS_REMOVE_pacache.o = -pg
 | 
					 | 
				
			||||||
CFLAGS_REMOVE_perf.o = -pg
 | 
					CFLAGS_REMOVE_perf.o = -pg
 | 
				
			||||||
CFLAGS_REMOVE_traps.o = -pg
 | 
					 | 
				
			||||||
CFLAGS_REMOVE_unaligned.o = -pg
 | 
					 | 
				
			||||||
CFLAGS_REMOVE_unwind.o = -pg
 | 
					CFLAGS_REMOVE_unwind.o = -pg
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -299,6 +299,7 @@ int main(void)
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
	BLANK();
 | 
						BLANK();
 | 
				
			||||||
	DEFINE(EXCDATA_IP, offsetof(struct exception_data, fault_ip));
 | 
						DEFINE(EXCDATA_IP, offsetof(struct exception_data, fault_ip));
 | 
				
			||||||
 | 
						DEFINE(EXCDATA_GP, offsetof(struct exception_data, fault_gp));
 | 
				
			||||||
	DEFINE(EXCDATA_SPACE, offsetof(struct exception_data, fault_space));
 | 
						DEFINE(EXCDATA_SPACE, offsetof(struct exception_data, fault_space));
 | 
				
			||||||
	DEFINE(EXCDATA_ADDR, offsetof(struct exception_data, fault_addr));
 | 
						DEFINE(EXCDATA_ADDR, offsetof(struct exception_data, fault_addr));
 | 
				
			||||||
	BLANK();
 | 
						BLANK();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1970,43 +1970,98 @@ pt_regs_ok:
 | 
				
			||||||
	b	intr_restore
 | 
						b	intr_restore
 | 
				
			||||||
	copy	%r25,%r16
 | 
						copy	%r25,%r16
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	.import schedule,code
 | 
					 | 
				
			||||||
syscall_do_resched:
 | 
					syscall_do_resched:
 | 
				
			||||||
	BL	schedule,%r2
 | 
						load32	syscall_check_resched,%r2 /* if resched, we start over again */
 | 
				
			||||||
 | 
						load32	schedule,%r19
 | 
				
			||||||
 | 
						bv	%r0(%r19)		/* jumps to schedule() */
 | 
				
			||||||
#ifdef CONFIG_64BIT
 | 
					#ifdef CONFIG_64BIT
 | 
				
			||||||
	ldo	-16(%r30),%r29		/* Reference param save area */
 | 
						ldo	-16(%r30),%r29		/* Reference param save area */
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
	nop
 | 
						nop
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
	b	syscall_check_resched	/* if resched, we start over again */
 | 
					 | 
				
			||||||
	nop
 | 
					 | 
				
			||||||
ENDPROC(syscall_exit)
 | 
					ENDPROC(syscall_exit)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_FUNCTION_TRACER
 | 
					#ifdef CONFIG_FUNCTION_TRACER
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	.import ftrace_function_trampoline,code
 | 
						.import ftrace_function_trampoline,code
 | 
				
			||||||
ENTRY(_mcount)
 | 
						.align L1_CACHE_BYTES
 | 
				
			||||||
	copy	%r3, %arg2
 | 
						.globl mcount
 | 
				
			||||||
 | 
						.type  mcount, @function
 | 
				
			||||||
 | 
					ENTRY(mcount)
 | 
				
			||||||
 | 
					_mcount:
 | 
				
			||||||
 | 
						.export _mcount,data
 | 
				
			||||||
 | 
						.proc
 | 
				
			||||||
 | 
						.callinfo caller,frame=0
 | 
				
			||||||
 | 
						.entry
 | 
				
			||||||
 | 
						/*
 | 
				
			||||||
 | 
						 * The 64bit mcount() function pointer needs 4 dwords, of which the
 | 
				
			||||||
 | 
						 * first two are free.  We optimize it here and put 2 instructions for
 | 
				
			||||||
 | 
						 * calling mcount(), and 2 instructions for ftrace_stub().  That way we
 | 
				
			||||||
 | 
						 * have all on one L1 cacheline.
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
	b	ftrace_function_trampoline
 | 
						b	ftrace_function_trampoline
 | 
				
			||||||
	nop
 | 
						copy	%r3, %arg2	/* caller original %sp */
 | 
				
			||||||
ENDPROC(_mcount)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
ENTRY(return_to_handler)
 | 
					 | 
				
			||||||
	load32	return_trampoline, %rp
 | 
					 | 
				
			||||||
	copy	%ret0, %arg0
 | 
					 | 
				
			||||||
	copy	%ret1, %arg1
 | 
					 | 
				
			||||||
	b	ftrace_return_to_handler
 | 
					 | 
				
			||||||
	nop
 | 
					 | 
				
			||||||
return_trampoline:
 | 
					 | 
				
			||||||
	copy	%ret0, %rp
 | 
					 | 
				
			||||||
	copy	%r23, %ret0
 | 
					 | 
				
			||||||
	copy	%r24, %ret1
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.globl ftrace_stub
 | 
					 | 
				
			||||||
ftrace_stub:
 | 
					ftrace_stub:
 | 
				
			||||||
 | 
						.globl ftrace_stub
 | 
				
			||||||
 | 
					        .type  ftrace_stub, @function
 | 
				
			||||||
 | 
					#ifdef CONFIG_64BIT
 | 
				
			||||||
 | 
						bve	(%rp)
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
	bv	%r0(%rp)
 | 
						bv	%r0(%rp)
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
	nop
 | 
						nop
 | 
				
			||||||
 | 
					#ifdef CONFIG_64BIT
 | 
				
			||||||
 | 
						.dword mcount
 | 
				
			||||||
 | 
						.dword 0 /* code in head.S puts value of global gp here */
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
						.exit
 | 
				
			||||||
 | 
						.procend
 | 
				
			||||||
 | 
					ENDPROC(mcount)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						.align 8
 | 
				
			||||||
 | 
						.globl return_to_handler
 | 
				
			||||||
 | 
						.type  return_to_handler, @function
 | 
				
			||||||
 | 
					ENTRY(return_to_handler)
 | 
				
			||||||
 | 
						.proc
 | 
				
			||||||
 | 
						.callinfo caller,frame=FRAME_SIZE
 | 
				
			||||||
 | 
						.entry
 | 
				
			||||||
 | 
						.export parisc_return_to_handler,data
 | 
				
			||||||
 | 
					parisc_return_to_handler:
 | 
				
			||||||
 | 
						copy %r3,%r1
 | 
				
			||||||
 | 
						STREG %r0,-RP_OFFSET(%sp)	/* store 0 as %rp */
 | 
				
			||||||
 | 
						copy %sp,%r3
 | 
				
			||||||
 | 
						STREGM %r1,FRAME_SIZE(%sp)
 | 
				
			||||||
 | 
						STREG %ret0,8(%r3)
 | 
				
			||||||
 | 
						STREG %ret1,16(%r3)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef CONFIG_64BIT
 | 
				
			||||||
 | 
						loadgp
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* call ftrace_return_to_handler(0) */
 | 
				
			||||||
 | 
					#ifdef CONFIG_64BIT
 | 
				
			||||||
 | 
						ldo -16(%sp),%ret1		/* Reference param save area */
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
						BL ftrace_return_to_handler,%r2
 | 
				
			||||||
 | 
						ldi 0,%r26
 | 
				
			||||||
 | 
						copy %ret0,%rp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* restore original return values */
 | 
				
			||||||
 | 
						LDREG 8(%r3),%ret0
 | 
				
			||||||
 | 
						LDREG 16(%r3),%ret1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* return from function */
 | 
				
			||||||
 | 
					#ifdef CONFIG_64BIT
 | 
				
			||||||
 | 
						bve	(%rp)
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
						bv	%r0(%rp)
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
						LDREGM -FRAME_SIZE(%sp),%r3
 | 
				
			||||||
 | 
						.exit
 | 
				
			||||||
 | 
						.procend
 | 
				
			||||||
ENDPROC(return_to_handler)
 | 
					ENDPROC(return_to_handler)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif	/* CONFIG_FUNCTION_TRACER */
 | 
					#endif	/* CONFIG_FUNCTION_TRACER */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_IRQSTACKS
 | 
					#ifdef CONFIG_IRQSTACKS
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,6 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * Code for tracing calls in Linux kernel.
 | 
					 * Code for tracing calls in Linux kernel.
 | 
				
			||||||
 * Copyright (C) 2009 Helge Deller <deller@gmx.de>
 | 
					 * Copyright (C) 2009-2016 Helge Deller <deller@gmx.de>
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * based on code for x86 which is:
 | 
					 * based on code for x86 which is:
 | 
				
			||||||
 * Copyright (C) 2007-2008 Steven Rostedt <srostedt@redhat.com>
 | 
					 * Copyright (C) 2007-2008 Steven Rostedt <srostedt@redhat.com>
 | 
				
			||||||
| 
						 | 
					@ -13,104 +13,21 @@
 | 
				
			||||||
#include <linux/init.h>
 | 
					#include <linux/init.h>
 | 
				
			||||||
#include <linux/ftrace.h>
 | 
					#include <linux/ftrace.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <asm/assembly.h>
 | 
				
			||||||
#include <asm/sections.h>
 | 
					#include <asm/sections.h>
 | 
				
			||||||
#include <asm/ftrace.h>
 | 
					#include <asm/ftrace.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
 | 
					#ifdef CONFIG_FUNCTION_GRAPH_TRACER
 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Add a function return address to the trace stack on thread info.*/
 | 
					 | 
				
			||||||
static int push_return_trace(unsigned long ret, unsigned long long time,
 | 
					 | 
				
			||||||
				unsigned long func, int *depth)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	int index;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (!current->ret_stack)
 | 
					 | 
				
			||||||
		return -EBUSY;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	/* The return trace stack is full */
 | 
					 | 
				
			||||||
	if (current->curr_ret_stack == FTRACE_RETFUNC_DEPTH - 1) {
 | 
					 | 
				
			||||||
		atomic_inc(¤t->trace_overrun);
 | 
					 | 
				
			||||||
		return -EBUSY;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	index = ++current->curr_ret_stack;
 | 
					 | 
				
			||||||
	barrier();
 | 
					 | 
				
			||||||
	current->ret_stack[index].ret = ret;
 | 
					 | 
				
			||||||
	current->ret_stack[index].func = func;
 | 
					 | 
				
			||||||
	current->ret_stack[index].calltime = time;
 | 
					 | 
				
			||||||
	*depth = index;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return 0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Retrieve a function return address to the trace stack on thread info.*/
 | 
					 | 
				
			||||||
static void pop_return_trace(struct ftrace_graph_ret *trace, unsigned long *ret)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	int index;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	index = current->curr_ret_stack;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (unlikely(index < 0)) {
 | 
					 | 
				
			||||||
		ftrace_graph_stop();
 | 
					 | 
				
			||||||
		WARN_ON(1);
 | 
					 | 
				
			||||||
		/* Might as well panic, otherwise we have no where to go */
 | 
					 | 
				
			||||||
		*ret = (unsigned long)
 | 
					 | 
				
			||||||
			dereference_function_descriptor(&panic);
 | 
					 | 
				
			||||||
		return;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	*ret = current->ret_stack[index].ret;
 | 
					 | 
				
			||||||
	trace->func = current->ret_stack[index].func;
 | 
					 | 
				
			||||||
	trace->calltime = current->ret_stack[index].calltime;
 | 
					 | 
				
			||||||
	trace->overrun = atomic_read(¤t->trace_overrun);
 | 
					 | 
				
			||||||
	trace->depth = index;
 | 
					 | 
				
			||||||
	barrier();
 | 
					 | 
				
			||||||
	current->curr_ret_stack--;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 * Send the trace to the ring-buffer.
 | 
					 | 
				
			||||||
 * @return the original return address.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
unsigned long ftrace_return_to_handler(unsigned long retval0,
 | 
					 | 
				
			||||||
				       unsigned long retval1)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	struct ftrace_graph_ret trace;
 | 
					 | 
				
			||||||
	unsigned long ret;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	pop_return_trace(&trace, &ret);
 | 
					 | 
				
			||||||
	trace.rettime = local_clock();
 | 
					 | 
				
			||||||
	ftrace_graph_return(&trace);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (unlikely(!ret)) {
 | 
					 | 
				
			||||||
		ftrace_graph_stop();
 | 
					 | 
				
			||||||
		WARN_ON(1);
 | 
					 | 
				
			||||||
		/* Might as well panic. What else to do? */
 | 
					 | 
				
			||||||
		ret = (unsigned long)
 | 
					 | 
				
			||||||
			dereference_function_descriptor(&panic);
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	/* HACK: we hand over the old functions' return values
 | 
					 | 
				
			||||||
	   in %r23 and %r24. Assembly in entry.S will take care
 | 
					 | 
				
			||||||
	   and move those to their final registers %ret0 and %ret1 */
 | 
					 | 
				
			||||||
	asm( "copy %0, %%r23 \n\t"
 | 
					 | 
				
			||||||
	     "copy %1, %%r24 \n" : : "r" (retval0), "r" (retval1) );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return ret;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * Hook the return address and push it in the stack of return addrs
 | 
					 * Hook the return address and push it in the stack of return addrs
 | 
				
			||||||
 * in current thread info.
 | 
					 * in current thread info.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr)
 | 
					static void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	unsigned long old;
 | 
						unsigned long old;
 | 
				
			||||||
	unsigned long long calltime;
 | 
					 | 
				
			||||||
	struct ftrace_graph_ent trace;
 | 
						struct ftrace_graph_ent trace;
 | 
				
			||||||
 | 
						extern int parisc_return_to_handler;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (unlikely(ftrace_graph_is_dead()))
 | 
						if (unlikely(ftrace_graph_is_dead()))
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
| 
						 | 
					@ -119,60 +36,43 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr)
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	old = *parent;
 | 
						old = *parent;
 | 
				
			||||||
	*parent = (unsigned long)
 | 
					 | 
				
			||||||
		  dereference_function_descriptor(&return_to_handler);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (unlikely(!__kernel_text_address(old))) {
 | 
					 | 
				
			||||||
		ftrace_graph_stop();
 | 
					 | 
				
			||||||
		*parent = old;
 | 
					 | 
				
			||||||
		WARN_ON(1);
 | 
					 | 
				
			||||||
		return;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	calltime = local_clock();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (push_return_trace(old, calltime,
 | 
					 | 
				
			||||||
				self_addr, &trace.depth) == -EBUSY) {
 | 
					 | 
				
			||||||
		*parent = old;
 | 
					 | 
				
			||||||
		return;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	trace.func = self_addr;
 | 
						trace.func = self_addr;
 | 
				
			||||||
 | 
						trace.depth = current->curr_ret_stack + 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* Only trace if the calling function expects to */
 | 
						/* Only trace if the calling function expects to */
 | 
				
			||||||
	if (!ftrace_graph_entry(&trace)) {
 | 
						if (!ftrace_graph_entry(&trace))
 | 
				
			||||||
		current->curr_ret_stack--;
 | 
							return;
 | 
				
			||||||
		*parent = old;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (ftrace_push_return_trace(old, self_addr, &trace.depth,
 | 
				
			||||||
 | 
								0 ) == -EBUSY)
 | 
				
			||||||
 | 
					                return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* activate parisc_return_to_handler() as return point */
 | 
				
			||||||
 | 
						*parent = (unsigned long) &parisc_return_to_handler;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
#endif /* CONFIG_FUNCTION_GRAPH_TRACER */
 | 
					#endif /* CONFIG_FUNCTION_GRAPH_TRACER */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void notrace ftrace_function_trampoline(unsigned long parent,
 | 
				
			||||||
void ftrace_function_trampoline(unsigned long parent,
 | 
					 | 
				
			||||||
				unsigned long self_addr,
 | 
									unsigned long self_addr,
 | 
				
			||||||
				unsigned long org_sp_gr3)
 | 
									unsigned long org_sp_gr3)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	extern ftrace_func_t ftrace_trace_function;
 | 
						extern ftrace_func_t ftrace_trace_function;  /* depends on CONFIG_DYNAMIC_FTRACE */
 | 
				
			||||||
 | 
						extern int ftrace_graph_entry_stub(struct ftrace_graph_ent *trace);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (ftrace_trace_function != ftrace_stub) {
 | 
						if (ftrace_trace_function != ftrace_stub) {
 | 
				
			||||||
		ftrace_trace_function(parent, self_addr);
 | 
							/* struct ftrace_ops *op, struct pt_regs *regs); */
 | 
				
			||||||
 | 
							ftrace_trace_function(parent, self_addr, NULL, NULL);
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
 | 
					#ifdef CONFIG_FUNCTION_GRAPH_TRACER
 | 
				
			||||||
	if (ftrace_graph_entry && ftrace_graph_return) {
 | 
						if (ftrace_graph_return != (trace_func_graph_ret_t) ftrace_stub ||
 | 
				
			||||||
		unsigned long sp;
 | 
							ftrace_graph_entry != ftrace_graph_entry_stub) {
 | 
				
			||||||
		unsigned long *parent_rp;
 | 
							unsigned long *parent_rp;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                asm volatile ("copy %%r30, %0" : "=r"(sp));
 | 
					 | 
				
			||||||
		/* sanity check: is stack pointer which we got from
 | 
					 | 
				
			||||||
		   assembler function in entry.S in a reasonable
 | 
					 | 
				
			||||||
		   range compared to current stack pointer? */
 | 
					 | 
				
			||||||
		if ((sp - org_sp_gr3) > 0x400)
 | 
					 | 
				
			||||||
			return;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		/* calculate pointer to %rp in stack */
 | 
							/* calculate pointer to %rp in stack */
 | 
				
			||||||
		parent_rp = (unsigned long *) org_sp_gr3 - 0x10;
 | 
							parent_rp = (unsigned long *) (org_sp_gr3 - RP_OFFSET);
 | 
				
			||||||
		/* sanity check: parent_rp should hold parent */
 | 
							/* sanity check: parent_rp should hold parent */
 | 
				
			||||||
		if (*parent_rp != parent)
 | 
							if (*parent_rp != parent)
 | 
				
			||||||
			return;
 | 
								return;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -129,6 +129,15 @@ $pgt_fill_loop:
 | 
				
			||||||
	/* And the stack pointer too */
 | 
						/* And the stack pointer too */
 | 
				
			||||||
	ldo             THREAD_SZ_ALGN(%r6),%sp
 | 
						ldo             THREAD_SZ_ALGN(%r6),%sp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if defined(CONFIG_64BIT) && defined(CONFIG_FUNCTION_TRACER)
 | 
				
			||||||
 | 
						.import _mcount,data
 | 
				
			||||||
 | 
						/* initialize mcount FPTR */
 | 
				
			||||||
 | 
						/* Get the global data pointer */
 | 
				
			||||||
 | 
						loadgp
 | 
				
			||||||
 | 
						load32		PA(_mcount), %r10
 | 
				
			||||||
 | 
						std		%dp,0x18(%r10)
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_SMP
 | 
					#ifdef CONFIG_SMP
 | 
				
			||||||
	/* Set the smp rendezvous address into page zero.
 | 
						/* Set the smp rendezvous address into page zero.
 | 
				
			||||||
	** It would be safer to do this in init_smp_config() but
 | 
						** It would be safer to do this in init_smp_config() but
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -660,6 +660,10 @@ int apply_relocate_add(Elf_Shdr *sechdrs,
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			*loc = (*loc & ~0x3ff1ffd) | reassemble_22(val);
 | 
								*loc = (*loc & ~0x3ff1ffd) | reassemble_22(val);
 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
 | 
							case R_PARISC_PCREL32:
 | 
				
			||||||
 | 
								/* 32-bit PC relative address */
 | 
				
			||||||
 | 
								*loc = val - dot - 8 + addend;
 | 
				
			||||||
 | 
								break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		default:
 | 
							default:
 | 
				
			||||||
			printk(KERN_ERR "module %s: Unknown relocation: %u\n",
 | 
								printk(KERN_ERR "module %s: Unknown relocation: %u\n",
 | 
				
			||||||
| 
						 | 
					@ -788,6 +792,10 @@ int apply_relocate_add(Elf_Shdr *sechdrs,
 | 
				
			||||||
			CHECK_RELOC(val, 22);
 | 
								CHECK_RELOC(val, 22);
 | 
				
			||||||
			*loc = (*loc & ~0x3ff1ffd) | reassemble_22(val);
 | 
								*loc = (*loc & ~0x3ff1ffd) | reassemble_22(val);
 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
 | 
							case R_PARISC_PCREL32:
 | 
				
			||||||
 | 
								/* 32-bit PC relative address */
 | 
				
			||||||
 | 
								*loc = val - dot - 8 + addend;
 | 
				
			||||||
 | 
								break;
 | 
				
			||||||
		case R_PARISC_DIR64:
 | 
							case R_PARISC_DIR64:
 | 
				
			||||||
			/* 64-bit effective address */
 | 
								/* 64-bit effective address */
 | 
				
			||||||
			*loc64 = val + addend;
 | 
								*loc64 = val + addend;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -47,11 +47,11 @@ EXPORT_SYMBOL(__cmpxchg_u64);
 | 
				
			||||||
EXPORT_SYMBOL(lclear_user);
 | 
					EXPORT_SYMBOL(lclear_user);
 | 
				
			||||||
EXPORT_SYMBOL(lstrnlen_user);
 | 
					EXPORT_SYMBOL(lstrnlen_user);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Global fixups */
 | 
					/* Global fixups - defined as int to avoid creation of function pointers */
 | 
				
			||||||
extern void fixup_get_user_skip_1(void);
 | 
					extern int fixup_get_user_skip_1;
 | 
				
			||||||
extern void fixup_get_user_skip_2(void);
 | 
					extern int fixup_get_user_skip_2;
 | 
				
			||||||
extern void fixup_put_user_skip_1(void);
 | 
					extern int fixup_put_user_skip_1;
 | 
				
			||||||
extern void fixup_put_user_skip_2(void);
 | 
					extern int fixup_put_user_skip_2;
 | 
				
			||||||
EXPORT_SYMBOL(fixup_get_user_skip_1);
 | 
					EXPORT_SYMBOL(fixup_get_user_skip_1);
 | 
				
			||||||
EXPORT_SYMBOL(fixup_get_user_skip_2);
 | 
					EXPORT_SYMBOL(fixup_get_user_skip_2);
 | 
				
			||||||
EXPORT_SYMBOL(fixup_put_user_skip_1);
 | 
					EXPORT_SYMBOL(fixup_put_user_skip_1);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -795,6 +795,9 @@ void notrace handle_interruption(int code, struct pt_regs *regs)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	    if (fault_space == 0 && !faulthandler_disabled())
 | 
						    if (fault_space == 0 && !faulthandler_disabled())
 | 
				
			||||||
	    {
 | 
						    {
 | 
				
			||||||
 | 
							/* Clean up and return if in exception table. */
 | 
				
			||||||
 | 
							if (fixup_exception(regs))
 | 
				
			||||||
 | 
								return;
 | 
				
			||||||
		pdc_chassis_send_status(PDC_CHASSIS_DIRECT_PANIC);
 | 
							pdc_chassis_send_status(PDC_CHASSIS_DIRECT_PANIC);
 | 
				
			||||||
		parisc_terminate("Kernel Fault", regs, code, fault_address);
 | 
							parisc_terminate("Kernel Fault", regs, code, fault_address);
 | 
				
			||||||
	    }
 | 
						    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -26,6 +26,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_SMP
 | 
					#ifdef CONFIG_SMP
 | 
				
			||||||
	.macro  get_fault_ip t1 t2
 | 
						.macro  get_fault_ip t1 t2
 | 
				
			||||||
 | 
						loadgp
 | 
				
			||||||
	addil LT%__per_cpu_offset,%r27
 | 
						addil LT%__per_cpu_offset,%r27
 | 
				
			||||||
	LDREG RT%__per_cpu_offset(%r1),\t1
 | 
						LDREG RT%__per_cpu_offset(%r1),\t1
 | 
				
			||||||
	/* t2 = smp_processor_id() */
 | 
						/* t2 = smp_processor_id() */
 | 
				
			||||||
| 
						 | 
					@ -40,14 +41,19 @@
 | 
				
			||||||
	LDREG RT%exception_data(%r1),\t1
 | 
						LDREG RT%exception_data(%r1),\t1
 | 
				
			||||||
	/* t1 = this_cpu_ptr(&exception_data) */
 | 
						/* t1 = this_cpu_ptr(&exception_data) */
 | 
				
			||||||
	add,l \t1,\t2,\t1
 | 
						add,l \t1,\t2,\t1
 | 
				
			||||||
 | 
						/* %r27 = t1->fault_gp - restore gp */
 | 
				
			||||||
 | 
						LDREG EXCDATA_GP(\t1), %r27
 | 
				
			||||||
	/* t1 = t1->fault_ip */
 | 
						/* t1 = t1->fault_ip */
 | 
				
			||||||
	LDREG EXCDATA_IP(\t1), \t1
 | 
						LDREG EXCDATA_IP(\t1), \t1
 | 
				
			||||||
	.endm
 | 
						.endm
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
	.macro  get_fault_ip t1 t2
 | 
						.macro  get_fault_ip t1 t2
 | 
				
			||||||
 | 
						loadgp
 | 
				
			||||||
	/* t1 = this_cpu_ptr(&exception_data) */
 | 
						/* t1 = this_cpu_ptr(&exception_data) */
 | 
				
			||||||
	addil LT%exception_data,%r27
 | 
						addil LT%exception_data,%r27
 | 
				
			||||||
	LDREG RT%exception_data(%r1),\t2
 | 
						LDREG RT%exception_data(%r1),\t2
 | 
				
			||||||
 | 
						/* %r27 = t2->fault_gp - restore gp */
 | 
				
			||||||
 | 
						LDREG EXCDATA_GP(\t2), %r27
 | 
				
			||||||
	/* t1 = t2->fault_ip */
 | 
						/* t1 = t2->fault_ip */
 | 
				
			||||||
	LDREG EXCDATA_IP(\t2), \t1
 | 
						LDREG EXCDATA_IP(\t2), \t1
 | 
				
			||||||
	.endm
 | 
						.endm
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -145,6 +145,7 @@ int fixup_exception(struct pt_regs *regs)
 | 
				
			||||||
		struct exception_data *d;
 | 
							struct exception_data *d;
 | 
				
			||||||
		d = this_cpu_ptr(&exception_data);
 | 
							d = this_cpu_ptr(&exception_data);
 | 
				
			||||||
		d->fault_ip = regs->iaoq[0];
 | 
							d->fault_ip = regs->iaoq[0];
 | 
				
			||||||
 | 
							d->fault_gp = regs->gr[27];
 | 
				
			||||||
		d->fault_space = regs->isr;
 | 
							d->fault_space = regs->isr;
 | 
				
			||||||
		d->fault_addr = regs->ior;
 | 
							d->fault_addr = regs->ior;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,6 +4,9 @@ config MMU
 | 
				
			||||||
config ZONE_DMA
 | 
					config ZONE_DMA
 | 
				
			||||||
	def_bool y
 | 
						def_bool y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config CPU_BIG_ENDIAN
 | 
				
			||||||
 | 
						def_bool y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config LOCKDEP_SUPPORT
 | 
					config LOCKDEP_SUPPORT
 | 
				
			||||||
	def_bool y
 | 
						def_bool y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,7 +44,8 @@ struct zpci_fmb {
 | 
				
			||||||
	u64 rpcit_ops;
 | 
						u64 rpcit_ops;
 | 
				
			||||||
	u64 dma_rbytes;
 | 
						u64 dma_rbytes;
 | 
				
			||||||
	u64 dma_wbytes;
 | 
						u64 dma_wbytes;
 | 
				
			||||||
} __packed __aligned(64);
 | 
						u64 pad[2];
 | 
				
			||||||
 | 
					} __packed __aligned(128);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
enum zpci_state {
 | 
					enum zpci_state {
 | 
				
			||||||
	ZPCI_FN_STATE_RESERVED,
 | 
						ZPCI_FN_STATE_RESERVED,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -13,4 +13,6 @@
 | 
				
			||||||
#define __NR_seccomp_exit_32	__NR_exit
 | 
					#define __NR_seccomp_exit_32	__NR_exit
 | 
				
			||||||
#define __NR_seccomp_sigreturn_32 __NR_sigreturn
 | 
					#define __NR_seccomp_sigreturn_32 __NR_sigreturn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <asm-generic/seccomp.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif	/* _ASM_S390_SECCOMP_H */
 | 
					#endif	/* _ASM_S390_SECCOMP_H */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -105,6 +105,7 @@ void arch_spin_lock_wait_flags(arch_spinlock_t *lp, unsigned long flags)
 | 
				
			||||||
			if (_raw_compare_and_swap(&lp->lock, 0, cpu))
 | 
								if (_raw_compare_and_swap(&lp->lock, 0, cpu))
 | 
				
			||||||
				return;
 | 
									return;
 | 
				
			||||||
			local_irq_restore(flags);
 | 
								local_irq_restore(flags);
 | 
				
			||||||
 | 
								continue;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		/* Check if the lock owner is running. */
 | 
							/* Check if the lock owner is running. */
 | 
				
			||||||
		if (first_diag && cpu_is_preempted(~owner)) {
 | 
							if (first_diag && cpu_is_preempted(~owner)) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -34,11 +34,6 @@ enum {
 | 
				
			||||||
DECLARE_PER_CPU(int, cpu_state);
 | 
					DECLARE_PER_CPU(int, cpu_state);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void smp_message_recv(unsigned int msg);
 | 
					void smp_message_recv(unsigned int msg);
 | 
				
			||||||
void smp_timer_broadcast(const struct cpumask *mask);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
void local_timer_interrupt(void);
 | 
					 | 
				
			||||||
void local_timer_setup(unsigned int cpu);
 | 
					 | 
				
			||||||
void local_timer_stop(unsigned int cpu);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
void arch_send_call_function_single_ipi(int cpu);
 | 
					void arch_send_call_function_single_ipi(int cpu);
 | 
				
			||||||
void arch_send_call_function_ipi_mask(const struct cpumask *mask);
 | 
					void arch_send_call_function_ipi_mask(const struct cpumask *mask);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,7 +17,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define mc_capable()    (1)
 | 
					#define mc_capable()    (1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const struct cpumask *cpu_coregroup_mask(unsigned int cpu);
 | 
					const struct cpumask *cpu_coregroup_mask(int cpu);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
extern cpumask_t cpu_core_map[NR_CPUS];
 | 
					extern cpumask_t cpu_core_map[NR_CPUS];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -73,8 +73,6 @@ static void shx3_prepare_cpus(unsigned int max_cpus)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	int i;
 | 
						int i;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	local_timer_setup(0);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	BUILD_BUG_ON(SMP_MSG_NR >= 8);
 | 
						BUILD_BUG_ON(SMP_MSG_NR >= 8);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (i = 0; i < SMP_MSG_NR; i++)
 | 
						for (i = 0; i < SMP_MSG_NR; i++)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,7 +21,7 @@ static DEFINE_PER_CPU(struct cpu, cpu_devices);
 | 
				
			||||||
cpumask_t cpu_core_map[NR_CPUS];
 | 
					cpumask_t cpu_core_map[NR_CPUS];
 | 
				
			||||||
EXPORT_SYMBOL(cpu_core_map);
 | 
					EXPORT_SYMBOL(cpu_core_map);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static cpumask_t cpu_coregroup_map(unsigned int cpu)
 | 
					static cpumask_t cpu_coregroup_map(int cpu)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/*
 | 
						/*
 | 
				
			||||||
	 * Presently all SH-X3 SMP cores are multi-cores, so just keep it
 | 
						 * Presently all SH-X3 SMP cores are multi-cores, so just keep it
 | 
				
			||||||
| 
						 | 
					@ -30,7 +30,7 @@ static cpumask_t cpu_coregroup_map(unsigned int cpu)
 | 
				
			||||||
	return *cpu_possible_mask;
 | 
						return *cpu_possible_mask;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const struct cpumask *cpu_coregroup_mask(unsigned int cpu)
 | 
					const struct cpumask *cpu_coregroup_mask(int cpu)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	return &cpu_core_map[cpu];
 | 
						return &cpu_core_map[cpu];
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -26,7 +26,7 @@ targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma \
 | 
				
			||||||
	vmlinux.bin.xz vmlinux.bin.lzo vmlinux.bin.lz4
 | 
						vmlinux.bin.xz vmlinux.bin.lzo vmlinux.bin.lz4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2
 | 
					KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2
 | 
				
			||||||
KBUILD_CFLAGS += -fno-strict-aliasing -fPIC
 | 
					KBUILD_CFLAGS += -fno-strict-aliasing $(call cc-option, -fPIE, -fPIC)
 | 
				
			||||||
KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING
 | 
					KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING
 | 
				
			||||||
cflags-$(CONFIG_X86_32) := -march=i386
 | 
					cflags-$(CONFIG_X86_32) := -march=i386
 | 
				
			||||||
cflags-$(CONFIG_X86_64) := -mcmodel=small
 | 
					cflags-$(CONFIG_X86_64) := -mcmodel=small
 | 
				
			||||||
| 
						 | 
					@ -40,6 +40,18 @@ GCOV_PROFILE := n
 | 
				
			||||||
UBSAN_SANITIZE :=n
 | 
					UBSAN_SANITIZE :=n
 | 
				
			||||||
 | 
					
 | 
				
			||||||
LDFLAGS := -m elf_$(UTS_MACHINE)
 | 
					LDFLAGS := -m elf_$(UTS_MACHINE)
 | 
				
			||||||
 | 
					ifeq ($(CONFIG_RELOCATABLE),y)
 | 
				
			||||||
 | 
					# If kernel is relocatable, build compressed kernel as PIE.
 | 
				
			||||||
 | 
					ifeq ($(CONFIG_X86_32),y)
 | 
				
			||||||
 | 
					LDFLAGS += $(call ld-option, -pie) $(call ld-option, --no-dynamic-linker)
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					# To build 64-bit compressed kernel as PIE, we disable relocation
 | 
				
			||||||
 | 
					# overflow check to avoid relocation overflow error with a new linker
 | 
				
			||||||
 | 
					# command-line option, -z noreloc-overflow.
 | 
				
			||||||
 | 
					LDFLAGS += $(shell $(LD) --help 2>&1 | grep -q "\-z noreloc-overflow" \
 | 
				
			||||||
 | 
						&& echo "-z noreloc-overflow -pie --no-dynamic-linker")
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
LDFLAGS_vmlinux := -T
 | 
					LDFLAGS_vmlinux := -T
 | 
				
			||||||
 | 
					
 | 
				
			||||||
hostprogs-y	:= mkpiggy
 | 
					hostprogs-y	:= mkpiggy
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -31,6 +31,34 @@
 | 
				
			||||||
#include <asm/asm-offsets.h>
 | 
					#include <asm/asm-offsets.h>
 | 
				
			||||||
#include <asm/bootparam.h>
 | 
					#include <asm/bootparam.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * The 32-bit x86 assembler in binutils 2.26 will generate R_386_GOT32X
 | 
				
			||||||
 | 
					 * relocation to get the symbol address in PIC.  When the compressed x86
 | 
				
			||||||
 | 
					 * kernel isn't built as PIC, the linker optimizes R_386_GOT32X
 | 
				
			||||||
 | 
					 * relocations to their fixed symbol addresses.  However, when the
 | 
				
			||||||
 | 
					 * compressed x86 kernel is loaded at a different address, it leads
 | 
				
			||||||
 | 
					 * to the following load failure:
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 *   Failed to allocate space for phdrs
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * during the decompression stage.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * If the compressed x86 kernel is relocatable at run-time, it should be
 | 
				
			||||||
 | 
					 * compiled with -fPIE, instead of -fPIC, if possible and should be built as
 | 
				
			||||||
 | 
					 * Position Independent Executable (PIE) so that linker won't optimize
 | 
				
			||||||
 | 
					 * R_386_GOT32X relocation to its fixed symbol address.  Older
 | 
				
			||||||
 | 
					 * linkers generate R_386_32 relocations against locally defined symbols,
 | 
				
			||||||
 | 
					 * _bss, _ebss, _got and _egot, in PIE.  It isn't wrong, just less
 | 
				
			||||||
 | 
					 * optimal than R_386_RELATIVE.  But the x86 kernel fails to properly handle
 | 
				
			||||||
 | 
					 * R_386_32 relocations when relocating the kernel.  To generate
 | 
				
			||||||
 | 
					 * R_386_RELATIVE relocations, we mark _bss, _ebss, _got and _egot as
 | 
				
			||||||
 | 
					 * hidden:
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
						.hidden _bss
 | 
				
			||||||
 | 
						.hidden _ebss
 | 
				
			||||||
 | 
						.hidden _got
 | 
				
			||||||
 | 
						.hidden _egot
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	__HEAD
 | 
						__HEAD
 | 
				
			||||||
ENTRY(startup_32)
 | 
					ENTRY(startup_32)
 | 
				
			||||||
#ifdef CONFIG_EFI_STUB
 | 
					#ifdef CONFIG_EFI_STUB
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -33,6 +33,14 @@
 | 
				
			||||||
#include <asm/asm-offsets.h>
 | 
					#include <asm/asm-offsets.h>
 | 
				
			||||||
#include <asm/bootparam.h>
 | 
					#include <asm/bootparam.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * Locally defined symbols should be marked hidden:
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
						.hidden _bss
 | 
				
			||||||
 | 
						.hidden _ebss
 | 
				
			||||||
 | 
						.hidden _got
 | 
				
			||||||
 | 
						.hidden _egot
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	__HEAD
 | 
						__HEAD
 | 
				
			||||||
	.code32
 | 
						.code32
 | 
				
			||||||
ENTRY(startup_32)
 | 
					ENTRY(startup_32)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -453,10 +453,10 @@ static int sha_complete_job(struct mcryptd_hash_request_ctx *rctx,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			req = cast_mcryptd_ctx_to_req(req_ctx);
 | 
								req = cast_mcryptd_ctx_to_req(req_ctx);
 | 
				
			||||||
			if (irqs_disabled())
 | 
								if (irqs_disabled())
 | 
				
			||||||
				rctx->complete(&req->base, ret);
 | 
									req_ctx->complete(&req->base, ret);
 | 
				
			||||||
			else {
 | 
								else {
 | 
				
			||||||
				local_bh_disable();
 | 
									local_bh_disable();
 | 
				
			||||||
				rctx->complete(&req->base, ret);
 | 
									req_ctx->complete(&req->base, ret);
 | 
				
			||||||
				local_bh_enable();
 | 
									local_bh_enable();
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -29,7 +29,7 @@ static char gen_pool_buf[MCE_POOLSZ];
 | 
				
			||||||
void mce_gen_pool_process(void)
 | 
					void mce_gen_pool_process(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct llist_node *head;
 | 
						struct llist_node *head;
 | 
				
			||||||
	struct mce_evt_llist *node;
 | 
						struct mce_evt_llist *node, *tmp;
 | 
				
			||||||
	struct mce *mce;
 | 
						struct mce *mce;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	head = llist_del_all(&mce_event_llist);
 | 
						head = llist_del_all(&mce_event_llist);
 | 
				
			||||||
| 
						 | 
					@ -37,7 +37,7 @@ void mce_gen_pool_process(void)
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	head = llist_reverse_order(head);
 | 
						head = llist_reverse_order(head);
 | 
				
			||||||
	llist_for_each_entry(node, head, llnode) {
 | 
						llist_for_each_entry_safe(node, tmp, head, llnode) {
 | 
				
			||||||
		mce = &node->mce;
 | 
							mce = &node->mce;
 | 
				
			||||||
		atomic_notifier_call_chain(&x86_mce_decoder_chain, 0, mce);
 | 
							atomic_notifier_call_chain(&x86_mce_decoder_chain, 0, mce);
 | 
				
			||||||
		gen_pool_free(mce_evt_pool, (unsigned long)node, sizeof(*node));
 | 
							gen_pool_free(mce_evt_pool, (unsigned long)node, sizeof(*node));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -146,6 +146,31 @@ int default_check_phys_apicid_present(int phys_apicid)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct boot_params boot_params;
 | 
					struct boot_params boot_params;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * Machine setup..
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					static struct resource data_resource = {
 | 
				
			||||||
 | 
						.name	= "Kernel data",
 | 
				
			||||||
 | 
						.start	= 0,
 | 
				
			||||||
 | 
						.end	= 0,
 | 
				
			||||||
 | 
						.flags	= IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct resource code_resource = {
 | 
				
			||||||
 | 
						.name	= "Kernel code",
 | 
				
			||||||
 | 
						.start	= 0,
 | 
				
			||||||
 | 
						.end	= 0,
 | 
				
			||||||
 | 
						.flags	= IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static struct resource bss_resource = {
 | 
				
			||||||
 | 
						.name	= "Kernel bss",
 | 
				
			||||||
 | 
						.start	= 0,
 | 
				
			||||||
 | 
						.end	= 0,
 | 
				
			||||||
 | 
						.flags	= IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_X86_32
 | 
					#ifdef CONFIG_X86_32
 | 
				
			||||||
/* cpu data as detected by the assembly code in head.S */
 | 
					/* cpu data as detected by the assembly code in head.S */
 | 
				
			||||||
struct cpuinfo_x86 new_cpu_data = {
 | 
					struct cpuinfo_x86 new_cpu_data = {
 | 
				
			||||||
| 
						 | 
					@ -924,6 +949,13 @@ void __init setup_arch(char **cmdline_p)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	mpx_mm_init(&init_mm);
 | 
						mpx_mm_init(&init_mm);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						code_resource.start = __pa_symbol(_text);
 | 
				
			||||||
 | 
						code_resource.end = __pa_symbol(_etext)-1;
 | 
				
			||||||
 | 
						data_resource.start = __pa_symbol(_etext);
 | 
				
			||||||
 | 
						data_resource.end = __pa_symbol(_edata)-1;
 | 
				
			||||||
 | 
						bss_resource.start = __pa_symbol(__bss_start);
 | 
				
			||||||
 | 
						bss_resource.end = __pa_symbol(__bss_stop)-1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_CMDLINE_BOOL
 | 
					#ifdef CONFIG_CMDLINE_BOOL
 | 
				
			||||||
#ifdef CONFIG_CMDLINE_OVERRIDE
 | 
					#ifdef CONFIG_CMDLINE_OVERRIDE
 | 
				
			||||||
	strlcpy(boot_command_line, builtin_cmdline, COMMAND_LINE_SIZE);
 | 
						strlcpy(boot_command_line, builtin_cmdline, COMMAND_LINE_SIZE);
 | 
				
			||||||
| 
						 | 
					@ -987,6 +1019,11 @@ void __init setup_arch(char **cmdline_p)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	x86_init.resources.probe_roms();
 | 
						x86_init.resources.probe_roms();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* after parse_early_param, so could debug it */
 | 
				
			||||||
 | 
						insert_resource(&iomem_resource, &code_resource);
 | 
				
			||||||
 | 
						insert_resource(&iomem_resource, &data_resource);
 | 
				
			||||||
 | 
						insert_resource(&iomem_resource, &bss_resource);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	e820_add_kernel_range();
 | 
						e820_add_kernel_range();
 | 
				
			||||||
	trim_bios_range();
 | 
						trim_bios_range();
 | 
				
			||||||
#ifdef CONFIG_X86_32
 | 
					#ifdef CONFIG_X86_32
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -534,6 +534,7 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function,
 | 
				
			||||||
			do_cpuid_1_ent(&entry[i], function, idx);
 | 
								do_cpuid_1_ent(&entry[i], function, idx);
 | 
				
			||||||
			if (idx == 1) {
 | 
								if (idx == 1) {
 | 
				
			||||||
				entry[i].eax &= kvm_cpuid_D_1_eax_x86_features;
 | 
									entry[i].eax &= kvm_cpuid_D_1_eax_x86_features;
 | 
				
			||||||
 | 
									cpuid_mask(&entry[i].eax, CPUID_D_1_EAX);
 | 
				
			||||||
				entry[i].ebx = 0;
 | 
									entry[i].ebx = 0;
 | 
				
			||||||
				if (entry[i].eax & (F(XSAVES)|F(XSAVEC)))
 | 
									if (entry[i].eax & (F(XSAVES)|F(XSAVEC)))
 | 
				
			||||||
					entry[i].ebx =
 | 
										entry[i].ebx =
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -173,10 +173,9 @@ static inline u8 permission_fault(struct kvm_vcpu *vcpu, struct kvm_mmu *mmu,
 | 
				
			||||||
	int index = (pfec >> 1) +
 | 
						int index = (pfec >> 1) +
 | 
				
			||||||
		    (smap >> (X86_EFLAGS_AC_BIT - PFERR_RSVD_BIT + 1));
 | 
							    (smap >> (X86_EFLAGS_AC_BIT - PFERR_RSVD_BIT + 1));
 | 
				
			||||||
	bool fault = (mmu->permissions[index] >> pte_access) & 1;
 | 
						bool fault = (mmu->permissions[index] >> pte_access) & 1;
 | 
				
			||||||
 | 
						u32 errcode = PFERR_PRESENT_MASK;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	WARN_ON(pfec & (PFERR_PK_MASK | PFERR_RSVD_MASK));
 | 
						WARN_ON(pfec & (PFERR_PK_MASK | PFERR_RSVD_MASK));
 | 
				
			||||||
	pfec |= PFERR_PRESENT_MASK;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (unlikely(mmu->pkru_mask)) {
 | 
						if (unlikely(mmu->pkru_mask)) {
 | 
				
			||||||
		u32 pkru_bits, offset;
 | 
							u32 pkru_bits, offset;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -189,15 +188,15 @@ static inline u8 permission_fault(struct kvm_vcpu *vcpu, struct kvm_mmu *mmu,
 | 
				
			||||||
		pkru_bits = (kvm_read_pkru(vcpu) >> (pte_pkey * 2)) & 3;
 | 
							pkru_bits = (kvm_read_pkru(vcpu) >> (pte_pkey * 2)) & 3;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/* clear present bit, replace PFEC.RSVD with ACC_USER_MASK. */
 | 
							/* clear present bit, replace PFEC.RSVD with ACC_USER_MASK. */
 | 
				
			||||||
		offset = pfec - 1 +
 | 
							offset = (pfec & ~1) +
 | 
				
			||||||
			((pte_access & PT_USER_MASK) << (PFERR_RSVD_BIT - PT_USER_SHIFT));
 | 
								((pte_access & PT_USER_MASK) << (PFERR_RSVD_BIT - PT_USER_SHIFT));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		pkru_bits &= mmu->pkru_mask >> offset;
 | 
							pkru_bits &= mmu->pkru_mask >> offset;
 | 
				
			||||||
		pfec |= -pkru_bits & PFERR_PK_MASK;
 | 
							errcode |= -pkru_bits & PFERR_PK_MASK;
 | 
				
			||||||
		fault |= (pkru_bits != 0);
 | 
							fault |= (pkru_bits != 0);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return -(uint32_t)fault & pfec;
 | 
						return -(u32)fault & errcode;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void kvm_mmu_invalidate_zap_all_pages(struct kvm *kvm);
 | 
					void kvm_mmu_invalidate_zap_all_pages(struct kvm *kvm);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -360,7 +360,7 @@ static int FNAME(walk_addr_generic)(struct guest_walker *walker,
 | 
				
			||||||
			goto error;
 | 
								goto error;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (unlikely(is_rsvd_bits_set(mmu, pte, walker->level))) {
 | 
							if (unlikely(is_rsvd_bits_set(mmu, pte, walker->level))) {
 | 
				
			||||||
			errcode |= PFERR_RSVD_MASK | PFERR_PRESENT_MASK;
 | 
								errcode = PFERR_RSVD_MASK | PFERR_PRESENT_MASK;
 | 
				
			||||||
			goto error;
 | 
								goto error;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -700,7 +700,6 @@ static int __kvm_set_xcr(struct kvm_vcpu *vcpu, u32 index, u64 xcr)
 | 
				
			||||||
		if ((xcr0 & XFEATURE_MASK_AVX512) != XFEATURE_MASK_AVX512)
 | 
							if ((xcr0 & XFEATURE_MASK_AVX512) != XFEATURE_MASK_AVX512)
 | 
				
			||||||
			return 1;
 | 
								return 1;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	kvm_put_guest_xcr0(vcpu);
 | 
					 | 
				
			||||||
	vcpu->arch.xcr0 = xcr0;
 | 
						vcpu->arch.xcr0 = xcr0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if ((xcr0 ^ old_xcr0) & XFEATURE_MASK_EXTEND)
 | 
						if ((xcr0 ^ old_xcr0) & XFEATURE_MASK_EXTEND)
 | 
				
			||||||
| 
						 | 
					@ -6590,8 +6589,6 @@ static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
 | 
				
			||||||
	kvm_x86_ops->prepare_guest_switch(vcpu);
 | 
						kvm_x86_ops->prepare_guest_switch(vcpu);
 | 
				
			||||||
	if (vcpu->fpu_active)
 | 
						if (vcpu->fpu_active)
 | 
				
			||||||
		kvm_load_guest_fpu(vcpu);
 | 
							kvm_load_guest_fpu(vcpu);
 | 
				
			||||||
	kvm_load_guest_xcr0(vcpu);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	vcpu->mode = IN_GUEST_MODE;
 | 
						vcpu->mode = IN_GUEST_MODE;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx);
 | 
						srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx);
 | 
				
			||||||
| 
						 | 
					@ -6618,6 +6615,8 @@ static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
 | 
				
			||||||
		goto cancel_injection;
 | 
							goto cancel_injection;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						kvm_load_guest_xcr0(vcpu);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (req_immediate_exit)
 | 
						if (req_immediate_exit)
 | 
				
			||||||
		smp_send_reschedule(vcpu->cpu);
 | 
							smp_send_reschedule(vcpu->cpu);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6667,6 +6666,8 @@ static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
 | 
				
			||||||
	vcpu->mode = OUTSIDE_GUEST_MODE;
 | 
						vcpu->mode = OUTSIDE_GUEST_MODE;
 | 
				
			||||||
	smp_wmb();
 | 
						smp_wmb();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						kvm_put_guest_xcr0(vcpu);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* Interrupt is enabled by handle_external_intr() */
 | 
						/* Interrupt is enabled by handle_external_intr() */
 | 
				
			||||||
	kvm_x86_ops->handle_external_intr(vcpu);
 | 
						kvm_x86_ops->handle_external_intr(vcpu);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -7314,7 +7315,6 @@ void kvm_load_guest_fpu(struct kvm_vcpu *vcpu)
 | 
				
			||||||
	 * and assume host would use all available bits.
 | 
						 * and assume host would use all available bits.
 | 
				
			||||||
	 * Guest xcr0 would be loaded later.
 | 
						 * Guest xcr0 would be loaded later.
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
	kvm_put_guest_xcr0(vcpu);
 | 
					 | 
				
			||||||
	vcpu->guest_fpu_loaded = 1;
 | 
						vcpu->guest_fpu_loaded = 1;
 | 
				
			||||||
	__kernel_fpu_begin();
 | 
						__kernel_fpu_begin();
 | 
				
			||||||
	__copy_kernel_to_fpregs(&vcpu->arch.guest_fpu.state);
 | 
						__copy_kernel_to_fpregs(&vcpu->arch.guest_fpu.state);
 | 
				
			||||||
| 
						 | 
					@ -7323,8 +7323,6 @@ void kvm_load_guest_fpu(struct kvm_vcpu *vcpu)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void kvm_put_guest_fpu(struct kvm_vcpu *vcpu)
 | 
					void kvm_put_guest_fpu(struct kvm_vcpu *vcpu)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	kvm_put_guest_xcr0(vcpu);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (!vcpu->guest_fpu_loaded) {
 | 
						if (!vcpu->guest_fpu_loaded) {
 | 
				
			||||||
		vcpu->fpu_counter = 0;
 | 
							vcpu->fpu_counter = 0;
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -361,14 +361,19 @@ struct hd_struct *add_partition(struct gendisk *disk, int partno,
 | 
				
			||||||
			goto out_del;
 | 
								goto out_del;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						err = hd_ref_init(p);
 | 
				
			||||||
 | 
						if (err) {
 | 
				
			||||||
 | 
							if (flags & ADDPART_FLAG_WHOLEDISK)
 | 
				
			||||||
 | 
								goto out_remove_file;
 | 
				
			||||||
 | 
							goto out_del;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* everything is up and running, commence */
 | 
						/* everything is up and running, commence */
 | 
				
			||||||
	rcu_assign_pointer(ptbl->part[partno], p);
 | 
						rcu_assign_pointer(ptbl->part[partno], p);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* suppress uevent if the disk suppresses it */
 | 
						/* suppress uevent if the disk suppresses it */
 | 
				
			||||||
	if (!dev_get_uevent_suppress(ddev))
 | 
						if (!dev_get_uevent_suppress(ddev))
 | 
				
			||||||
		kobject_uevent(&pdev->kobj, KOBJ_ADD);
 | 
							kobject_uevent(&pdev->kobj, KOBJ_ADD);
 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (!hd_ref_init(p))
 | 
					 | 
				
			||||||
	return p;
 | 
						return p;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
out_free_info:
 | 
					out_free_info:
 | 
				
			||||||
| 
						 | 
					@ -378,6 +383,8 @@ struct hd_struct *add_partition(struct gendisk *disk, int partno,
 | 
				
			||||||
out_free:
 | 
					out_free:
 | 
				
			||||||
	kfree(p);
 | 
						kfree(p);
 | 
				
			||||||
	return ERR_PTR(err);
 | 
						return ERR_PTR(err);
 | 
				
			||||||
 | 
					out_remove_file:
 | 
				
			||||||
 | 
						device_remove_file(pdev, &dev_attr_whole_disk);
 | 
				
			||||||
out_del:
 | 
					out_del:
 | 
				
			||||||
	kobject_put(p->holder_dir);
 | 
						kobject_put(p->holder_dir);
 | 
				
			||||||
	device_del(pdev);
 | 
						device_del(pdev);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -387,16 +387,16 @@ static int pkcs1pad_decrypt(struct akcipher_request *req)
 | 
				
			||||||
	req_ctx->child_req.src = req->src;
 | 
						req_ctx->child_req.src = req->src;
 | 
				
			||||||
	req_ctx->child_req.src_len = req->src_len;
 | 
						req_ctx->child_req.src_len = req->src_len;
 | 
				
			||||||
	req_ctx->child_req.dst = req_ctx->out_sg;
 | 
						req_ctx->child_req.dst = req_ctx->out_sg;
 | 
				
			||||||
	req_ctx->child_req.dst_len = ctx->key_size - 1;
 | 
						req_ctx->child_req.dst_len = ctx->key_size ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	req_ctx->out_buf = kmalloc(ctx->key_size - 1,
 | 
						req_ctx->out_buf = kmalloc(ctx->key_size,
 | 
				
			||||||
			(req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) ?
 | 
								(req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) ?
 | 
				
			||||||
			GFP_KERNEL : GFP_ATOMIC);
 | 
								GFP_KERNEL : GFP_ATOMIC);
 | 
				
			||||||
	if (!req_ctx->out_buf)
 | 
						if (!req_ctx->out_buf)
 | 
				
			||||||
		return -ENOMEM;
 | 
							return -ENOMEM;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pkcs1pad_sg_set_buf(req_ctx->out_sg, req_ctx->out_buf,
 | 
						pkcs1pad_sg_set_buf(req_ctx->out_sg, req_ctx->out_buf,
 | 
				
			||||||
			ctx->key_size - 1, NULL);
 | 
								    ctx->key_size, NULL);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	akcipher_request_set_tfm(&req_ctx->child_req, ctx->child);
 | 
						akcipher_request_set_tfm(&req_ctx->child_req, ctx->child);
 | 
				
			||||||
	akcipher_request_set_callback(&req_ctx->child_req, req->base.flags,
 | 
						akcipher_request_set_callback(&req_ctx->child_req, req->base.flags,
 | 
				
			||||||
| 
						 | 
					@ -595,16 +595,16 @@ static int pkcs1pad_verify(struct akcipher_request *req)
 | 
				
			||||||
	req_ctx->child_req.src = req->src;
 | 
						req_ctx->child_req.src = req->src;
 | 
				
			||||||
	req_ctx->child_req.src_len = req->src_len;
 | 
						req_ctx->child_req.src_len = req->src_len;
 | 
				
			||||||
	req_ctx->child_req.dst = req_ctx->out_sg;
 | 
						req_ctx->child_req.dst = req_ctx->out_sg;
 | 
				
			||||||
	req_ctx->child_req.dst_len = ctx->key_size - 1;
 | 
						req_ctx->child_req.dst_len = ctx->key_size;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	req_ctx->out_buf = kmalloc(ctx->key_size - 1,
 | 
						req_ctx->out_buf = kmalloc(ctx->key_size,
 | 
				
			||||||
			(req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) ?
 | 
								(req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) ?
 | 
				
			||||||
			GFP_KERNEL : GFP_ATOMIC);
 | 
								GFP_KERNEL : GFP_ATOMIC);
 | 
				
			||||||
	if (!req_ctx->out_buf)
 | 
						if (!req_ctx->out_buf)
 | 
				
			||||||
		return -ENOMEM;
 | 
							return -ENOMEM;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pkcs1pad_sg_set_buf(req_ctx->out_sg, req_ctx->out_buf,
 | 
						pkcs1pad_sg_set_buf(req_ctx->out_sg, req_ctx->out_buf,
 | 
				
			||||||
			ctx->key_size - 1, NULL);
 | 
								    ctx->key_size, NULL);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	akcipher_request_set_tfm(&req_ctx->child_req, ctx->child);
 | 
						akcipher_request_set_tfm(&req_ctx->child_req, ctx->child);
 | 
				
			||||||
	akcipher_request_set_callback(&req_ctx->child_req, req->base.flags,
 | 
						akcipher_request_set_callback(&req_ctx->child_req, req->base.flags,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -136,7 +136,6 @@ static bool bcma_is_core_needed_early(u16 core_id)
 | 
				
			||||||
	return false;
 | 
						return false;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined(CONFIG_OF) && defined(CONFIG_OF_ADDRESS)
 | 
					 | 
				
			||||||
static struct device_node *bcma_of_find_child_device(struct platform_device *parent,
 | 
					static struct device_node *bcma_of_find_child_device(struct platform_device *parent,
 | 
				
			||||||
						     struct bcma_device *core)
 | 
											     struct bcma_device *core)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					@ -184,7 +183,7 @@ static unsigned int bcma_of_get_irq(struct platform_device *parent,
 | 
				
			||||||
	struct of_phandle_args out_irq;
 | 
						struct of_phandle_args out_irq;
 | 
				
			||||||
	int ret;
 | 
						int ret;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (!parent || !parent->dev.of_node)
 | 
						if (!IS_ENABLED(CONFIG_OF_IRQ) || !parent || !parent->dev.of_node)
 | 
				
			||||||
		return 0;
 | 
							return 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	ret = bcma_of_irq_parse(parent, core, &out_irq, num);
 | 
						ret = bcma_of_irq_parse(parent, core, &out_irq, num);
 | 
				
			||||||
| 
						 | 
					@ -202,23 +201,15 @@ static void bcma_of_fill_device(struct platform_device *parent,
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct device_node *node;
 | 
						struct device_node *node;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!IS_ENABLED(CONFIG_OF_IRQ))
 | 
				
			||||||
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	node = bcma_of_find_child_device(parent, core);
 | 
						node = bcma_of_find_child_device(parent, core);
 | 
				
			||||||
	if (node)
 | 
						if (node)
 | 
				
			||||||
		core->dev.of_node = node;
 | 
							core->dev.of_node = node;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	core->irq = bcma_of_get_irq(parent, core, 0);
 | 
						core->irq = bcma_of_get_irq(parent, core, 0);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static void bcma_of_fill_device(struct platform_device *parent,
 | 
					 | 
				
			||||||
				struct bcma_device *core)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
static inline unsigned int bcma_of_get_irq(struct platform_device *parent,
 | 
					 | 
				
			||||||
					   struct bcma_device *core, int num)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	return 0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#endif /* CONFIG_OF */
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
unsigned int bcma_core_irq(struct bcma_device *core, int num)
 | 
					unsigned int bcma_core_irq(struct bcma_device *core, int num)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -488,6 +488,12 @@ static int lo_rw_aio(struct loop_device *lo, struct loop_cmd *cmd,
 | 
				
			||||||
	bvec = __bvec_iter_bvec(bio->bi_io_vec, bio->bi_iter);
 | 
						bvec = __bvec_iter_bvec(bio->bi_io_vec, bio->bi_iter);
 | 
				
			||||||
	iov_iter_bvec(&iter, ITER_BVEC | rw, bvec,
 | 
						iov_iter_bvec(&iter, ITER_BVEC | rw, bvec,
 | 
				
			||||||
		      bio_segments(bio), blk_rq_bytes(cmd->rq));
 | 
							      bio_segments(bio), blk_rq_bytes(cmd->rq));
 | 
				
			||||||
 | 
						/*
 | 
				
			||||||
 | 
						 * This bio may be started from the middle of the 'bvec'
 | 
				
			||||||
 | 
						 * because of bio splitting, so offset from the bvec must
 | 
				
			||||||
 | 
						 * be passed to iov iterator
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						iter.iov_offset = bio->bi_iter.bi_bvec_done;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	cmd->iocb.ki_pos = pos;
 | 
						cmd->iocb.ki_pos = pos;
 | 
				
			||||||
	cmd->iocb.ki_filp = file;
 | 
						cmd->iocb.ki_filp = file;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -972,7 +972,7 @@ int mvebu_mbus_get_dram_win_info(phys_addr_t phyaddr, u8 *target, u8 *attr)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pr_err("invalid dram address 0x%x\n", phyaddr);
 | 
						pr_err("invalid dram address %pa\n", &phyaddr);
 | 
				
			||||||
	return -EINVAL;
 | 
						return -EINVAL;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
EXPORT_SYMBOL_GPL(mvebu_mbus_get_dram_win_info);
 | 
					EXPORT_SYMBOL_GPL(mvebu_mbus_get_dram_win_info);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -108,7 +108,7 @@ static int uniphier_system_bus_check_overlap(
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (i = 0; i < ARRAY_SIZE(priv->bank); i++) {
 | 
						for (i = 0; i < ARRAY_SIZE(priv->bank); i++) {
 | 
				
			||||||
		for (j = i + 1; j < ARRAY_SIZE(priv->bank); j++) {
 | 
							for (j = i + 1; j < ARRAY_SIZE(priv->bank); j++) {
 | 
				
			||||||
			if (priv->bank[i].end > priv->bank[j].base ||
 | 
								if (priv->bank[i].end > priv->bank[j].base &&
 | 
				
			||||||
			    priv->bank[i].base < priv->bank[j].end) {
 | 
								    priv->bank[i].base < priv->bank[j].end) {
 | 
				
			||||||
				dev_err(priv->dev,
 | 
									dev_err(priv->dev,
 | 
				
			||||||
					"region overlap between bank%d and bank%d\n",
 | 
										"region overlap between bank%d and bank%d\n",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,6 +12,7 @@
 | 
				
			||||||
#include <linux/clk.h>
 | 
					#include <linux/clk.h>
 | 
				
			||||||
#include <linux/platform_device.h>
 | 
					#include <linux/platform_device.h>
 | 
				
			||||||
#include <linux/hw_random.h>
 | 
					#include <linux/hw_random.h>
 | 
				
			||||||
 | 
					#include <linux/of.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define RNG_CTRL			0x00
 | 
					#define RNG_CTRL			0x00
 | 
				
			||||||
#define RNG_EN				(1 << 0)
 | 
					#define RNG_EN				(1 << 0)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1491,6 +1491,9 @@ static unsigned int cpufreq_update_current_freq(struct cpufreq_policy *policy)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	unsigned int new_freq;
 | 
						unsigned int new_freq;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (cpufreq_suspended)
 | 
				
			||||||
 | 
							return 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	new_freq = cpufreq_driver->get(policy->cpu);
 | 
						new_freq = cpufreq_driver->get(policy->cpu);
 | 
				
			||||||
	if (!new_freq)
 | 
						if (!new_freq)
 | 
				
			||||||
		return 0;
 | 
							return 0;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
Some files were not shown because too many files have changed in this diff Show more
		Loading…
	
		Reference in a new issue