Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Avoid many allocations for CStrings during codegen. #53161

Merged
merged 2 commits into from
Aug 13, 2018

Conversation

michaelwoerister
Copy link
Member

Giving in to my irrational fear of dynamic allocations. Let's see what perf says to this.

@rust-highfive
Copy link
Collaborator

r? @estebank

(rust_highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Aug 7, 2018
@michaelwoerister
Copy link
Member Author

@bors try

@bors
Copy link
Contributor

bors commented Aug 7, 2018

⌛ Trying commit 9ca04a1e0e052f3fa03248828c56b3148a643178 with merge 6d5276398f760025f61c4579a7c475fedd1b06bb...

@kennytm kennytm added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Aug 7, 2018
@bors
Copy link
Contributor

bors commented Aug 7, 2018

☀️ Test successful - status-travis
State: approved= try=True

@Mark-Simulacrum
Copy link
Member

@rust-timer build 6d5276398f760025f61c4579a7c475fedd1b06bb

@rust-timer
Copy link
Collaborator

Success: Queued 6d5276398f760025f61c4579a7c475fedd1b06bb with parent 18925de, comparison URL.


let str_plus_nul = concat!($s, "\0");

if cfg!(debug_assertion) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this needs to be debug_assertions?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It does. Good catch!

@BurntPizza
Copy link
Contributor

BurntPizza commented Aug 7, 2018

Results are in. Looks alright from the instructions view, not so sure otherwise.
What's the motivation behind SIZE = 34 on SmallCStr? Seems you could either go up to 38 or shink the enum by dropping to 30. Unfortunately len_with_nul: NonZeroU8 doesn't allow an extra byte.

@kennytm kennytm removed the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Aug 8, 2018
@michaelwoerister
Copy link
Member Author

Seems you could either go up to 38 or shink the enum by dropping to 30

O right, this is going to be 8 byte aligned, not 4. Yeah, doing either 30 or 38 seems good.

All in all, I'm not sure that the "gains" are worth the churn. cc @rust-lang/wg-compiler-performance

@wesleywiser
Copy link
Member

Overall it seems like a slight improvement to me. I agree with the SIZE = (30|38) feedback.

@estebank
Copy link
Contributor

estebank commented Aug 8, 2018

I'd feel more comfortable with somebody from @rust-lang/wg-compiler-performance doing the final review. It seems to me that the only outstanding task is changing the SIZE. The code itself looks good to me.

Copy link
Member

@wesleywiser wesleywiser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall this looks good to me. I just had a few small pieces of feedback.


/// Declare a global value.
///
/// If there’s a value with the same name already declared, the function will
/// return its Value instead.
pub fn declare_global(cx: &CodegenCx<'ll, '_>, name: &str, ty: &'ll Type) -> &'ll Value {
debug!("declare_global(name={:?})", name);
let namebuf = CString::new(name).unwrap_or_else(|_|{
bug!("name {:?} contains an interior null byte", name)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should try to retain this bug reporting code. It was introduced in f1dabed and caught an issue as recently as June 23. I'd recommend SmallCStr::new() returns an Option<SmallCStr> with its internal unwraps() moved back into the callsites.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to avoid moving the unwraps() to the call site, since there are so many of them an you can't recover gracefully anyway. How about I change the unwrap() in SmallCStr::new() into a bug!() with more useful information? Together with the backtrace that should point you to the right spot pretty quickly.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That sounds good to me!

@@ -61,9 +59,7 @@ fn declare_raw_fn(
ty: &'ll Type,
) -> &'ll Value {
debug!("declare_raw_fn(name={:?}, ty={:?})", name, ty);
let namebuf = CString::new(name).unwrap_or_else(|_|{
bug!("name {:?} contains an interior null byte", name)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here

@@ -214,9 +210,7 @@ pub fn define_internal_fn(
/// Get declared value by name.
pub fn get_declared_value(cx: &CodegenCx<'ll, '_>, name: &str) -> Option<&'ll Value> {
debug!("get_declared_value(name={:?})", name);
let namebuf = CString::new(name).unwrap_or_else(|_|{
bug!("name {:?} contains an interior null byte", name)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here

@@ -348,7 +349,7 @@ fn vec_slice_metadata(
let (pointer_size, pointer_align) = cx.size_and_align_of(data_ptr_type);
let (usize_size, usize_align) = cx.size_and_align_of(cx.tcx.types.usize);

let member_descriptions = [
let member_descriptions = vec![
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is now being allocated on the heap instead of the stack right? Is that what we want?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, because it allows to re-use the String allocations when constructing the CString for the name field down the line. It should be a win overall since all the other MemberDescription can't get around allocating anyway.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you want to go crazy, the LLVM C++ method we're using is called through a C wrapper that we define ourselves and uses a StringRef, which is a pointer/length pair and doesn't actually need a terminating nul byte. So you could get theoretically completely avoid CStr for the name (and possibly other places as well). Of course, if / when the DebugInfo stuff gets an official C API, we'd likely be back at using plain C strings.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you want to go crazy

I don't :P

// option. This file may not be copied, modified, or distributed
// except according to those terms.

#[macro_export]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add a comment explaining what this macro does.

@nnethercote
Copy link
Contributor

Giving in to my irrational fear of dynamic allocations

DHAT is a good tool for finding out which heap allocations matter.

@michaelwoerister
Copy link
Member Author

DHAT is a good tool for finding out which heap allocations matter.

Thanks for the hint, @nnethercote, I'll add it to my tool chest.

@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-5.0 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[00:05:31]    Compiling flate2 v1.0.1
[00:05:31]    Compiling parking_lot v0.5.5
[00:05:36]    Compiling rustc-rayon v0.1.1
batch:31
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: PM-Timer IO Port: 0xb008
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: Local APIC address 0xfee00000
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: LAPIC_NMI (acpi_id[0xff] dfl dfl lint[0x1])
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] IOAPIC[0]: apic_id 0, version 17, address 0xfec00000, GSI 0-23
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: IRQ5 used by override.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: IRQ9 used by override.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: IRQ10 used by override.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] ACPI: IRQ11 used by override.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51 max_cycles: 0xffffffff, max_idle_ns: 7645519600211568 ns
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] setup_percpu: NR_CPUS:512 nr_cpumask_bits:512 nr_cpu_ids:4 nr_node_ids:1
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] PERCPU: Embedded 34 pages/cpu @ffff8803ffc00000 s98392 r8192 d32680 u524288
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] pcpu-alloc: s98392 r8192 d32680 u524288 alloc=1*2097152
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] pcpu-alloc: [0] 0 1 2 3 
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] Built 1 zonelists in Node order, mobility grouping on.  Total pages: 3870588
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] Policy zone: Normal
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.4.0-101-generic root=UUID=752b4ef1-0512-4cae-b541-f03ffd29be1b ro cgroup_enable=memory swapaccount=1 apparmor=0 console=ttyS0 console=ttyS0
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] Calgary: detecting Calgary via BIOS EBDA area
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] Calgary: Unable to locate Rio Grande table in EBDA - bailing!
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] Memory: 15375492K/15728196K available (8272K kernel code, 1304K rwdata, 4004K rodata, 1496K init, 1316K bss, 352704K reserved, 0K cma-reserved)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] Hierarchical RCU implementation.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000]  Build-time adjustment of leaf fanout to 64.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000]  RCU restricting CPUs from NR_CPUS=512 to nr_cpu_ids=4.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=4
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] NR_IRQS:33024 nr_irqs:456 16
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] Console: colour VGA+ 80x25
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] console [ttyS0] enabled
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.000000] tsc: Detected 2500.000 MHz processor
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.322931] Calibrating delay loop (skipped) preset value.. 5000.00 BogoMIPS (lpj=10000000)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.324405] pid_max: default: 32768 minimum: 301
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.325286] ACPI: Core revision 20150930
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.331859] ACPI: 2 ACPI AML tables successfully acquired and loaded
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.333202] Security Framework initialized
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.334037] Yama: becoming mindful.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.334726] AppArmor: AppArmor disabled by boot time parameter
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.337215] Dentry cache hash table entries: 2097152 (order: 12, 16777216 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.346982] Inode-cache hash table entries: 1048576 (order: 11, 8388608 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.351835] Mount-cache hash table entries: 32768 (order: 6, 262144 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.353039] Mountpoint-cache hash table entries: 32768 (order: 6, 262144 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.354640] Initializing cgroup subsys io
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.355369] Initializing cgroup subsys memory
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.356097] Initializing cgroup subsys devices
Aug  9 12:44:00 travis-job-05c5efbc-0244-4924d-d70269ba3868 kernel: [    0.585236] pinctrl core: initialized pinctrl subsystem
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.586392] RTC time: 12:43:51, date: 08/09/18
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.588393] NET: Registered protocol family 16
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.598243] cpuidle: using governor ladder
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.610131] cpuidle: using governor menu
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.611019] PCCT header not found.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.611808] ACPI: bus type PCI registered
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.612706] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.614596] PCI: Using configuration type 1 for base access
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.627453] ACPI: Added _OSI(Module Device)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.628406] ACPI: Added _OSI(Processor Device)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.629183] ACPI: Added _OSI(3.0 _SCP Extensions)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.630042] ACPI: Added _OSI(Processor Aggregator Device)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel:is-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.830497] usbcore: registered new interface driver hub
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.831410] usbcore: registered new device driver usb
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.832348] ioremap error for 0xbfffd000-0xc0000000, requested 0x2, got 0x0
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.833430] dmi: Firmware registration failed.
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.834225] PCI: Using ACPI for IRQ routing
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.834818] PCI: pci_cache_line_size set to 64 bytes
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.834920] e820: reserve RAM buffer [mem 0x0009fc00-0x0009ffff]
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.834921] e820: reserve RAM buffer [mem 0xbfff3000-0xbfffffff]
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.835043] NetLabel: Initializing
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.835938] NetLabel:  domain hash size = 128
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.836617] NetLabel:  protocols = UNLABELED CIPSOv4
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.837460] NetLabel:  unlabeled traffic allowed by default
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.838581] amd_nb: Cannot enumernel: [    0.858168] pci_bus 0000:00: resource 4 [io  0x0000-0x0cf7 window]
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.858170] pci_bus 0000:00: resource 5 [io  0x0d00-0xffff window]
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.858172] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff window]
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.858173] pci_bus 0000:00: resource 7 [mem 0xc0000000-0xfebfffff window]
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.858213] NET: Registered protocol family 2
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.859104] TCP established hash table entries: 131072 (order: 8, 1048576 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.861104] TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.862229] TCP: Hash tables configured (established 131072 bind 65536)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.863234] UDP hash table entries: 8192 (order: 6, 262144 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.864167] UDP-Lite hash table entries: 8192 (order: 6, 262144 bytes)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.865880] NET: Registered protocol family 1
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    0.866780] pci 0000:00:00.0: Limiting direct PCI/PCI transfers
Augpf=0x1, revision=0x1
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.211554] microcode: CPU1 sig=0x306e4, pf=0x1, revision=0x1
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.212687] microcode: CPU2 sig=0x306e4, pf=0x1, revision=0x1
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.213940] microcode: CPU3 sig=0x306e4, pf=0x1, revision=0x1
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.215293] microcode: Microcode Update Driver: v2.01 <tigran@aivazian.fsnet.co.uk>, Peter Oruba
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.217175] registered taskstats version 1
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.218024] Loading compiled-in X.509 certificates
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.219559] Loaded X.509 cert 'Build time autogenerated kernel key: 56232512f0584176d25dbc659499b922e518c1c1'
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.221581] zswap: loaded using pool lzo/zbud
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.224380] Key type trusted registered
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.228564] Key type encrypted registered
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.229430] ima: No TPM chip found, activating TPM-bypass!
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.230470] evm: HMAC attrs: 0x1
Aug  9 12:44fined TSC clocksource calibration: 2499.768 MHz
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    3.985656] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x24085ee3cf2, max_idle_ns: 440795333760 ns
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    4.234069] input: ImExPS/2 Generic Explorer Mouse as /devices/platform/i8042/serio1/input/input4
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    6.311975] floppy0: no floppy controllers found
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.483843] raid6: sse2x1   gen()  9035 MB/s
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.551823] raid6: sse2x1   xor()  6949 MB/s
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.619829] raid6: sse2x2   gen() 11403 MB/s
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.687822] raid6: sse2x2   xor()  7690 MB/s
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.755827] raid6: sse2x4   gen() 12700 MB/s
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.823826] raid6: sse2x4   xor()  8534 MB/s
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.824752] raid6: using algorithm sse2x4 gen() 12700 MB/s
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.825726] raid6: .... xor() 8534 MB/s, rmw enabled
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [    7.826554] raid6: using ssse3x2 recovery algorithm
emp: uninitialized urandom read (12 bytes read, 60 bits of entropy available)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [   10.080357] random: mktemp: uninitialized urandom read (6 bytes read, 60 bits of entropy available)
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [   10.157470] EXT4-fs (sda1): resizing filesystem from 3931904 to 7864064 blocks
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [   10.195874] EXT4-fs (sda1): resized filesystem to 7864064
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [   10.452914] init: failsafe main process (1093) killed by TERM signal
Aug  9 12:44:00 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 rsyslogd-2039: Could no open output pipe '/dev/xconsole': No such file or directory [try http://www.rsyslog.com/e/2039 ]
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO Running set_multiqueue.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO Set channels for eth0 to 4.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO Setting /proc/irq/25/smp_affinity_list to 0 for device virtio1.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO /proc/irq/25/smp_affinity_list: real affinity 0
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO Setting /proc/irq/26/smp_affinity_list to 0 for device virtio1.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO /proc/irq/26/smp_affinity_list: reance-setup: INFO /proc/irq/32/smp_affinity_list: real affinity 3
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO Queue 0 XPS=1 for /sys/class/net/eth0/queues/tx-0/xps_cpus
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO Queue 1 XPS=2 for /sys/class/net/eth0/queues/tx-1/xps_cpus
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO Queue 2 XPS=4 for /sys/class/net/eth0/queues/tx-2/xps_cpus
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 instance-setup: INFO Queue 3 XPS=8 for /sys/class/net/eth0/queues/tx-3/xps_cpus
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-clock-skew: INFO Clock drift token has changed: 0.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-clock-skew: INFO Clock drift token has changed: 0.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Starting Google Accounts daemon.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [   11.199401] random: nonblocking pool is initialized
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Creating a new user account for me.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Created user account me.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Creating a new user account for henrik.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-ip-forwarding: INFO Starting Google IP Forwarding daemon.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Created user account henrik.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Creating a new user account for emma.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Created user account emma.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Creating a new user account for igor.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Created user account igor.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Creating a new user account for konstantinhaase.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Created user account konstantinhaase.
Aug  9 12:44:01 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Creating a new user account for aj.
Aug  9 12:44:02 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-clock-skew: INFO Synced system time with hardware clock.
Aug  9 12:44:02 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 google-accounts: INFO Created user account aj.
Aug  9 12:44:02 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 cron[1439]: (CRON) INFO (pidfile fd = 3)
Aug  9 12:44:02 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 cron[1488]: (CRON) STARTUP (fork ok)
Aug  9 12:44:02 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 cron[1488]: (CRON) INFO (Running @reboot jobs)
Aug  9 12:44:02 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 pollinate: system was previously seeded at [2017-12-05 19:31:29.7159989c-0244-4c51-924d-d70269ba3868 ntpd[1881]: peers refreshed
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 ntpd[1881]: Listening on routing socket on fd #21 for interface updates
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 kernel: [   41.944934] init: plymouth-upstart-bridge main process ended, respawning
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 startup-script: INFO Found startup-script in metadata.
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 startup-script: INFO startup-script: warning: commands will be executed using /bin/sh
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 startup-script: INFO startup-script: job 1 at Thu Aug  9 15:54:00 2018
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 startup-script: INFO startup-script: Return code 0.
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 startup-script: INFO startup-script: Return code 0.
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 startup-script: INFO Finished running startup scripts.
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 ec2: 
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 ec2: #############################################################
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 ec2: -----BEGIN SSH HOST KEY FINGERPRINTS-----
Aug  9 12:44:32 travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 ec2: 1024 c2:9f:b1:ee:be:77:34:46:4b:77:93:4a:e7:d4:41:d7  root@travis-job-05c5efbc-0244-4c51-924d-d70269ba3868 (DSA)
14164 ./src/tools/lld
13788 ./obj/build/x86_64-unknown-linux-gnu/stage0-bootstrap-tools/x86_64-unknown-linux-gnu
13784 ./obj/build/x86_64-unknown-linux-gnu/stage0-bootstrap-tools/x86_64-unknown-linux-gnu/release
12496 ./obj/build/x86_64-unknown-linux-gnu/stage0-bootstrap-tools/release

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@michaelwoerister
Copy link
Member Author

Let's see if this works:
@bors delegate=wesleywiser
@wesleywiser, you should now be able to r+ this.

@bors
Copy link
Contributor

bors commented Aug 9, 2018

✌️ @wesleywiser can now approve this pull request

@wesleywiser
Copy link
Member

I've never done this before. Do I just need to say?

@bors r+

@bors
Copy link
Contributor

bors commented Aug 9, 2018

📌 Commit 7e1faee8b0945929a11c075d6e53664fc76b6ba4 has been approved by wesleywiser

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 9, 2018
@michaelwoerister
Copy link
Member Author

👍

@kennytm
Copy link
Member

kennytm commented Aug 10, 2018

@bors r-

Merge conflict.

(🤔 bors isn't detecting any merge conflict recently...)

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Aug 10, 2018
@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-5.0 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[00:20:49]    Compiling rustc_llvm v0.0.0 (file:///checkout/src/librustc_llvm)
nown-linux-gnu/release/build/rustc_llvm-71c6a17c4b962f9c/out -L native=/usr/lib/llvm-5.0/lib` (exit code: 1)
[00:20:58] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "build" "--target" "x86_64-unknown-linux-gnu" "-j" "4" "--release" "--locked" "--color" "always" "--manifest-path" "/checkout/src/librustc_codegen_llvm/Cargo.toml" "--features" "" "--message-format" "json"
[00:20:58] expected success, got: exit code: 101
[00:20:58] thread 'main' panicked at 'cargo must succeed', bootstrap/compile.rs:1119:9
[00:20:58] travis_fold:start:stage0-rustc_codegen_llvm
travis_time:start:stage0-rustc_codegen_llvm
travis_fold:end:stage0-rustc_codegen_llvm


[00:20:58] travis_time:end:stage0-rustc_codegen_llvm:start=1533890812715307602,finish=1533890831139600894,duration=18424293292

[00:20:58] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap build
[00:20:58] Build completed unsuccessfully in 0:15:58
[00:20:58] Makefile:28: recipe for target 'all' failed
[00:20:58] make: *** [all] Error 1

The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:0e301e49
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Fri Aug 10 08:47:11 UTC 2018
Fri, 10 Aug 2018 08:47:11 GMT
travis_time:end:0e301e49:start=1533890831407303960,finish=1533890831461350833,duration=54046873

The command "date && (curl -fs --h 0.000000] PM: Registered nosave memory: [mem 0xbfff3000-0xbfffffff]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] PM: Registered nosave memory: [mem 0xc0000000-0xfffbbfff]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] PM: Registered nosave memory: [mem 0xfffbc000-0xffffffff]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] e820: [mem 0xc0000000-0xfffbbfff] available for PCI devices
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] Booting paravirtualized kernel on KVM
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645519600211568 ns
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] setup_percpu: NR_CPUS:512 nr_cpumask_bits:512 nr_cpu_ids:4 nr_node_ids:1
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] PERCPU: Embedded 34 pages/cpu @ffff8803ffc00000 s98392 r8192 d32680 u524288
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] pcpu-alloc: s98392 r8192 d32680 u524288 alloc=1*2097152
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] pcpu-alloc: [0] 0 1 2 3 
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.000000] Built 1 zonelists in Node order, mobility grouping on.  Total pages: 3870588
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0   0.873616] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.876089] PCI: Using configuration type 1 for base access
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.889873] ACPI: Added _OSI(Module Device)
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.891875] ACPI: Added _OSI(Processor Device)
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.893768] ACPI: Added _OSI(3.0 _SCP Extensions)
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.895453] ACPI: Added _OSI(Processor Aggregator Device)
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.900001] ACPI: Executed 2 blocks of module-level executable AML code
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.924634] ACPI: Interpreter enabled
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.926375] ACPI: (supports S0 S3 S4 S5)
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.928102] ACPI: Using IOAPIC for interrupt routing
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.930745] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.964405] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.967760] acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments MSI]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.970684] acpi PNP0A03:00: _OSC failed (AE_NOT_FOUND); disabling ASPM
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.974005] acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended PCI configuration space under this bridge.
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.979312] PCI host bridge to bus 0000:00
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.980970] pci_bus 0000:00: root bus resource [io  0x0000-0x0cf7 window]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.983678] pci_bus 0000:00: root bus resource [io  0x0d00-0xffff window]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.987369] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.990602] pci_bus 0000:00: root bus resource [mem 0xc0000000-0xfebfffff window]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.993433] pci_bus 0000:00: root bus resource [bus 00-ff]
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.995823] pci 0000:00:00.0: [8086:1237] type 00 class 0x060000
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    0.996261] pci 0000:00:01.0: [8086:7110] type 00 class 0x060100
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    1.017677] pci 0000:00:01.3: [8086:7sion 4.0 (2009/01/31) Phillip Lougher
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.313662] fuse init (API version 7.23)
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.314418] Key type big_key registered
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.315003] Allocating IMA MOK and blacklist keyrings.
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.316808] Key type asymmetric registered
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.317402] Asymmetric key parser 'x509' registered
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.318357] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.319741] io scheduler noop registered
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.320605] io scheduler deadline registered (default)
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.321472] io scheduler cfq registered
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.322130] pci_hotplug: PCI Hot Plug PCI Core version: 0.5
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.323103] pciehp: PCI Express Hot Plug Controller Driver version: 0.4
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.324203] intel_idle: does not run on family 6 model 63
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f 
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.659736] sd 0:0:1:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.662880]  sda: sda1
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.663939] sd 0:0:1:0: [sda] Attached SCSI disk
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    3.688646] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    4.300437] tsc: Refined TSC clocksource calibration: 2300.000 MHz
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    4.301401] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x212735223b2, max_idle_ns: 440795277976 ns
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    4.521450] input: ImExPS/2 Generic Explorer Mouse as /devices/platform/i8042/serio1/input/input4
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    6.604584] floppy0: no floppy controllers found
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    7.772408] raid6: sse2x1   gen()  8825 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    7.840441] raid6: sse2x1   xor()  6208 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    7.908405] raid6: sse2x2   gen() 10778 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    7.976397] raid6: sse2x2   xor()  7084 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.044463] raid6: sse2x4   gen() 12202 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.112397] raid6: sse2x4   xor()  8769 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.180414] raid6: avx2x1   gen() 16437 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.248422] raid6: avx2x2   gen() 19856 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.316397] raid6: avx2x4   gen() 21484 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.318313] raid6: using algorithm avx2x4 gen() 21484 MB/s
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.320529] raid6: using avx2x2 recovery algorithm
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.323980] xor: automatically using best checksumming function:
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.364395]    avx       : 26872.000 MB/sec
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.381574] Btrfs loaded
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.438779] EXT4-fs (sda1): INFO: recovery required on readonly filesystem
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.442868] EXT4-fs (sda1): write access will be enabled during recovery
Aug 10 08:25:16 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [    8.540277] EXT447:11 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [ 1326.354314] device veth3104a3d left promiscuous mode
Aug 10 08:47:11 travis-job-54613ced-4b2f-4e94-8349-f1c00edcd49f kernel: [ 1326.354316] docker0: port 1(veth3104a3d) entered disabled state
travis_fold:end:after_failure.1
travis_fold:start:after_failure.2
travis_time:start:07ad1419

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@michaelwoerister
Copy link
Member Author

Rebased.

@bors r=wesleywiser

@bors
Copy link
Contributor

bors commented Aug 10, 2018

📌 Commit 88d84b3 has been approved by wesleywiser

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Aug 10, 2018
@bors
Copy link
Contributor

bors commented Aug 13, 2018

⌛ Testing commit 88d84b3 with merge a78ae85...

bors added a commit that referenced this pull request Aug 13, 2018
Avoid many allocations for CStrings during codegen.

Giving in to my irrational fear of dynamic allocations. Let's see what perf says to this.
@bors
Copy link
Contributor

bors commented Aug 13, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: wesleywiser
Pushing a78ae85 to master...

@bors bors merged commit 88d84b3 into rust-lang:master Aug 13, 2018
unsafe {
CStr::from_bytes_with_nul_unchecked(str_plus_nul.as_bytes())
}
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc @oli-obk this really wants to be a static assert, heh.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.