Archive for the ‘kernel’ Category

kernel news – 02.12.2013

Posted: December 2, 2013 in kernel

-David Miller has a networking-related pull request :

Here is a pile of bug fixes that accumulated while I was in Europe.

1) In fixing kernel leaks to userspace during copying of socket
addresses, we broke a case that used to work, namely the user
providing a buffer larger than the in-kernel generic socket address
structure. This broke Ruby amongst other things. Fix from Dan
Carpenter.

2) Fix regression added by byte queue limit support in 8139cp driver,
from Yang Yingliang.

3) The addition of MSG_SENDPAGE_NOTLAST buggered up a few sendpage
implementations, they should just treat it the same as MSG_MORE.
Fix from Richard Weinberger and Shawn Landden.

4) Handle icmpv4 errors received on ipv6 SIT tunnels correctly,
from Oussama Ghorbel. In particular we should send an ICMPv6
unreachable in such situations.

5) Fix some regressions in the recent genetlink fixes, in particular
get the pmcraid driver to use the new safer interfaces correctly.
From Johannes Berg.

6) macvtap was converted to use a per-cpu set of statistics, but some
code was still bumping tx_dropped elsewhere. From Jason Wang.

7) Fix build failure of xen-netback due to missing include on some
architectures, from Andy Whitecroft.

8) macvtap double counts received packets in statistics, fix from
Vlad Yasevich.

9) Fix various cases of using *_STATS_BH() when *_STATS() is more
appropriate. From Eric Dumazet and Hannes Frederic Sowa.

10) Pktgen ipsec mode doesn’t update the ipv4 header length and
checksum properly after encapsulation. Fix from Fan Du.

kernel news – 30.11.2013

Posted: November 30, 2013 in kernel

-Matt Fleming has some EFI urgent fixes :

* Avoid triggering a lockdep warning caused by calling kmemdup() while
holding a spinlock – Seiji Aguchi

* EFI framebuffer earlyprintk fix for off-by-one error that caused
console output to be split over two lines on some machines.

* Avoid pstore filename collisions by using a timestamp to calculate
the entry ID, thereby making them unique – Madper Xie

-Takashi Iwai has sound fixes :

Quite a few HD-Audio fixes, a WUSB audio fix and a fix for FireWire
audio. The HD-audio part contains a couple of fixes for the generic
parser, and these are the only intrusive fixes. The rest are mostly
device-specific fixes.

-Tejun Heo has cgroup, libata and workqueue fixes for -rc1 :

Fixes for three issues.

* cgroup destruction path could swamp system_wq possibly leading to
deadlock. This actually seems to happen in the wild with memcg
because memcg destruction path adds nested dependency on system_wq.
Resolved by isolating cgroup destruction work items on its dedicated
workqueue.

* Possible locking context deadlock through seqcount reported by
lockdep.

* Memory leak under certain conditions.
#########################################
libata device removal path was removing parent device node before its
child, which is mostly harmless but triggers warning after recent
sysfs changes. Rafael’s patch fixes the order.

Other than that, minor controller-specific fixes and device ID
additions.
##########################################
This pull request contains one important fix. The NUMA supported
added a while back broke ordering guarantee on ordered workqueues. It
was enforced by having single frontend interface with @max_active == 1
but the NUMA support puts multiple interfaces on unbound workqueues on
NUMA machines thus breaking the ordered guarantee. This is fixed by
disabling NUMA support on ordered workqueues.

The above and a couple other patches were sitting in for-3.12-fixes
but I forgot to push that out, so they ended up waiting a bit too
long. My aplogies.

Other fixes are minor.

-Catalin Marinas has arm64 fixes for -rc :

Fixes:
- Remove preempt_count modifications in the arm64 IRQ handling code
since that’s already dealt with in generic irq_enter/irq_exit
- PTE_PROT_NONE bit moved higher up to avoid overlapping with the
hardware bits (for PROT_NONE mappings which are pte_present)
- Big-endian fixes for ptrace support
- Asynchronous aborts unmasking while in the kernel
- pgprot_writecombine() change to create Normal NonCacheable memory
rather than Device GRE

-Greg KH announnces kernels 3.11.10 (last one of the 3.11 series), 3.4.71,
3.10.21 and 3.12.2 .

-Linus Torvalds announces 3.13-rc2:

