public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Jim Schutt <jaschut@sandia.gov>, Alex Elder <elder@inktank.com>
Subject: [114/141] ceph: ceph_pagelist_append might sleep while atomic
Date: Wed, 03 Jul 2013 14:40:51 -0400	[thread overview]
Message-ID: <20130703184105.688459092@goodmis.org> (raw)
In-Reply-To: 20130703183857.307196999@goodmis.org

[-- Attachment #1: 0114-ceph-ceph_pagelist_append-might-sleep-while-atomic.patch --]
[-- Type: text/plain, Size: 9574 bytes --]

3.6.11.6 stable review patch.
If anyone has any objections, please let me know.

------------------

From: Jim Schutt <jaschut@sandia.gov>

[ Upstream commit 39be95e9c8c0b5668c9f8806ffe29bf9f4bc0f40 ]

Ceph's encode_caps_cb() worked hard to not call __page_cache_alloc()
while holding a lock, but it's spoiled because ceph_pagelist_addpage()
always calls kmap(), which might sleep.  Here's the result:

[13439.295457] ceph: mds0 reconnect start
[13439.300572] BUG: sleeping function called from invalid context at include/linux/highmem.h:58
[13439.309243] in_atomic(): 1, irqs_disabled(): 0, pid: 12059, name: kworker/1:1
    . . .
[13439.376225] Call Trace:
[13439.378757]  [<ffffffff81076f4c>] __might_sleep+0xfc/0x110
[13439.384353]  [<ffffffffa03f4ce0>] ceph_pagelist_append+0x120/0x1b0 [libceph]
[13439.391491]  [<ffffffffa0448fe9>] ceph_encode_locks+0x89/0x190 [ceph]
[13439.398035]  [<ffffffff814ee849>] ? _raw_spin_lock+0x49/0x50
[13439.403775]  [<ffffffff811cadf5>] ? lock_flocks+0x15/0x20
[13439.409277]  [<ffffffffa045e2af>] encode_caps_cb+0x41f/0x4a0 [ceph]
[13439.415622]  [<ffffffff81196748>] ? igrab+0x28/0x70
[13439.420610]  [<ffffffffa045e9f8>] ? iterate_session_caps+0xe8/0x250 [ceph]
[13439.427584]  [<ffffffffa045ea25>] iterate_session_caps+0x115/0x250 [ceph]
[13439.434499]  [<ffffffffa045de90>] ? set_request_path_attr+0x2d0/0x2d0 [ceph]
[13439.441646]  [<ffffffffa0462888>] send_mds_reconnect+0x238/0x450 [ceph]
[13439.448363]  [<ffffffffa0464542>] ? ceph_mdsmap_decode+0x5e2/0x770 [ceph]
[13439.455250]  [<ffffffffa0462e42>] check_new_map+0x352/0x500 [ceph]
[13439.461534]  [<ffffffffa04631ad>] ceph_mdsc_handle_map+0x1bd/0x260 [ceph]
[13439.468432]  [<ffffffff814ebc7e>] ? mutex_unlock+0xe/0x10
[13439.473934]  [<ffffffffa043c612>] extra_mon_dispatch+0x22/0x30 [ceph]
[13439.480464]  [<ffffffffa03f6c2c>] dispatch+0xbc/0x110 [libceph]
[13439.486492]  [<ffffffffa03eec3d>] process_message+0x1ad/0x1d0 [libceph]
[13439.493190]  [<ffffffffa03f1498>] ? read_partial_message+0x3e8/0x520 [libceph]
    . . .
[13439.587132] ceph: mds0 reconnect success
[13490.720032] ceph: mds0 caps stale
[13501.235257] ceph: mds0 recovery completed
[13501.300419] ceph: mds0 caps renewed

Fix it up by encoding locks into a buffer first, and when the number
of encoded locks is stable, copy that into a ceph_pagelist.

[elder@inktank.com: abbreviated the stack info a bit.]

Cc: stable@vger.kernel.org # 3.4+
Signed-off-by: Jim Schutt <jaschut@sandia.gov>
Reviewed-by: Alex Elder <elder@inktank.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 fs/ceph/locks.c      |   76 +++++++++++++++++++++++++++++++-------------------
 fs/ceph/mds_client.c |   65 ++++++++++++++++++++++--------------------
 fs/ceph/super.h      |    9 ++++--
 3 files changed, 89 insertions(+), 61 deletions(-)

diff --git a/fs/ceph/locks.c b/fs/ceph/locks.c
index e9960c8..bb5fb3d 100644
--- a/fs/ceph/locks.c
+++ b/fs/ceph/locks.c
@@ -191,29 +191,23 @@ void ceph_count_locks(struct inode *inode, int *fcntl_count, int *flock_count)
 }
 
 /**
- * Encode the flock and fcntl locks for the given inode into the pagelist.
- * Format is: #fcntl locks, sequential fcntl locks, #flock locks,
- * sequential flock locks.
- * Must be called with lock_flocks() already held.
- * If we encounter more of a specific lock type than expected,
- * we return the value 1.
+ * Encode the flock and fcntl locks for the given inode into the ceph_filelock
+ * array. Must be called with lock_flocks() already held.
+ * If we encounter more of a specific lock type than expected, return -ENOSPC.
  */
