From: Paul Gortmaker <paul.gortmaker@windriver.com>
To: <stable@vger.kernel.org>, <linux-kernel@vger.kernel.org>
Cc: "Theodore Ts'o" <tytso@mit.edu>,
Paul Gortmaker <paul.gortmaker@windriver.com>
Subject: [v2.6.34-stable 152/165] random: use lockless techniques in the interrupt path
Date: Wed, 15 Aug 2012 15:48:16 -0400 [thread overview]
Message-ID: <1345060109-9187-153-git-send-email-paul.gortmaker@windriver.com> (raw)
In-Reply-To: <1345060109-9187-1-git-send-email-paul.gortmaker@windriver.com>
From: Theodore Ts'o <tytso@mit.edu>
-------------------
This is a commit scheduled for the next v2.6.34 longterm release.
http://git.kernel.org/?p=linux/kernel/git/paulg/longterm-queue-2.6.34.git
If you see a problem with using this for longterm, please comment.
-------------------
commit 902c098a3663de3fa18639efbb71b6080f0bcd3c upstream.
The real-time Linux folks don't like add_interrupt_randomness() taking
a spinlock since it is called in the low-level interrupt routine.
This also allows us to reduce the overhead in the fast path, for the
random driver, which is the interrupt collection path.
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
drivers/char/random.c | 78 +++++++++++++++++++++++++--------------------------
1 file changed, 39 insertions(+), 39 deletions(-)
diff --git a/drivers/char/random.c b/drivers/char/random.c
index a104af3..3cfaf87 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -411,9 +411,9 @@ struct entropy_store {
/* read-write data: */
spinlock_t lock;
unsigned add_ptr;
+ unsigned input_rotate;
int entropy_count;
int entropy_total;
- int input_rotate;
unsigned int initialized:1;
__u8 last_data[EXTRACT_SIZE];
};
@@ -461,26 +461,24 @@ static __u32 const twist_table[8] = {
* it's cheap to do so and helps slightly in the expected case where
* the entropy is concentrated in the low-order bits.
*/
-static void mix_pool_bytes_extract(struct entropy_store *r, const void *in,
- int nbytes, __u8 out[64])
+static void __mix_pool_bytes(struct entropy_store *r, const void *in,
+ int nbytes, __u8 out[64])
{
unsigned long i, j, tap1, tap2, tap3, tap4, tap5;
int input_rotate;
int wordmask = r->poolinfo->poolwords - 1;
const char *bytes = in;
__u32 w;
- unsigned long flags;
- /* Taps are constant, so we can load them without holding r->lock. */
tap1 = r->poolinfo->tap1;
tap2 = r->poolinfo->tap2;
tap3 = r->poolinfo->tap3;
tap4 = r->poolinfo->tap4;
tap5 = r->poolinfo->tap5;
- spin_lock_irqsave(&r->lock, flags);
- input_rotate = r->input_rotate;
- i = r->add_ptr;
+ smp_rmb();
+ input_rotate = ACCESS_ONCE(r->input_rotate);
+ i = ACCESS_ONCE(r->add_ptr);
/* mix one byte at a time to simplify size handling and churn faster */
while (nbytes--) {
@@ -507,19 +505,23 @@ static void mix_pool_bytes_extract(struct entropy_store *r, const void *in,
input_rotate += i ? 7 : 14;
}
- r->input_rotate = input_rotate;
- r->add_ptr = i;
+ ACCESS_ONCE(r->input_rotate) = input_rotate;
+ ACCESS_ONCE(r->add_ptr) = i;
+ smp_wmb();
if (out)
for (j = 0; j < 16; j++)
((__u32 *)out)[j] = r->pool[(i - j) & wordmask];
-
- spin_unlock_irqrestore(&r->lock, flags);
}
-static void mix_pool_bytes(struct entropy_store *r, const void *in, int bytes)
+static void mix_pool_bytes(struct entropy_store *r, const void *in,
+ int nbytes, __u8 out[64])
{
- mix_pool_bytes_extract(r, in, bytes, NULL);
+ unsigned long flags;
+
+ spin_lock_irqsave(&r->lock, flags);
+ __mix_pool_bytes(r, in, nbytes, out);
+ spin_unlock_irqrestore(&r->lock, flags);
}
struct fast_pool {
@@ -557,23 +559,22 @@ static void fast_mix(struct fast_pool *f, const void *in, int nbytes)
*/
static void credit_entropy_bits(struct entropy_store *r, int nbits)
{
- unsigned long flags;
- int entropy_count;
+ int entropy_count, orig;
if (!nbits)
return;
- spin_lock_irqsave(&r->lock, flags);
-
DEBUG_ENT("added %d entropy credits to %s\n", nbits, r->name);
- entropy_count = r->entropy_count;
+retry:
+ entropy_count = orig = ACCESS_ONCE(r->entropy_count);
entropy_count += nbits;
if (entropy_count < 0) {
DEBUG_ENT("negative entropy/overflow\n");
entropy_count = 0;
} else if (entropy_count > r->poolinfo->POOLBITS)
entropy_count = r->poolinfo->POOLBITS;
- r->entropy_count = entropy_count;
+ if (cmpxchg(&r->entropy_count, orig, entropy_count) != orig)
+ goto retry;
if (!r->initialized && nbits > 0) {
r->entropy_total += nbits;
@@ -586,7 +587,6 @@ static void credit_entropy_bits(struct entropy_store *r, int nbits)
wake_up_interruptible(&random_read_wait);
kill_fasync(&fasync, SIGIO, POLL_IN);
}
- spin_unlock_irqrestore(&r->lock, flags);
}
/*********************************************************************
@@ -673,7 +673,7 @@ static void add_timer_randomness(struct timer_rand_state *state, unsigned num)
sample.cycles = get_cycles();
sample.num = num;
- mix_pool_bytes(&input_pool, &sample, sizeof(sample));
+ mix_pool_bytes(&input_pool, &sample, sizeof(sample), NULL);
/*
* Calculate number of bits of randomness we probably added.
@@ -757,7 +757,7 @@ void add_interrupt_randomness(int irq, int irq_flags)
fast_pool->last = now;
r = nonblocking_pool.initialized ? &input_pool : &nonblocking_pool;
- mix_pool_bytes(r, &fast_pool->pool, sizeof(fast_pool->pool));
+ __mix_pool_bytes(r, &fast_pool->pool, sizeof(fast_pool->pool), NULL);
/*
* If we don't have a valid cycle counter, and we see
* back-to-back timer interrupts, then skip giving credit for
@@ -822,7 +822,7 @@ static void xfer_secondary_pool(struct entropy_store *r, size_t nbytes)
bytes = extract_entropy(r->pull, tmp, bytes,
random_read_wakeup_thresh / 8, rsvd);
- mix_pool_bytes(r, tmp, bytes);
+ mix_pool_bytes(r, tmp, bytes, NULL);
credit_entropy_bits(r, bytes*8);
}
}
@@ -883,9 +883,11 @@ static void extract_buf(struct entropy_store *r, __u8 *out)
int i;
__u32 hash[5], workspace[SHA_WORKSPACE_WORDS];
__u8 extract[64];
+ unsigned long flags;
/* Generate a hash across the pool, 16 words (512 bits) at a time */
sha_init(hash);
+ spin_lock_irqsave(&r->lock, flags);
for (i = 0; i < r->poolinfo->poolwords; i += 16)
sha_transform(hash, (__u8 *)(r->pool + i), workspace);
@@ -898,7 +900,8 @@ static void extract_buf(struct entropy_store *r, __u8 *out)
* brute-forcing the feedback as hard as brute-forcing the
* hash.
*/
- mix_pool_bytes_extract(r, hash, sizeof(hash), extract);
+ __mix_pool_bytes(r, hash, sizeof(hash), extract);
+ spin_unlock_irqrestore(&r->lock, flags);
/*
* To avoid duplicates, we atomically extract a portion of the
@@ -921,11 +924,10 @@ static void extract_buf(struct entropy_store *r, __u8 *out)
}
static ssize_t extract_entropy(struct entropy_store *r, void *buf,
- size_t nbytes, int min, int reserved)
+ size_t nbytes, int min, int reserved)
{
ssize_t ret = 0, i;
__u8 tmp[EXTRACT_SIZE];
- unsigned long flags;
xfer_secondary_pool(r, nbytes);
nbytes = account(r, nbytes, min, reserved);
@@ -934,6 +936,8 @@ static ssize_t extract_entropy(struct entropy_store *r, void *buf,
extract_buf(r, tmp);
if (fips_enabled) {
+ unsigned long flags;
+
spin_lock_irqsave(&r->lock, flags);
if (!memcmp(tmp, r->last_data, EXTRACT_SIZE))
panic("Hardware RNG duplicated output!\n");
@@ -1027,22 +1031,18 @@ EXPORT_SYMBOL(get_random_bytes);
static void init_std_data(struct entropy_store *r)
{
int i;
- ktime_t now;
- unsigned long flags;
+ ktime_t now = ktime_get_real();
+ unsigned long rv;
- spin_lock_irqsave(&r->lock, flags);
r->entropy_count = 0;
r->entropy_total = 0;
- spin_unlock_irqrestore(&r->lock, flags);
-
- now = ktime_get_real();
- mix_pool_bytes(r, &now, sizeof(now));
- for (i = r->poolinfo->POOLBYTES; i > 0; i -= sizeof flags) {
- if (!arch_get_random_long(&flags))
+ mix_pool_bytes(r, &now, sizeof(now), NULL);
+ for (i = r->poolinfo->POOLBYTES; i > 0; i -= sizeof(rv)) {
+ if (!arch_get_random_long(&rv))
break;
- mix_pool_bytes(r, &flags, sizeof(flags));
+ mix_pool_bytes(r, &rv, sizeof(rv), NULL);
}
- mix_pool_bytes(r, utsname(), sizeof(*(utsname())));
+ mix_pool_bytes(r, utsname(), sizeof(*(utsname())), NULL);
}
static int rand_initialize(void)
@@ -1179,7 +1179,7 @@ write_pool(struct entropy_store *r, const char __user *buffer, size_t count)
count -= bytes;
p += bytes;
- mix_pool_bytes(r, buf, bytes);
+ mix_pool_bytes(r, buf, bytes, NULL);
cond_resched();
}
--
1.7.12.rc2
next prev parent reply other threads:[~2012-08-15 19:53 UTC|newest]
Thread overview: 186+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-15 19:45 [v2.6.34-stable 000/165] v2.6.34.13 longterm review Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 001/165] net_sched: Fix qdisc_notify() Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 002/165] nl80211: fix overflow in ssid_len Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 003/165] fs: assign sb->s_bdi to default_backing_dev_info if the bdi is going away Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 004/165] vm: fix vm_pgoff wrap in stack expansion Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 005/165] rose: Add length checks to CALL_REQUEST parsing Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 006/165] drm: integer overflow in drm_mode_dirtyfb_ioctl() Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 007/165] perf: overflow/perf_count_sw_cpu_clock crashes recent kernels Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 008/165] regset: Prevent null pointer reference on readonly regsets Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 009/165] ext4: fix undefined behavior in ext4_fill_flex_info() Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 010/165] cifs: fix possible memory corruption in CIFSFindNext Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 011/165] cifs: fix dentry refcount leak when opening a FIFO on lookup Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 012/165] hfsplus: Fix potential buffer overflows Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 013/165] xfs: Fix possible memory corruption in xfs_readlink Paul Gortmaker
2012-08-17 15:38 ` Herton Ronaldo Krzesinski
2012-08-17 18:46 ` Paul Gortmaker
2012-08-17 19:25 ` Herton Ronaldo Krzesinski
2012-08-15 19:45 ` [v2.6.34-stable 014/165] KVM: Remove ability to assign a device without iommu support Paul Gortmaker
2012-08-15 19:45 ` [v2.6.34-stable 015/165] KVM: Device assignment permission checks Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 016/165] KVM: Ensure all vcpus are consistent with in-kernel irqchip settings Paul Gortmaker
2012-08-16 19:30 ` Herton Ronaldo Krzesinski
2012-08-16 22:45 ` Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 017/165] security: fix compile error in commoncap.c Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 018/165] fcaps: clear the same personality flags as suid when fcaps are used Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 019/165] KEYS: Fix a NULL pointer deref in the user-defined key type Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 020/165] locks: fix checking of fcntl_setlease argument Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 021/165] USB: ftdi_sio: add Calao reference board support Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 022/165] USB: EHCI: Do not rely on PORT_SUSPEND to stop USB resuming in ehci_bus_resume() Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 023/165] rt2x00: do not drop usb dev reference counter on suspend Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 024/165] atm: br2684: Fix oops due to skb->dev being NULL Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 025/165] sparc: Allow handling signals when stack is corrupted Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 026/165] sparc: fix array bounds error setting up PCIC NMI trap Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 027/165] ipv6: Add GSO support on forwarding path Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 028/165] GRO: fix merging a paged skb after non-paged skbs Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 029/165] xen-blkfront: fix data size for xenbus_gather in blkfront_connect Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 030/165] md/linear: avoid corrupting structure while waiting for rcu_free to complete Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 031/165] powerpc/pci: Check devices status property when scanning OF tree Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 032/165] xen: x86_32: do not enable iterrupts when returning from exception in interrupt context Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 033/165] xen/smp: Warn user why they keel over - nosmp or noapic and what to use instead Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 034/165] ARM: davinci: da850 EVM: read mac address from SPI flash Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 035/165] md: Fix handling for devices from 2TB to 4TB in 0.90 metadata Paul Gortmaker
2012-08-15 20:46 ` NeilBrown
2012-08-15 20:52 ` Paul Gortmaker
2012-08-16 4:24 ` Ben Hutchings
2012-08-16 6:47 ` NeilBrown
2012-08-15 19:46 ` [v2.6.34-stable 036/165] net/9p: fix client code to fail more gracefully on protocol error Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 037/165] fs/9p: Fid is not valid after a failed clunk Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 038/165] net/9p: Fix the msize calculation Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 039/165] irda: fix smsc-ircc2 section mismatch warning Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 040/165] qla2xxx: Correct inadvertent loop state transitions during port-update handling Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 041/165] e1000: Fix driver to be used on PA RISC C8000 workstations Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 042/165] ASoC: Fix reporting of partial jack updates Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 043/165] ALSA: HDA: Cirrus - fix "Surround Speaker" volume control name Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 044/165] b43: Fix beacon problem in ad-hoc mode Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 045/165] wireless: Reset beacon_found while updating regulatory Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 046/165] USB: PL2303: correctly handle baudrates above 115200 Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 047/165] ASIX: Add AX88772B USB ID Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 048/165] hvc_console: Improve tty/console put_chars handling Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 049/165] TPM: Call tpm_transmit with correct size Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 050/165] TPM: Zero buffer after copying to userspace Paul Gortmaker
2012-08-17 15:48 ` Herton Ronaldo Krzesinski
2012-08-17 18:27 ` Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 051/165] libiscsi_tcp: fix LLD data allocation Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 052/165] cnic: Improve NETDEV_UP event handling Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 053/165] ALSA: hda/realtek - Avoid bogus HP-pin assignment Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 054/165] 3w-9xxx: fix iommu_iova leak Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 055/165] aacraid: reset should disable MSI interrupt Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 056/165] libsas: fix failure to revalidate domain for anything but the first expander child Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 057/165] cfg80211: Fix validation of AKM suites Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 058/165] libsas: fix panic when single phy is disabled on a wide port Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 059/165] ahci: Enable SB600 64bit DMA on Asus M3A Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 060/165] HID: usbhid: Add support for SiGma Micro chip Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 061/165] hwmon: (w83627ehf) Properly report thermal diode sensors Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 062/165] x25: Prevent skb overreads when checking call user data Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 063/165] staging: quatech_usb2: Potential lost wakeup scenario in TIOCMIWAIT Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 064/165] USB: qcserial: add device ID for "HP un2430 Mobile Broadband Module" Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 065/165] xhci-mem.c: Check for ring->first_seg != NULL Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 066/165] ipr: Always initiate hard reset in kdump kernel Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 067/165] libsas: set sas_address and device type of rphy Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 068/165] ALSA: HDA: Add new revision for ALC662 Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 069/165] x86: Fix compilation bug in kprobes' twobyte_is_boostable Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 070/165] epoll: fix spurious lockdep warnings Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 071/165] usbmon vs. tcpdump: fix dropped packet count Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 072/165] USB: storage: Use normalized sense when emulating autosense Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 073/165] USB: pid_ns: ensure pid is not freed during kill_pid_info_as_uid Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 074/165] usb: cdc-acm: Owen SI-30 support Paul Gortmaker
2012-08-15 19:46 ` [v2.6.34-stable 075/165] USB: add RESET_RESUME for webcams shown to be quirky Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 076/165] USB: pl2303: add id for SMART device Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 077/165] USB: ftdi_sio: add PID for Sony Ericsson Urban Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 078/165] USB: ftdi_sio: Support TI/Luminary Micro Stellaris BD-ICDI Board Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 079/165] QE/FHCI: fixed the CONTROL bug Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 080/165] Update email address for stable patch submission Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 081/165] kobj_uevent: Ignore if some listeners cannot handle message Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 082/165] kmod: prevent kmod_loop_msg overflow in __request_module() Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 083/165] time: Change jiffies_to_clock_t() argument type to unsigned long Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 084/165] nfsd4: Remove check for a 32-bit cookie in nfsd4_readdir() Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 085/165] nfsd4: ignore WANT bits in open downgrade Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 086/165] ASoC: wm8940: Properly set codec->dapm.bias_level Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 087/165] ASoC: ak4642: fixup cache register table Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 088/165] ASoC: ak4535: " Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 089/165] KVM: s390: check cpu_id prior to using it Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 090/165] [S390] ccwgroup: move attributes to attribute group Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 091/165] iommu/amd: Fix wrong shift direction Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 092/165] carminefb: Fix module parameters permissions Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 093/165] uvcvideo: Set alternate setting 0 on resume if the bus has been reset Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 094/165] tuner_xc2028: Allow selection of the frequency adjustment code for XC3028 Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 095/165] plat-mxc: iomux-v3.h: implicitly enable pull-up/down when that's desired Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 096/165] um: fix ubd cow size Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 097/165] xen/timer: Missing IRQF_NO_SUSPEND in timer code broke suspend Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 098/165] thinkpad-acpi: module autoloading for newer Lenovo ThinkPads Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 099/165] scm: lower SCM_MAX_FD Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 100/165] deal with races in /proc/*/{syscall,stack,personality} Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 101/165] NLM: Don't hang forever on NLM unlock requests Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 102/165] Bluetooth: l2cap and rfcomm: fix 1 byte infoleak to userspace Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 103/165] vm: fix vm_pgoff wrap in upward expansion Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 104/165] drivers/net/rionet.c: fix ethernet address macros for LE platforms Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 105/165] ext2,ext3,ext4: don't inherit APPEND_FL or IMMUTABLE_FL for new inodes Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 106/165] USB: Serial: Add device ID for Sierra Wireless MC8305 Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 107/165] USB: Serial: Add PID(0xF7C0) to FTDI SIO driver for a zeitcontrol-device Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 108/165] ACPI/AC: prevent OOPS on some boxes due to missing check power_supply_register() return value check Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 109/165] ntp: Fix leap-second hrtimer livelock Paul Gortmaker
2012-08-17 16:17 ` Herton Ronaldo Krzesinski
2012-08-17 16:43 ` John Stultz
2012-08-17 21:13 ` Willy Tarreau
2012-08-17 18:35 ` Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 110/165] ntp: Correct TAI offset during leap second Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 111/165] timekeeping: Fix CLOCK_MONOTONIC inconsistency during leapsecond Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 112/165] time: Move common updates to a function Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 113/165] hrtimer: Provide clock_was_set_delayed() Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 114/165] timekeeping: Fix leapsecond triggered load spike issue Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 115/165] timekeeping: Maintain ktime_t based offsets for hrtimers Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 116/165] hrtimers: Move lock held region in hrtimer_interrupt() Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 117/165] timekeeping: Provide hrtimer update function Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 118/165] hrtimer: Update hrtimer base offsets each hrtimer_interrupt Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 119/165] timekeeping: Add missing update call in timekeeping_resume() Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 120/165] [SCSI] st: fix race in st_scsi_execute_end Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 121/165] [SCSI] Make scsi_free_queue() kill pending SCSI commands Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 122/165] NFS/sunrpc: don't use a credential with extra groups Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 123/165] netlink: validate NLA_MSECS length Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 124/165] mtd: mtdchar: add missing initializer on raw write Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 125/165] PM / Suspend: Off by one in pm_suspend() Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 126/165] hfs: add sanity check for file name length Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 127/165] kbuild: Add extra gcc checks Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 128/165] kbuild: implement several W= levels Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 129/165] kbuild: Disable -Wunused-but-set-variable for gcc 4.6.0 Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 130/165] md/raid5: abort any pending parity operations when array fails Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 131/165] [media] Remove the old V4L1 v4lgrab.c file Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 132/165] drm/i915: Sanity check pread/pwrite Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 133/165] drm/i915: Rephrase pwrite bounds checking to avoid any potential overflow Paul Gortmaker
2012-08-15 19:47 ` [v2.6.34-stable 134/165] mm: avoid null pointer access in vm_struct via /proc/vmallocinfo Paul Gortmaker
2012-08-17 15:22 ` Herton Ronaldo Krzesinski
2012-08-17 18:26 ` Paul Gortmaker
2012-08-17 21:02 ` Willy Tarreau
2012-08-15 19:47 ` [v2.6.34-stable 135/165] kbuild: Fix passing -Wno-* options to gcc 4.4+ Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 136/165] USB: serial: pl2303: rm duplicate id Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 137/165] USB: Fix Corruption issue in USB ftdi driver ftdi_sio.c Paul Gortmaker
2012-08-17 14:36 ` Herton Ronaldo Krzesinski
2012-08-17 15:12 ` Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 138/165] usb-storage: Accept 8020i-protocol commands longer than 12 bytes Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 139/165] USB: add quirk for Logitech C600 web cam Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 140/165] USB: quirks: adding more quirky webcams to avoid squeaky audio Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 141/165] random: simplify fips mode Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 142/165] x86, cpu: Add CPU flags for F16C and RDRND Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 143/165] x86, cpufeature: Update CPU feature RDRND to RDRAND Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 144/165] random: Add support for architectural random hooks Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 145/165] x86, random: Architectural inlines to get random integers with RDRAND Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 146/165] fix typo/thinko in get_random_bytes() Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 147/165] random: Use arch_get_random_int instead of cycle counter if avail Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 148/165] random: Use arch-specific RNG to initialize the entropy store Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 149/165] random: Adjust the number of loops when initializing Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 150/165] drivers/char/random.c: fix boot id uniqueness race Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 151/165] random: make 'add_interrupt_randomness()' do something sane Paul Gortmaker
2012-08-15 19:48 ` Paul Gortmaker [this message]
2012-08-15 19:48 ` [v2.6.34-stable 153/165] random: create add_device_randomness() interface Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 154/165] random: use the arch-specific rng in xfer_secondary_pool Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 155/165] random: add new get_random_bytes_arch() function Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 156/165] random: add tracepoints for easier debugging and verification Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 157/165] random: mix in architectural randomness in extract_buf() Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 158/165] MAINTAINERS: Theodore Ts'o is taking over the random driver Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 159/165] usb: feed USB device information to the /dev/random driver Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 160/165] net: feed /dev/random with the MAC address when registering a device Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 161/165] random: remove rand_initialize_irq() Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 162/165] random: Add comment to random_initialize() Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 163/165] rtc: wm831x: Feed the write counter into device_add_randomness() Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 164/165] mfd: wm831x: Feed the device UUID " Paul Gortmaker
2012-08-15 19:48 ` [v2.6.34-stable 165/165] dmi: Feed DMI table to /dev/random driver Paul Gortmaker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1345060109-9187-153-git-send-email-paul.gortmaker@windriver.com \
--to=paul.gortmaker@windriver.com \
--cc=linux-kernel@vger.kernel.org \
--cc=stable@vger.kernel.org \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome