Elsewhere

Drupalpress, Drupal in the Health Sciences Library at UVA: executing an r script with bash

Planet Drupal - Tue, 19/05/2015 - 22:43

Here’s a tangent:

Let’s say you need to randomly generate a series of practice exam questions. You have a bunch of homework assignments, lab questions and midterms, all of which are numbered in a standard way so that you can sample from them.

Here’s a simple R script to run those samples and generate a practice exam that consists of references to the assignments and their original numbers.

## exam prep script ## build hw data j <- 1 hw <- data.frame(hw_set = NA, problm = seq(1:17)) for (i in seq(1:12)) { hw[j,1] <- paste0("hw",j) j <- j+1 } library(tidyr) hw <- expand(hw) names(hw) <- c("problm_set", "problm") ## build exam data j <- 1 exam <- data.frame(exam_num = NA, problm = seq(1:22)) for (i in seq(1:8)) { exam[j,1] <- paste0("exam",j) j <- j+1 } library(tidyr) exam <- expand(exam) names(exam) <- c("problm_set", "problm") ## create practice exam prctce <- rbind(exam,hw) prctce_test <- prctce[sample(1:nrow(prctce), size=22),] row.names(prctce_test) <- 1:nrow(prctce_test) print(prctce_test)

As the last line indicates, the final step of the script is to output a prctce_test … that will be randomly generated each time the script is run, but may include duplicates over time.

Sure. Fine. Whatever.

Probably a way to do this with Drupal … or with Excel … or with a pencil and paper … why use R?

Two reasons: 1) using R to learn R and 2) scripting this simulation let’s you automate things a little bit easier.

In particular, you can use something like BASH to execute the script n number of times.

for n in {1..10}; do Rscript examprep.R > "YOUR_PATH_HERE/practice${n}.txt"; done

That will give you 10 practice test txt files that are all named with a tokenized number, with just one command. And of course that could be written into a shell script that’s automated or processed on a scheduler.

Sure. Fine. Whatever.

OK. While this is indeed a fairly underwhelming example, the potential here is kind of interesting. Our next step is to investigate using Drupal Rules to initiate a BASH script that in turn executes an algorithm written in R. The plan is to also use Drupal as the UI for entering the data to be processed in the R script.

Will document that here if/when that project comes together.

Categories: Elsewhere

Lars Wirzenius: Software development estimation

Planet Debian - Tue, 19/05/2015 - 21:50

Acceptable estimations for software development:

  • Almost certainly doable in less than a day.
  • Probably doable in less than a day, almost certainly not going to take more than three days.
  • Probably doable in less than a week, but who knows?
  • Certainly going to take longer than a week, and nobody can say how long, but if you press me, the estimate is between two weeks and four months.

Reality prevents better accuracy.

Categories: Elsewhere

Open Source Training: DrupalCon Los Angeles Review

Planet Drupal - Tue, 19/05/2015 - 20:33

DrupalCon Los Angeles took place from May 11 to 15 and three of our team were there.

We were part of over 3100 who crowded into downtown L.A.

We'll recap our favorite sessions in other blog post, but here's are some thought on Drupal L.A. itself.

Categories: Elsewhere

Drupal Watchdog: Web API Alphabet Soup

Planet Drupal - Tue, 19/05/2015 - 17:56
Feature

Drupal 8 offers unprecedented support for creating RESTful APIs. This was one of the major goals of the Web Services and Context Core Initiative (WSCCI), and one we've delivered on pretty well. However, as with most things that are worth doing, just because Drupal core “supports” it doesn't mean you'll see good results without an understanding of what's going on. In this article, we'll explore some of these principles, so that when it comes time to design with those systems, you'll know how to think about the problem.

HAL

Drupal 8 ships with support for encoding and representing its entities (and other objects) via the Hypermedia Application Language (HAL) specification. HAL can currently be expressed in JSON or XML, and is a specification for describing resources. As the specification says, HAL is “a bit like HTML for machines.”

What that means is that a HAL API can provide enough data for a machine agent to visit the root ("/") of a website, then navigate its way through the remainder of the system exclusively by following the links provided in responses. Humans do the exact same thing by visiting a page and clicking on links. The notion that machines might also want to do this is a relatively obvious idea, but one that has, until recently, rarely been followed on the web.

Still, though, it's pretty abstract. To really understand why HAL is powerful – and what it does for us in Drupal – it's necessary to go back to the basic constraints and capabilities of the problem space it operates in: HTTP and REST. The crucial documents there are RFC2616 and Roy Fielding's thesis, both well-worth [re-]reading. But a more easily digestible version comes in the form of the Richardson Maturity Model, first laid out by Leonard Richardson in 2008, and since revisited by Martin Fowler and Steve Klabnik.

RMM

The Richardson Maturity Model helpfully suggests a set of four “maturity” levels into which HTTP APIs fall:

Categories: Elsewhere

Thorsten Alteholz: alpine and UTF-8 and Debian lists

Planet Debian - Tue, 19/05/2015 - 17:47

This is a note for my future self: When writing an email with only “charset=US-ASCII”, alpine creates an email with:

Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII

and everything is fine.

In case of UTF-8 characters inside the text, alpine creates something like:

Content-Type: MULTIPART/MIXED; BOUNDARY="705298698-1667814148-1432049085=:28313"

and the only available part contains:

Content-Type: TEXT/PLAIN; format=flowed; charset=UTF-8
Content-Transfer-Encoding: 8BIT

Google tells me that the reason for this is:

Alpine uses a single part MULTIPART/MIXED to apply a protection wrapper around QUOTED-PRINTABLE and BASE64 content to prevent it from being corrupted by various mail delivery systems that append little (typically advertising) things at the end of the message.

Ok, this behavior might come from bad experiences and it seems to work most of the time. Unfortunately if one sends a signed email to a Debian list that checks whether the signature is valid (like for example debian-lts-announce), such an email will be rejected with:

Failed to understand the email or find a signature: UDFormatError:
Cannot handle multipart messages not of type multipart/signed

*sigh*

Categories: Elsewhere

Cheeky Monkey Media: Building a custom module part 1

Planet Drupal - Tue, 19/05/2015 - 16:00

This tutorial is written for new drupal developers or php developers who want to learn drupal.

We are going to cover the following in this tutorial:

  • Creating the file structure for the module.
  • Creating a simple table.
  • Register a path to display the custom form.
  • Create a custom form with 4 fields.
  • Capturing and saving the form values in the database.
  • Retrieving and re-populating the form with user's input.

Let's get started.

Step 1: File Structure

Create the structure for our first module. We are...

Categories: Elsewhere

Simon Josefsson: Scrypt in IETF

Planet Debian - Tue, 19/05/2015 - 14:55

Colin Percival and I have worked on an internet-draft on scrypt for some time. I realize now that the -00 draft was published over two years ago, turning this effort today somewhat into archeology rather than rocket science. Still, having a published RFC that is easy to refer to from other Internet protocols will hopefully help to establish the point that PBKDF2 alone no longer provides state-of-the-art protection for password hashing.

I have written about password hashing before where I give a quick introduction to the basic concepts in the context of the well-known PBKDF2 algorithm. The novelty in scrypt is that it is designed to combat brute force and hardware accelerated attacks on hashed password databases. Briefly, scrypt expands the password and salt (using PBKDF2 as a component) and then uses that to create a large array (typically tens or hundreds of megabytes) using the Salsa20 core hash function and then de-references that large array in a random and sequential pattern. There are three parameters to the scrypt function: a CPU/Memory cost parameter N (varies, typical values are 16384 or 1048576), a blocksize parameter r (typically 8), and a parallelization parameter p (typically a low number like 1 or 16). The process is described in the draft, and there are further discussions in Colin’s original scrypt paper.

The document has been stable for some time, and we are now asking for it to be published. Thus now is good time to provide us with feedback on the document. The live document on gitlab is available if you want to send us a patch.

Categories: Elsewhere

Ritesh Raj Sarraf: Lenovo Yoga 2 13 with Debian

