[PATCH v5] arm pl011 serial: support multi-irq request

Bing Fan hptsfb at gmail.com
Mon Jul 26 00:17:56 PDT 2021


Hello,

I tried to reproduce, but unfortunately, it didn't, and the dmesg log as 
attachment.

I had enabled CONFIG_KASAN and CONFIG_SLUB_DEBUG_ON configs.

Can you describe the flow of your operation?


Thanks.



在 7/24/2021 0:47, Qian Cai 写道:
>
> On 6/30/2021 9:38 PM, Bing Fan wrote:
>> From: Bing Fan <tombinfan at tencent.com>
>>
>> In order to make pl011 work better, multiple interrupts are
>> required, such as TXIM, RXIM, RTIM, error interrupt(FE/PE/BE/OE);
>> at the same time, pl011 to GIC does not merge the interrupt
>> lines(each serial-interrupt corresponding to different GIC hardware
>> interrupt), so need to enable and request multiple gic interrupt
>> numbers in the driver.
>>
>> Signed-off-by: Bing Fan <tombinfan at tencent.com>
>> ---
>>   drivers/tty/serial/amba-pl011.c | 34 ++++++++++++++++++++++++++++++---
>>   1 file changed, 31 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
>> index 78682c12156a..7bfe8efcc787 100644
>> --- a/drivers/tty/serial/amba-pl011.c
>> +++ b/drivers/tty/serial/amba-pl011.c
>> @@ -1701,11 +1701,39 @@ static void pl011_write_lcr_h(struct uart_amba_port *uap, unsigned int lcr_h)
>>   	}
>>   }
>>   
>> +static void pl011_release_irq(struct uart_amba_port *uap, unsigned int max_cnt)
>> +{
>> +	struct amba_device *amba_dev = container_of(uap->port.dev, struct amba_device, dev);
>> +	int i;
>> +
>> +	for (i = 0; i < max_cnt; i++)
>> +		if (amba_dev->irq[i])
>> +			free_irq(amba_dev->irq[i], uap);
>> +}
>> +
>>   static int pl011_allocate_irq(struct uart_amba_port *uap)
>>   {
>> +	int ret = 0;
>> +	int i;
>> +	unsigned int virq;
>> +	struct amba_device *amba_dev = container_of(uap->port.dev, struct amba_device, dev);
>> +
>>   	pl011_write(uap->im, uap, REG_IMSC);
>>   
>> -	return request_irq(uap->port.irq, pl011_int, IRQF_SHARED, "uart-pl011", uap);
>> +	for (i = 0; i < AMBA_NR_IRQS; i++) {
>> +		virq = amba_dev->irq[i];
> This could trigger a slab-out-of-bounds during booting.
>
> [   18.716444] BUG: KASAN: slab-out-of-bounds in pl011_allocate_irq+0x1f8/0x2f8
> [   18.724191] Read of size 4 at addr ffff00001a3a0508 by task swapper/0/1
>
> [   18.733680] CPU: 5 PID: 1 Comm: swapper/0 Not tainted 5.14.0-rc2-next-20210723 #69
> [   18.741941] Hardware name: MiTAC RAPTOR EV-883832-X3-0001/RAPTOR, BIOS 1.6 06/28/2020
> [   18.750461] Call trace:
> [   18.753597]  dump_backtrace+0x0/0x3b8
> [   18.757956]  show_stack+0x20/0x30
> [   18.761964]  dump_stack_lvl+0x8c/0xb8
> [   18.766319]  print_address_description.constprop.0+0x74/0x3c8
> [   18.772759]  kasan_report+0x1f0/0x208
> [   18.777113]  __asan_report_load4_noabort+0x34/0x60
> [   18.782596]  pl011_allocate_irq+0x1f8/0x2f8
> [   18.787471]  sbsa_uart_startup+0x44/0x98
> [   18.792086]  uart_startup.part.0+0x28c/0x618
> [   18.797048]  uart_port_activate+0xf0/0x178
> [   18.801836]  tty_port_open+0x118/0x1c8
> [   18.806278]  uart_open+0x44/0x70
> [   18.810199]  tty_open+0x248/0x960
> [   18.814207]  chrdev_open+0x19c/0x440
> [   18.818476]  do_dentry_open+0x3ac/0xdb0
> [   18.823005]  vfs_open+0x98/0xd0
> [   18.826838]  do_open.isra.0+0x4a8/0x8c0
> [   18.831366]  path_openat+0x3ac/0xe28
> [   18.835633]  do_filp_open+0x150/0x220
> [   18.839987]  file_open_name+0x120/0x200
> [   18.844515]  filp_open+0x40/0x80
> [   18.848436]  console_on_rootfs+0x30/0x7c
> [   18.853052]  kernel_init_freeable+0x74c/0x7d0
> [   18.858100]  kernel_init+0x2c/0x140
> [   18.862282]  ret_from_fork+0x10/0x18
>
> [   18.868732] Allocated by task 1:
> [   18.872651]  kasan_save_stack+0x28/0x58
> [   18.877181]  __kasan_kmalloc+0x8c/0xb0
> [   18.881622]  __kmalloc+0x260/0x3d0
> [   18.885716]  platform_device_alloc+0x34/0x1b8
> [   18.890766]  platform_device_register_full+0x68/0x418
> [   18.896509]  acpi_create_platform_device.part.0+0x170/0x538
> [   18.902776]  acpi_create_platform_device+0x8c/0xa8
> [   18.908259]  acpi_default_enumeration+0x54/0xd0
> [   18.913482]  acpi_bus_attach+0x664/0x7d0
> [   18.918096]  acpi_bus_attach+0x178/0x7d0
> [   18.922709]  acpi_bus_attach+0x178/0x7d0
> [   18.927324]  acpi_bus_attach+0x178/0x7d0
> [   18.931937]  acpi_bus_scan+0xa8/0x170
> [   18.936291]  acpi_scan_init+0x220/0x554
> [   18.940819]  acpi_init+0x1fc/0x27c
> [   18.944912]  do_one_initcall+0x170/0xb98
> [   18.949527]  kernel_init_freeable+0x718/0x7d0
> [   18.954575]  kernel_init+0x2c/0x140
> [   18.958759]  ret_from_fork+0x10/0x18
>
> [   18.965214] The buggy address belongs to the object at ffff00001a3a0000
>                  which belongs to the cache kmalloc-2k of size 2048
> [   18.979117] The buggy address is located 1288 bytes inside of
>                  2048-byte region [ffff00001a3a0000, ffff00001a3a0800)
> [   18.992412] The buggy address belongs to the page:
> [   18.997894] page:ffffffc000068e00 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x9a38
> [   19.007805] head:ffffffc000068e00 order:2 compound_mapcount:0 compound_pincount:0
> [   19.015977] flags: 0x7ffff800010200(slab|head|node=0|zone=0|lastcpupid=0xfffff)
> [   19.023982] raw: 007ffff800010200 ffffffc000067508 ffffffc000069f08 ffff000012911280
> [   19.032416] raw: 0000000000000000 00000000002a002a 00000001ffffffff 0000000000000000
> [   19.040848] page dumped because: kasan: bad access detected
>
> [   19.049291] Memory state around the buggy address:
> [   19.054772]  ffff00001a3a0400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> [   19.062684]  ffff00001a3a0480: 00 00 00 00 00 00 00 00 00 00 00 04 fc fc fc fc
> [   19.070595] >ffff00001a3a0500: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
> [   19.078506]                       ^
> [   19.082686]  ffff00001a3a0580: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
> [   19.090597]  ffff00001a3a0600: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
>
>
>> +		if (virq == 0)
>> +			break;
>> +
>> +		ret = request_irq(virq, pl011_int, IRQF_SHARED, dev_name(&amba_dev->dev), uap);
>> +		if (ret) {
>> +			dev_err(uap->port.dev, "request %u interrupt failed\n", virq);
>> +			pl011_release_irq(uap, i - 1);
>> +			break;
>> +		}
>> +	}
>> +
>> +	return ret;
>>   }
>>   
>>   /*
>> @@ -1864,7 +1892,7 @@ static void pl011_shutdown(struct uart_port *port)
>>   
>>   	pl011_dma_shutdown(uap);
>>   
>> -	free_irq(uap->port.irq, uap);
>> +	pl011_release_irq(uap, AMBA_NR_IRQS);
>>   
>>   	pl011_disable_uart(uap);
>>   
>> @@ -1894,7 +1922,7 @@ static void sbsa_uart_shutdown(struct uart_port *port)
>>   
>>   	pl011_disable_interrupts(uap);
>>   
>> -	free_irq(uap->port.irq, uap);
>> +	pl011_release_irq(uap, AMBA_NR_IRQS);
>>   
>>   	if (uap->port.ops->flush_buffer)
>>   		uap->port.ops->flush_buffer(port);
>>
-------------- next part --------------
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.14.0-rc2-00265-gf0fddcec6b62-dirty (ubuntu at VM-71-95-ubuntu) (aarch64-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 8.3.0, GNU ld (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 2.32.0.20190321) #1 SMP PREEMPT Mon Jul 26 11:50:29 CST 2021
[    0.000000] Machine model: linux,dummy-virt
[    0.000000] efi: UEFI not found.
[    0.000000] NUMA: No NUMA configuration found
[    0.000000] NUMA: Faking a node at [mem 0x0000000040000000-0x000000013fffffff]
[    0.000000] NUMA: NODE_DATA [mem 0x13f7f7c00-0x13f7f9fff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000040000000-0x00000000ffffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   [mem 0x0000000100000000-0x000000013fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000040000000-0x000000013fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000013fffffff]
[    0.000000] cma: Reserved 32 MiB at 0x00000000fe000000
[    0.000000] kasan: KernelAddressSanitizer initialized
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv0.2 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: Trusted OS migration not required
[    0.000000] percpu: Embedded 24 pages/cpu s57944 r8192 d32168 u98304
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: GIC system register CPU interface
[    0.000000] CPU features: kernel page table isolation forced ON by KASLR
[    0.000000] CPU features: detected: Kernel page table isolation (KPTI)
[    0.000000] CPU features: detected: ARM erratum 843419
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 1032192
[    0.000000] Policy zone: Normal
[    0.000000] Kernel command line: console=ttyAMA0 mymodule.dyndbg=+p
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] software IO TLB: mapped [mem 0x00000000fa000000-0x00000000fe000000] (64MB)
[    0.000000] Memory: 3340912K/4194304K available (21760K kernel code, 14458K rwdata, 15040K rodata, 19712K init, 781K bss, 820624K reserved, 32768K cma-reserved)
[    0.000000] **********************************************************
[    0.000000] **   NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE   **
[    0.000000] **                                                      **
[    0.000000] ** This system shows unhashed kernel memory addresses   **
[    0.000000] ** via the console, logs, and other interfaces. This    **
[    0.000000] ** might reduce the security of your system.            **
[    0.000000] **                                                      **
[    0.000000] ** If you see this message and you are not debugging    **
[    0.000000] ** the kernel, report this immediately to your system   **
[    0.000000] ** administrator!                                       **
[    0.000000] **                                                      **
[    0.000000] **   NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE   **
[    0.000000] **********************************************************
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2.
[    0.000000]  Trampoline variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GICv3: 224 SPIs implemented
[    0.000000] GICv3: 0 Extended SPIs implemented
[    0.000000] GICv3: Distributor has no Range Selector support
[    0.000000] Root IRQ handler: gic_handle_irq
[    0.000000] GICv3: 16 PPIs implemented
[    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x00000000080a0000
[    0.000000] random: get_random_bytes called from start_kernel+0x1e0/0x3b0 with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 62.50MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x1cd42e208c, max_idle_ns: 881590405314 ns
[    0.000170] sched_clock: 56 bits at 62MHz, resolution 16ns, wraps every 4398046511096ns
[    0.019458] Console: colour dummy device 80x25
[    0.036216] Calibrating delay loop (skipped), value calculated using timer frequency.. 125.00 BogoMIPS (lpj=250000)
[    0.036667] pid_max: default: 32768 minimum: 301
[    0.041724] LSM: Security Framework initializing
[    0.046115] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.046546] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.199827] rcu: Hierarchical SRCU implementation.
[    0.228501] EFI services will not be available.
[    0.234741] smp: Bringing up secondary CPUs ...
[    0.342763] Detected VIPT I-cache on CPU1
[    0.344617] GICv3: CPU1: found redistributor 1 region 0:0x00000000080c0000
[    0.345313] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.354955] smp: Brought up 1 node, 2 CPUs
[    0.355258] SMP: Total of 2 processors activated.
[    0.355476] CPU features: detected: 32-bit EL0 Support
[    0.355582] CPU features: detected: 32-bit EL1 Support
[    0.355795] CPU features: detected: CRC32 instructions
[    0.460818] CPU: All CPU(s) started at EL1
[    0.462063] alternatives: patching kernel code
[    0.530153] devtmpfs: initialized
[    0.792117] KASLR enabled
[    0.801232] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.801753] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.828500] pinctrl core: initialized pinctrl subsystem
[    0.914305] DMI not present or invalid.
[    0.958452] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    1.013085] DMA: preallocated 512 KiB GFP_KERNEL pool for atomic allocations
[    1.016270] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    1.019875] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    1.021981] audit: initializing netlink subsys (disabled)
[    1.030082] audit: type=2000 audit(0.832:1): state=initialized audit_enabled=0 res=1
[    1.095051] thermal_sys: Registered thermal governor 'step_wise'
[    1.095256] thermal_sys: Registered thermal governor 'power_allocator'
[    1.099111] cpuidle: using governor menu
[    1.107995] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    1.109572] ASID allocator initialised with 32768 entries
[    1.178112] Serial: AMBA PL011 UART driver
[    1.508188] 9000000.pl011: ttyAMA0 at MMIO 0x9000000 (irq = 47, base_baud = 0) is a PL011 rev1
[    1.548912] printk: console [ttyAMA0] enabled
[    2.175513] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
[    2.176084] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
[    2.176497] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[    2.177190] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[    2.247197] cryptd: max_cpu_qlen set to 1000
[    2.334461] ACPI: Interpreter disabled.
[    2.411311] iommu: Default domain type: Translated 
[    2.419557] vgaarb: loaded
[    2.440182] SCSI subsystem initialized
[    2.464958] usbcore: registered new interface driver usbfs
[    2.468399] usbcore: registered new interface driver hub
[    2.470538] usbcore: registered new device driver usb
[    2.495608] pps_core: LinuxPPS API ver. 1 registered
[    2.496162] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti at linux.it>
[    2.498181] PTP clock support registered
[    2.504184] EDAC MC: Ver: 3.0.0
[    2.565208] FPGA manager framework
[    2.573760] Advanced Linux Sound Architecture Driver Initialized.
[    2.648162] clocksource: Switched to clocksource arch_sys_counter
[    2.666360] VFS: Disk quotas dquot_6.6.0
[    2.668335] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    2.680156] pnp: PnP ACPI: disabled
[    3.006844] NET: Registered PF_INET protocol family
[    3.022597] IP idents hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    3.073969] tcp_listen_portaddr_hash hash table entries: 2048 (order: 3, 32768 bytes, linear)
[    3.076304] TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    3.081830] TCP bind hash table entries: 32768 (order: 7, 524288 bytes, linear)
[    3.087222] TCP: Hash tables configured (established 32768 bind 32768)
[    3.092941] UDP hash table entries: 2048 (order: 4, 65536 bytes, linear)
[    3.094876] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes, linear)
[    3.113542] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    3.149849] RPC: Registered named UNIX socket transport module.
[    3.150541] RPC: Registered udp transport module.
[    3.150903] RPC: Registered tcp transport module.
[    3.151279] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    3.152412] PCI: CLS 0 bytes, default 64
[    3.172442] hw perfevents: enabled with armv8_pmuv3 PMU driver, 5 counters available
[    3.174421] Unpacking initramfs...
[    3.175285] kvm [1]: HYP mode not available
[    3.306448] Initialise system trusted keyrings
[    3.314131] workingset: timestamp_bits=42 max_order=20 bucket_order=0
[    3.915834] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    3.962708] NFS: Registering the id_resolver key type
[    3.964718] Key type id_resolver registered
[    3.965267] Key type id_legacy registered
[    3.971848] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    3.972940] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    3.978970] 9p: Installing v9fs 9p2000 file system support
[    4.050879] Key type asymmetric registered
[    4.052102] Asymmetric key parser 'x509' registered
[    4.055131] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
[    4.056607] io scheduler mq-deadline registered
[    4.132579] io scheduler kyber registered
[    4.405333] pl061_gpio 9030000.pl061: PL061 GPIO chip registered
[    4.456878] pci-host-generic 4010000000.pcie: host bridge /pcie at 10000000 ranges:
[    4.459391] pci-host-generic 4010000000.pcie:       IO 0x003eff0000..0x003effffff -> 0x0000000000
[    4.462093] pci-host-generic 4010000000.pcie:      MEM 0x0010000000..0x003efeffff -> 0x0010000000
[    4.462894] pci-host-generic 4010000000.pcie:      MEM 0x8000000000..0xffffffffff -> 0x8000000000
[    4.465172] pci-host-generic 4010000000.pcie: Memory resource size exceeds max for 32 bits
[    4.823275] pci-host-generic 4010000000.pcie: ECAM at [mem 0x4010000000-0x401fffffff] for [bus 00-ff]
[    4.834115] pci-host-generic 4010000000.pcie: PCI host bridge to bus 0000:00
[    4.835466] pci_bus 0000:00: root bus resource [bus 00-ff]
[    4.836627] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
[    4.837358] pci_bus 0000:00: root bus resource [mem 0x10000000-0x3efeffff]
[    4.838059] pci_bus 0000:00: root bus resource [mem 0x8000000000-0xffffffffff]
[    4.843295] pci 0000:00:00.0: [1b36:0008] type 00 class 0x060000
[    4.861167] pci 0000:00:01.0: [1af4:1000] type 00 class 0x020000
[    4.862515] pci 0000:00:01.0: reg 0x10: [io  0x0000-0x001f]
[    4.863241] pci 0000:00:01.0: reg 0x20: [mem 0x00000000-0x00003fff 64bit pref]
[    4.864676] pci 0000:00:01.0: reg 0x30: [mem 0x00000000-0x0003ffff pref]
[    4.888668] pci 0000:00:01.0: BAR 6: assigned [mem 0x10000000-0x1003ffff pref]
[    4.889947] pci 0000:00:01.0: BAR 4: assigned [mem 0x8000000000-0x8000003fff 64bit pref]
[    4.890883] pci 0000:00:01.0: BAR 0: assigned [io  0x1000-0x101f]
[    4.935918] EINJ: ACPI disabled.
[    5.445731] virtio-pci 0000:00:01.0: enabling device (0000 -> 0003)
[    5.672546] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    5.750260] SuperH (H)SCI(F) driver initialized
[    5.765283] msm_serial: driver initialized
[    5.818982] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    6.181408] loop: module loaded
[    6.233318] megasas: 07.717.02.00-rc1
[    6.390018] physmap-flash 0.flash: physmap platform flash device: [mem 0x00000000-0x03ffffff]
[    6.394209] 0.flash: Found 2 x16 devices at 0x0 in 32-bit bank. Manufacturer ID 0x000000 Chip ID 0x000000
[    6.397208] Intel/Sharp Extended Query Table at 0x0031
[    6.399223] Using buffer write method
[    6.590786] physmap-flash 0.flash: physmap platform flash device: [mem 0x04000000-0x07ffffff]
[    6.593407] 0.flash: Found 2 x16 devices at 0x0 in 32-bit bank. Manufacturer ID 0x000000 Chip ID 0x000000
[    6.594863] Intel/Sharp Extended Query Table at 0x0031
[    6.599423] Using buffer write method
[    6.601192] Concatenating MTD devices:
[    6.601697] (0): "0.flash"
[    6.602018] (1): "0.flash"
[    6.602361] into device "0.flash"
[    7.090868] Freeing initrd memory: 58712K
[    7.598312] libphy: Fixed MDIO Bus: probed
[    7.694659] tun: Universal TUN/TAP device driver, 1.6
[    7.768326] thunder_xcv, ver 1.0
[    7.770755] thunder_bgx, ver 1.0
[    7.773238] nicpf, ver 1.0
[    7.812928] hclge is initializing
[    7.813788] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
[    7.814337] hns3: Copyright (c) 2017 Huawei Corporation.
[    7.817829] e1000: Intel(R) PRO/1000 Network Driver
[    7.818297] e1000: Copyright (c) 1999-2006 Intel Corporation.
[    7.821175] e1000e: Intel(R) PRO/1000 Network Driver
[    7.821542] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    7.824561] igb: Intel(R) Gigabit Ethernet Network Driver
[    7.824965] igb: Copyright (c) 2007-2014 Intel Corporation.
[    7.826873] igbvf: Intel(R) Gigabit Virtual Function Network Driver
[    7.827280] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[    7.836971] sky2: driver version 1.30
[    7.869138] VFIO - User Level meta-driver version: 0.3
[    7.946211] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    7.947112] ehci-pci: EHCI PCI platform driver
[    7.949747] ehci-platform: EHCI generic platform driver
[    7.953324] ehci-orion: EHCI orion driver
[    7.956327] ehci-exynos: EHCI Exynos driver
[    7.958917] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    7.960449] ohci-pci: OHCI PCI platform driver
[    7.963010] ohci-platform: OHCI generic platform driver
[    7.966367] ohci-exynos: OHCI Exynos driver
[    7.983160] usbcore: registered new interface driver usb-storage
[    8.079956] rtc-pl031 9010000.pl031: registered as rtc0
[    8.081608] rtc-pl031 9010000.pl031: setting system clock to 2021-07-26T06:37:33 UTC (1627281453)
[    8.101601] i2c /dev entries driver
[    8.274460] sdhci: Secure Digital Host Controller Interface driver
[    8.275053] sdhci: Copyright(c) Pierre Ossman
[    8.293647] Synopsys Designware Multimedia Card Interface Driver
[    8.319816] sdhci-pltfm: SDHCI platform and OF driver helper
[    8.359486] ledtrig-cpu: registered to indicate activity on CPUs
[    8.413754] usbcore: registered new interface driver usbhid
[    8.414394] usbhid: USB HID core driver
[    8.565818] NET: Registered PF_PACKET protocol family
[    8.575530] 9pnet: Installing 9P2000 support
[    8.578042] Key type dns_resolver registered
[    8.586677] Loading compiled-in X.509 certificates
[    8.641609] input: gpio-keys as /devices/platform/gpio-keys/input/input0
[    8.772737] ALSA device list:
[    8.773240]   No soundcards found.
[    8.785545] uart-pl011 9000000.pl011: no DMA platform data
[    8.924633] Freeing unused kernel memory: 19712K
[    8.927109] Run /init as init process


More information about the linux-arm-kernel mailing list