From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org, Sasha Levin <alexander.levin@verizon.com>,
Alexander Potapenko <glider@google.com>,
"Eric W. Biederman" <ebiederm@xmission.com>,
Michal Hocko <mhocko@kernel.org>,
Pekka Enberg <penberg@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>,
Tim Hansen <devtimhansen@gmail.com>,
Vegard Nossum <vegardno@ifi.uio.no>,
Andrew Morton <akpm@linux-foundation.org>,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: [PATCH 4.14 079/167] kmemcheck: remove annotations
Date: Wed, 21 Feb 2018 13:48:10 +0100 [thread overview]
Message-ID: <20180221124528.765796569@linuxfoundation.org> (raw)
In-Reply-To: <20180221124524.639039577@linuxfoundation.org>
4.14-stable review patch. If anyone has any objections, please let me know.
------------------
From: Levin, Alexander (Sasha Levin) <alexander.levin@verizon.com>
commit 4950276672fce5c241857540f8561c440663673d upstream.
Patch series "kmemcheck: kill kmemcheck", v2.
As discussed at LSF/MM, kill kmemcheck.
KASan is a replacement that is able to work without the limitation of
kmemcheck (single CPU, slow). KASan is already upstream.
We are also not aware of any users of kmemcheck (or users who don't
consider KASan as a suitable replacement).
The only objection was that since KASAN wasn't supported by all GCC
versions provided by distros at that time we should hold off for 2
years, and try again.
Now that 2 years have passed, and all distros provide gcc that supports
KASAN, kill kmemcheck again for the very same reasons.
This patch (of 4):
Remove kmemcheck annotations, and calls to kmemcheck from the kernel.
[alexander.levin@verizon.com: correctly remove kmemcheck call from dma_map_sg_attrs]
Link: http://lkml.kernel.org/r/20171012192151.26531-1-alexander.levin@verizon.com
Link: http://lkml.kernel.org/r/20171007030159.22241-2-alexander.levin@verizon.com
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Tim Hansen <devtimhansen@gmail.com>
Cc: Vegard Nossum <vegardno@ifi.uio.no>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/arm/include/asm/dma-iommu.h | 1 -
arch/openrisc/include/asm/dma-mapping.h | 1 -
arch/x86/Makefile | 5 -----
arch/x86/include/asm/dma-mapping.h | 1 -
arch/x86/include/asm/xor.h | 5 +----
arch/x86/kernel/traps.c | 5 -----
arch/x86/mm/fault.c | 6 ------
drivers/char/random.c | 1 -
drivers/misc/c2port/core.c | 2 --
fs/dcache.c | 2 --
include/linux/c2port.h | 4 ----
include/linux/dma-mapping.h | 8 +-------
include/linux/filter.h | 2 --
include/linux/mm_types.h | 8 --------
include/linux/net.h | 3 ---
include/linux/ring_buffer.h | 3 ---
include/linux/skbuff.h | 3 ---
include/net/inet_sock.h | 3 ---
include/net/inet_timewait_sock.h | 4 ----
include/net/sock.h | 3 ---
init/main.c | 1 -
kernel/bpf/core.c | 6 ------
kernel/locking/lockdep.c | 3 ---
kernel/trace/ring_buffer.c | 3 ---
mm/kmemleak.c | 9 ---------
mm/page_alloc.c | 14 --------------
mm/slab.c | 14 --------------
mm/slab.h | 2 --
mm/slub.c | 20 --------------------
net/core/skbuff.c | 5 -----
net/core/sock.c | 2 --
net/ipv4/inet_timewait_sock.c | 3 ---
net/ipv4/tcp_input.c | 1 -
net/socket.c | 1 -
34 files changed, 2 insertions(+), 152 deletions(-)
--- a/arch/arm/include/asm/dma-iommu.h
+++ b/arch/arm/include/asm/dma-iommu.h
@@ -7,7 +7,6 @@
#include <linux/mm_types.h>
#include <linux/scatterlist.h>
#include <linux/dma-debug.h>
-#include <linux/kmemcheck.h>
#include <linux/kref.h>
#define ARM_MAPPING_ERROR (~(dma_addr_t)0x0)
--- a/arch/openrisc/include/asm/dma-mapping.h
+++ b/arch/openrisc/include/asm/dma-mapping.h
@@ -23,7 +23,6 @@
*/
#include <linux/dma-debug.h>
-#include <linux/kmemcheck.h>
#include <linux/dma-mapping.h>
extern const struct dma_map_ops or1k_dma_map_ops;
--- a/arch/x86/Makefile
+++ b/arch/x86/Makefile
@@ -158,11 +158,6 @@ ifdef CONFIG_X86_X32
endif
export CONFIG_X86_X32_ABI
-# Don't unroll struct assignments with kmemcheck enabled
-ifeq ($(CONFIG_KMEMCHECK),y)
- KBUILD_CFLAGS += $(call cc-option,-fno-builtin-memcpy)
-endif
-
#
# If the function graph tracer is used with mcount instead of fentry,
# '-maccumulate-outgoing-args' is needed to prevent a GCC bug
--- a/arch/x86/include/asm/dma-mapping.h
+++ b/arch/x86/include/asm/dma-mapping.h
@@ -7,7 +7,6 @@
* Documentation/DMA-API.txt for documentation.
*/
-#include <linux/kmemcheck.h>
#include <linux/scatterlist.h>
#include <linux/dma-debug.h>
#include <asm/io.h>
--- a/arch/x86/include/asm/xor.h
+++ b/arch/x86/include/asm/xor.h
@@ -1,7 +1,4 @@
-#ifdef CONFIG_KMEMCHECK
-/* kmemcheck doesn't handle MMX/SSE/SSE2 instructions */
-# include <asm-generic/xor.h>
-#elif !defined(_ASM_X86_XOR_H)
+#ifndef _ASM_X86_XOR_H
#define _ASM_X86_XOR_H
/*
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -42,7 +42,6 @@
#include <linux/edac.h>
#endif
-#include <asm/kmemcheck.h>
#include <asm/stacktrace.h>
#include <asm/processor.h>
#include <asm/debugreg.h>
@@ -764,10 +763,6 @@ dotraplinkage void do_debug(struct pt_re
if (!dr6 && user_mode(regs))
user_icebp = 1;
- /* Catch kmemcheck conditions! */
- if ((dr6 & DR_STEP) && kmemcheck_trap(regs))
- goto exit;
-
/* Store the virtualized DR6 value */
tsk->thread.debugreg6 = dr6;
--- a/arch/x86/mm/fault.c
+++ b/arch/x86/mm/fault.c
@@ -20,7 +20,6 @@
#include <asm/cpufeature.h> /* boot_cpu_has, ... */
#include <asm/traps.h> /* dotraplinkage, ... */
#include <asm/pgalloc.h> /* pgd_*(), ... */
-#include <asm/kmemcheck.h> /* kmemcheck_*(), ... */
#include <asm/fixmap.h> /* VSYSCALL_ADDR */
#include <asm/vsyscall.h> /* emulate_vsyscall */
#include <asm/vm86.h> /* struct vm86 */
@@ -1257,8 +1256,6 @@ __do_page_fault(struct pt_regs *regs, un
* Detect and handle instructions that would cause a page fault for
* both a tracked kernel page and a userspace page.
*/
- if (kmemcheck_active(regs))
- kmemcheck_hide(regs);
prefetchw(&mm->mmap_sem);
if (unlikely(kmmio_fault(regs, address)))
@@ -1281,9 +1278,6 @@ __do_page_fault(struct pt_regs *regs, un
if (!(error_code & (X86_PF_RSVD | X86_PF_USER | X86_PF_PROT))) {
if (vmalloc_fault(address) >= 0)
return;
-
- if (kmemcheck_fault(regs, address, error_code))
- return;
}
/* Can handle a stale RO->RW TLB: */
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -259,7 +259,6 @@
#include <linux/cryptohash.h>
#include <linux/fips.h>
#include <linux/ptrace.h>
-#include <linux/kmemcheck.h>
#include <linux/workqueue.h>
#include <linux/irq.h>
#include <linux/syscalls.h>
--- a/drivers/misc/c2port/core.c
+++ b/drivers/misc/c2port/core.c
@@ -15,7 +15,6 @@
#include <linux/errno.h>
#include <linux/err.h>
#include <linux/kernel.h>
-#include <linux/kmemcheck.h>
#include <linux/ctype.h>
#include <linux/delay.h>
#include <linux/idr.h>
@@ -904,7 +903,6 @@ struct c2port_device *c2port_device_regi
return ERR_PTR(-EINVAL);
c2dev = kmalloc(sizeof(struct c2port_device), GFP_KERNEL);
- kmemcheck_annotate_bitfield(c2dev, flags);
if (unlikely(!c2dev))
return ERR_PTR(-ENOMEM);
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -2705,8 +2705,6 @@ static void swap_names(struct dentry *de
*/
unsigned int i;
BUILD_BUG_ON(!IS_ALIGNED(DNAME_INLINE_LEN, sizeof(long)));
- kmemcheck_mark_initialized(dentry->d_iname, DNAME_INLINE_LEN);
- kmemcheck_mark_initialized(target->d_iname, DNAME_INLINE_LEN);
for (i = 0; i < DNAME_INLINE_LEN / sizeof(long); i++) {
swap(((long *) &dentry->d_iname)[i],
((long *) &target->d_iname)[i]);
--- a/include/linux/c2port.h
+++ b/include/linux/c2port.h
@@ -9,8 +9,6 @@
* the Free Software Foundation
*/
-#include <linux/kmemcheck.h>
-
#define C2PORT_NAME_LEN 32
struct device;
@@ -22,10 +20,8 @@ struct device;
/* Main struct */
struct c2port_ops;
struct c2port_device {
- kmemcheck_bitfield_begin(flags);
unsigned int access:1;
unsigned int flash_access:1;
- kmemcheck_bitfield_end(flags);
int id;
char name[C2PORT_NAME_LEN];
--- a/include/linux/dma-mapping.h
+++ b/include/linux/dma-mapping.h
@@ -9,7 +9,6 @@
#include <linux/dma-debug.h>
#include <linux/dma-direction.h>
#include <linux/scatterlist.h>
-#include <linux/kmemcheck.h>
#include <linux/bug.h>
#include <linux/mem_encrypt.h>
@@ -230,7 +229,6 @@ static inline dma_addr_t dma_map_single_
const struct dma_map_ops *ops = get_dma_ops(dev);
dma_addr_t addr;
- kmemcheck_mark_initialized(ptr, size);
BUG_ON(!valid_dma_direction(dir));
addr = ops->map_page(dev, virt_to_page(ptr),
offset_in_page(ptr), size,
@@ -263,11 +261,8 @@ static inline int dma_map_sg_attrs(struc
unsigned long attrs)
{
const struct dma_map_ops *ops = get_dma_ops(dev);
- int i, ents;
- struct scatterlist *s;
+ int ents;
- for_each_sg(sg, s, nents, i)
- kmemcheck_mark_initialized(sg_virt(s), s->length);
BUG_ON(!valid_dma_direction(dir));
ents = ops->map_sg(dev, sg, nents, dir, attrs);
BUG_ON(ents < 0);
@@ -297,7 +292,6 @@ static inline dma_addr_t dma_map_page_at
const struct dma_map_ops *ops = get_dma_ops(dev);
dma_addr_t addr;
- kmemcheck_mark_initialized(page_address(page) + offset, size);
BUG_ON(!valid_dma_direction(dir));
addr = ops->map_page(dev, page, offset, size, dir, attrs);
debug_dma_map_page(dev, page, offset, size, dir, addr, false);
--- a/include/linux/filter.h
+++ b/include/linux/filter.h
@@ -454,13 +454,11 @@ struct bpf_binary_header {
struct bpf_prog {
u16 pages; /* Number of allocated pages */
- kmemcheck_bitfield_begin(meta);
u16 jited:1, /* Is our filter JIT'ed? */
locked:1, /* Program image locked? */
gpl_compatible:1, /* Is filter GPL compatible? */
cb_access:1, /* Is control block accessed? */
dst_needed:1; /* Do we need dst entry? */
- kmemcheck_bitfield_end(meta);
enum bpf_prog_type type; /* Type of BPF program */
u32 len; /* Number of filter blocks */
u32 jited_len; /* Size of jited insns in bytes */
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -207,14 +207,6 @@ struct page {
not kmapped, ie. highmem) */
#endif /* WANT_PAGE_VIRTUAL */
-#ifdef CONFIG_KMEMCHECK
- /*
- * kmemcheck wants to track the status of each byte in a page; this
- * is a pointer to such a status block. NULL if not tracked.
- */
- void *shadow;
-#endif
-
#ifdef LAST_CPUPID_NOT_IN_PAGE_FLAGS
int _last_cpupid;
#endif
--- a/include/linux/net.h
+++ b/include/linux/net.h
@@ -22,7 +22,6 @@
#include <linux/random.h>
#include <linux/wait.h>
#include <linux/fcntl.h> /* For O_CLOEXEC and O_NONBLOCK */
-#include <linux/kmemcheck.h>
#include <linux/rcupdate.h>
#include <linux/once.h>
#include <linux/fs.h>
@@ -111,9 +110,7 @@ struct socket_wq {
struct socket {
socket_state state;
- kmemcheck_bitfield_begin(type);
short type;
- kmemcheck_bitfield_end(type);
unsigned long flags;
--- a/include/linux/ring_buffer.h
+++ b/include/linux/ring_buffer.h
@@ -2,7 +2,6 @@
#ifndef _LINUX_RING_BUFFER_H
#define _LINUX_RING_BUFFER_H
-#include <linux/kmemcheck.h>
#include <linux/mm.h>
#include <linux/seq_file.h>
#include <linux/poll.h>
@@ -14,9 +13,7 @@ struct ring_buffer_iter;
* Don't refer to this struct directly, use functions below.
*/
struct ring_buffer_event {
- kmemcheck_bitfield_begin(bitfield);
u32 type_len:5, time_delta:27;
- kmemcheck_bitfield_end(bitfield);
u32 array[];
};
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -15,7 +15,6 @@
#define _LINUX_SKBUFF_H
#include <linux/kernel.h>
-#include <linux/kmemcheck.h>
#include <linux/compiler.h>
#include <linux/time.h>
#include <linux/bug.h>
@@ -706,7 +705,6 @@ struct sk_buff {
/* Following fields are _not_ copied in __copy_skb_header()
* Note that queue_mapping is here mostly to fill a hole.
*/
- kmemcheck_bitfield_begin(flags1);
__u16 queue_mapping;
/* if you move cloned around you also must adapt those constants */
@@ -725,7 +723,6 @@ struct sk_buff {
head_frag:1,
xmit_more:1,
__unused:1; /* one bit hole */
- kmemcheck_bitfield_end(flags1);
/* fields enclosed in headers_start/headers_end are copied
* using a single memcpy() in __copy_skb_header()
--- a/include/net/inet_sock.h
+++ b/include/net/inet_sock.h
@@ -17,7 +17,6 @@
#define _INET_SOCK_H
#include <linux/bitops.h>
-#include <linux/kmemcheck.h>
#include <linux/string.h>
#include <linux/types.h>
#include <linux/jhash.h>
@@ -84,7 +83,6 @@ struct inet_request_sock {
#define ireq_state req.__req_common.skc_state
#define ireq_family req.__req_common.skc_family
- kmemcheck_bitfield_begin(flags);
u16 snd_wscale : 4,
rcv_wscale : 4,
tstamp_ok : 1,
@@ -93,7 +91,6 @@ struct inet_request_sock {
ecn_ok : 1,
acked : 1,
no_srccheck: 1;
- kmemcheck_bitfield_end(flags);
u32 ir_mark;
union {
struct ip_options_rcu __rcu *ireq_opt;
--- a/include/net/inet_timewait_sock.h
+++ b/include/net/inet_timewait_sock.h
@@ -15,8 +15,6 @@
#ifndef _INET_TIMEWAIT_SOCK_
#define _INET_TIMEWAIT_SOCK_
-
-#include <linux/kmemcheck.h>
#include <linux/list.h>
#include <linux/timer.h>
#include <linux/types.h>
@@ -69,14 +67,12 @@ struct inet_timewait_sock {
/* Socket demultiplex comparisons on incoming packets. */
/* these three are in inet_sock */
__be16 tw_sport;
- kmemcheck_bitfield_begin(flags);
/* And these are ours. */
unsigned int tw_kill : 1,
tw_transparent : 1,
tw_flowlabel : 20,
tw_pad : 2, /* 2 bits hole */
tw_tos : 8;
- kmemcheck_bitfield_end(flags);
struct timer_list tw_timer;
struct inet_bind_bucket *tw_tb;
};
--- a/include/net/sock.h
+++ b/include/net/sock.h
@@ -436,7 +436,6 @@ struct sock {
#define SK_FL_TYPE_MASK 0xffff0000
#endif
- kmemcheck_bitfield_begin(flags);
unsigned int sk_padding : 1,
sk_kern_sock : 1,
sk_no_check_tx : 1,
@@ -445,8 +444,6 @@ struct sock {
sk_protocol : 8,
sk_type : 16;
#define SK_PROTOCOL_MAX U8_MAX
- kmemcheck_bitfield_end(flags);
-
u16 sk_gso_max_segs;
unsigned long sk_lingertime;
struct proto *sk_prot_creator;
--- a/init/main.c
+++ b/init/main.c
@@ -69,7 +69,6 @@
#include <linux/kgdb.h>
#include <linux/ftrace.h>
#include <linux/async.h>
-#include <linux/kmemcheck.h>
#include <linux/sfi.h>
#include <linux/shmem_fs.h>
#include <linux/slab.h>
--- a/kernel/bpf/core.c
+++ b/kernel/bpf/core.c
@@ -85,8 +85,6 @@ struct bpf_prog *bpf_prog_alloc(unsigned
if (fp == NULL)
return NULL;
- kmemcheck_annotate_bitfield(fp, meta);
-
aux = kzalloc(sizeof(*aux), GFP_KERNEL | gfp_extra_flags);
if (aux == NULL) {
vfree(fp);
@@ -127,8 +125,6 @@ struct bpf_prog *bpf_prog_realloc(struct
if (fp == NULL) {
__bpf_prog_uncharge(fp_old->aux->user, delta);
} else {
- kmemcheck_annotate_bitfield(fp, meta);
-
memcpy(fp, fp_old, fp_old->pages * PAGE_SIZE);
fp->pages = pages;
fp->aux->prog = fp;
@@ -662,8 +658,6 @@ static struct bpf_prog *bpf_prog_clone_c
fp = __vmalloc(fp_other->pages * PAGE_SIZE, gfp_flags, PAGE_KERNEL);
if (fp != NULL) {
- kmemcheck_annotate_bitfield(fp, meta);
-
/* aux->prog still points to the fp_other one, so
* when promoting the clone to the real program,
* this still needs to be adapted.
--- a/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
@@ -47,7 +47,6 @@
#include <linux/stringify.h>
#include <linux/bitops.h>
#include <linux/gfp.h>
-#include <linux/kmemcheck.h>
#include <linux/random.h>
#include <linux/jhash.h>
@@ -3225,8 +3224,6 @@ static void __lockdep_init_map(struct lo
{
int i;
- kmemcheck_mark_initialized(lock, sizeof(*lock));
-
for (i = 0; i < NR_LOCKDEP_CACHING_CLASSES; i++)
lock->class_cache[i] = NULL;
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -13,7 +13,6 @@
#include <linux/uaccess.h>
#include <linux/hardirq.h>
#include <linux/kthread.h> /* for self test */
-#include <linux/kmemcheck.h>
#include <linux/module.h>
#include <linux/percpu.h>
#include <linux/mutex.h>
@@ -2059,7 +2058,6 @@ rb_reset_tail(struct ring_buffer_per_cpu
}
event = __rb_page_index(tail_page, tail);
- kmemcheck_annotate_bitfield(event, bitfield);
/* account for padding bytes */
local_add(BUF_PAGE_SIZE - tail, &cpu_buffer->entries_bytes);
@@ -2690,7 +2688,6 @@ __rb_reserve_next(struct ring_buffer_per
/* We reserved something on the buffer */
event = __rb_page_index(tail_page, tail);
- kmemcheck_annotate_bitfield(event, bitfield);
rb_update_event(cpu_buffer, event, info);
local_inc(&tail_page->entries);
--- a/mm/kmemleak.c
+++ b/mm/kmemleak.c
@@ -110,7 +110,6 @@
#include <linux/atomic.h>
#include <linux/kasan.h>
-#include <linux/kmemcheck.h>
#include <linux/kmemleak.h>
#include <linux/memory_hotplug.h>
@@ -1238,9 +1237,6 @@ static bool update_checksum(struct kmeml
{
u32 old_csum = object->checksum;
- if (!kmemcheck_is_obj_initialized(object->pointer, object->size))
- return false;
-
kasan_disable_current();
object->checksum = crc32(0, (void *)object->pointer, object->size);
kasan_enable_current();
@@ -1314,11 +1310,6 @@ static void scan_block(void *_start, voi
if (scan_should_stop())
break;
- /* don't scan uninitialized memory */
- if (!kmemcheck_is_obj_initialized((unsigned long)ptr,
- BYTES_PER_POINTER))
- continue;
-
kasan_disable_current();
pointer = *ptr;
kasan_enable_current();
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -24,7 +24,6 @@
#include <linux/memblock.h>
#include <linux/compiler.h>
#include <linux/kernel.h>
-#include <linux/kmemcheck.h>
#include <linux/kasan.h>
#include <linux/module.h>
#include <linux/suspend.h>
@@ -1022,7 +1021,6 @@ static __always_inline bool free_pages_p
VM_BUG_ON_PAGE(PageTail(page), page);
trace_mm_page_free(page, order);
- kmemcheck_free_shadow(page, order);
/*
* Check tail pages before head page information is cleared to
@@ -2674,15 +2672,6 @@ void split_page(struct page *page, unsig
VM_BUG_ON_PAGE(PageCompound(page), page);
VM_BUG_ON_PAGE(!page_count(page), page);
-#ifdef CONFIG_KMEMCHECK
- /*
- * Split shadow pages too, because free(page[0]) would
- * otherwise free the whole shadow.
- */
- if (kmemcheck_page_is_tracked(page))
- split_page(virt_to_page(page[0].shadow), order);
-#endif
-
for (i = 1; i < (1 << order); i++)
set_page_refcounted(page + i);
split_page_owner(page, order);
@@ -4228,9 +4217,6 @@ out:
page = NULL;
}
- if (kmemcheck_enabled && page)
- kmemcheck_pagealloc_alloc(page, order, gfp_mask);
-
trace_mm_page_alloc(page, order, alloc_mask, ac.migratetype);
return page;
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -114,7 +114,6 @@
#include <linux/rtmutex.h>
#include <linux/reciprocal_div.h>
#include <linux/debugobjects.h>
-#include <linux/kmemcheck.h>
#include <linux/memory.h>
#include <linux/prefetch.h>
#include <linux/sched/task_stack.h>
@@ -1435,15 +1434,6 @@ static struct page *kmem_getpages(struct
if (sk_memalloc_socks() && page_is_pfmemalloc(page))
SetPageSlabPfmemalloc(page);
- if (kmemcheck_enabled && !(cachep->flags & SLAB_NOTRACK)) {
- kmemcheck_alloc_shadow(page, cachep->gfporder, flags, nodeid);
-
- if (cachep->ctor)
- kmemcheck_mark_uninitialized_pages(page, nr_pages);
- else
- kmemcheck_mark_unallocated_pages(page, nr_pages);
- }
-
return page;
}
@@ -1455,8 +1445,6 @@ static void kmem_freepages(struct kmem_c
int order = cachep->gfporder;
unsigned long nr_freed = (1 << order);
- kmemcheck_free_shadow(page, order);
-
if (cachep->flags & SLAB_RECLAIM_ACCOUNT)
mod_lruvec_page_state(page, NR_SLAB_RECLAIMABLE, -nr_freed);
else
@@ -3516,8 +3504,6 @@ void ___cache_free(struct kmem_cache *ca
kmemleak_free_recursive(objp, cachep->flags);
objp = cache_free_debugcheck(cachep, objp, caller);
- kmemcheck_slab_free(cachep, objp, cachep->object_size);
-
/*
* Skip calling cache_free_alien() when the platform is not numa.
* This will avoid cache misses that happen while accessing slabp (which
--- a/mm/slab.h
+++ b/mm/slab.h
@@ -40,7 +40,6 @@ struct kmem_cache {
#include <linux/memcontrol.h>
#include <linux/fault-inject.h>
-#include <linux/kmemcheck.h>
#include <linux/kasan.h>
#include <linux/kmemleak.h>
#include <linux/random.h>
@@ -439,7 +438,6 @@ static inline void slab_post_alloc_hook(
for (i = 0; i < size; i++) {
void *object = p[i];
- kmemcheck_slab_alloc(s, flags, object, slab_ksize(s));
kmemleak_alloc_recursive(object, s->object_size, 1,
s->flags, flags);
kasan_slab_alloc(s, object, flags);
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -22,7 +22,6 @@
#include <linux/notifier.h>
#include <linux/seq_file.h>
#include <linux/kasan.h>
-#include <linux/kmemcheck.h>
#include <linux/cpu.h>
#include <linux/cpuset.h>
#include <linux/mempolicy.h>
@@ -1375,7 +1374,6 @@ static inline void *slab_free_hook(struc
unsigned long flags;
local_irq_save(flags);
- kmemcheck_slab_free(s, x, s->object_size);
debug_check_no_locks_freed(x, s->object_size);
local_irq_restore(flags);
}
@@ -1596,22 +1594,6 @@ static struct page *allocate_slab(struct
stat(s, ORDER_FALLBACK);
}
- if (kmemcheck_enabled &&
- !(s->flags & (SLAB_NOTRACK | DEBUG_DEFAULT_FLAGS))) {
- int pages = 1 << oo_order(oo);
-
- kmemcheck_alloc_shadow(page, oo_order(oo), alloc_gfp, node);
-
- /*
- * Objects from caches that have a constructor don't get
- * cleared when they're allocated, so we need to do it here.
- */
- if (s->ctor)
- kmemcheck_mark_uninitialized_pages(page, pages);
- else
- kmemcheck_mark_unallocated_pages(page, pages);
- }
-
page->objects = oo_objects(oo);
order = compound_order(page);
@@ -1687,8 +1669,6 @@ static void __free_slab(struct kmem_cach
check_object(s, page, p, SLUB_RED_INACTIVE);
}
- kmemcheck_free_shadow(page, compound_order(page));
-
mod_lruvec_page_state(page,
(s->flags & SLAB_RECLAIM_ACCOUNT) ?
NR_SLAB_RECLAIMABLE : NR_SLAB_UNRECLAIMABLE,
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -41,7 +41,6 @@
#include <linux/module.h>
#include <linux/types.h>
#include <linux/kernel.h>
-#include <linux/kmemcheck.h>
#include <linux/mm.h>
#include <linux/interrupt.h>
#include <linux/in.h>
@@ -234,14 +233,12 @@ struct sk_buff *__alloc_skb(unsigned int
shinfo = skb_shinfo(skb);
memset(shinfo, 0, offsetof(struct skb_shared_info, dataref));
atomic_set(&shinfo->dataref, 1);
- kmemcheck_annotate_variable(shinfo->destructor_arg);
if (flags & SKB_ALLOC_FCLONE) {
struct sk_buff_fclones *fclones;
fclones = container_of(skb, struct sk_buff_fclones, skb1);
- kmemcheck_annotate_bitfield(&fclones->skb2, flags1);
skb->fclone = SKB_FCLONE_ORIG;
refcount_set(&fclones->fclone_ref, 1);
@@ -301,7 +298,6 @@ struct sk_buff *__build_skb(void *data,
shinfo = skb_shinfo(skb);
memset(shinfo, 0, offsetof(struct skb_shared_info, dataref));
atomic_set(&shinfo->dataref, 1);
- kmemcheck_annotate_variable(shinfo->destructor_arg);
return skb;
}
@@ -1284,7 +1280,6 @@ struct sk_buff *skb_clone(struct sk_buff
if (!n)
return NULL;
- kmemcheck_annotate_bitfield(n, flags1);
n->fclone = SKB_FCLONE_UNAVAILABLE;
}
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -1469,8 +1469,6 @@ static struct sock *sk_prot_alloc(struct
sk = kmalloc(prot->obj_size, priority);
if (sk != NULL) {
- kmemcheck_annotate_bitfield(sk, flags);
-
if (security_sk_alloc(sk, family, priority))
goto out_free;
--- a/net/ipv4/inet_timewait_sock.c
+++ b/net/ipv4/inet_timewait_sock.c
@@ -9,7 +9,6 @@
*/
#include <linux/kernel.h>
-#include <linux/kmemcheck.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <net/inet_hashtables.h>
@@ -167,8 +166,6 @@ struct inet_timewait_sock *inet_twsk_all
if (tw) {
const struct inet_sock *inet = inet_sk(sk);
- kmemcheck_annotate_bitfield(tw, flags);
-
tw->tw_dr = dr;
/* Give us an identity. */
tw->tw_daddr = inet->inet_daddr;
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -6204,7 +6204,6 @@ struct request_sock *inet_reqsk_alloc(co
if (req) {
struct inet_request_sock *ireq = inet_rsk(req);
- kmemcheck_annotate_bitfield(ireq, flags);
ireq->ireq_opt = NULL;
#if IS_ENABLED(CONFIG_IPV6)
ireq->pktopts = NULL;
--- a/net/socket.c
+++ b/net/socket.c
@@ -568,7 +568,6 @@ struct socket *sock_alloc(void)
sock = SOCKET_I(inode);
- kmemcheck_annotate_bitfield(sock, type);
inode->i_ino = get_next_ino();
inode->i_mode = S_IFSOCK | S_IRWXUGO;
inode->i_uid = current_fsuid();
next prev parent reply other threads:[~2018-02-21 13:01 UTC|newest]
Thread overview: 151+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-21 12:46 [PATCH 4.14 000/167] 4.14.21-stable review Greg Kroah-Hartman
2018-02-21 12:46 ` [PATCH 4.14 001/167] tracing: Prevent PROFILE_ALL_BRANCHES when FORTIFY_SOURCE=y Greg Kroah-Hartman
2018-02-21 12:46 ` [PATCH 4.14 002/167] scsi: smartpqi: allow static build ("built-in") Greg Kroah-Hartman
2018-02-21 12:46 ` [PATCH 4.14 003/167] IB/umad: Fix use of unprotected device pointer Greg Kroah-Hartman
2018-02-21 12:46 ` [PATCH 4.14 004/167] IB/qib: Fix comparison error with qperf compare/swap test Greg Kroah-Hartman
2018-02-21 12:46 ` [PATCH 4.14 005/167] IB/mlx4: Fix incorrectly releasing steerable UD QPs when have only ETH ports Greg Kroah-Hartman
2018-02-21 12:46 ` [PATCH 4.14 006/167] IB/core: Fix two kernel warnings triggered by rxe registration Greg Kroah-Hartman
2018-02-21 12:46 ` [PATCH 4.14 007/167] IB/core: Fix ib_wc structure size to remain in 64 bytes boundary Greg Kroah-Hartman
2018-02-21 12:46 ` [PATCH 4.14 008/167] IB/core: Avoid a potential OOPs for an unused optional parameter Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 009/167] selftests: seccomp: fix compile error seccomp_bpf Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 010/167] kselftest: fix OOM in memory compaction test Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 011/167] RDMA/rxe: Fix a race condition related to the QP error state Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 012/167] RDMA/rxe: Fix a race condition in rxe_requester() Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 013/167] RDMA/rxe: Fix rxe_qp_cleanup() Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 014/167] cpufreq: powernv: Dont assume distinct pstate values for nominal and pmin Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 016/167] PM / devfreq: Propagate error from devfreq_add_device() Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 017/167] mwifiex: resolve reset vs. remove()/shutdown() deadlocks Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 018/167] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 019/167] powerpc/radix: Remove trace_tlbie call from radix__flush_tlb_all Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 020/167] powerpc/numa: Invalidate numa_cpu_lookup_table on cpu remove Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 021/167] powerpc/mm: Flush radix process translations when setting MMU type Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 023/167] powerpc: Fix DABR match on hash based systems Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 025/167] s390: fix handling of -1 in set{,fs}[gu]id16 syscalls Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 026/167] arm64: dts: msm8916: Correct ipc references for smsm Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 027/167] ARM: lpc3250: fix uda1380 gpio numbers Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 028/167] ARM: dts: STi: Add gpio polarity for "hdmi,hpd-gpio" property Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 029/167] ARM: dts: nomadik: add interrupt-parent for clcd Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 030/167] arm: dts: mt7623: fix card detection issue on bananapi-r2 Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 031/167] arm: spear600: Add missing interrupt-parent of rtc Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 032/167] arm: spear13xx: Fix dmas cells Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 033/167] arm: spear13xx: Fix spics gpio controllers warning Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 034/167] drm/i915: add GT number to intel_device_info Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 035/167] drm/i915/kbl: Change a KBL pci id to GT2 from GT1.5 Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 036/167] x86/gpu: add CFL to early quirks Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 037/167] x86/kexec: Make kexec (mostly) work in 5-level paging mode Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 038/167] x86/xen: init %gs very early to avoid page faults with stack protector Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 040/167] x86/entry/64: Clear extra registers beyond syscall arguments, to reduce speculation attack surface Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 041/167] x86/entry/64/compat: Clear registers for compat syscalls, " Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 042/167] compiler-gcc.h: Introduce __optimize function attribute Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 044/167] crypto: sun4i_ss_prng - fix return value of sun4i_ss_prng_generate Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 045/167] crypto: sun4i_ss_prng - convert lock to _bh in sun4i_ss_prng_generate Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 046/167] powerpc/mm/radix: Split linear mapping on hot-unplug Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 047/167] x86/mm/pti: Fix PTI comment in entry_SYSCALL_64() Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 048/167] x86/speculation: Update Speculation Control microcode blacklist Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 049/167] x86/speculation: Correct Speculation Control microcode blacklist again Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 050/167] Revert "x86/speculation: Simplify indirect_branch_prediction_barrier()" Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 054/167] x86/speculation: Clean up various Spectre related details Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 055/167] PM / runtime: Update links_count also if !CONFIG_SRCU Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 056/167] PM: cpuidle: Fix cpuidle_poll_state_init() prototype Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 057/167] x86/entry/64: Clear registers for exceptions/interrupts, to reduce speculation attack surface Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 058/167] x86/entry/64: Merge SAVE_C_REGS and SAVE_EXTRA_REGS, remove unused extensions Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 059/167] x86/entry/64: Merge the POP_C_REGS and POP_EXTRA_REGS macros into a single POP_REGS macro Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 060/167] x86/entry/64: Interleave XOR register clearing with PUSH instructions Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 061/167] x86/entry/64: Introduce the PUSH_AND_CLEAN_REGS macro Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 062/167] x86/entry/64: Use PUSH_AND_CLEAN_REGS in more cases Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 063/167] x86/entry/64: Get rid of the ALLOC_PT_GPREGS_ON_STACK and SAVE_AND_CLEAR_REGS macros Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 064/167] x86/entry/64: Indent PUSH_AND_CLEAR_REGS and POP_REGS properly Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 065/167] x86/entry/64: Fix paranoid_entry() frame pointer warning Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 066/167] x86/entry/64: Remove the unused icebp macro Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 067/167] selftests/x86: Fix vDSO selftest segfault for vsyscall=none Greg Kroah-Hartman
2018-02-21 12:47 ` [PATCH 4.14 068/167] selftests/x86: Clean up and document sscanf() usage Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 070/167] selftests/x86: Do not rely on "int $0x80" in test_mremap_vdso.c Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 071/167] selftests/x86: Do not rely on "int $0x80" in single_step_syscall.c Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 072/167] selftests/x86: Disable tests requiring 32-bit support on pure 64-bit systems Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 073/167] objtool: Fix segfault in ignore_unreachable_insn() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 074/167] x86/debug, objtool: Annotate WARN()-related UD2 as reachable Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 075/167] x86/debug: Use UD2 for WARN() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 076/167] x86/speculation: Fix up array_index_nospec_mask() asm constraint Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 077/167] nospec: Move array_index_nospec() parameter checking into separate macro Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 078/167] x86/speculation: Add <asm/msr-index.h> dependency Greg Kroah-Hartman
2018-02-21 12:48 ` Greg Kroah-Hartman [this message]
2018-02-21 12:48 ` [PATCH 4.14 080/167] kmemcheck: stop using GFP_NOTRACK and SLAB_NOTRACK Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 081/167] kmemcheck: remove whats left of NOTRACK flags Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 082/167] kmemcheck: rip it out Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 083/167] kmemcheck: rip it out for real Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 084/167] x86/mm: Rename flush_tlb_single() and flush_tlb_one() to __flush_tlb_one_[user|kernel]() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 085/167] selftests/x86/mpx: Fix incorrect bounds with old _sigfault Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 086/167] x86/cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 087/167] x86/spectre: Fix an error message Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 088/167] x86/cpu: Change type of x86_cache_size variable to unsigned int Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 089/167] x86/entry/64: Fix CR3 restore in paranoid_exit() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 092/167] drm/qxl: unref cursor bo when finished with it Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 093/167] drm/amd/powerplay: Fix smu_table_entry.handle type Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 094/167] drm/ast: Load lut in crtc_commit Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 095/167] arm64: Add missing Falkor part number for branch predictor hardening Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 098/167] rtc-opal: Fix handling of firmware error codes, prevent busy loops Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 099/167] mbcache: initialize entry->e_referenced in mb_cache_entry_create() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 101/167] mmc: bcm2835: Dont overwrite max frequency unconditionally Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 102/167] Revert "mmc: meson-gx: include tx phase in the tuning process" Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 103/167] mlx5: fix mlx5_get_vector_affinity to start from completion vector 0 Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 105/167] jbd2: fix sphinx kernel-doc build warnings Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 106/167] ext4: fix a race in the ext4 shutdown path Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 107/167] ext4: save error to disk in __ext4_grp_locked_error() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 109/167] mm: hide a #warning for COMPILE_TEST Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 111/167] MIPS: Fix typo BIG_ENDIAN to CPU_BIG_ENDIAN Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 112/167] MIPS: Fix incorrect mem=X@Y handling Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 113/167] PCI: Disable MSI for HiSilicon Hip06/Hip07 only in Root Port mode Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 115/167] PCI: keystone: Fix interrupt-controller-node lookup Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 116/167] video: fbdev: atmel_lcdfb: fix display-timings lookup Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 117/167] console/dummy: leave .con_font_get set to NULL Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 118/167] rbd: whitelist RBD_FEATURE_OPERATIONS feature bit Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 119/167] xen: Fix {set,clear}_foreign_p2m_mapping on autotranslating guests Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 120/167] xenbus: track caller request id Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 121/167] seq_file: fix incomplete reset on read from zero offset Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 122/167] tracing: Fix parsing of globs with a wildcard at the beginning Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 123/167] mpls, nospec: Sanitize array index in mpls_label_ok() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 124/167] rtlwifi: rtl8821ae: Fix connection lost problem correctly Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 125/167] arm64: proc: Set PTE_NG for table entries to avoid traversing them twice Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 126/167] qxl: alloc & use shadow for dumb buffers Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 127/167] drm/qxl: reapply cursor after resetting primary Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.14 128/167] xprtrdma: Fix calculation of ri_max_send_sges Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 129/167] xprtrdma: Fix BUG after a device removal Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 130/167] blk-wbt: account flush requests correctly Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 131/167] target/iscsi: avoid NULL dereference in CHAP auth error path Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 132/167] iscsi-target: make sure to wake up sleeping login worker Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 133/167] dm: correctly handle chained bios in dec_pending() Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 134/167] Btrfs: fix deadlock in run_delalloc_nocow Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 135/167] Btrfs: fix crash due to not cleaning up tree log blocks dirty bits Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 136/167] Btrfs: fix extent state leak from tree log Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 137/167] Btrfs: fix btrfs_evict_inode to handle abnormal inodes correctly Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 138/167] Btrfs: fix use-after-free on root->orphan_block_rsv Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 139/167] Btrfs: fix unexpected -EEXIST when creating new inode Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 140/167] 9p/trans_virtio: discard zero-length reply Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 141/167] mtd: nand: vf610: set correct ooblayout Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 142/167] ALSA: hda - Fix headset mic detection problem for two Dell machines Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 143/167] ALSA: usb-audio: Fix UAC2 get_ctl request with a RANGE attribute Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 144/167] ALSA: hda/realtek - Add headset mode support for Dell laptop Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 145/167] ALSA: hda/realtek - Enable Thinkpad Dock device for ALC298 platform Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 146/167] ALSA: hda/realtek: PCI quirk for Fujitsu U7x7 Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 147/167] ALSA: usb-audio: add implicit fb quirk for Behringer UFX1204 Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 148/167] ALSA: usb: add more device quirks for USB DSD devices Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 150/167] mvpp2: fix multicast address filter Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 151/167] usb: Move USB_UHCI_BIG_ENDIAN_* out of USB_SUPPORT Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 152/167] x86/mm, mm/hwpoison: Dont unconditionally unmap kernel 1:1 pages Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 153/167] scsi: core: check for device state in __scsi_remove_target() Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 154/167] Bluetooth: BT_HCIUART now depends on SERIAL_DEV_BUS Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 155/167] ARM: dts: exynos: fix RTC interrupt for exynos5410 Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 156/167] ARM: pxa/tosa-bt: add MODULE_LICENSE tag Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 157/167] arm64: dts: msm8916: Add missing #phy-cells Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 158/167] ARM: dts: s5pv210: add interrupt-parent for ohci Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 159/167] arm: dts: mt7623: Update ethsys binding Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 160/167] arm: dts: mt2701: Add reset-cells Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 161/167] ARM: dts: Delete bogus reference to the charlcd Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 162/167] media: r820t: fix r820t_write_reg for KASAN Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 163/167] mmc: sdhci-of-esdhc: disable SD clock for clock value 0 Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 164/167] mmc: sdhci-of-esdhc: fix eMMC couldnt work after kexec Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 165/167] mmc: sdhci-of-esdhc: fix the mmc error after sleep on ls1046ardb Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.14 167/167] ovl: hash directory inodes for fsnotify Greg Kroah-Hartman
2018-02-21 17:36 ` [PATCH 4.14 000/167] 4.14.21-stable review Naresh Kamboju
2018-02-21 20:12 ` Shuah Khan
2018-02-22 14:13 ` Guenter Roeck
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=20180221124528.765796569@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=akpm@linux-foundation.org \
--cc=alexander.levin@verizon.com \
--cc=devtimhansen@gmail.com \
--cc=ebiederm@xmission.com \
--cc=glider@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mhocko@kernel.org \
--cc=penberg@kernel.org \
--cc=rostedt@goodmis.org \
--cc=stable@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=vegardno@ifi.uio.no \
/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;
as well as URLs for NNTP newsgroup(s).