Planet Debian - Tue, 19/05/2015 - 13:55

I recently acquired a Lenovo Yoga 2 13. While, at the time, the Yoga 3 was available, I decided to go for Yoga 2 13. The Yoga 3 comes with the newer Core M Broadwell family, which, in my opinion, doesn't really bring any astounding benefits.

The Yoga 2 13 comes in mulitple variants worldwide. Infact these hardware variations have different effets when run under Linux.

My varaint of Yoga 2 13 is:

CPU: Intel(R) Core(TM) i7-4510U CPU @ 2.00GHz RAM: 8 GiB - Occupying 2 slots Memory Controller Information Supported Interleave: One-way Interleave Current Interleave: One-way Interleave Maximum Memory Module Size: 8192 MB Maximum Total Memory Size: 16384 MB Handle 0x0006, DMI type 6, 12 bytes Handle 0x0007, DMI type 6, 12 bytes The usual PCI devices: rrs@learner:~$ lspci 00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b) 00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b) 00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b) 00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04) 00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04) 00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04) 00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 4 (rev e4) 00:1d.0 USB controller: Intel Corporation 8 Series USB EHCI #1 (rev 04) 00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04) 00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1 [AHCI mode] (rev 04) 00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04) 01:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8723BE PCIe Wireless Network Adapter 17:37 ♒♒♒ ☺ And the storage devices Device Model: WDC WD5000M22K-24Z1LT0-SSHD-16GB Device Model: KINGSTON SM2280S3120G

 

Storage

The drive runs into serious performance problems when its SSHD's NCQ (mis)feature is under use in Linux <= 4.0.

[28974.232550] ata2.00: configured for UDMA/133 [28974.232565] ahci 0000:00:1f.2: port does not support device sleep [28983.680955] ata1.00: exception Emask 0x10 SAct 0x7fffffff SErr 0x400100 action 0x6 frozen [28983.681000] ata1.00: irq_stat 0x08000000, interface fatal error [28983.681027] ata1: SError: { UnrecovData Handshk } [28983.681052] ata1.00: failed command: WRITE FPDMA QUEUED [28983.681082] ata1.00: cmd 61/40:00:b8:84:88/05:00:0a:00:00/40 tag 0 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.681152] ata1.00: status: { DRDY } [28983.681171] ata1.00: failed command: WRITE FPDMA QUEUED [28983.681202] ata1.00: cmd 61/40:08:f8:89:88/05:00:0a:00:00/40 tag 1 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.681271] ata1.00: status: { DRDY } [28983.681289] ata1.00: failed command: WRITE FPDMA QUEUED [28983.681316] ata1.00: cmd 61/40:10:38:8f:88/05:00:0a:00:00/40 tag 2 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.681387] ata1.00: status: { DRDY } [28983.681407] ata1.00: failed command: WRITE FPDMA QUEUED [28983.681435] ata1.00: cmd 61/40:18:78:94:88/05:00:0a:00:00/40 tag 3 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.697642] ata1.00: status: { DRDY } [28983.697643] ata1.00: failed command: WRITE FPDMA QUEUED [28983.697646] ata1.00: cmd 61/40:c8:38:65:88/05:00:0a:00:00/40 tag 25 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.697647] ata1.00: status: { DRDY } [28983.697648] ata1.00: failed command: WRITE FPDMA QUEUED [28983.697651] ata1.00: cmd 61/40:d0:78:6a:88/05:00:0a:00:00/40 tag 26 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.697651] ata1.00: status: { DRDY } [28983.697652] ata1.00: failed command: WRITE FPDMA QUEUED [28983.697656] ata1.00: cmd 61/40:d8:b8:6f:88/05:00:0a:00:00/40 tag 27 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.697657] ata1.00: status: { DRDY } [28983.697658] ata1.00: failed command: WRITE FPDMA QUEUED [28983.697661] ata1.00: cmd 61/40:e0:f8:74:88/05:00:0a:00:00/40 tag 28 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.697662] ata1.00: status: { DRDY } [28983.697663] ata1.00: failed command: WRITE FPDMA QUEUED [28983.697666] ata1.00: cmd 61/40:e8:38:7a:88/05:00:0a:00:00/40 tag 29 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.697667] ata1.00: status: { DRDY } [28983.697668] ata1.00: failed command: WRITE FPDMA QUEUED [28983.697672] ata1.00: cmd 61/40:f0:78:7f:88/05:00:0a:00:00/40 tag 30 ncq 688128 out res 40/00:3c:78:a9:88/00:00:0a:00:00/40 Emask 0x10 (ATA bus error) [28983.697672] ata1.00: status: { DRDY } [28983.697676] ata1: hard resetting link [28984.017356] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300) [28984.022612] ata1.00: configured for UDMA/133 [28984.022740] ata1: EH complete [28991.611732] Suspending console(s) (use no_console_suspend to debug) [28992.183822] sd 1:0:0:0: [sdb] Synchronizing SCSI cache [28992.186569] sd 1:0:0:0: [sdb] Stopping disk [28992.186604] sd 0:0:0:0: [sda] Synchronizing SCSI cache [28992.189594] sd 0:0:0:0: [sda] Stopping disk [28992.967426] PM: suspend of devices complete after 1351.349 msecs [28992.999461] PM: late suspend of devices complete after 31.990 msecs [28993.000058] ehci-pci 0000:00:1d.0: System wakeup enabled by ACPI [28993.000306] xhci_hcd 0000:00:14.0: System wakeup enabled by ACPI [28993.016463] PM: noirq suspend of devices complete after 16.978 msecs [28993.017024] ACPI: Preparing to enter system sleep state S3 [28993.017349] PM: Saving platform NVS memory [28993.017357] Disabling non-boot CPUs ... [28993.017389] intel_pstate CPU 1 exiting [28993.018727] kvm: disabling virtualization on CPU1 [28993.019320] smpboot: CPU 1 is now offline [28993.019646] intel_pstate CPU 2 exiting

In the interim, to overcome this problem, we can force the device to run in degraded mode. I'm not sure if it is really the degraded mode, or the device was falsely advertised as a 6 GiB capable device. Time will tell, but for now, force it to run in 3 GiB mode, and so far, I haven't run into the above mentioned probems. To force 3 GiB speed, apply the following.

rrs@learner:~$ cat /proc/cmdline BOOT_IMAGE=/vmlinuz-4.0.4+ root=/dev/mapper/sdb_crypt ro cgroup_enable=memory swapaccount=1 rootflags=data=writeback libata.force=1:3 quiet 16:42 ♒♒♒ ☺

And then verify it... As you can see below, I've forced it for ata1 because I want my SSD drive to run at full-speed. I've done enough I/O, which earlier resulted in the kernel spitting the SATA errors. With this workaround, the kernel does not spit any error messages.

[ 1.273365] libata version 3.00 loaded. [ 1.287290] ahci 0000:00:1f.2: AHCI 0001.0300 32 slots 4 ports 6 Gbps 0x3 impl SATA mode [ 1.288238] ata1: FORCE: PHY spd limit set to 3.0Gbps [ 1.288240] ata1: SATA max UDMA/133 abar m2048@0xb051b000 port 0xb051b100 irq 41 [ 1.288242] ata2: SATA max UDMA/133 abar m2048@0xb051b000 port 0xb051b180 irq 41 [ 1.288244] ata3: DUMMY [ 1.288245] ata4: DUMMY [ 1.606971] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 320) [ 1.607906] ata1.00: ATA-9: WDC WD5000M22K-24Z1LT0-SSHD-16GB, 02.01A03, max UDMA/133 [ 1.607910] ata1.00: 976773168 sectors, multi 0: LBA48 NCQ (depth 31/32), AA [ 1.608856] ata1.00: configured for UDMA/133 [ 1.609106] scsi 0:0:0:0: Direct-Access ATA WDC WD5000M22K-2 1A03 PQ: 0 ANSI: 5 [ 1.927167] ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300) [ 1.928980] ata2.00: ATA-8: KINGSTON SM2280S3120G, S8FM06.A, max UDMA/133 [ 1.928983] ata2.00: 234441648 sectors, multi 16: LBA48 NCQ (depth 31/32), AA [ 1.929616] ata2.00: configured for UDMA/133

