Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 650380 - kernel 4.* slow IO due to -mlong-calls
Summary: kernel 4.* slow IO due to -mlong-calls
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: HPPA Linux
: Normal normal (vote)
Assignee: HPPA Porters
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-13 12:05 UTC by Carlo
Modified: 2018-03-15 14:46 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Carlo 2018-03-13 12:05:18 UTC
hi
I am experiencing a very annoying behavior with HPPA: if I compile the kernel with  -mlong-calls then the IO (e.g. file copy) becomes very slow, and the PCI becomes unstable (i.e. it crashes the machine)

kernel	gcc	binutils	with mlong	without mlong
4.15.7	4.9.3	2.25.1		13.4 MB/s	27.0 MB/s
4.15.7	6.4.0	2.25.1		13.4 MB/s	27.0 MB/s
4.15.7	6.4.0	2.29.1		14.4 MB/s	25.0 MB/s

these tests were performed with

dd if=/dev/zero of=here bs=1k count=100000

-mlong-calls is enabled in the kernel by "CONFIG_MLONGCALLS"

the help-guide says "If you configure the kernel to include many drivers built-in instead as modules, the kernel executable may become too big, so that the linker will not be able to resolve some long branches and fails to link your vmlinux kernel. In that case enabling this option will help you to overcome this limit by using the -mlong-calls compiler option. Usually you want to say N here, unless you e.g. want to build a kernel which includes all necessary drivers built-in and which can be used for TFTP booting without the need to have an initrd ramdisk. Enabling this option will probably slow down your kernel"

I need -mlong-calls because I need to compile the kernel without kernel-modules, all built-in, that makes the size of the kernel of about 23Mbytes, thus without -mlong-calls the linker fails to "link" objects

let me know
Comment 1 Carlo 2018-03-13 12:19:54 UTC
machine: HP C3600
disks: internal SCSI's
Comment 2 Carlo 2018-03-13 22:37:11 UTC
the kernel has been configured 
- to operate in the 64bit mode in order to access to 8Gbyte of ram
- without preemption
- without SMP (C3600 has only one physical CPU with one core)
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2018-03-15 14:40:45 UTC
We distribute kernel sources. The linux-parisc people fix issues with what we distribute.
Comment 4 Carlo 2018-03-15 14:46:22 UTC
ah, ok, so I will readdress the issue to them
thanks :)