We’re back on the normal weekly schedule, although I’m planning on
eventually slipping back to a Sunday release schedule. In the
meantime, it’s like Xmas every Friday! Or, perhaps more appropriately
for the date, Hanukkah.

Anyway, everything looks normal for an -rc2. Nothing hugely alarming,
lots of small fixes all over, and the statistics look normal too (just
over half drivers, the rest is one third arch updates, one third
Documentation, and one third misc – filesystems, kernel, crypto..)

Nothing particularly stands out. If you thought rc1 is too scary to
test, jump on in now. It’s all good,

kernel news – 28.11.2013

Posted: November 28, 2013 in kernel

-Rafael J. Wysocki has ACPI and PM updates :

- Fix for a recent regression in the Tegra cpufreq driver causing
excess error messages to be printed from Stephen Warren.

– ACPI-based device hotplug fix to prevent conflicting notify handlers
from being installed for PCI host bridge objects. From Toshi Kani.

– ACPICA update to upstream version 20131115. This contains bug fixes
mostly (loop termination fix for the get AML length function, fixes
related to namespace node removal and debug output). From Bob Moore,
Tomasz Nowicki and Lv Zheng.

– Removal of incorrect inclusions of internal ACPICA header files by
non-ACPICA code from Lv Zheng.

– Fixes for the ACPI sysfs interface exposing tables to user space
from Daisuke Hatayama and Jeremy Compostella.

– Assorted ACPI and cpufreq cleanups from Sachin Kamat and Al Stone.

– cpupower tool fix and man page from Thomas Renninger.

-Jiri Kosina and HID :

- fix compat ioctl leak in uhid, by David Herrmann
- fix scheduling in atomic context (causing actual lockups in real world)
in hid-sony driver, by Sven Eckelmann
- revert patch introducing VID/PID conflict, by Jiri Kosina
- support from various new device IDs by Benjamin Tissoires and KaiChung
Cheng

-Greg Kroah-Hartman has driver core/sysfs and TTY serial fixes :

Here are 3 patches for sysfs issues that have been reported. Well, 1
patch really, the first one is reverted as it’s not really needed (the
correct fix is coming in through the different driver subsystems
instead.) But that 1 sysfs fix is needed, so this is still a good thing
to pull in now.
###############################################
Here are some tty/serial driver fixes for reported issues in 3.13-rc2.

The n_gsm “fix” was reverted as it was found to not be correct.
Hopefully this will be resolved in a future pull request, but as there’s
really only one user of this line setting, it’s not a big deal…

kernel news – 27.11.2013

Posted: November 27, 2013 in kernel

-Olof Johansson has ARM fixes :

ARM: SoC fixes for 3.13-rc

Mostly bugfixes and a few small code removals. Worth pointing out is:

- A handful of more fixes to get DT enablement working properly on OMAP,
finding new breakage of things that don’t work quite right yet without
the traditional board files. I expect a bit more of this to come in this
release as people test on their hardware.
- Implementation of power_down_finish() on vexpress, to make kexec work and
to stop the MCPM core to produce a warning (the warning was new to 3.13-rc1).
- A handful of minor fixes for various platforms.

-Benjamin Herrenscmidt has powerpc bug fixes:

Here are a few powerpc bug fixes post -rc1. The main thing that caused
problem was that CONFIG_CPU_LITTLE_ENDIAN got turned on with allyesconfig
and such, which is not a very good idea especially since it requires a
newer toolchain than what most people have. So we turned it into a
choice instead that defaults to big endian.

kernel news – 26.11.2013

Posted: November 26, 2013 in kernel

-Eduardo Valentin has the following changes for thermal and device
aimed at 3.14 :

Please consider the following changes for 3.14. It contains the work of
representing hardware thermal using device tree. It also contains
three examples on how to use the new representation on sensor devices,
using three different drivers to accomplish it. One driver is on thermal
subsystem, the TI SoC thermal, and the other two drivers are in hwmon
subsystem. I also included a change on cpu cooling device, which required
also a change on cpufreq-cpu0 driver. The change on this cooling device
still keeps in one piece its usage on different platforms.

Because it is a controversial topic due to the lack of standards, and
because it touches different subsystems, it took way longer than I expected.
However, I’ve been discussing in different channels, and I believe I got
enough entropy now to go forward. We have acks from cpufreq folks (on ARM side)
and from hwmon folks too. Raphael W., Jean D. and Mark R. have also
reviewed this series. They agree with the core idea of the work.