And the throughput you get out of your WD SATA SSHD drive, with capability set to 3.0 GiB is:

rrs@learner:/media/SSHD/tmp$ while true; do dd if=/dev/zero of=foo.img bs=1M count=20000; sync; rm -rf foo.img; sync; done 20000+0 records in 20000+0 records out 20971520000 bytes (21 GB) copied, 202.014 s, 104 MB/s 20000+0 records in 20000+0 records out 20971520000 bytes (21 GB) copied, 206.111 s, 102 MB/s

Hannes Reinecke has submitted patches for NCQ enhancements, for Linux 4.1, which I hope will resolve these problems. Another option is to disable NCQ for the drive, or else blacklist the make/model in driver/ata/libata-core.c

By the time I finished this blog entry draft, I had tests to conclude that this did not look like an NCQ problem. Because in degraded mode too, it runs with NCQ enabled (check above).

rrs@learner:~$ sudo fstrim -vv /media/SSHD /media/SSHD: 268.2 GiB (287930949632 bytes) trimmed 16:58 ♒♒♒ ☺ rrs@learner:~$ sudo fstrim -vv / [sudo] password for rrs: /: 64 GiB (68650749952 bytes) trimmed 16:56 ♒♒♒ ☺

Another interesting feature of this drive is support for TRIM / DISCARD. This drive's FTL accepts the TRIM command. Ofcourse, you need to ensure that you have discard enabled in all the layers. In my case, SATA + Device Mapper (Crypt and LVM) + File System (ext4)

Display

The overall display of this device is amazing. It is large enough to give you vibrant look. At 1920x1080 resolution, things look good. The display support was available out-of-the-box.

There were some suspend / resume hangs  that occured with kernels < 4.x, during suspend / resume. The issue was root caused and fixed for Linux 4.0.

You may still notice the following kernel messages, though not problematic to me so far.

[28977.518114] PM: thaw of devices complete after 3607.979 msecs [28977.590389] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [28977.590582] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [28977.591095] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [28977.591185] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [28977.591368] acpi device:30: Cannot transition to power state D3cold for parent in (unknown) [28977.591911] pci_bus 0000:01: Allocating resources [28977.591933] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [28977.592093] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [28977.592401] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment

You may need to disable the Intel Management Engine Interface (mei.ko), incase you run into suspend/resume problems.

rrs@learner:/media/SSHD/tmp$ cat /etc/modprobe.d/intel-mei-blacklist.conf blacklist mei blacklist mei-me 17:01 ♒♒♒ ☺

You may also run into the following Kernel Oops during suspend/resume. Below, you see 2 interation of sleep because it first hibernates and then sleeps (s2both).