-int ceph_encode_locks(struct inode *inode, struct ceph_pagelist *pagelist,
-		      int num_fcntl_locks, int num_flock_locks)
+int ceph_encode_locks_to_buffer(struct inode *inode,
+				struct ceph_filelock *flocks,
+				int num_fcntl_locks, int num_flock_locks)
 {
 	struct file_lock *lock;
-	struct ceph_filelock cephlock;
 	int err = 0;
 	int seen_fcntl = 0;
 	int seen_flock = 0;
-	__le32 nlocks;
+	int l = 0;
 
 	dout("encoding %d flock and %d fcntl locks", num_flock_locks,
 	     num_fcntl_locks);
-	nlocks = cpu_to_le32(num_fcntl_locks);
-	err = ceph_pagelist_append(pagelist, &nlocks, sizeof(nlocks));
-	if (err)
-		goto fail;
+
 	for (lock = inode->i_flock; lock != NULL; lock = lock->fl_next) {
 		if (lock->fl_flags & FL_POSIX) {
 			++seen_fcntl;
@@ -221,20 +215,12 @@ int ceph_encode_locks(struct inode *inode, struct ceph_pagelist *pagelist,
 				err = -ENOSPC;
 				goto fail;
 			}
-			err = lock_to_ceph_filelock(lock, &cephlock);
+			err = lock_to_ceph_filelock(lock, &flocks[l]);
 			if (err)
 				goto fail;
-			err = ceph_pagelist_append(pagelist, &cephlock,
-					   sizeof(struct ceph_filelock));
+			++l;
 		}
-		if (err)
-			goto fail;
 	}
-
-	nlocks = cpu_to_le32(num_flock_locks);
-	err = ceph_pagelist_append(pagelist, &nlocks, sizeof(nlocks));
-	if (err)
-		goto fail;
 	for (lock = inode->i_flock; lock != NULL; lock = lock->fl_next) {
 		if (lock->fl_flags & FL_FLOCK) {
 			++seen_flock;
@@ -242,19 +228,51 @@ int ceph_encode_locks(struct inode *inode, struct ceph_pagelist *pagelist,
 				err = -ENOSPC;
 				goto fail;
 			}
-			err = lock_to_ceph_filelock(lock, &cephlock);
+			err = lock_to_ceph_filelock(lock, &flocks[l]);
 			if (err)
 				goto fail;
-			err = ceph_pagelist_append(pagelist, &cephlock,
-					   sizeof(struct ceph_filelock));
+			++l;
 		}
-		if (err)
-			goto fail;
 	}
 fail:
 	return err;
 }
 
