mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2026-08-07 08:36:10 +00:00
The EDAC subsystem uses the old struct sysdev approach, creating all nodes using the raw sysfs API. This is bad, as the API is deprecated. As we'll be changing the EDAC API, let's first port the existing code to struct device. There's one drawback on this patch: driver-specific sysfs nodes, used by mpc85xx_edac, amd64_edac and i7core_edac won't be created anymore. While it would be possible to also port the device-specific code, that would mix kobj with struct device, with is not recommended. Also, it is easier and nicer to move the code to the drivers, instead, as the core can get rid of some complex logic that just emulates what the device_add() and device_create_file() already does. The next patches will convert the driver-specific code to use the device-specific calls. Then, the remaining bits of the old sysfs API will be removed. NOTE: a per-MC bus is required, otherwise devices with more than one memory controller will hit a bug like the one below: [ 819.094946] EDAC DEBUG: find_mci_by_dev: find_mci_by_dev() [ 819.094948] EDAC DEBUG: edac_create_sysfs_mci_device: edac_create_sysfs_mci_device() idx=1 [ 819.094952] EDAC DEBUG: edac_create_sysfs_mci_device: edac_create_sysfs_mci_device(): creating device mc1 [ 819.094967] EDAC DEBUG: edac_create_sysfs_mci_device: edac_create_sysfs_mci_device creating dimm0, located at channel 0 slot 0 [ 819.094984] ------------[ cut here ]------------ [ 819.100142] WARNING: at fs/sysfs/dir.c:481 sysfs_add_one+0xc1/0xf0() [ 819.107282] Hardware name: S2600CP [ 819.111078] sysfs: cannot create duplicate filename '/bus/edac/devices/dimm0' [ 819.119062] Modules linked in: sb_edac(+) edac_core ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_CHECKSUM iptable_mangle iptable_filter ip_tables bridge stp llc sunrpc binfmt_misc dm_mirror dm_region_hash dm_log vhost_net macvtap macvlan tun kvm microcode pcspkr iTCO_wdt iTCO_vendor_support igb i2c_i801 i2c_core sg ioatdma dca sr_mod cdrom sd_mod crc_t10dif ahci libahci isci libsas libata scsi_transport_sas scsi_mod wmi dm_mod [last unloaded: scsi_wait_scan] [ 819.175748] Pid: 10902, comm: modprobe Not tainted 3.3.0-0.11.el7.v12.2.x86_64 #1 [ 819.184113] Call Trace: [ 819.186868] [<ffffffff8105adaf>] warn_slowpath_common+0x7f/0xc0 [ 819.193573] [<ffffffff8105aea6>] warn_slowpath_fmt+0x46/0x50 [ 819.200000] [<ffffffff811f53d1>] sysfs_add_one+0xc1/0xf0 [ 819.206025] [<ffffffff811f5cf5>] sysfs_do_create_link+0x135/0x220 [ 819.212944] [<ffffffff811f7023>] ? sysfs_create_group+0x13/0x20 [ 819.219656] [<ffffffff811f5df3>] sysfs_create_link+0x13/0x20 [ 819.226109] [<ffffffff813b04f6>] bus_add_device+0xe6/0x1b0 [ 819.232350] [<ffffffff813ae7cb>] device_add+0x2db/0x460 [ 819.238300] [<ffffffffa0325634>] edac_create_dimm_object+0x84/0xf0 [edac_core] [ 819.246460] [<ffffffffa0325e18>] edac_create_sysfs_mci_device+0xe8/0x290 [edac_core] [ 819.255215] [<ffffffffa0322e2a>] edac_mc_add_mc+0x5a/0x2c0 [edac_core] [ 819.262611] [<ffffffffa03412df>] sbridge_register_mci+0x1bc/0x279 [sb_edac] [ 819.270493] [<ffffffffa03417a3>] sbridge_probe+0xef/0x175 [sb_edac] [ 819.277630] [<ffffffff813ba4e8>] ? pm_runtime_enable+0x58/0x90 [ 819.284268] [<ffffffff812f430c>] local_pci_probe+0x5c/0xd0 [ 819.290508] [<ffffffff812f5ba1>] __pci_device_probe+0xf1/0x100 [ 819.297117] [<ffffffff812f5bea>] pci_device_probe+0x3a/0x60 [ 819.303457] [<ffffffff813b1003>] really_probe+0x73/0x270 [ 819.309496] [<ffffffff813b138e>] driver_probe_device+0x4e/0xb0 [ 819.316104] [<ffffffff813b149b>] __driver_attach+0xab/0xb0 [ 819.322337] [<ffffffff813b13f0>] ? driver_probe_device+0xb0/0xb0 [ 819.329151] [<ffffffff813af5d6>] bus_for_each_dev+0x56/0x90 [ 819.335489] [<ffffffff813b0d7e>] driver_attach+0x1e/0x20 [ 819.341534] [<ffffffff813b0980>] bus_add_driver+0x1b0/0x2a0 [ 819.347884] [<ffffffffa0347000>] ? 0xffffffffa0346fff [ 819.353641] [<ffffffff813b19f6>] driver_register+0x76/0x140 [ 819.359980] [<ffffffff8159f18b>] ? printk+0x51/0x53 [ 819.365524] [<ffffffffa0347000>] ? 0xffffffffa0346fff [ 819.371291] [<ffffffff812f5896>] __pci_register_driver+0x56/0xd0 [ 819.378096] [<ffffffffa0347054>] sbridge_init+0x54/0x1000 [sb_edac] [ 819.385231] [<ffffffff8100203f>] do_one_initcall+0x3f/0x170 [ 819.391577] [<ffffffff810bcd2e>] sys_init_module+0xbe/0x230 [ 819.397926] [<ffffffff815bb529>] system_call_fastpath+0x16/0x1b [ 819.404633] ---[ end trace 1654fdd39556689f ]--- This happens because the bus is not being properly initialized. Instead of putting the memory sub-devices inside the memory controller, it is putting everything under the same directory: $ tree /sys/bus/edac/ /sys/bus/edac/ ├── devices │ ├── all_channel_counts -> ../../../devices/system/edac/mc/mc0/all_channel_counts │ ├── csrow0 -> ../../../devices/system/edac/mc/mc0/csrow0 │ ├── csrow1 -> ../../../devices/system/edac/mc/mc0/csrow1 │ ├── csrow2 -> ../../../devices/system/edac/mc/mc0/csrow2 │ ├── dimm0 -> ../../../devices/system/edac/mc/mc0/dimm0 │ ├── dimm1 -> ../../../devices/system/edac/mc/mc0/dimm1 │ ├── dimm3 -> ../../../devices/system/edac/mc/mc0/dimm3 │ ├── dimm6 -> ../../../devices/system/edac/mc/mc0/dimm6 │ ├── inject_addrmatch -> ../../../devices/system/edac/mc/mc0/inject_addrmatch │ ├── mc -> ../../../devices/system/edac/mc │ └── mc0 -> ../../../devices/system/edac/mc/mc0 ├── drivers ├── drivers_autoprobe ├── drivers_probe └── uevent On a multi-memory controller system, the names "csrow%d" and "dimm%d" should be under "mc%d", and not at the main hierarchy level. So, we need to create a per-MC bus, in order to have its own namespace. Reviewed-by: Aristeu Rozanski <arozansk@redhat.com> Cc: Doug Thompson <norsk5@yahoo.com> Cc: Greg K H <gregkh@linuxfoundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> |
||
|---|---|---|
| .. | ||
| amba | ||
| bcma | ||
| byteorder | ||
| caif | ||
| can | ||
| ceph | ||
| crush | ||
| decompress | ||
| dvb | ||
| fsl | ||
| hdlc | ||
| hsi | ||
| i2c | ||
| input | ||
| isdn | ||
| lockd | ||
| mfd | ||
| mlx4 | ||
| mmc | ||
| mtd | ||
| netfilter | ||
| netfilter_arp | ||
| netfilter_bridge | ||
| netfilter_ipv4 | ||
| netfilter_ipv6 | ||
| nfc | ||
| nfsd | ||
| pinctrl | ||
| platform_data | ||
| power | ||
| raid | ||
| regulator | ||
| rtc | ||
| spi | ||
| ssb | ||
| sunrpc | ||
| tc_act | ||
| tc_ematch | ||
| unaligned | ||
| usb | ||
| uwb | ||
| wimax | ||
| 8250_pci.h | ||
| a.out.h | ||
| ac97_codec.h | ||
| acct.h | ||
| acpi_io.h | ||
| acpi_pmtmr.h | ||
| acpi.h | ||
| adb.h | ||
| adfs_fs.h | ||
| aer.h | ||
| affs_hardblocks.h | ||
| agp_backend.h | ||
| agpgart.h | ||
| ahci_platform.h | ||
| aio_abi.h | ||
| aio.h | ||
| alarmtimer.h | ||
| altera_jtaguart.h | ||
| altera_uart.h | ||
| amd-iommu.h | ||
| amifd.h | ||
| amifdreg.h | ||
| amigaffs.h | ||
| anon_inodes.h | ||
| apm_bios.h | ||
| apm-emulation.h | ||
| apple_bl.h | ||
| arcdevice.h | ||
| arcfb.h | ||
| async_tx.h | ||
| async.h | ||
| ata_platform.h | ||
| ata.h | ||
| atalk.h | ||
| ath9k_platform.h | ||
| atm_eni.h | ||
| atm_he.h | ||
| atm_idt77105.h | ||
| atm_nicstar.h | ||
| atm_suni.h | ||
| atm_tcp.h | ||
| atm_zatm.h | ||
| atm.h | ||
| atmapi.h | ||
| atmarp.h | ||
| atmbr2684.h | ||
| atmclip.h | ||
| atmdev.h | ||
| atmel_pdc.h | ||
| atmel_pwm.h | ||
| atmel_serial.h | ||
| atmel_tc.h | ||
| atmel-mci.h | ||
| atmel-pwm-bl.h | ||
| atmel-ssc.h | ||
| atmioc.h | ||
| atmlec.h | ||
| atmmpc.h | ||
| atmppp.h | ||
| atmsap.h | ||
| atmsvc.h | ||
| atomic.h | ||
| attribute_container.h | ||
| audit.h | ||
| auto_dev-ioctl.h | ||
| auto_fs4.h | ||
| auto_fs.h | ||
| auxvec.h | ||
| average.h | ||
| ax25.h | ||
| b1lli.h | ||
| b1pcmcia.h | ||
| backing-dev.h | ||
| backlight.h | ||
| basic_mmio_gpio.h | ||
| baycom.h | ||
| bcd.h | ||
| bch.h | ||
| bfin_mac.h | ||
| bfs_fs.h | ||
| binfmts.h | ||
| bio.h | ||
| bit_spinlock.h | ||
| bitmap.h | ||
| bitops.h | ||
| bitrev.h | ||
| blk_types.h | ||
| blk-iopoll.h | ||
| blkdev.h | ||
| blkpg.h | ||
| blktrace_api.h | ||
| blockgroup_lock.h | ||
| bma150.h | ||
| bootmem.h | ||
| bottom_half.h | ||
| bpqether.h | ||
| brcmphy.h | ||
| bsearch.h | ||
| bsg-lib.h | ||
| bsg.h | ||
| btree-128.h | ||
| btree-type.h | ||
| btree.h | ||
| buffer_head.h | ||
| bug.h | ||
| c2port.h | ||
| cache.h | ||
| can.h | ||
| capability.h | ||
| capi.h | ||
| cb710.h | ||
| cciss_defs.h | ||
| cciss_ioctl.h | ||
| cd1400.h | ||
| cdev.h | ||
| cdk.h | ||
| cdrom.h | ||
| cfag12864b.h | ||
| cgroup_subsys.h | ||
| cgroup.h | ||
| cgroupstats.h | ||
| chio.h | ||
| circ_buf.h | ||
| cleancache.h | ||
| clk-private.h | ||
| clk-provider.h | ||
| clk.h | ||
| clkdev.h | ||
| clksrc-dbx500-prcmu.h | ||
| clockchips.h | ||
| clocksource.h | ||
| cm4000_cs.h | ||
| cn_proc.h | ||
| cnt32_to_63.h | ||
| coda_psdev.h | ||
| coda.h | ||
| coff.h | ||
| com20020.h | ||
| compaction.h | ||
| compat.h | ||
| compiler-gcc3.h | ||
| compiler-gcc4.h | ||
| compiler-gcc.h | ||
| compiler-intel.h | ||
| compiler.h | ||
| completion.h | ||
| comstats.h | ||
| concap.h | ||
| configfs.h | ||
| connector.h | ||
| console_struct.h | ||
| console.h | ||
| consolemap.h | ||
| const.h | ||
| cordic.h | ||
| coredump.h | ||
| cper.h | ||
| cpu_pm.h | ||
| cpu_rmap.h | ||
| cpu.h | ||
| cpufreq.h | ||
| cpuidle.h | ||
| cpumask.h | ||
| cpuset.h | ||
| cramfs_fs_sb.h | ||
| cramfs_fs.h | ||
| crash_dump.h | ||
| crc7.h | ||
| crc8.h | ||
| crc16.h | ||
| crc32.h | ||
| crc32c.h | ||
| crc-ccitt.h | ||
| crc-itu-t.h | ||
| crc-t10dif.h | ||
| cred.h | ||
| crypto.h | ||
| cryptohash.h | ||
| cryptouser.h | ||
| cs5535.h | ||
| ctype.h | ||
| cuda.h | ||
| cyclades.h | ||
| cyclomx.h | ||
| cycx_cfm.h | ||
| cycx_drv.h | ||
| cycx_x25.h | ||
| davinci_emac.h | ||
| dca.h | ||
| dcache.h | ||
| dcbnl.h | ||
| dccp.h | ||
| dcookies.h | ||
| debug_locks.h | ||
| debugfs.h | ||
| debugobjects.h | ||
| delay.h | ||
| delayacct.h | ||
| devfreq.h | ||
| device_cgroup.h | ||
| device-mapper.h | ||
| device.h | ||
| devpts_fs.h | ||
| digsig.h | ||
| dio.h | ||
| dirent.h | ||
| dlm_device.h | ||
| dlm_netlink.h | ||
| dlm_plock.h | ||
| dlm.h | ||
| dlmconstants.h | ||
| dm9000.h | ||
| dm-dirty-log.h | ||
| dm-io.h | ||
| dm-ioctl.h | ||
| dm-kcopyd.h | ||
| dm-log-userspace.h | ||
| dm-region-hash.h | ||
| dma_remapping.h | ||
| dma-attrs.h | ||
| dma-buf.h | ||
| dma-debug.h | ||
| dma-direction.h | ||
| dma-mapping.h | ||
| dmaengine.h | ||
| dmapool.h | ||
| dmar.h | ||
| dmi.h | ||
| dn.h | ||
| dnotify.h | ||
| dns_resolver.h | ||
| dqblk_qtree.h | ||
| dqblk_v1.h | ||
| dqblk_v2.h | ||
| dqblk_xfs.h | ||
| drbd_limits.h | ||
| drbd_nl.h | ||
| drbd_tag_magic.h | ||
| drbd.h | ||
| ds1286.h | ||
| ds2782_battery.h | ||
| ds17287rtc.h | ||
| dtlk.h | ||
| dw_apb_timer.h | ||
| dw_dmac.h | ||
| dynamic_debug.h | ||
| dynamic_queue_limits.h | ||
| ecryptfs.h | ||
| edac.h | ||
| edd.h | ||
| eeprom_93cx6.h | ||
| eeprom_93xx46.h | ||
| efi.h | ||
| efs_fs_sb.h | ||
| efs_vh.h | ||
| eisa.h | ||
| elevator.h | ||
| elf-em.h | ||
| elf-fdpic.h | ||
| elf.h | ||
| elfcore-compat.h | ||
| elfcore.h | ||
| elfnote.h | ||
| enclosure.h | ||
| err.h | ||
| errno.h | ||
| errqueue.h | ||
| etherdevice.h | ||
| ethtool.h | ||
| eventfd.h | ||
| eventpoll.h | ||
| evm.h | ||
| export.h | ||
| exportfs.h | ||
| ext2_fs.h | ||
| f75375s.h | ||
| fadvise.h | ||
| falloc.h | ||
| fanotify.h | ||
| fault-inject.h | ||
| fb.h | ||
| fcdevice.h | ||
| fcntl.h | ||
| fd.h | ||
| fddidevice.h | ||
| fdreg.h | ||
| fdtable.h | ||
| fec.h | ||
| fib_rules.h | ||
| fiemap.h | ||
| file.h | ||
| filter.h | ||
| fips.h | ||
| firewire-cdev.h | ||
| firewire-constants.h | ||
| firewire.h | ||
| firmware-map.h | ||
| firmware.h | ||
| flat.h | ||
| flex_array.h | ||
| font.h | ||
| freezer.h | ||
| fs_enet_pd.h | ||
| fs_stack.h | ||
| fs_struct.h | ||
| fs_uart_pd.h | ||
| fs.h | ||
| fscache-cache.h | ||
| fscache.h | ||
| fsl_devices.h | ||
| fsl_hypervisor.h | ||
| fsl-diu-fb.h | ||
| fsnotify_backend.h | ||
| fsnotify.h | ||
| ftrace_event.h | ||
| ftrace_irq.h | ||
| ftrace.h | ||
| fuse.h | ||
| futex.h | ||
| gameport.h | ||
| gcd.h | ||
| gen_stats.h | ||
| genalloc.h | ||
| generic_acl.h | ||
| generic_serial.h | ||
| genetlink.h | ||
| genhd.h | ||
| getcpu.h | ||
| gfp.h | ||
| gfs2_ondisk.h | ||
| gigaset_dev.h | ||
| gpio_keys.h | ||
| gpio_mouse.h | ||
| gpio-fan.h | ||
| gpio-i2cmux.h | ||
| gpio-pxa.h | ||
| gpio.h | ||
| gsmmux.h | ||
| hardirq.h | ||
| hash.h | ||
| hdlc.h | ||
| hdlcdrv.h | ||
| hdreg.h | ||
| hid-debug.h | ||
| hid-roccat.h | ||
| hid.h | ||
| hiddev.h | ||
| hidraw.h | ||
| highmem.h | ||
| highuid.h | ||
| hil_mlc.h | ||
| hil.h | ||
| hippidevice.h | ||
| hp_sdc.h | ||
| hpet.h | ||
| hrtimer.h | ||
| htcpld.h | ||
| htirq.h | ||
| huge_mm.h | ||
| hugetlb_inline.h | ||
| hugetlb.h | ||
| hw_breakpoint.h | ||
| hw_random.h | ||
| hwmon-sysfs.h | ||
| hwmon-vid.h | ||
| hwmon.h | ||
| hwspinlock.h | ||
| hyperv.h | ||
| hysdn_if.h | ||
| i2c-algo-bit.h | ||
| i2c-algo-pca.h | ||
| i2c-algo-pcf.h | ||
| i2c-dev.h | ||
| i2c-gpio.h | ||
| i2c-mux.h | ||
| i2c-ocores.h | ||
| i2c-omap.h | ||
| i2c-pca-platform.h | ||
| i2c-pnx.h | ||
| i2c-pxa.h | ||
| i2c-smbus.h | ||
| i2c-tegra.h | ||
| i2c-xiic.h | ||
| i2c.h | ||
| i2o-dev.h | ||
| i2o.h | ||
| i8k.h | ||
| i7300_idle.h | ||
| i8042.h | ||
| i8253.h | ||
| i82593.h | ||
| ibmtr.h | ||
| icmp.h | ||
| icmpv6.h | ||
| ide.h | ||
| idr.h | ||
| ieee80211.h | ||
| if_addr.h | ||
| if_addrlabel.h | ||
| if_alg.h | ||
| if_arcnet.h | ||
| if_arp.h | ||
| if_bonding.h | ||
| if_bridge.h | ||
| if_cablemodem.h | ||
| if_ec.h | ||
| if_eql.h | ||
| if_ether.h | ||
| if_fc.h | ||
| if_fddi.h | ||
| if_frad.h | ||
| if_hippi.h | ||
| if_infiniband.h | ||
| if_link.h | ||
| if_ltalk.h | ||
| if_macvlan.h | ||
| if_packet.h | ||
| if_phonet.h | ||
| if_plip.h | ||
| if_ppp.h | ||
| if_pppol2tp.h | ||
| if_pppox.h | ||
| if_slip.h | ||
| if_strip.h | ||
| if_team.h | ||
| if_tr.h | ||
| if_tun.h | ||
| if_tunnel.h | ||
| if_vlan.h | ||
| if_x25.h | ||
| if.h | ||
| igmp.h | ||
| ihex.h | ||
| ima.h | ||
| in6.h | ||
| in_route.h | ||
| in.h | ||
| inet_diag.h | ||
| inet_lro.h | ||
| inet.h | ||
| inetdevice.h | ||
| init_ohci1394_dma.h | ||
| init_task.h | ||
| init.h | ||
| initrd.h | ||
| inotify.h | ||
| input-polldev.h | ||
| input.h | ||
| integrity.h | ||
| intel_mid_dma.h | ||
| intel_pmic_gpio.h | ||
| intel-iommu.h | ||
| interrupt.h | ||
| io-mapping.h | ||
| io.h | ||
| ioc3.h | ||
| ioc4.h | ||
| iocontext.h | ||
| ioctl.h | ||
| iommu-helper.h | ||
| iommu.h | ||
| ioport.h | ||
| ioprio.h | ||
| iova.h | ||
| ip6_tunnel.h | ||
| ip_vs.h | ||
| ip.h | ||
| ipc_namespace.h | ||
| ipc.h | ||
| ipmi_msgdefs.h | ||
| ipmi_smi.h | ||
| ipmi.h | ||
| ipsec.h | ||
| ipv6_route.h | ||
| ipv6.h | ||
| ipx.h | ||
| irda.h | ||
| irq_cpustat.h | ||
| irq_work.h | ||
| irq.h | ||
| irqdesc.h | ||
| irqdomain.h | ||
| irqflags.h | ||
| irqnr.h | ||
| irqreturn.h | ||
| isa.h | ||
| isapnp.h | ||
| iscsi_boot_sysfs.h | ||
| iscsi_ibft.h | ||
| isdn_divertif.h | ||
| isdn_ppp.h | ||
| isdn.h | ||
| isdnif.h | ||
| isicom.h | ||
| iso_fs.h | ||
| istallion.h | ||
| ivtv.h | ||
| ivtvfb.h | ||
| ixjuser.h | ||
| jbd2.h | ||
| jbd_common.h | ||
| jbd.h | ||
| jffs2.h | ||
| jhash.h | ||
| jiffies.h | ||
| journal-head.h | ||
| joystick.h | ||
| jump_label.h | ||
| jz4740-adc.h | ||
| kallsyms.h | ||
| kbd_diacr.h | ||
| kbd_kern.h | ||
| Kbuild | ||
| kbuild.h | ||
| kconfig.h | ||
| kd.h | ||
| kdb.h | ||
| kdebug.h | ||
| kdev_t.h | ||
| kernel_stat.h | ||
| kernel-page-flags.h | ||
| kernel.h | ||
| kernelcapi.h | ||
| kexec.h | ||
| key-type.h | ||
| key.h | ||
| keyboard.h | ||
| keyctl.h | ||
| kfifo.h | ||
| kgdb.h | ||
| khugepaged.h | ||
| klist.h | ||
| kmalloc_sizes.h | ||
| kmemcheck.h | ||
| kmemleak.h | ||
| kmod.h | ||
| kmsg_dump.h | ||
| kobj_map.h | ||
| kobject_ns.h | ||
| kobject.h | ||
| kprobes.h | ||
| kref.h | ||
| ks0108.h | ||
| ks8842.h | ||
| ksm.h | ||
| kthread.h | ||
| ktime.h | ||
| kvm_host.h | ||
| kvm_para.h | ||
| kvm_types.h | ||
| kvm.h | ||
| l2tp.h | ||
| lapb.h | ||
| latencytop.h | ||
| lcd.h | ||
| lcm.h | ||
| led-lm3530.h | ||
| leds_pwm.h | ||
| leds-bd2802.h | ||
| leds-lp3944.h | ||
| leds-lp5521.h | ||
| leds-lp5523.h | ||
| leds-pca9532.h | ||
| leds-regulator.h | ||
| leds-tca6507.h | ||
| leds.h | ||
| lglock.h | ||
| lguest_launcher.h | ||
| lguest.h | ||
| libata.h | ||
| libps2.h | ||
| license.h | ||
| limits.h | ||
| linkage.h | ||
| linux_logo.h | ||
| lis3lv02d.h | ||
| list_bl.h | ||
| list_nulls.h | ||
| list_sort.h | ||
| list.h | ||
| llc.h | ||
| llist.h | ||
| lockdep.h | ||
| log2.h | ||
| loop.h | ||
| lp855x.h | ||
| lp8727.h | ||
| lp.h | ||
| lru_cache.h | ||
| lsm_audit.h | ||
| lzo.h | ||
| m48t86.h | ||
| magic.h | ||
| major.h | ||
| map_to_7segment.h | ||
| maple.h | ||
| marvell_phy.h | ||
| math64.h | ||
| matroxfb.h | ||
| max17040_battery.h | ||
| mbcache.h | ||
| mbus.h | ||
| mc6821.h | ||
| mc146818rtc.h | ||
| mca-legacy.h | ||
| mca.h | ||
| mdio-bitbang.h | ||
| mdio-gpio.h | ||
| mdio.h | ||
| media.h | ||
| memblock.h | ||
| memcontrol.h | ||
| memory_hotplug.h | ||
| memory.h | ||
| mempolicy.h | ||
| mempool.h | ||
| memstick.h | ||
| meye.h | ||
| mg_disk.h | ||
| micrel_phy.h | ||
| migrate_mode.h | ||
| migrate.h | ||
| mii.h | ||
| minix_fs.h | ||
| miscdevice.h | ||
| mISDNdsp.h | ||
| mISDNhw.h | ||
| mISDNif.h | ||
| mm_inline.h | ||
| mm_types.h | ||
| mm.h | ||
| mman.h | ||
| mmdebug.h | ||
| mmiotrace.h | ||
| mmtimer.h | ||
| mmu_context.h | ||
| mmu_notifier.h | ||
| mmzone.h | ||
| mnt_namespace.h | ||
| mod_devicetable.h | ||
| module.h | ||
| moduleloader.h | ||
| moduleparam.h | ||
| mount.h | ||
| mpage.h | ||
| mpi.h | ||
| mqueue.h | ||
| mroute6.h | ||
| mroute.h | ||
| msdos_fs.h | ||
| msg.h | ||
| msi.h | ||
| msm_mdp.h | ||
| mtio.h | ||
| mutex-debug.h | ||
| mutex.h | ||
| mv643xx_eth.h | ||
| mv643xx_i2c.h | ||
| mv643xx.h | ||
| mxm-wmi.h | ||
| n_r3964.h | ||
| namei.h | ||
| nbd.h | ||
| ncp_fs.h | ||
| ncp_mount.h | ||
| ncp_no.h | ||
| ncp.h | ||
| neighbour.h | ||
| net_dropmon.h | ||
| net_tstamp.h | ||
| net.h | ||
| netdev_features.h | ||
| netdevice.h | ||
| netfilter_arp.h | ||
| netfilter_bridge.h | ||
| netfilter_decnet.h | ||
| netfilter_ipv4.h | ||
| netfilter_ipv6.h | ||
| netfilter.h | ||
| netlink.h | ||
| netpoll.h | ||
| netrom.h | ||
| nfc.h | ||
| nfs2.h | ||
| nfs3.h | ||
| nfs4_mount.h | ||
| nfs4.h | ||
| nfs_fs_i.h | ||
| nfs_fs_sb.h | ||
| nfs_fs.h | ||
| nfs_idmap.h | ||
| nfs_iostat.h | ||
| nfs_mount.h | ||
| nfs_page.h | ||
| nfs_xdr.h | ||
| nfs.h | ||
| nfsacl.h | ||
| nilfs2_fs.h | ||
| nl80211.h | ||
| nl802154.h | ||
| nls.h | ||
| nmi.h | ||
| node.h | ||
| nodemask.h | ||
| notifier.h | ||
| nsc_gpio.h | ||
| nsproxy.h | ||
| nubus.h | ||
| numa.h | ||
| nvme.h | ||
| nvram.h | ||
| nwpserial.h | ||
| of_address.h | ||
| of_device.h | ||
| of_fdt.h | ||
| of_gpio.h | ||
| of_i2c.h | ||
| of_irq.h | ||
| of_mdio.h | ||
| of_mtd.h | ||
| of_net.h | ||
| of_pci.h | ||
| of_pdt.h | ||
| of_platform.h | ||
| of_spi.h | ||
| of.h | ||
| omap3isp.h | ||
| omapfb.h | ||
| oom.h | ||
| openvswitch.h | ||
| opp.h | ||
| oprofile.h | ||
| oxu210hp.h | ||
| padata.h | ||
| page_cgroup.h | ||
| page-debug-flags.h | ||
| page-flags.h | ||
| page-isolation.h | ||
| pageblock-flags.h | ||
| pagemap.h | ||
| pagevec.h | ||
| param.h | ||
| parport_pc.h | ||
| parport.h | ||
| parser.h | ||
| pata_arasan_cf_data.h | ||
| patchkey.h | ||
| path.h | ||
| pch_dma.h | ||
| pci_hotplug.h | ||
| pci_ids.h | ||
| pci_regs.h | ||
| pci-acpi.h | ||
| pci-aspm.h | ||
| pci-ats.h | ||
| pci-dma.h | ||
| pci.h | ||
| pcieport_if.h | ||
| pda_power.h | ||
| percpu_counter.h | ||
| percpu-defs.h | ||
| percpu.h | ||
| perf_event.h | ||
| personality.h | ||
| pfkeyv2.h | ||
| pfn.h | ||
| pg.h | ||
| phantom.h | ||
| phonedev.h | ||
| phonet.h | ||
| phy_fixed.h | ||
| phy.h | ||
| pid_namespace.h | ||
| pid.h | ||
| pim.h | ||
| pipe_fs_i.h | ||
| pkt_cls.h | ||
| pkt_sched.h | ||
| pktcdvd.h | ||
| platform_device.h | ||
| plist.h | ||
| pm_clock.h | ||
| pm_domain.h | ||
| pm_qos.h | ||
| pm_runtime.h | ||
| pm_wakeup.h | ||
| pm.h | ||
| pmu.h | ||
| pnfs_osd_xdr.h | ||
| pnp.h | ||
| poison.h | ||
| poll.h | ||
| posix_acl_xattr.h | ||
| posix_acl.h | ||
| posix_types.h | ||
| posix-clock.h | ||
| posix-timers.h | ||
| power_supply.h | ||
| ppdev.h | ||
| ppp_channel.h | ||
| ppp_defs.h | ||
| ppp-comp.h | ||
| ppp-ioctl.h | ||
| pps_kernel.h | ||
| pps-gpio.h | ||
| pps.h | ||
| prctl.h | ||
| preempt.h | ||
| prefetch.h | ||
| printk.h | ||
| prio_heap.h | ||
| prio_tree.h | ||
| proc_fs.h | ||
| profile.h | ||
| proportions.h | ||
| pstore.h | ||
| pti.h | ||
| ptp_classify.h | ||
| ptp_clock_kernel.h | ||
| ptp_clock.h | ||
| ptrace.h | ||
| pwm_backlight.h | ||
| pwm.h | ||
| pxa2xx_ssp.h | ||
| pxa168_eth.h | ||
| qnx4_fs.h | ||
| qnx6_fs.h | ||
| qnxtypes.h | ||
| quicklist.h | ||
| quota.h | ||
| quotaops.h | ||
| radeonfb.h | ||
| radix-tree.h | ||
| raid_class.h | ||
| ramfs.h | ||
| ramoops.h | ||
| random.h | ||
| range.h | ||
| ratelimit.h | ||
| rational.h | ||
| raw.h | ||
| rbtree.h | ||
| rculist_bl.h | ||
| rculist_nulls.h | ||
| rculist.h | ||
| rcupdate.h | ||
| rcutiny.h | ||
| rcutree.h | ||
| rds.h | ||
| reboot.h | ||
| reciprocal_div.h | ||
| regmap.h | ||
| regset.h | ||
| reiserfs_fs.h | ||
| reiserfs_xattr.h | ||
| relay.h | ||
| remoteproc.h | ||
| res_counter.h | ||
| resource.h | ||
| resume-trace.h | ||
| rfkill-gpio.h | ||
| rfkill-regulator.h | ||
| rfkill.h | ||
| ring_buffer.h | ||
| rio_drv.h | ||
| rio_ids.h | ||
| rio_regs.h | ||
| rio.h | ||
| rmap.h | ||
| romfs_fs.h | ||
| root_dev.h | ||
| rose.h | ||
| rotary_encoder.h | ||
| route.h | ||
| rpmsg.h | ||
| rslib.h | ||
| rtc-v3020.h | ||
| rtc.h | ||
| rtmutex.h | ||
| rtnetlink.h | ||
| rwlock_api_smp.h | ||
| rwlock_types.h | ||
| rwlock.h | ||
| rwsem-spinlock.h | ||
| rwsem.h | ||
| rxrpc.h | ||
| s3c_adc_battery.h | ||
| sa11x0-dma.h | ||
| sc26198.h | ||
| scatterlist.h | ||
| scc.h | ||
| sched.h | ||
| screen_info.h | ||
| sctp.h | ||
| scx200_gpio.h | ||
| scx200.h | ||
| sdla.h | ||
| seccomp.h | ||
| securebits.h | ||
| security.h | ||
| selection.h | ||
| selinux_netlink.h | ||
| selinux.h | ||
| sem.h | ||
| semaphore.h | ||
| seq_file_net.h | ||
| seq_file.h | ||
| seqlock.h | ||
| serial167.h | ||
| serial_8250.h | ||
| serial_core.h | ||
| serial_max3100.h | ||
| serial_mfd.h | ||
| serial_pnx8xxx.h | ||
| serial_reg.h | ||
| serial_sci.h | ||
| serial.h | ||
| serio.h | ||
| sfi_acpi.h | ||
| sfi.h | ||
| sh_clk.h | ||
| sh_dma.h | ||
| sh_eth.h | ||
| sh_intc.h | ||
| sh_pfc.h | ||
| sh_timer.h | ||
| shm.h | ||
| shmem_fs.h | ||
| shrinker.h | ||
| sht15.h | ||
| signal.h | ||
| signalfd.h | ||
| sirfsoc_dma.h | ||
| skbuff.h | ||
| slab_def.h | ||
| slab.h | ||
| slob_def.h | ||
| slub_def.h | ||
| sm501-regs.h | ||
| sm501.h | ||
| smc91x.h | ||
| smc911x.h | ||
| smp.h | ||
| smsc911x.h | ||
| smscphy.h | ||
| snmp.h | ||
| sock_diag.h | ||
| socket.h | ||
| sockios.h | ||
| som.h | ||
| sonet.h | ||
| sony-laptop.h | ||
| sonypi.h | ||
| sort.h | ||
| sound.h | ||
| soundcard.h | ||
| spinlock_api_smp.h | ||
| spinlock_api_up.h | ||
| spinlock_types_up.h | ||
| spinlock_types.h | ||
| spinlock_up.h | ||
| spinlock.h | ||
| splice.h | ||
| srcu.h | ||
| stackprotector.h | ||
| stacktrace.h | ||
| stallion.h | ||
| start_kernel.h | ||
| stat.h | ||
| statfs.h | ||
| static_key.h | ||
| stddef.h | ||
| stmmac.h | ||
| stop_machine.h | ||
| string_helpers.h | ||
| string.h | ||
| stringify.h | ||
| sungem_phy.h | ||
| sunserialcore.h | ||
| superhyway.h | ||
| suspend_ioctls.h | ||
| suspend.h | ||
| svga.h | ||
| swab.h | ||
| swap.h | ||
| swapops.h | ||
| swiotlb.h | ||
| synclink.h | ||
| sys_soc.h | ||
| sys.h | ||
| syscalls.h | ||
| syscore_ops.h | ||
| sysctl.h | ||
| sysfs.h | ||
| sysinfo.h | ||
| syslog.h | ||
| sysrq.h | ||
| sysv_fs.h | ||
| task_io_accounting_ops.h | ||
| task_io_accounting.h | ||
| taskstats_kern.h | ||
| taskstats.h | ||
| tboot.h | ||
| tc.h | ||
| tca6416_keypad.h | ||
| tcp.h | ||
| telephony.h | ||
| termios.h | ||
| textsearch_fsm.h | ||
| textsearch.h | ||
| tfrc.h | ||
| thermal.h | ||
| thread_info.h | ||
| threads.h | ||
| ti_wilink_st.h | ||
| tick.h | ||
| tifm.h | ||
| timb_dma.h | ||
| timb_gpio.h | ||
| time.h | ||
| timecompare.h | ||
| timer.h | ||
| timerfd.h | ||
| timeriomem-rng.h | ||
| timerqueue.h | ||
| times.h | ||
| timex.h | ||
| tiocl.h | ||
| tipc_config.h | ||
| tipc.h | ||
| topology.h | ||
| toshiba.h | ||
| tpm_command.h | ||
| tpm.h | ||
| trace_clock.h | ||
| trace_seq.h | ||
| tracehook.h | ||
| tracepoint.h | ||
| transport_class.h | ||
| trdevice.h | ||
| tsacct_kern.h | ||
| tty_driver.h | ||
| tty_flip.h | ||
| tty_ldisc.h | ||
| tty.h | ||
| typecheck.h | ||
| types.h | ||
| u64_stats_sync.h | ||
| uaccess.h | ||
| ucb1400.h | ||
| udf_fs_i.h | ||
| udp.h | ||
| uinput.h | ||
| uio_driver.h | ||
| uio.h | ||
| ultrasound.h | ||
| un.h | ||
| unistd.h | ||
| unix_diag.h | ||
| usb_usual.h | ||
| usb.h | ||
| usbdevice_fs.h | ||
| user_namespace.h | ||
| user-return-notifier.h | ||
| user.h | ||
| utime.h | ||
| uts.h | ||
| utsname.h | ||
| uuid.h | ||
| uvcvideo.h | ||
| uwb.h | ||
| v4l2-mediabus.h | ||
| v4l2-subdev.h | ||
| vermagic.h | ||
| veth.h | ||
| vfs.h | ||
| vga_switcheroo.h | ||
| vgaarb.h | ||
| vhost.h | ||
| via_i2c.h | ||
| via-core.h | ||
| via-gpio.h | ||
| via.h | ||
| video_output.h | ||
| videodev2.h | ||
| virtio_9p.h | ||
| virtio_balloon.h | ||
| virtio_blk.h | ||
| virtio_config.h | ||
| virtio_console.h | ||
| virtio_ids.h | ||
| virtio_mmio.h | ||
| virtio_net.h | ||
| virtio_pci.h | ||
| virtio_ring.h | ||
| virtio_rng.h | ||
| virtio_scsi.h | ||
| virtio.h | ||
| vlynq.h | ||
| vm_event_item.h | ||
| vmalloc.h | ||
| vmstat.h | ||
| vt_buffer.h | ||
| vt_kern.h | ||
| vt.h | ||
| w1-gpio.h | ||
| wait.h | ||
| wanrouter.h | ||
| watchdog.h | ||
| wimax.h | ||
| wireless.h | ||
| wl12xx.h | ||
| wm97xx.h | ||
| workqueue.h | ||
| writeback.h | ||
| x25.h | ||
| xattr.h | ||
| xfrm.h | ||
| xilinxfb.h | ||
| xz.h | ||
| yam.h | ||
| z2_battery.h | ||
| zconf.h | ||
| zlib.h | ||
| zorro_ids.h | ||
| zorro.h | ||
| zutil.h | ||