[ 180.470206] Syncing filesystems ... done. [ 180.473337] Freezing user space processes ... (elapsed 0.001 seconds) done. [ 180.475210] PM: Marking nosave pages: [mem 0x00000000-0x00000fff] [ 180.475213] PM: Marking nosave pages: [mem 0x0006f000-0x0006ffff] [ 180.475215] PM: Marking nosave pages: [mem 0x00088000-0x000fffff] [ 180.475220] PM: Marking nosave pages: [mem 0x97360000-0x97b5ffff] [ 180.475274] PM: Marking nosave pages: [mem 0x9c36f000-0x9cffefff] [ 180.475356] PM: Marking nosave pages: [mem 0x9d000000-0xffffffff] [ 180.476877] PM: Basic memory bitmaps created [ 180.477003] PM: Preallocating image memory... done (allocated 380227 pages) [ 180.851800] PM: Allocated 1520908 kbytes in 0.37 seconds (4110.56 MB/s) [ 180.851802] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done. [ 180.853355] Suspending console(s) (use no_console_suspend to debug) [ 180.853520] wlan0: deauthenticating from c4:6e:1f:d0:67:26 by local choice (Reason: 3=DEAUTH_LEAVING) [ 180.864159] cfg80211: Calling CRDA to update world regulatory domain [ 181.172222] PM: freeze of devices complete after 319.294 msecs [ 181.196080] ------------[ cut here ]------------ [ 181.196124] WARNING: CPU: 3 PID: 3707 at drivers/gpu/drm/i915/intel_display.c:7904 hsw_enable_pc8+0x659/0x7c0 [i915]() [ 181.196125] SPLL enabled [ 181.196159] Modules linked in: rfcomm ctr ccm bnep pci_stub vboxpci(O) vboxnetadp(O) vboxnetflt(O) vboxdrv(O) bridge stp llc xt_conntrack iptable_filter ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack xt_CHECKSUM xt_tcpudp iptable_mangle ip_tables x_tables nls_utf8 nls_cp437 vfat fat rtsx_usb_ms memstick snd_hda_codec_hdmi joydev mousedev hid_sensor_rotation hid_sensor_incl_3d hid_sensor_als hid_sensor_accel_3d hid_sensor_magn_3d hid_sensor_gyro_3d hid_sensor_trigger industrialio_triggered_buffer kfifo_buf industrialio hid_sensor_iio_common iTCO_wdt iTCO_vendor_support hid_multitouch x86_pkg_temp_thermal intel_powerclamp coretemp intel_rapl iosf_mbi kvm_intel kvm btusb hid_sensor_hub bluetooth uvcvideo videobuf2_vmalloc videobuf2_memops [ 181.196203] videobuf2_core v4l2_common videodev media pcspkr evdev mac_hid arc4 psmouse serio_raw efivars i2c_i801 rtl8723be btcoexist rtl8723_common rtl_pci rtlwifi mac80211 snd_soc_rt5640 cfg80211 snd_soc_rl6231 snd_hda_codec_realtek i915 snd_soc_core snd_hda_codec_generic ideapad_laptop ac snd_compress dw_dmac sparse_keymap drm_kms_helper rfkill battery dw_dmac_core snd_hda_intel snd_pcm_dmaengine snd_soc_sst_acpi snd_hda_controller video 8250_dw regmap_i2c snd_hda_codec drm snd_hwdep snd_pcm spi_pxa2xx_platform i2c_designware_platform soc_button_array snd_timer i2c_designware_core snd i2c_algo_bit soundcore shpchp lpc_ich button processor fuse ipv6 autofs4 ext4 crc16 jbd2 mbcache btrfs xor raid6_pq algif_skcipher af_alg dm_crypt dm_mod sg usbhid sd_mod rtsx_usb_sdmmc rtsx_usb crct10dif_pclmul [ 181.196220] crc32_pclmul crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd ahci libahci libata xhci_pci ehci_pci xhci_hcd ehci_hcd scsi_mod usbcore usb_common thermal fan thermal_sys hwmon i2c_hid hid i2c_core sdhci_acpi sdhci mmc_core gpio_lynxpoint [ 181.196224] CPU: 3 PID: 3707 Comm: kworker/u16:7 Tainted: G O 4.0.4+ #14 [ 181.196225] Hardware name: LENOVO 20344/INVALID, BIOS 96CN29WW(V1.15) 10/16/2014 [ 181.196230] Workqueue: events_unbound async_run_entry_fn [ 181.196233] 0000000000000000 ffffffffa0706f68 ffffffff81522198 ffff880064debc88 [ 181.196235] ffffffff8106c5b1 ffff880251460000 ffff880250f83b68 ffff880250f83b78 [ 181.196237] ffff880250f83800 0000000000000001 ffffffff8106c62a ffffffffa071407c [ 181.196238] Call Trace: [ 181.196248] [<ffffffff81522198>] ? dump_stack+0x40/0x50 [ 181.196251] [<ffffffff8106c5b1>] ? warn_slowpath_common+0x81/0xb0 [ 181.196254] [<ffffffff8106c62a>] ? warn_slowpath_fmt+0x4a/0x50 [ 181.196278] [<ffffffffa06ae349>] ? hsw_enable_pc8+0x659/0x7c0 [i915] [ 181.196289] [<ffffffffa0643ee0>] ? intel_suspend_complete+0xe0/0x6e0 [i915] [ 181.196300] [<ffffffffa0644501>] ? i915_drm_suspend_late+0x21/0x90 [i915] [ 181.196311] [<ffffffffa0644690>] ? i915_pm_poweroff_late+0x40/0x40 [i915] [ 181.196318] [<ffffffff813fa7ba>] ? dpm_run_callback+0x4a/0x100 [ 181.196321] [<ffffffff813fb010>] ? __device_suspend_late+0xa0/0x180 [ 181.196324] [<ffffffff813fb10e>] ? async_suspend_late+0x1e/0xa0 [ 181.196326] [<ffffffff8108b973>] ? async_run_entry_fn+0x43/0x160 [ 181.196330] [<ffffffff81083a5d>] ? process_one_work+0x14d/0x3f0 [ 181.196332] [<ffffffff81084463>] ? worker_thread+0x53/0x480 [ 181.196334] [<ffffffff81084410>] ? rescuer_thread+0x300/0x300 [ 181.196338] [<ffffffff81089191>] ? kthread+0xc1/0xe0 [ 181.196341] [<ffffffff810890d0>] ? kthread_create_on_node+0x180/0x180 [ 181.196346] [<ffffffff81527898>] ? ret_from_fork+0x58/0x90 [ 181.196349] [<ffffffff810890d0>] ? kthread_create_on_node+0x180/0x180 [ 181.196350] ---[ end trace 8e339004db298838 ]--- [ 181.220094] PM: late freeze of devices complete after 47.936 msecs [ 181.220972] PM: noirq freeze of devices complete after 0.875 msecs [ 181.221577] ACPI: Preparing to enter system sleep state S4 [ 181.221886] PM: Saving platform NVS memory [ 181.222702] Disabling non-boot CPUs ... [ 181.222731] intel_pstate CPU 1 exiting [ 181.224041] kvm: disabling virtualization on CPU1 [ 181.224680] smpboot: CPU 1 is now offline [ 181.225121] intel_pstate CPU 2 exiting [ 181.226407] kvm: disabling virtualization on CPU2 [ 181.227025] smpboot: CPU 2 is now offline [ 181.227441] intel_pstate CPU 3 exiting [ 181.227728] Broke affinity for irq 19 [ 181.227747] Broke affinity for irq 41 [ 181.228771] kvm: disabling virtualization on CPU3 [ 181.228793] smpboot: CPU 3 is now offline [ 181.229624] PM: Creating hibernation image: [ 181.563651] PM: Need to copy 379053 pages [ 181.563655] PM: Normal pages needed: 379053 + 1024, available pages: 1697704 [ 182.472910] PM: Hibernation image created (379053 pages copied) [ 181.232347] PM: Restoring platform NVS memory [ 181.233171] Enabling non-boot CPUs ... [ 181.233246] x86: Booting SMP configuration: [ 181.233248] smpboot: Booting Node 0 Processor 1 APIC 0x1 [ 181.246771] kvm: enabling virtualization on CPU1 [ 181.249339] CPU1 is up [ 181.249389] smpboot: Booting Node 0 Processor 2 APIC 0x2 [ 181.262313] kvm: enabling virtualization on CPU2 [ 181.264853] CPU2 is up [ 181.264903] smpboot: Booting Node 0 Processor 3 APIC 0x3 [ 181.277831] kvm: enabling virtualization on CPU3 [ 181.280317] CPU3 is up [ 181.288471] ACPI: Waking up from system sleep state S4 [ 182.340655] PM: noirq thaw of devices complete after 0.637 msecs [ 182.378087] PM: early thaw of devices complete after 37.428 msecs [ 182.378436] rtlwifi: rtlwifi: wireless switch is on [ 182.451021] rtc_cmos 00:01: System wakeup disabled by ACPI [ 182.697575] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 320) [ 182.697617] ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300) [ 182.699248] ata1.00: configured for UDMA/133 [ 182.699911] ata2.00: configured for UDMA/133 [ 182.699917] ahci 0000:00:1f.2: port does not support device sleep [ 186.059539] PM: thaw of devices complete after 3685.338 msecs [ 186.134292] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 186.134479] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 186.134992] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 186.135080] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 186.135266] acpi device:30: Cannot transition to power state D3cold for parent in (unknown) [ 186.135950] pci_bus 0000:01: Allocating resources [ 186.135974] pcieport 0000:00:1c.0: bridge window [mem 0x00100000-0x000fffff 64bit pref] to [bus 01] add_size 200000 [ 186.135980] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 186.136049] pcieport 0000:00:1c.0: res[15]=[mem 0x00100000-0x000fffff 64bit pref] get_res_add_size add_size 200000 [ 186.136072] pcieport 0000:00:1c.0: BAR 15: assigned [mem 0x9fb00000-0x9fcfffff 64bit pref] [ 186.136174] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 186.136490] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 199.454497] Suspending console(s) (use no_console_suspend to debug) [ 200.024190] sd 1:0:0:0: [sdb] Synchronizing SCSI cache [ 200.024356] sd 0:0:0:0: [sda] Synchronizing SCSI cache [ 200.025359] sd 1:0:0:0: [sdb] Stopping disk [ 200.028701] sd 0:0:0:0: [sda] Stopping disk [ 201.106085] PM: suspend of devices complete after 1651.336 msecs [ 201.106591] ------------[ cut here ]------------ [ 201.106628] WARNING: CPU: 0 PID: 3725 at drivers/gpu/drm/i915/intel_display.c:7904 hsw_enable_pc8+0x659/0x7c0 [i915]() [ 201.106628] SPLL enabled [ 201.106656] Modules linked in: rfcomm ctr ccm bnep pci_stub vboxpci(O) vboxnetadp(O) vboxnetflt(O) vboxdrv(O) bridge stp llc xt_conntrack iptable_filter ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack xt_CHECKSUM xt_tcpudp iptable_mangle ip_tables x_tables nls_utf8 nls_cp437 vfat fat rtsx_usb_ms memstick snd_hda_codec_hdmi joydev mousedev hid_sensor_rotation hid_sensor_incl_3d hid_sensor_als hid_sensor_accel_3d hid_sensor_magn_3d hid_sensor_gyro_3d hid_sensor_trigger industrialio_triggered_buffer kfifo_buf industrialio hid_sensor_iio_common iTCO_wdt iTCO_vendor_support hid_multitouch x86_pkg_temp_thermal intel_powerclamp coretemp intel_rapl iosf_mbi kvm_intel kvm btusb hid_sensor_hub bluetooth uvcvideo videobuf2_vmalloc videobuf2_memops [ 201.106694] videobuf2_core v4l2_common videodev media pcspkr evdev mac_hid arc4 psmouse serio_raw efivars i2c_i801 rtl8723be btcoexist rtl8723_common rtl_pci rtlwifi mac80211 snd_soc_rt5640 cfg80211 snd_soc_rl6231 snd_hda_codec_realtek i915 snd_soc_core snd_hda_codec_generic ideapad_laptop ac snd_compress dw_dmac sparse_keymap drm_kms_helper rfkill battery dw_dmac_core snd_hda_intel snd_pcm_dmaengine snd_soc_sst_acpi snd_hda_controller video 8250_dw regmap_i2c snd_hda_codec drm snd_hwdep snd_pcm spi_pxa2xx_platform i2c_designware_platform soc_button_array snd_timer i2c_designware_core snd i2c_algo_bit soundcore shpchp lpc_ich button processor fuse ipv6 autofs4 ext4 crc16 jbd2 mbcache btrfs xor raid6_pq algif_skcipher af_alg dm_crypt dm_mod sg usbhid sd_mod rtsx_usb_sdmmc rtsx_usb crct10dif_pclmul [ 201.106711] crc32_pclmul crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd ahci libahci libata xhci_pci ehci_pci xhci_hcd ehci_hcd scsi_mod usbcore usb_common thermal fan thermal_sys hwmon i2c_hid hid i2c_core sdhci_acpi sdhci mmc_core gpio_lynxpoint [ 201.106714] CPU: 0 PID: 3725 Comm: kworker/u16:25 Tainted: G W O 4.0.4+ #14 [ 201.106715] Hardware name: LENOVO 20344/INVALID, BIOS 96CN29WW(V1.15) 10/16/2014 [ 201.106720] Workqueue: events_unbound async_run_entry_fn [ 201.106723] 0000000000000000 ffffffffa0706f68 ffffffff81522198 ffff880064dd7c88 [ 201.106725] ffffffff8106c5b1 ffff880251460000 ffff880250f83b68 ffff880250f83b78 [ 201.106727] ffff880250f83800 0000000000000002 ffffffff8106c62a ffffffffa071407c [ 201.106728] Call Trace: [ 201.106737] [<ffffffff81522198>] ? dump_stack+0x40/0x50 [ 201.106740] [<ffffffff8106c5b1>] ? warn_slowpath_common+0x81/0xb0 [ 201.106742] [<ffffffff8106c62a>] ? warn_slowpath_fmt+0x4a/0x50 [ 201.106765] [<ffffffffa06ae349>] ? hsw_enable_pc8+0x659/0x7c0 [i915] [ 201.106776] [<ffffffffa0643ee0>] ? intel_suspend_complete+0xe0/0x6e0 [i915] [ 201.106786] [<ffffffffa0644501>] ? i915_drm_suspend_late+0x21/0x90 [i915] [ 201.106797] [<ffffffffa0644690>] ? i915_pm_poweroff_late+0x40/0x40 [i915] [ 201.106802] [<ffffffff813fa7ba>] ? dpm_run_callback+0x4a/0x100 [ 201.106805] [<ffffffff813fb010>] ? __device_suspend_late+0xa0/0x180 [ 201.106809] [<ffffffff813fb10e>] ? async_suspend_late+0x1e/0xa0 [ 201.106811] [<ffffffff8108b973>] ? async_run_entry_fn+0x43/0x160 [ 201.106813] [<ffffffff81083a5d>] ? process_one_work+0x14d/0x3f0 [ 201.106815] [<ffffffff81084463>] ? worker_thread+0x53/0x480 [ 201.106818] [<ffffffff81084410>] ? rescuer_thread+0x300/0x300 [ 201.106821] [<ffffffff81089191>] ? kthread+0xc1/0xe0 [ 201.106824] [<ffffffff810890d0>] ? kthread_create_on_node+0x180/0x180 [ 201.106827] [<ffffffff81527898>] ? ret_from_fork+0x58/0x90 [ 201.106830] [<ffffffff810890d0>] ? kthread_create_on_node+0x180/0x180 [ 201.106832] ---[ end trace 8e339004db298839 ]--- [ 201.130052] PM: late suspend of devices complete after 23.960 msecs [ 201.130725] ehci-pci 0000:00:1d.0: System wakeup enabled by ACPI [ 201.130885] xhci_hcd 0000:00:14.0: System wakeup enabled by ACPI [ 201.146986] PM: noirq suspend of devices complete after 16.930 msecs [ 201.147591] ACPI: Preparing to enter system sleep state S3 [ 201.147942] PM: Saving platform NVS memory [ 201.147948] Disabling non-boot CPUs ... [ 201.147999] intel_pstate CPU 1 exiting [ 201.149324] kvm: disabling virtualization on CPU1 [ 201.149337] smpboot: CPU 1 is now offline [ 201.149640] intel_pstate CPU 2 exiting [ 201.151096] kvm: disabling virtualization on CPU2 [ 201.151108] smpboot: CPU 2 is now offline [ 201.152017] intel_pstate CPU 3 exiting [ 201.153250] kvm: disabling virtualization on CPU3 [ 201.153256] smpboot: CPU 3 is now offline [ 201.156229] ACPI: Low-level resume complete [ 201.156307] PM: Restoring platform NVS memory [ 201.160033] CPU0 microcode updated early to revision 0x1c, date = 2014-07-03 [ 201.160190] Enabling non-boot CPUs ... [ 201.160241] x86: Booting SMP configuration: [ 201.160243] smpboot: Booting Node 0 Processor 1 APIC 0x1 [ 201.172665] kvm: enabling virtualization on CPU1 [ 201.174982] CPU1 is up [ 201.175013] smpboot: Booting Node 0 Processor 2 APIC 0x2 [ 201.187569] CPU2 microcode updated early to revision 0x1c, date = 2014-07-03 [ 201.188796] kvm: enabling virtualization on CPU2 [ 201.191130] CPU2 is up [ 201.191158] smpboot: Booting Node 0 Processor 3 APIC 0x3 [ 201.203297] kvm: enabling virtualization on CPU3 [ 201.205679] CPU3 is up [ 201.210414] ACPI: Waking up from system sleep state S3 [ 201.224617] ehci-pci 0000:00:1d.0: System wakeup disabled by ACPI [ 201.332523] xhci_hcd 0000:00:14.0: System wakeup disabled by ACPI [ 201.332634] PM: noirq resume of devices complete after 121.623 msecs [ 201.372718] PM: early resume of devices complete after 40.058 msecs [ 201.372892] rtlwifi: rtlwifi: wireless switch is on [ 201.373270] sd 0:0:0:0: [sda] Starting disk [ 201.373271] sd 1:0:0:0: [sdb] Starting disk [ 201.445954] rtc_cmos 00:01: System wakeup disabled by ACPI [ 201.692510] ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300) [ 201.694719] ata2.00: configured for UDMA/133 [ 201.694724] ahci 0000:00:1f.2: port does not support device sleep [ 201.836724] usb 2-4: reset high-speed USB device number 2 using xhci_hcd [ 201.890158] psmouse serio1: synaptics: queried max coordinates: x [..5702], y [..4730] [ 201.930768] psmouse serio1: synaptics: queried min coordinates: x [1242..], y [1124..] [ 202.076784] usb 2-5: reset full-speed USB device number 3 using xhci_hcd [ 202.205100] usb 2-5: ep 0x2 - rounding interval to 64 microframes, ep desc says 80 microframes [ 202.316799] usb 2-7: reset full-speed USB device number 5 using xhci_hcd [ 202.444945] usb 2-7: No LPM exit latency info found, disabling LPM. [ 202.556817] usb 2-8: reset full-speed USB device number 6 using xhci_hcd [ 202.908691] usb 2-6: reset high-speed USB device number 4 using xhci_hcd [ 203.932602] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 320) [ 204.044890] ata1.00: configured for UDMA/133 [ 206.228698] PM: resume of devices complete after 4855.892 msecs [ 206.380738] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 206.383152] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 206.385775] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 206.388066] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 206.390415] acpi device:30: Cannot transition to power state D3cold for parent in (unknown) [ 206.393078] pci_bus 0000:01: Allocating resources [ 206.393098] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 206.395470] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 206.397927] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment [ 206.518516] Restarting kernel threads ... done. [ 206.518812] PM: Basic memory bitmaps freed [ 206.518816] Restarting tasks ... done.