It has been agreed that this is not the end of it. As I said I started
with only three examples, but there are other potential drivers to use
this API. So, I have agreed with Jean D., for instance, that this
series would be first step of the complete work. Next would be to check
other potential drivers to be converted and then validate the proposed
API. Currently the thermal framework would be polling for device
temperature, but we could implement a couple of call backs to setup
update rate, thresholds and hysteresis too, for instance.

On the other hand, I don’t think the principle and concept would break
after converting the remaining drivers. That is why I am sending this pull
request.

Another point is, as you can see, there are several points in this pull
request that do not belong to thermal subsystem. It has been suggested
by Guenter R. that in such cases, it is recommended to send the complete
series via one single subsystem. Thus, I am sending via your queue.

Lastly, I’ve also volunteered to maintain the upcoming thermal bindings.
Then, you can see I am adding thermal bindings to our MAINTAINERS entry too.

-Felipe Balbi has USB changes for -rc2 :

First set of fixes for this -rc cycle. A few important
fixes which should be backported to stable kernels and
the usual set of sparse warning fixes. There’s also a
regression fix on phy-generic.c which would prevent
am335x-based platforms from having their PHY drivers
probed.

-Regulator fixes from Mark Brown :

A bunch of fixes, a few driver specific ones and a framework fix for
voltage enumeration on fixed voltage regulators which had previously
worked but had been misplaced during some refactoring causing problems
for users that needed to know the voltage.

-Arnaldo Carvalho de Melo has perf/core improvements and fixes :

. Make per-cpu mmaps the default in ‘perf record’, from Adrian Hunter.

. Default -t/–thread ‘perf record’ option to no inheritance,
from Adrian Hunter.

. Make ‘perf top -g’ refer to callchains, for consistency with other tools,
from David Ahern.

. Skip ignored symbols while printing callchain, from David Ahern.

. Print callchains and symbols if they exist in ‘perf script’,
from David Ahern.

. Remove thread summary coloring in ‘perf trace’, from Pekka Enberg.

. zsh completion support, from Ramkumar Ramachandra.

. ‘perf timechart’ improvements, including backtrace support,
from Stanislav Fomichev.

kernel news – 25.11.2013

Posted: November 25, 2013 in kernel

-Jon Mason has NTB fixes and updates:

NTB driver bug fixes to address a missed call to pci_enable_msix,
NTB-RP Link Up issue, Xeon Doorbell errata workaround, ntb_transport
link down race, and correct dmaengine_get/put usage. Also, clean-ups
to remove duplicate defines and document a hardware errata. Finally,
some changes to improve performance.

-Frederic Weisbecker has POSIX CPU timers cleanups aimed at 3.14 :

This is another series of posix cpu timers cleanups. Note it’s essentially the same
as: “posix-timers: Various cleanups” at http://lkml.org/lkml/2013/10/12/107 which
Peter Zijlstra had a look into. He told me that it looked ok. This version brings
almost no code change (just fix a NULL check ommitted somewhere), it’s mostly a rebase
against 2.6.12 with refined changelogs.

It’s a first pile but more is to come, as I have some more cleanups in mind. Plus
I plan to integrate more fixes from Kosaki Motohiro.

-Sage Weil with Ceph updates and fixes:

I just returned from two weeks off the grid to discover I’d miscalculated
and just missed the merge window. If you’re feeling inclined, there are a
few non-fixes mixed into this this request (improved readv/writev, nicer
behavior for unlinked files) that can be pulled from here:

git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client.git for-linus

If not, I have a fixes only branch here:

git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client.git for-linus-bugs-only

These include a couple fixes to the new fscache code that went in during
the last cycle (which will need to go stable@ shortly as well), a couple
client-side directory fragmentation fixes, a fix for a race in the cap
release queuing path, and a couple race fixes in the request abort
and resend code.

Obviously some of this could have gone into 3.12 final, but I preferred to
overtest rather than send things in for a late -rc, and then my travel
schedule intervened–my apologies there.

-So, as the title of the e-mail from Linus says, “Linux 3.13-rc1 is out”:

