Buildresult: powerpc-next/mips-defconfig/mipsel-gcc5 built on Feb 28 2019, 14:53
kisskb
Revisions
|
Branches
|
Compilers
|
Configs
|
Build Results
|
Build Failures
|
Status:
OK
Date/Time:
Feb 28 2019, 14:53
Duration:
0:02:11.142692
Builder:
ka1
Revision:
powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables (
11f5acce2fa43b015a8120fa7620fa4efd0a2952)
Target:
powerpc-next/mips-defconfig/mipsel-gcc5
Branch:
powerpc-next
Compiler:
mipsel-gcc5
(mipsel-linux-gcc.br_real (Buildroot 2016.11-git-00613-ge98b4dd) 5.4.0 / GNU ld (GNU Binutils) 2.26.1)
Config:
defconfig
(
download
)
Log:
Download original
Possible warnings (1)
arch/mips/boot/dts/xilfpga/nexys4ddr.dts:109.16-112.8: Warning (i2c_bus_reg): /i2c@10A00000/ad7420@4B: I2C bus unit address format error, expected "4b"
Full Log
# git rev-parse -q --verify 11f5acce2fa43b015a8120fa7620fa4efd0a2952^{commit} 11f5acce2fa43b015a8120fa7620fa4efd0a2952 already have revision, skipping fetch # git checkout -q -f -B kisskb 11f5acce2fa43b015a8120fa7620fa4efd0a2952 # git clean -qxdf # < git log -1 # commit 11f5acce2fa43b015a8120fa7620fa4efd0a2952 # Author: Alexey Kardashevskiy <aik@ozlabs.ru> # Date: Wed Feb 13 14:38:18 2019 +1100 # # powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables # # We store 2 multilevel tables in iommu_table - one for the hardware and # one with the corresponding userspace addresses. Before allocating # the tables, the iommu_table_group_ops::get_table_size() hook returns # the combined size of the two and VFIO SPAPR TCE IOMMU driver adjusts # the locked_vm counter correctly. When the table is actually allocated, # the amount of allocated memory is stored in iommu_table::it_allocated_size # and used to decrement the locked_vm counter when we release the memory # used by the table; .get_table_size() and .create_table() calculate it # independently but the result is expected to be the same. # # However the allocator does not add the userspace table size to # .it_allocated_size so when we destroy the table because of VFIO PCI # unplug (i.e. VFIO container is gone but the userspace keeps running), # we decrement locked_vm by just a half of size of memory we are # releasing. # # To make things worse, since we enabled on-demand allocation of # indirect levels, it_allocated_size contains only the amount of memory # actually allocated at the table creation time which can just be a # fraction. It is not a problem with incrementing locked_vm (as # get_table_size() value is used) but it is with decrementing. # # As the result, we leak locked_vm and may not be able to allocate more # IOMMU tables after few iterations of hotplug/unplug. # # This sets it_allocated_size in the pnv_pci_ioda2_ops::create_table() # hook to what pnv_pci_ioda2_get_table_size() returns so from now on we # have a single place which calculates the maximum memory a table can # occupy. The original meaning of it_allocated_size is somewhat lost now # though. # # We do not ditch it_allocated_size whatsoever here and we do not call # get_table_size() from vfio_iommu_spapr_tce.c when decrementing # locked_vm as we may have multiple IOMMU groups per container and even # though they all are supposed to have the same get_table_size() # implementation, there is a small chance for failure or confusion. # # Fixes: 090bad39b237 ("powerpc/powernv: Add indirect levels to it_userspace") # Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> # Reviewed-by: David Gibson <david@gibson.dropbear.id.au> # Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> # < /opt/cross/kisskb/br-mipsel-o32-full-2016.08-613-ge98b4dd/bin/mipsel-linux-gcc --version # < /opt/cross/kisskb/br-mipsel-o32-full-2016.08-613-ge98b4dd/bin/mipsel-linux-ld --version # < git log --format=%s --max-count=1 11f5acce2fa43b015a8120fa7620fa4efd0a2952 # < make -s -j 8 ARCH=mips O=/kisskb/build/powerpc-next_mips-defconfig_mipsel CROSS_COMPILE=/opt/cross/kisskb/br-mipsel-o32-full-2016.08-613-ge98b4dd/bin/mipsel-linux- defconfig # make -s -j 8 ARCH=mips O=/kisskb/build/powerpc-next_mips-defconfig_mipsel CROSS_COMPILE=/opt/cross/kisskb/br-mipsel-o32-full-2016.08-613-ge98b4dd/bin/mipsel-linux- /kisskb/src/arch/mips/boot/dts/xilfpga/nexys4ddr.dts:109.16-112.8: Warning (i2c_bus_reg): /i2c@10A00000/ad7420@4B: I2C bus unit address format error, expected "4b" FIT description: Linux 5.0.0-rc2-g11f5acce2fa4 Created: Thu Feb 28 14:55:36 2019 Image 0 (kernel@0) Description: Linux 5.0.0-rc2-g11f5acce2fa4 Created: Thu Feb 28 14:55:36 2019 Type: Kernel Image Compression: gzip compressed Data Size: 4501577 Bytes = 4396.07 KiB = 4.29 MiB Architecture: MIPS OS: Linux Load Address: 0x80100000 Entry Point: 0x80854830 Hash algo: sha1 Hash value: 274ef6e96fd061356783bd97dd03c14817c69629 Image 1 (fdt@boston) Description: img,boston Device Tree Created: Thu Feb 28 14:55:36 2019 Type: Flat Device Tree Compression: uncompressed Data Size: 3793 Bytes = 3.70 KiB = 0.00 MiB Architecture: MIPS Hash algo: sha1 Hash value: 4799f50d688573234da6e9d7701234d394759ef4 Image 2 (fdt@ni169445) Description: NI 169445 device tree Created: Thu Feb 28 14:55:36 2019 Type: Flat Device Tree Compression: uncompressed Data Size: 1871 Bytes = 1.83 KiB = 0.00 MiB Architecture: MIPS Hash algo: sha1 Hash value: 51b89b31605ee62038c8468c429af091dfc75ec7 Image 3 (fdt@xilfpga) Description: MIPSfpga (xilfpga) Device Tree Created: Thu Feb 28 14:55:36 2019 Type: Flat Device Tree Compression: uncompressed Data Size: 2708 Bytes = 2.64 KiB = 0.00 MiB Architecture: MIPS Hash algo: sha1 Hash value: 509ce58e44c561d54539e64e9d4b47054e696fc6 Default Configuration: 'conf@default' Configuration 0 (conf@default) Description: Generic Linux kernel Kernel: kernel@0 Configuration 1 (conf@boston) Description: Boston Linux kernel Kernel: kernel@0 FDT: fdt@boston Configuration 2 (conf@ni169445) Description: NI 169445 Linux Kernel Kernel: kernel@0 FDT: fdt@ni169445 Configuration 3 (conf@xilfpga) Description: MIPSfpga Linux kernel Kernel: kernel@0 FDT: fdt@xilfpga Completed OK # rm -rf /kisskb/build/powerpc-next_mips-defconfig_mipsel # Build took: 0:02:11.142692
© Michael Ellerman 2006-2018.