There is one more occasional Kernel Oops (below), which I believe again has to do with Intel.

[ 8770.745396] ------------[ cut here ]------------ [ 8770.745441] WARNING: CPU: 0 PID: 7206 at drivers/gpu/drm/i915/intel_display.c:9756 intel_check_page_flip+0xd2/0xe0 [i915]() [ 8770.745444] Kicking stuck page flip: queued at 466186, now 466191 [ 8770.745445] Modules linked in: cpuid rfcomm ctr ccm bnep pci_stub vboxpci(O) vboxnetadp(O) vboxnetflt(O) vboxdrv(O) bridge stp llc xt_conntrack iptable_filter ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack xt_CHECKSUM xt_tcpudp iptable_mangle ip_tables x_tables nls_utf8 nls_cp437 vfat fat rtsx_usb_ms memstick snd_hda_codec_hdmi joydev mousedev hid_sensor_rotation hid_sensor_incl_3d hid_sensor_als hid_sensor_accel_3d hid_sensor_magn_3d hid_sensor_gyro_3d hid_sensor_trigger industrialio_triggered_buffer kfifo_buf industrialio hid_sensor_iio_common iTCO_wdt iTCO_vendor_support hid_multitouch x86_pkg_temp_thermal intel_powerclamp coretemp intel_rapl iosf_mbi kvm_intel kvm btusb hid_sensor_hub bluetooth uvcvideo videobuf2_vmalloc videobuf2_memops [ 8770.745484] videobuf2_core v4l2_common videodev media pcspkr evdev mac_hid arc4 psmouse serio_raw efivars i2c_i801 rtl8723be btcoexist rtl8723_common rtl_pci rtlwifi mac80211 snd_soc_rt5640 cfg80211 snd_soc_rl6231 snd_hda_codec_realtek i915 snd_soc_core snd_hda_codec_generic ideapad_laptop ac snd_compress dw_dmac sparse_keymap drm_kms_helper rfkill battery dw_dmac_core snd_hda_intel snd_pcm_dmaengine snd_soc_sst_acpi snd_hda_controller video 8250_dw regmap_i2c snd_hda_codec drm snd_hwdep snd_pcm spi_pxa2xx_platform i2c_designware_platform soc_button_array snd_timer i2c_designware_core snd i2c_algo_bit soundcore shpchp lpc_ich button processor fuse ipv6 autofs4 ext4 crc16 jbd2 mbcache btrfs xor raid6_pq algif_skcipher af_alg dm_crypt dm_mod sg usbhid sd_mod rtsx_usb_sdmmc rtsx_usb crct10dif_pclmul [ 8770.745536] crc32_pclmul crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd ahci libahci libata xhci_pci ehci_pci xhci_hcd ehci_hcd scsi_mod usbcore usb_common thermal fan thermal_sys hwmon i2c_hid hid i2c_core sdhci_acpi sdhci mmc_core gpio_lynxpoint [ 8770.745561] CPU: 0 PID: 7206 Comm: icedove Tainted: G W O 4.0.4+ #14 [ 8770.745563] Hardware name: LENOVO 20344/INVALID, BIOS 96CN29WW(V1.15) 10/16/2014 [ 8770.745565] 0000000000000000 ffffffffa0706f68 ffffffff81522198 ffff88025f203dc8 [ 8770.745569] ffffffff8106c5b1 ffff880250f83800 ffff880254dcc000 0000000000000000 [ 8770.745572] 0000000000000000 0000000000000000 ffffffff8106c62a ffffffffa0709d50 [ 8770.745575] Call Trace: [ 8770.745577] <IRQ> [<ffffffff81522198>] ? dump_stack+0x40/0x50 [ 8770.745592] [<ffffffff8106c5b1>] ? warn_slowpath_common+0x81/0xb0 [ 8770.745595] [<ffffffff8106c62a>] ? warn_slowpath_fmt+0x4a/0x50 [ 8770.745616] [<ffffffffa06a0bb3>] ? __intel_pageflip_stall_check+0x113/0x120 [i915] [ 8770.745634] [<ffffffffa06af042>] ? intel_check_page_flip+0xd2/0xe0 [i915] [ 8770.745652] [<ffffffffa067cde1>] ? ironlake_irq_handler+0x2e1/0x1010 [i915] [ 8770.745657] [<ffffffff81092d1a>] ? check_preempt_curr+0x5a/0xa0 [ 8770.745663] [<ffffffff812d66c2>] ? timerqueue_del+0x22/0x70 [ 8770.745668] [<ffffffff810bb7d5>] ? handle_irq_event_percpu+0x75/0x190 [ 8770.745672] [<ffffffff8101b945>] ? read_tsc+0x5/0x10 [ 8770.745676] [<ffffffff810bb928>] ? handle_irq_event+0x38/0x50 [ 8770.745680] [<ffffffff810be841>] ? handle_edge_irq+0x71/0x120 [ 8770.745685] [<ffffffff810153bd>] ? handle_irq+0x1d/0x30 [ 8770.745689] [<ffffffff8152a866>] ? do_IRQ+0x46/0xe0 [ 8770.745694] [<ffffffff8152866d>] ? common_interrupt+0x6d/0x6d [ 8770.745695] <EOI> [<ffffffff8152794d>] ? system_call_fastpath+0x16/0x1b [ 8770.745701] ---[ end trace 8e339004db29883a ]---