So you had an extra week to prepare your pull requests, and if you
were planning on sending it in the last two days thinking I’d close
the merge window on Sunday as usual, I can only laugh derisively in
your general direction, and call you bad names. Because I’m not
interested in your excuses. I did warn people about this in the 3.12
release notes. As it was, there were a few people who cut it fairly
close today. You know who you are.

If there are pull requests I missed (due to getting caught in spam
filters, or not matching my normal search patterns), and you think you
sent your pull request in time but it got overlooked, ping me -
because I don’t have anything pending I know about, but mistakes
happen.

Talking about mistakes… I suspect it was a mistake to have that
extra week before the merge window opened, and I probably should just
have done a 3.12-rc8 instead. Because the linux-next statistics look
suspicious, and we had extra stuff show up there not just in that
first week. Clearly people took that “let’s have an extra week of
merge window” and extrapolated it a bit too much. Oh, well. Live and
learn.

Anyway, other than that small oddity, this was a fairly normal merge
window. By patch size we had a pretty usual ~55% drivers, 18%
architecture code, 9% network updates, and the rest is spread out (fs,
headers, tools, documentation). Featurewise, the big ones are likely
the nftables and the multi-queue block layer stuff, but depending on
your interests you might find all the incremental updates to various
areas interesting. There are some odd ones in there (LE mode Powerpc
support..)

Go forth and test, and start sending me regression fixes. And really,
if you didn’t send me your pull request in time, don’t whine about it.
Because nobody likes a whiner.

Shortlog of merges appended. The real shortlog is much too big to be
readable, as always for rc1.

kernel news – 22.11.2013

Posted: November 22, 2013 in kernel

-John W. Linville and wireless :

For the Bluetooth bits, Gustavo says:

“A few fixes for 3.13. There is 3 fixes to the RFCOMM protocol. One
crash fix to L2CAP. A simple fix to a bad behaviour in the SMP
protocol.”

On top of that…

Amitkumar Karwar sends a quintet of mwifiex fixes — two fixes related
to failure handling, two memory leak fixes, and a NULL pointer fix.

Felix Fietkau corrects and earlier rt2x00 HT descriptor handling fix
to address a crash.

Geyslan G. Bem fixes a memory leak in brcmfmac.

Larry Finger address more pointer arithmetic errors in rtlwifi.

Luis R. Rodriguez provides a regulatory fix in the shared ath code.

Sujith Manoharan brings a couple ath9k initialization fixes.

Ujjal Roy offers one more mwifiex fix to avoid invalid memory accesses
when unloading the USB driver.

-Nicholas A. Bellinger and target updates:

[...] things have been quiet this round with
mostly bugfixes, percpu conversions, and other minor iscsi-target
conformance testing changes.

The highlights include:

– Add demo_mode_discovery attribute for iscsi-target (Thomas)
– Convert tcm_fc(FCoE) to use percpu-ida pre-allocation
– Add send completion interrupt coalescing for ib_isert
– Convert target-core to use percpu-refcounting for se_lun
– Fix mutex_trylock usage bug in iscsit_increment_maxcmdsn
– tcm_loop updates (Hannes)
– target-core ALUA cleanups + prep for v3.14 SCSI Referrals
support. (Hannes)

v3.14 is currently shaping to be a busy development cycle in target
land, with initial support for T10 Referrals and T10 DIF currently on
the roadmap.

-Networking news from David Miller:

1) Fix memory leaks and other issues in mwifiex driver, from Amitkumar
Karwar.

2) skb_segment() can choke on packets using frag lists, fix from
Herbert Xu with help from Eric Dumazet and others.

3) IPv4 output cached route instantiation properly handles races
involving two threads trying to install the same route, but we
forgot to propagate this logic to input routes as well. Fix
from Alexei Starovoitov.

4) Put protections in place to make sure that recvmsg() paths never
accidently copy uninitialized memory back into userspace and also
make sure that we never try to use more that sockaddr_storage for
building the on-kernel-stack copy of a sockaddr. Fixes from Hannes
Frederic Sowa.

5) R8152 driver transmit flow bug fixes from Hayes Wang.

6) Fix some minor fallouts from genetlink changes, from Johannes Berg
and Michael Opdenacker.

7) AF_PACKET sendmsg path can race with netdevice unregister notifier,
fix by using RCU to make sure the network device doesn’t go away
from under us. Fix from Daniel Borkmann.