+/**
+ * Copy the encoded flock and fcntl locks into the pagelist.
+ * Format is: #fcntl locks, sequential fcntl locks, #flock locks,
+ * sequential flock locks.
+ * Returns zero on success.
+ */
+int ceph_locks_to_pagelist(struct ceph_filelock *flocks,
+			   struct ceph_pagelist *pagelist,
+			   int num_fcntl_locks, int num_flock_locks)
+{
+	int err = 0;
+	__le32 nlocks;
+
+	nlocks = cpu_to_le32(num_fcntl_locks);
+	err = ceph_pagelist_append(pagelist, &nlocks, sizeof(nlocks));
+	if (err)
+		goto out_fail;
+
+	err = ceph_pagelist_append(pagelist, flocks,
+				   num_fcntl_locks * sizeof(*flocks));
+	if (err)
+		goto out_fail;
+
+	nlocks = cpu_to_le32(num_flock_locks);
+	err = ceph_pagelist_append(pagelist, &nlocks, sizeof(nlocks));
+	if (err)
+		goto out_fail;
+
+	err = ceph_pagelist_append(pagelist,
+				   &flocks[num_fcntl_locks],
+				   num_flock_locks * sizeof(*flocks));
+out_fail:
+	return err;
+}
+
 /*
  * Given a pointer to a lock, convert it to a ceph filelock
  */
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c
index f51a927..b254e7a 100644
--- a/fs/ceph/mds_client.c
+++ b/fs/ceph/mds_client.c
@@ -2440,39 +2440,44 @@ static int encode_caps_cb(struct inode *inode, struct ceph_cap *cap,
 
 	if (recon_state->flock) {
 		int num_fcntl_locks, num_flock_locks;
-		struct ceph_pagelist_cursor trunc_point;
-
-		ceph_pagelist_set_cursor(pagelist, &trunc_point);
-		do {
-			lock_flocks();
-			ceph_count_locks(inode, &num_fcntl_locks,
-					 &num_flock_locks);
-			rec.v2.flock_len = cpu_to_le32(2*sizeof(u32) +
-					    (num_fcntl_locks+num_flock_locks) *
-					    sizeof(struct ceph_filelock));
-			unlock_flocks();
-
-			/* pre-alloc pagelist */
-			ceph_pagelist_truncate(pagelist, &trunc_point);
-			err = ceph_pagelist_append(pagelist, &rec, reclen);
-			if (!err)
-				err = ceph_pagelist_reserve(pagelist,
-							    rec.v2.flock_len);
-
-			/* encode locks */
-			if (!err) {
-				lock_flocks();
-				err = ceph_encode_locks(inode,
-							pagelist,
-							num_fcntl_locks,
-							num_flock_locks);
-				unlock_flocks();
-			}
-		} while (err == -ENOSPC);
+		struct ceph_filelock *flocks;
+
+encode_again:
+		lock_flocks();
+		ceph_count_locks(inode, &num_fcntl_locks, &num_flock_locks);
+		unlock_flocks();
+		flocks = kmalloc((num_fcntl_locks+num_flock_locks) *
+				 sizeof(struct ceph_filelock), GFP_NOFS);
+		if (!flocks) {
+			err = -ENOMEM;
+			goto out_free;
+		}
+		lock_flocks();
+		err = ceph_encode_locks_to_buffer(inode, flocks,
+						  num_fcntl_locks,
+						  num_flock_locks);
+		unlock_flocks();
+		if (err) {
+			kfree(flocks);
+			if (err == -ENOSPC)
+				goto encode_again;
+			goto out_free;
+		}
+		/*
+		 * number of encoded locks is stable, so copy to pagelist
+		 */
+		rec.v2.flock_len = cpu_to_le32(2*sizeof(u32) +
+				    (num_fcntl_locks+num_flock_locks) *
+				    sizeof(struct ceph_filelock));
+		err = ceph_pagelist_append(pagelist, &rec, reclen);
+		if (!err)
+			err = ceph_locks_to_pagelist(flocks, pagelist,
+						     num_fcntl_locks,
+						     num_flock_locks);
+		kfree(flocks);
 	} else {
 		err = ceph_pagelist_append(pagelist, &rec, reclen);
 	}
-
 out_free:
 	kfree(path);
 out_dput:
diff --git a/fs/ceph/super.h b/fs/ceph/super.h
index 66ebe72..bd49b4f 100644
--- a/fs/ceph/super.h
+++ b/fs/ceph/super.h
@@ -847,8 +847,13 @@ extern const struct export_operations ceph_export_ops;
 extern int ceph_lock(struct file *file, int cmd, struct file_lock *fl);
 extern int ceph_flock(struct file *file, int cmd, struct file_lock *fl);
 extern void ceph_count_locks(struct inode *inode, int *p_num, int *f_num);
-extern int ceph_encode_locks(struct inode *i, struct ceph_pagelist *p,
-			     int p_locks, int f_locks);
+extern int ceph_encode_locks_to_buffer(struct inode *inode,
+				       struct ceph_filelock *flocks,
+				       int num_fcntl_locks,
+				       int num_flock_locks);
+extern int ceph_locks_to_pagelist(struct ceph_filelock *flocks,
+				  struct ceph_pagelist *pagelist,
+				  int num_fcntl_locks, int num_flock_locks);
 extern int lock_to_ceph_filelock(struct file_lock *fl, struct ceph_filelock *c);
 
 /* debugfs.c */
-- 
1.7.10.4



  parent reply	other threads:[~2013-07-03 19:13 UTC|newest]

Thread overview: 143+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-03 18:38 [000/141] 3.6.11.6-stable review Steven Rostedt
2013-07-03 18:38 ` [001/141] avr32: fix relocation check for signed 18-bit offset Steven Rostedt
2013-07-03 18:38 ` [002/141] ARM: plat-orion: Fix num_resources and id for ge10 and ge11 Steven Rostedt
2013-07-03 18:39 ` [003/141] cfg80211: fix wiphy_register error path Steven Rostedt
2013-07-03 18:39 ` [004/141] mac80211: fix AP-mode frame matching Steven Rostedt
2013-07-03 18:39 ` [005/141] usb: option: Add Telewell TW-LTE 4G Steven Rostedt
2013-07-03 18:39 ` [006/141] USB: option: add device IDs for Dell 5804 (Novatel E371) WWAN card Steven Rostedt
2013-07-03 18:39 ` [007/141] USB: ftdi_sio: Add support for Newport CONEX motor drivers Steven Rostedt
2013-07-03 18:39 ` [008/141] USB: cxacru: potential underflow in cxacru_cm_get_array() Steven Rostedt
2013-07-03 18:39 ` [009/141] TTY: Fix tty miss restart after we turn off flow-control Steven Rostedt
2013-07-03 18:39 ` [010/141] USB: Blacklisted Cinterions PLxx WWAN Interface Steven Rostedt
2013-07-03 18:39 ` [011/141] USB: reset resume quirk needed by a hub Steven Rostedt
2013-07-03 18:39 ` [012/141] USB: xHCI: override bogus bulk wMaxPacketSize values Steven Rostedt
2013-07-03 18:39 ` [013/141] USB: UHCI: fix for suspend of virtual HP controller Steven Rostedt
2013-07-03 18:39 ` [014/141] Input: egalax_ts - ABS_MT_POSITION_Y not reported well Steven Rostedt
2013-07-03 18:39 ` [015/141] cifs: only set ops for inodes in I_NEW state Steven Rostedt
2013-07-03 18:39 ` [016/141] random: fix accounting race condition with lockless irq entropy_count update Steven Rostedt
2013-07-03 18:39 ` [017/141] fat: fix possible overflow for fat_clusters Steven Rostedt
2013-07-03 18:39 ` [018/141] tg3: Skip powering down function 0 on certain serdes devices Steven Rostedt
2013-07-03 18:39 ` [019/141] tg3: Fix data corruption on 5725 with TSO Steven Rostedt
2013-07-03 18:39 ` [020/141] perf: net_dropmonitor: Fix trace parameter order Steven Rostedt
2013-07-03 18:39 ` [021/141] perf: net_dropmonitor: Fix symbol-relative addresses Steven Rostedt
2013-07-03 18:39 ` [022/141] ocfs2: goto out_unlock if ocfs2_get_clusters_nocache() failed in ocfs2_fiemap() Steven Rostedt
2013-07-03 18:39 ` [023/141] Kirkwood: Enable PCIe port 1 on QNAP TS-11x/TS-21x Steven Rostedt
2013-07-03 18:39 ` [024/141] drivers/leds/leds-ot200.c: fix error caused by shifted mask Steven Rostedt
2013-07-03 18:39 ` [025/141] rapidio/tsi721: fix bug in MSI interrupt handling Steven Rostedt
2013-07-03 18:39 ` [026/141] mm compaction: fix of improper cache flush in migration code Steven Rostedt
2013-07-03 18:39 ` [027/141] wait: fix false timeouts when using wait_event_timeout() Steven Rostedt
2013-07-03 18:39 ` [028/141] nilfs2: fix issue of nilfs_set_page_dirty() for page at EOF boundary Steven Rostedt
2013-07-03 18:39 ` [029/141] mm: memcg: remove incorrect VM_BUG_ON for swap cache pages in uncharge Steven Rostedt
2013-07-03 18:39 ` [030/141] drivers/block/brd.c: fix brd_lookup_page() race Steven Rostedt
2013-07-03 18:39 ` [031/141] mm/pagewalk.c: walk_page_range should avoid VM_PFNMAP areas Steven Rostedt
2013-07-03 18:39 ` [032/141] mm/THP: use pmd_populate() to update the pmd with pgtable_t pointer Steven Rostedt
2013-07-03 18:39 ` [033/141] xfs: kill suid/sgid through the truncate path Steven Rostedt
2013-07-03 18:39 ` [034/141] SUNRPC: Prevent an rpc_task wakeup race Steven Rostedt
2013-07-03 18:39 ` [035/141] ASoC: cs42l52: fix default value for MASTERA_VOL Steven Rostedt
2013-07-03 18:39 ` [036/141] drm/radeon: fix typo in cu_per_sh on verde Steven Rostedt
2013-07-03 18:39 ` [037/141] drm/radeon: fix card_posted check for newer asics Steven Rostedt
2013-07-03 18:39 ` [038/141] cifs: fix potential buffer overrun when composing a new options string Steven Rostedt
2013-07-03 18:39 ` [039/141] ata_piix: add PCI IDs for Intel BayTail Steven Rostedt
2013-07-03 18:39 ` [040/141] libata: make ata_exec_internal_sg honor DMADIR Steven Rostedt
2013-07-03 18:39 ` [041/141] m68k/mac: Fix unexpected interrupt with CONFIG_EARLY_PRINTK Steven Rostedt
2013-07-03 18:39 ` [042/141] iscsi-target: fix heap buffer overflow on error Steven Rostedt
2013-07-03 18:39 ` [043/141] ib_srpt: Call target_sess_cmd_list_set_waiting during shutdown_session Steven Rostedt
2013-07-03 18:39 ` [044/141] NFSv4: Fix a thinko in nfs4_try_open_cached Steven Rostedt
2013-07-03 18:39 ` [045/141] regulator: palmas: Fix "enable_reg" to point to the correct reg for SMPS10 Steven Rostedt
2013-07-03 18:39 ` [046/141] reiserfs: fix deadlock with nfs racing on create/lookup Steven Rostedt
2013-07-03 18:39 ` [047/141] reiserfs: fix problems with chowning setuid file w/ xattrs Steven Rostedt
2013-07-03 18:39 ` [048/141] reiserfs: fix spurious multiple-fill in reiserfs_readdir_dentry Steven Rostedt
2013-07-03 18:39 ` [049/141] jfs: fix a couple races Steven Rostedt
2013-07-03 18:39 ` [050/141] xen-netback: remove skb in xen_netbk_alloc_page Steven Rostedt
2013-07-03 18:39 ` [051/141] iommu/amd: Re-enable IOMMU event log interrupt after handling Steven Rostedt
2013-07-03 18:39 ` [052/141] iommu/amd: Workaround for ERBT1312 Steven Rostedt
2013-07-03 18:39 ` [053/141] ACPI / video: Add "Asus UL30A" to ACPI video detect blacklist Steven Rostedt
2013-07-03 18:39 ` [054/141] mac80211: close AP_VLAN interfaces before unregistering all Steven Rostedt
2013-07-03 18:39 ` [055/141] iwlwifi: dvm: fix zero LQ CMD sending avoidance Steven Rostedt
2013-07-03 18:39 ` [056/141] cfg80211: check wdev->netdev in connection work Steven Rostedt
2013-07-03 18:39 ` [057/141] ath9k: use correct OTP register offsets for AR9550 Steven Rostedt
2013-07-03 18:39 ` [058/141] tg3: Add read dma workaround for 5720 Steven Rostedt
2013-07-03 18:39 ` [059/141] target: Re-instate sess_wait_list for target_wait_for_sess_cmds Steven Rostedt
2013-07-03 18:39 ` [060/141] xen-netback: coalesce slots in TX path and fix regressions Steven Rostedt
2013-07-03 18:39 ` [061/141] xen-netback: dont disconnect frontend when seeing oversize packet Steven Rostedt
2013-07-03 18:39 ` [062/141] xen-netback: remove redundent parameter in netbk_count_requests Steven Rostedt
2013-07-03 18:40 ` [063/141] xen-netback: avoid allocating variable size array on stack Steven Rostedt
2013-07-03 18:40 ` [064/141] xen-netfront: reduce gso_max_size to account for max TCP header Steven Rostedt
2013-07-03 18:40 ` [065/141] xen-netback: better names for thresholds Steven Rostedt
2013-07-03 18:40 ` [066/141] USB: serial: Add Option GTM681W to qcserial device table Steven Rostedt
2013-07-03 18:40 ` [067/141] USB: option: blacklist network interface on Huawei E1820 Steven Rostedt
2013-07-03 18:40 ` [068/141] xhci - correct comp_mode_recovery_timer on return from hibernate Steven Rostedt
2013-07-03 18:40 ` [069/141] xhci-mem: init list heads at the beginning of init Steven Rostedt
2013-07-03 18:40 ` [070/141] xhci: fix list access before init Steven Rostedt
2013-07-03 18:40 ` [071/141] xhci: Disable D3cold for buggy TI redrivers Steven Rostedt
2013-07-03 18:40 ` [072/141] ALSA: usb-audio: fix Roland/Cakewalk UM-3G support Steven Rostedt
2013-07-03 18:40 ` [073/141] ALSA: usb-audio - Apply Logitech QuickCam Pro 9000 quirk only to audio iface Steven Rostedt
2013-07-03 18:40 ` [074/141] ALSA: usb-audio - Fix invalid volume resolution on Logitech HD webcam c270 Steven Rostedt
2013-07-03 18:40 ` [075/141] USB: iuu_phoenix: fix bulk-message timeout Steven Rostedt
2013-07-03 18:40 ` [076/141] USB: keyspan: fix bogus array index Steven Rostedt
2013-07-03 18:40 ` [077/141] USB: ark3116: fix control-message timeout Steven Rostedt
2013-07-03 18:40 ` [078/141] USB: visor: fix initialisation of Treo/Kyocera devices Steven Rostedt
2013-07-03 18:40 ` [079/141] USB: Serial: cypress_M8: Enable FRWD Dongle hidcom device Steven Rostedt
2013-07-03 18:40 ` [080/141] USB: whiteheat: fix broken port configuration Steven Rostedt
2013-07-03 18:40 ` [081/141] USB: serial: fix Treo/Kyocera interrrupt-in urb context Steven Rostedt
2013-07-03 18:40 ` [082/141] USB: mos7840: fix DMA to stack Steven Rostedt
2013-07-03 18:40 ` [083/141] USB: mos7720: " Steven Rostedt
2013-07-03 18:40 ` [084/141] USB: mos7720: fix message timeouts Steven Rostedt
2013-07-03 18:40 ` [085/141] USB: mos7720: fix hardware flow control Steven Rostedt
2013-07-03 18:40 ` [086/141] ACPI / video: ignore BIOS initial backlight value for HP m4 Steven Rostedt
2013-07-03 18:40 ` [087/141] ACPI / video: ignore BIOS initial backlight value for HP Pavilion g6 Steven Rostedt
2013-07-03 18:40 ` [088/141] ARM: 7742/1: topology: export cpu_topology Steven Rostedt
2013-07-03 18:40 ` [089/141] ARM: 7743/1: compressed/head.S: work around new binutils warning Steven Rostedt
2013-07-03 18:40 ` [090/141] powerpc/eeh: Dont check RTAS token to get PE addr Steven Rostedt
2013-07-03 18:40 ` [091/141] dmaengine: ste_dma40: fix pm runtime ref counting Steven Rostedt
2013-07-03 18:40 ` [092/141] radeon: Fix system hang issue when using KMS with older cards Steven Rostedt
2013-07-03 18:40 ` [093/141] drm/radeon: dont allow audio on DCE6 Steven Rostedt
2013-07-03 18:40 ` [094/141] ecryptfs: fixed msync to flush data Steven Rostedt
2013-07-03 18:40 ` [095/141] eCryptfs: Check return of filemap_write_and_wait during fsync Steven Rostedt
2013-07-03 18:40 ` [096/141] hwmon: (adm1021) Strengthen chip detection for ADM1021, LM84 and MAX1617 Steven Rostedt
2013-07-03 18:40 ` [097/141] drm/mgag200: Add missing write to index before accessing data register Steven Rostedt
2013-07-03 18:40 ` [098/141] drm: fix a use-after-free when GPU acceleration disabled Steven Rostedt
2013-07-03 18:40 ` [099/141] drm/i915/sdvo: Use &intel_sdvo->ddc instead of intel_sdvo->i2c for DDC Steven Rostedt
2013-07-03 18:40 ` [100/141] drm/i915: no lvds quirk for hp t5740 Steven Rostedt
2013-07-03 18:40 ` [101/141] usb: dwc3: gadget: free trb pool only from epnum 2 Steven Rostedt
2013-07-03 18:40 ` [102/141] drm/gma500: Increase max resolution for mode setting Steven Rostedt
2013-07-03 18:40 ` [103/141] powerpc: Set default VGA device Steven Rostedt
2013-07-03 18:40 ` [104/141] powerpc/pseries: Force 32 bit MSIs for devices that require it Steven Rostedt
2013-07-03 18:40 ` [105/141] powerpc/pseries: Perform proper max_bus_speed detection Steven Rostedt
2013-07-03 18:40 ` [106/141] radeon: use max_bus_speed to activate gen2 speeds Steven Rostedt
2013-07-03 18:40 ` [107/141] iio: frequency: ad4350: Fix bug / typo in mask Steven Rostedt
2013-07-03 18:40 ` [108/141] USB: serial: add wait_until_sent operation Steven Rostedt
2013-07-03 18:40 ` [109/141] USB: serial: add generic wait_until_sent implementation Steven Rostedt
2013-07-03 18:40 ` [110/141] USB: io_ti: fix chars_in_buffer overhead Steven Rostedt
2013-07-03 18:40 ` [111/141] xen/smp: Fixup NOHZ per cpu data when onlining an offline CPU Steven Rostedt
2013-07-03 18:40 ` [112/141] b43: stop format string leaking into error msgs Steven Rostedt
2013-07-03 18:40 ` [113/141] ceph: add cpu_to_le32() calls when encoding a reconnect capability Steven Rostedt
2013-07-03 18:40 ` Steven Rostedt [this message]
2013-07-03 18:40 ` [115/141] drivers/rtc/rtc-twl.c: fix missing device_init_wakeup() when booted with device tree Steven Rostedt
2013-07-03 18:40 ` [116/141] drm/gma500/psb: Unpin framebuffer on crtc disable Steven Rostedt
2013-07-03 18:40 ` [117/141] drm/gma500/cdv: " Steven Rostedt
2013-07-03 18:40 ` [118/141] Bluetooth: Fix mgmt handling of power on failures Steven Rostedt
2013-07-03 18:40 ` [119/141] ath9k: Disable PowerSave by default Steven Rostedt
2013-07-03 18:40 ` [120/141] Revert "ath9k_hw: Update rx gain initval to improve rx sensitivity" Steven Rostedt
2013-07-03 18:40 ` [121/141] ath9k: Use minstrel rate control by default Steven Rostedt
2013-07-03 18:40 ` [122/141] CPU hotplug: provide a generic helper to disable/enable CPU hotplug Steven Rostedt
2013-07-03 18:41 ` [123/141] reboot: rigrate shutdown/reboot to boot cpu Steven Rostedt
2013-07-03 18:41 ` [124/141] kmsg: honor dmesg_restrict sysctl on /dev/kmsg Steven Rostedt
2013-07-03 18:41 ` [125/141] cciss: fix broken mutex usage in ioctl Steven Rostedt
2013-07-03 18:41 ` [126/141] drm/i915: prefer VBT modes for SVDO-LVDS over EDID Steven Rostedt
2013-07-03 18:41 ` [127/141] swap: avoid read_swap_cache_async() race to deadlock while waiting on discard I/O completion Steven Rostedt
2013-07-03 18:41 ` [128/141] md/raid1: consider WRITE as successful only if at least one non-Faulty and non-rebuilding drive completed it Steven Rostedt
2013-07-03 18:41 ` [129/141] md/raid1,raid10: use freeze_array in place of raise_barrier in various places Steven Rostedt
2013-07-03 18:41 ` [130/141] mm: migration: add migrate_entry_wait_huge() Steven Rostedt
2013-07-03 18:41 ` [131/141] x86: Fix typo in kexec register clearing Steven Rostedt
2013-07-03 18:41 ` [132/141] libceph: clear messenger auth_retry flag when we authenticate Steven Rostedt
2013-07-03 18:41 ` [133/141] libceph: fix authorizer invalidation Steven Rostedt
2013-07-03 18:41 ` [134/141] libceph: add update_authorizer auth method Steven Rostedt
2013-07-03 18:41 ` [135/141] libceph: wrap auth ops in wrapper functions Steven Rostedt
2013-07-03 18:41 ` [136/141] libceph: wrap auth methods in a mutex Steven Rostedt
2013-07-03 18:41 ` [137/141] powerpc: Fix stack overflow crash in resume_kernel when ftracing Steven Rostedt
2013-07-03 18:41 ` [138/141] powerpc: Fix emulation of illegal instructions on PowerNV platform Steven Rostedt
2013-07-03 18:41 ` [139/141] powerpc: Fix missing/delayed calls to irq_work Steven Rostedt
2013-07-03 18:41 ` [140/141] USB: pl2303: fix device initialisation at open Steven Rostedt
2013-07-03 18:41 ` [141/141] USB: spcp8x5: " Steven Rostedt
2013-07-03 19:16 ` [000/141] 3.6.11.6-stable review Steven Rostedt

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=20130703184105.688459092@goodmis.org \
    --to=rostedt@goodmis.org \
    --cc=elder@inktank.com \
    --cc=jaschut@sandia.gov \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /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