Network

In my case, the laptop came with the Realtek Wireless device (details above in lspci output). Note: The machine has no wired interface.

While the Intel Wifi devices shipped with this laptop have their own share of problems, this device (rtl8723be) works out of the box. But only for a while. There is no certain pattern on what triggers the bug, but once triggered, the network just freezes. Nothing is logged.

If your Yoga 2 13 came with the RTL chip, the following workaround may help avoid the network issues.

rrs@learner:/media/SSHD/tmp$ cat /etc/modprobe.d/rtl8723be.conf options rtl8723be fwlps=0 17:06 ♒♒♒ ☺

MCE

Almost every boot, eventually, the kernel reports MCE errors. Not something I understand well, but so far, it hasn't caused any visible issues. And from what I have googled so far, nobody seems to have fixed it anywhere

So, with fingers crossed, lets just hope this never translates into a real problem.

What the kernel reports of the CPU's capabilities.

[ 0.041496] mce: CPU supports 7 MCE banks [  299.540930] mce: [Hardware Error]: Machine check events logged

The MCE logs extracted from the buffer.

mcelog: failed to prefill DIMM database from DMI data Hardware event. This is not a software error. MCE 0 CPU 0 BANK 5 MISC 38a0000086 ADDR fef81880 TIME 1432455005 Sun May 24 13:40:05 2015 MCG status: MCi status: Error overflow Uncorrected error MCi_MISC register valid MCi_ADDR register valid Processor context corrupt MCA: corrected filtering (some unreported errors in same region) Generic CACHE Level-2 Generic Error STATUS ee0000000040110a MCGSTATUS 0 MCGCAP c07 APICID 0 SOCKETID 0 CPUID Vendor Intel Family 6 Model 69 Hardware event. This is not a software error. MCE 1 CPU 0 BANK 6 MISC 78a0000086 ADDR fef81780 TIME 1432455005 Sun May 24 13:40:05 2015 MCG status: MCi status: Uncorrected error MCi_MISC register valid MCi_ADDR register valid Processor context corrupt MCA: corrected filtering (some unreported errors in same region) Generic CACHE Level-2 Generic Error STATUS ae0000000040110a MCGSTATUS 0 MCGCAP c07 APICID 0 SOCKETID 0 CPUID Vendor Intel Family 6 Model 69 Hardware event. This is not a software error. MCE 2 CPU 0 BANK 5 MISC 38a0000086 ADDR fef81880 TIME 1432455114 Sun May 24 13:41:54 2015 MCG status: MCi status: Error overflow Uncorrected error MCi_MISC register valid MCi_ADDR register valid Processor context corrupt MCA: corrected filtering (some unreported errors in same region) Generic CACHE Level-2 Generic Error STATUS ee0000000040110a MCGSTATUS 0 MCGCAP c07 APICID 0 SOCKETID 0 CPUID Vendor Intel Family 6 Model 69 Hardware event. This is not a software error. MCE 3 CPU 0 BANK 6 MISC 78a0000086 ADDR fef81780 TIME 1432455114 Sun May 24 13:41:54 2015 MCG status: MCi status: Uncorrected error MCi_MISC register valid MCi_ADDR register valid Processor context corrupt MCA: corrected filtering (some unreported errors in same region) Generic CACHE Level-2 Generic Error STATUS ae0000000040110a MCGSTATUS 0 MCGCAP c07 APICID 0 SOCKETID 0 CPUID Vendor Intel Family 6 Model 69 Categories: Keywords: 
Categories: Elsewhere

Steve McIntyre: Easier installation of Jessie on the Applied Micro X-Gene

Planet Debian - Tue, 19/05/2015 - 13:18

As shipped, Debian Jessie (8.0) did not include kernel support for the USB controller on APM X-Gene based machines like the Mustang. In fact, at the time of writing this that support has not yet gone upstream into the mainline Linux kernel either but patches have been posted by Mark Langsdorf from Red Hat.

This means that installing Debian is more awkward than it could be on these machines. They don't have optical drives fitted normally, so the neat isohybrid CD images that we have made in Debian so far won't work very well at all. Booting via UEFI from a USB stick will work, but then the installer won't be able to read from the USB stick at all and you're stuck. :-( The best way so far for installing Debian is to do a network installation using tftp etc.

Well, until now... :-)

I've patched the Debian Jessie kernel, then re-built the installer and a netinst image to use them. I've put a copy of that image up at http://cdimage.debian.org/cdimage/unofficial/arm64-mustang/ with more instructions on how to use it. I'm just submitting the patch for inclusion into the Jessie stable kernel, hopefully ready to go into the 8.1 point release.

Categories: Elsewhere

Andrew Cater: CI20 - MIPS dev. board - first impressions.

Planet Debian - Tue, 19/05/2015 - 08:52
Annoyingly, I've bought one of these just before the form factor changes and it becomes a nice square board.

Up and running immediately out of the box, which is nice.

The kernel supplied on NAND flash is recent enough that it supports CONFIG_FHANDLE which is needed for the upgrade to Jessie.

The instructions for Jessie upgrade are straightforward and appear to be working correctly: they also suggest apt-get autoremove and apt-get autoclean to clean up which is a very nice touch.

The sources.list in apt was already pointing to my country's Debian mirror which was even nicer.

Quite a good experience immediately from unboxing: it also adds to the number of machine architectures I've run Debian on:
alpha, amd64, arm, armel, armhf, i386, sparc - not bad for a start.

It's a bit slow - but it's a SoC, so what can you expect? The PowerVR graphics demos were spectacular  but the drivers are very definitely non-free - you can't have everything.

[I do notice that there is an FSF-friendly Debian variant, though not yet certified as such - presumably not including PowerVR drivers]

(Lots of occurrences of the word "nice" in this post that I've just noticed. It's either understatement or just that I'm British)
Categories: Elsewhere

Jonathan McDowell: Stepping down from SPI

Planet Debian - Tue, 19/05/2015 - 00:08

I was first elected to the Software in the Public Interest board back in 2009. I was re-elected in 2012. This July I am up for re-election again. For a variety of reasons I’ve decided not to stand; mostly a combination of the fact that I think 2 terms (6 years) is enough in a single stretch and an inability to devote as much time to the organization as I’d like. I mentioned this at the May board meeting. I’m planning to stay involved where I can.

My main reason for posting this here is to cause people to think about whether they might want to stand for the board. Nominations open on July 1st and run until July 13th. The main thing you need to absolutely commit to is being able to attend the monthly board meeting, which is held on IRC at 20:30 UTC on the second Thursday of the month. They tend to last at most 30 minutes. Of course there’s a variety of tasks that happen in the background, such as answering queries from prospective associated projects or discussing ongoing matters on the membership or board lists depending on circumstances.

It’s my firm belief that SPI do some very important work for the Free software community. Few people realise the wide variety of associated projects. SPI offload the boring admin bits around accepting donations and managing project assets (be those machines, domains, trademarks or whatever), leaving those projects able to concentrate on the actual technical side of things. Most project members don’t realise the involvement of SPI, and that’s largely a good thing as it indicates the system is working. However it also means that there can sometimes be a lack of people wanting to stand at election time, and an absence of diversity amongst the candidates.

I’m happy to answer questions of anyone who might consider standing for the board; #spi on irc.oftc.net is a good place to ask them - I am there as Noodles.

Categories: Elsewhere

Drupal governance announcements: Now accepting nominations for the Aaron Winborn Award!

Planet Drupal - Mon, 18/05/2015 - 23:28

As mentioned during Dries's DrupalCon LA keynote, the Drupal Community Working Group is now accepting nominations for the Aaron Winborn Award, to honour Drupal community members who demonstrate personal integrity, kindness, and above-and-beyond commitment to the Drupal community.

Nominations are open until Monday 15 June 2015, and the selected recipient will receive a scholarship and stipend to attend DrupalCon with recognition during a plenary session at the event.

Submit your nominations here: https://www.drupal.org/aaron-winborn-award

Categories: Elsewhere

Acquia: How to Select Drupal Modules: Part 3 - Evaluation Tips

Planet Drupal - Mon, 18/05/2015 - 22:26

In the previous posts we’ve focused on defining your requirements and the basics of searching for modules. Once you’ve found a Drupal project you’re interested in, now you can make a quick evaluation of the project to determine if you should dig deeper before you test it out.

Evaluation Criteria

Each module you select and install on your site must be maintained. There will be security updates, feature improvements and bug fixes offered on a rolling basis. The update manager within Drupal will notify you when new releases are available. This means you will never miss a key security release.

If a module is actively maintained it will mean that one aspect of your site is more likely to be secure and bug-free. One less thing to worry about! Take a “maintenance first” approach to module selection to limit potential issues arising from compatibility issues or security issues that might arise.

An initial evaluation is something an experienced Drupal developer might do in about one to two minutes, simply to compare two modules to decide which to download and try first. However, let’s tease this apart. There are three useful criteria for evaluating a module.

  1. Reputation: How many maintainers? What other contributions have the maintainers made? Is the individual or company a member of the Drupal Association?
  2. Reach: Is there a community around the module? Are there related modules which integrate with it? What is the total number of installations? Checking the usage over time is there a stable arc?
  3. Currency: Have there been recent commits? Are issues being added by users? Is the maintainer responding? Is there a stable (green/not alpha or beta) release available?

These criteria can give you some indication of the level of effort that is being invested in maintaining the software, and help you interpret information on the project page.

The Project Page

You can determine how a project scores against those criteria based on the information available on the project page itself. A wealth of information is available.

  1. Description: This should provide some basic information about the project and you should be able to tell what requirements the module has.
  2. Project information: Maintenance status and how many reported installations. Just because only two others use a project, doesn’t mean it’s not a good start for a solution for your team.
  3. Downloads: Is there a compatible version available? If it's not recently updated it might be a warning sign, or it might just be a stable, well-used module that just works.
  4. Maintainers: Is there an active team of maintainers? You can look at their profiles which also list other contributions and activities.
  5. What are current issues? The graphs indicate recent activity and also a brief analysis of how responsive the maintenance team is. Keep in mind most of this work is done on a voluntary basis, so if you’re willing to help out, you can often get a better response.
  6. Is documentation available? This will help you in the next step of testing and exploring the module.

The project information provided should be considered in relation to the other information. For example, you might see a project like Bean doesn’t have a Drupal 8 version. This might make you wonder if the solution is future-friendly. In this case, similar functionality has been incorporated into Drupal 8, so it actually makes this module unnecessary.

To give another example, a project with few installations could be just that unique solution you need to connect your Drupal site to an obscure third party application. And as another example, a project managed by a Drupal newcomer who has few contributions could be a great sign that someone is bringing in new skills and experience to the community.

I would never disparage or dismiss a project based on just one of the criteria. Make sure you look at each aspect of the project and balance it with the rest of the information available.

How can I help?

OK, now we’ve whittled down our choices and found a module or two we’d like to try out. In the next blog post, we’ll actually install and test out a module. After that, I’ll show you how to explore and “learn” a new module.

In our Drupal Site Building course we focus on the essential building blocks of Drupal and contributed modules. In fact, some of the contributed modules we use in the Drupal 7 course have become core in Drupal 8, which is a good sign that the community has convened around specific requirements and solutions.

If you’re stuck trying to find a module for X, please leave a comment and I’ll help you find the module you’re looking for.

Tags:  modules drupal 7 site building training learning functionality acquia drupal planet
Categories: Elsewhere

Drupal for Government: Tracking Charlottesville City Expenses in the Crowd - Part 2 Charts!

Planet Drupal - Mon, 18/05/2015 - 21:36

After part one aka "getting the data cleaned up and in there" it's time to do a few things to make the pretty pictures.  Using the charts tool is a pretty natural visual drill down tool, and its integration with highcharts means it can handle a ton of data. Attached below is a feature that includes all the content type, view, and feeds, I've also attached the original data in case there's someone out there interested in learning how our city blows its wad ;)

Categories: Elsewhere

Drupal CMS Guides at Daymuse Studios: Drupal, Content Strategy, and the Prevailing Power of the Play Button

Planet Drupal - Mon, 18/05/2015 - 21:36

Video is key to increasing user engagement. Learn how to integrate YouTube video with your content in Drupal using the Media and Media: YouTube modules.

Categories: Elsewhere

Promet Source: DrupalCon LA Spotlight

Planet Drupal - Mon, 18/05/2015 - 21:20

The Drupal community gathered in Tinseltown for the 2015 DrupalCon, and Promet Source was there to partake in the all the lights, camera and action.

Check out some of our photos from the event below!

 

Want to know more about what we were up to at this year's DrupalCon? Are you going to DrupalCon Barcelona later this year? Share your info with us below so you can hear about Promet's plan for the next spotlight event of the Drupal-verse.

Categories: Elsewhere

Daniel Pocock: Free and open WebRTC for the Fedora Community

Planet Debian - Mon, 18/05/2015 - 19:48

In January 2014, we launched the rtc.debian.org service for the Debian community. An equivalent service has been in testing for the Fedora community at FedRTC.org.

Some key points about the Fedora service:

  • The web front-end is just HTML, CSS and JavaScript. PHP is only used for account creation, the actual WebRTC experience requires no server-side web framework, just a SIP proxy.
  • The web code is all available in a Github repository so people can extend it.
  • Anybody who can authenticate against the FedOAuth OpenID is able to get a fedrtc.org test account immediately.
  • The server is built entirely with packages from CentOS 7 + EPEL 7, except for the SIP proxy itself. The SIP proxy is reSIProcate, which is available as a Fedora package and builds easily on RHEL / CentOS.
Testing it with WebRTC

Create an RTC password and then log in. Other users can call you. It is federated, so people can also call from rtc.debian.org or from freephonebox.net.

Testing it with other SIP softphones

You can use the RTC password to connect to the SIP proxy from many softphones, including Jitsi or Lumicall on Android.

Copy it

The process to replicate the server for another domain is entirely described in the Real-Time Communications Quick Start Guide.

Discuss it

The FreeRTC mailing list is a great place to discuss any issues involving this site or free RTC in general.

WebRTC opportunities expanding

Just this week, the first batch of Firefox OS televisions are hitting the market. Every one of these is a potential WebRTC client that can interact with free communications platforms.

Categories: Elsewhere

Jim Birch: Learn by Listening, a Guide to Drupal Podcasts

Planet Drupal - Mon, 18/05/2015 - 13:00

While I read a lot, as much as I can about Drupal and Web Development, I feel like I learn even more when I listen. So, while driving to work, or while working out on the treadmill, I listen as much as I can to the great folks below that dedicate their time every week to discussing, training, interviewing, and spreading their knowledge.

Acquia Podcasts

Acquia's Open Source Evangelist, Jeffrey "jam" McGuire, gives quick interviews of Drupal community members from conferences and events all around the world.  But looking deeper into Acquia's site, you may also stumble upon jam's Drupal Camp in which Mr. McGuire curates great sessions and presentations from previous camps and cons; Power of PHP which is a PHP focused, more technical collection of talks; and a podcast about Drupal 8.

Read more

Categories: Elsewhere

Rapha&#235;l Hertzog: Freexian’s report about Debian Long Term Support, April 2015

Planet Debian - Mon, 18/05/2015 - 11:58

Like each month, here comes a report about the work of paid contributors to Debian LTS.

Individual reports

In April, 81.75 work hours have been dispatched among 5 paid contributors (20.75 hours where unused hours of Ben and Holger that were re-dispatched to other contributors). Their reports are available:

Evolution of the situation

May has seen a small increase in terms of sponsored hours (66.25 hours per month) and June is going to do even better with at least a new gold sponsor. We will have no problems sustaining the increased workload it implies since three Debian developers joined the team of contributors paid by Freexian (Antoine Beaupré, Santiago Ruano Rincón, Scott Kitterman).

The Jessie release probably shed some light on the Debian LTS project since we announced that Jessie will benefit from 5 years of support. Let’s hope that the trend will continue in the following months and that we reach our first milestone of funding the equivalent of a half-time position.

In terms of security updates waiting to be handled, the situation is a bit contrasted: the dla-needed.txt file lists 28 packages awaiting an update (12 less than last month), the list of open vulnerabilities in Squeeze shows about 60 affected packages in total (4 more than last month). The extra hours helped to make a good stride in the packages awaiting an update but there are many new vulnerabilities waiting to be triaged.

Thanks to our sponsors

The new sponsors of the month are in bold.

No comment | Liked this article? Click here. | My blog is Flattr-enabled.

Categories: Elsewhere

Web Omelette: Adding new HTML tags in the <head> in Drupal 8

Planet Drupal - Mon, 18/05/2015 - 09:05

In a previous article I've shown you how you can add new html elements to the <head> of your Drupal 7 site. Recently, however, I was working on a Drupal 8 project and encountered the need to do this in D8. And it took me a while to figure it out so I thought I'd share the process with you.

As you know, in Drupal 7 we use drupal_add_html_head() from anywhere in the code to add a rendered element into the <head>. This is done by passing a render array and most of the time you'll use the type #tag. In Drupal 8, however, we no longer have this procedural function so it can be a bit tricky to find out how this is done.

Although existing in Drupal 7 as well, the #attached key in render arrays really becomes important in D8. We can no longer add any scripts or stylesheets to any page without such proper attachment to render arrays. In my last article I've shown you how to add core scripts to pages in case they were missing (which can happen for anonymous users). In essence, it is all about libraries now that get attached to render arrays. So that is most of what you'll hear about.

But libraries are not the only thing you can attach to render arrays. You can also add elements to the head of the page in a similar way you'd attach libraries. So if we wanted to add a description meta tag to all of the pages on our site, we could implement hook_page_attachments() like so:

/** * Implements hook_page_attachments(). */ function module_name_page_attachments(array &$page) { $description = [ '#tag' => 'meta', '#attributes' => [ 'name' => 'description', 'content' => 'This is my website.', ], ]; $page['#attached']['html_head'][] = [$description, 'description']; }

In the example above we are just adding a dummy description meta tag to all the pages. You probably won't want to apply that to all the pages though and rather have the content of the description tag read the title of the current node. In this case you can implement hook_entity_view() like so:

/** * Implements hook_entity_view(). */ function demo_entity_view(array &$build, \Drupal\Core\Entity\EntityInterface $entity, \Drupal\Core\Entity\Display\EntityViewDisplayInterface $display, $view_mode, $langcode) { if ($entity->getEntityTypeId() !== 'node') { return; } $description = [ '#tag' => 'meta', '#attributes' => [ 'name' => 'description', 'content' => \Drupal\Component\Utility\SafeMarkup::checkPlain($entity->title->value), ], ]; $build['#attached']['html_head'][] = [$description, 'description']; }

Now you targeting the node entities and using their titles as the content for the description meta tag. And that is pretty much it.

Hope this helps.

In Drupal 8 var switchTo5x = true;stLight.options({"publisher":"dr-8de6c3c4-3462-9715-caaf-ce2c161a50c"});
Categories: Elsewhere

Pages

Subscribe to jfhovinne aggregator - Elsewhere