Re: [PATCH 3.2 00/27] 3.2.66-rc1 review

2014-12-29 Thread Ben Hutchings
On Tue, 2014-12-30 at 09:26 +0900, Satoru Takeuchi wrote:
> At Mon, 29 Dec 2014 02:11:30 +0100,
> Ben Hutchings wrote:
> > 
> > This is the start of the stable review cycle for the 3.2.66 release.
> > There are 27 patches in this series, which will be posted as responses
> > to this one.  If anyone has any issues with these being applied, please
> > let me know.
> > 
> > Responses should be made by Wed Dec 31 12:00:00 UTC 2014.
> > Anything received after that time might be too late.
> 
> This kernel passed my test.
> 
>  - Test Cases:
>- Build this kernel.
>- Boot this kernel.
>- Build the latest mainline kernel with this kernel.
> 
>  - Test Tool:
>https://github.com/satoru-takeuchi/test-linux-stable
> 
>  - Test Result (kernel .config, ktest config and test log):
>http://satoru-takeuchi.org/test-linux-stable/results/- datetime>.tar.xz
> 
>  - Build Environment:
>- OS: Debian Jessy x86_64
>- CPU: Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz x 4
>- memory: 8GB
> 
>  - Test Target Environment:
>- Debian Jessy x86_64 (KVM guest on the Build Environment)
>- # of vCPU: 2
>- memory: 2GB

Thanks for testing.

Ben.

-- 
Ben Hutchings
It is easier to write an incorrect program than to understand a correct one.


signature.asc
Description: This is a digitally signed message part


Re: [PATCH 3.2 00/27] 3.2.66-rc1 review

2014-12-29 Thread Satoru Takeuchi
At Mon, 29 Dec 2014 02:11:30 +0100,
Ben Hutchings wrote:
> 
> This is the start of the stable review cycle for the 3.2.66 release.
> There are 27 patches in this series, which will be posted as responses
> to this one.  If anyone has any issues with these being applied, please
> let me know.
> 
> Responses should be made by Wed Dec 31 12:00:00 UTC 2014.
> Anything received after that time might be too late.

This kernel passed my test.

 - Test Cases:
   - Build this kernel.
   - Boot this kernel.
   - Build the latest mainline kernel with this kernel.

 - Test Tool:
   https://github.com/satoru-takeuchi/test-linux-stable

 - Test Result (kernel .config, ktest config and test log):
   http://satoru-takeuchi.org/test-linux-stable/results/-.tar.xz

 - Build Environment:
   - OS: Debian Jessy x86_64
   - CPU: Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz x 4
   - memory: 8GB

 - Test Target Environment:
   - Debian Jessy x86_64 (KVM guest on the Build Environment)
   - # of vCPU: 2
   - memory: 2GB

Thanks,
Satoru

> 
> A combined patch relative to 3.2.65 will be posted as an additional
> response to this.  A shortlog and diffstat can be found below.
> 
> Ben.
> 
> -
> 
> Al Viro (2):
>   deal with deadlock in d_walk()
>  [ca5358ef75fc69fee5322a38a340f5739d997c10]
>   move d_rcu from overlapping d_child to overlapping d_alias
>  [946e51f2bf37f1656916eb75bd0742ba33983c28]
> 
> Anatol Pomozov (1):
>   ext4: make orphan functions be no-op in no-journal mode
>  [c9b92530a723ac5ef8e352885a1862b18f31b2f5]
> 
> Andy Lutomirski (2):
>   x86, kvm: Clear paravirt_enabled on KVM guests for espfix32's benefit
>  [29fa6825463c97e5157284db80107d1bfac5d77b]
>   x86/tls: Validate TLS entries to protect espfix
>  [41bdc78544b8a93a9c6814b8bbbfef966272abbe]
> 
> Ard Biesheuvel (1):
>   crypto: ghash-clmulni-intel - use C implementation for setkey()
>  [8ceee72808d1ae3fb191284afc2257a2be964725]
> 
> Ben Hutchings (2):
>   drivers/net, ipv6: Select IPv6 fragment idents for virtio UFO packets
>  [5188cd44c55db3e92cd9e77a40b5baa7ed4340f7]
>   drivers/net: macvtap and tun depend on INET
>  [de11b0e8c569b96c2cf6a811e3805b7aeef498a3]
> 
> Dan Carpenter (1):
>   [media] ttusb-dec: buffer overflow in ioctl
>  [f2e323ec96077642d397bb1c355def536d489d16]
> 
> Daniel Borkmann (3):
>   net: sctp: fix NULL pointer dereference in af->from_addr_param on 
> malformed packet
>  [e40607cbe270a9e8360907cb1e62ddf0736e4864]
>   net: sctp: fix memory leak in auth key management
>  [4184b2a79a7612a9272ce20d639934584a1f3786]
>   net: sctp: use MAX_HEADER for headroom reserve in output path
>  [9772b54c55266ce80c639a80aa68eeb908f8ecf5]
> 
> Daniel Vetter (1):
>   drm/i915: Unlock panel even when LVDS is disabled
>  [b0616c5306b342ceca07044dbc4f917d95c4f825]
> 
> David Herrmann (1):
>   drm: fix DRM_IOCTL_MODE_GETFB handle-leak
>  [101b96f32956ee99bf1468afaf572b88cda9f88b]
> 
> Devin Ryles (1):
>   AHCI: Add DeviceIDs for Sunrise Point-LP SATA controller
>  [249cd0a187ed4ef1d0af7f74362cc2791ec5581b]
> 
> Dmitry Torokhov (1):
>   sata_fsl: fix error handling of irq_of_parse_and_map
>  [aad0b624129709c94c2e19e583b6053520353fa8]
> 
> Eric Dumazet (2):
>   tcp: md5: do not use alloc_percpu()
>  [349ce993ac706869d553a1816426d3a4bfda02b1]
>   tcp: md5: remove spinlock usage in fast path
>  [71cea17ed39fdf1c0634f530ddc6a2c2fc601c2b]
> 
> Grygorii Strashko (1):
>   i2c: davinci: generate STP always when NACK is received
>  [9ea359f7314132cbcb5a502d2d8ef095be1f45e4]
> 
> Hugh Dickins (1):
>   mm: fix swapoff hang after page migration and fork
>  [2022b4d18a491a578218ce7a4eca8666db895a73]
> 
> Jan Kara (1):
>   udf: Avoid infinite loop when processing indirect ICBs
>  [c03aa9f6e1f938618e6db2e23afef0574efeeb65]
> 
> Jiri Pirko (1):
>   ipv4: fix nexthop attlen check in fib_nh_match
>  [f76936d07c4eeb36d8dbb64ebd30ab46ff85d9f7]
> 
> Martin Schwidefsky (1):
>   s390,time: revert direct ktime path for s390 clockevent device
>  [8adbf78ec4839c1dc4ff20c9a1f332a7bc99e6e6]
> 
> Nadav Amit (1):
>   KVM: x86: Don't report guest userspace emulation error to userspace
>  [a2b9e6c1a35afcc0973acb72e591c714e78885ff]
> 
> Paolo Bonzini (1):
>   x86: kvm: use alternatives for VMCALL vs. VMMCALL if kernel text is 
> read-only
>  [c1118b3602c2329671ad5ec8bdf8e374323d6343]
> 
> Tejun Heo (1):
>   ahci: disable MSI on SAMSUNG 0xa800 SSD
>  [2b21ef0aae65f22f5ba86b13c4588f6f0c2dbefb]
> 
> Vasily Averin (1):
>   ipv4: dst_entry leak in ip_send_unicast_reply()
>  [4062090e3e5caaf55bed4523a69f26c3265cc1d2]
> 
>  Makefile   |   4 +-
>  arch/powerpc/platforms/cell/spufs/inode.c  |   4 +-
>  arch/s390/kernel/time.c|  1

Re: [PATCH 3.2 00/27] 3.2.66-rc1 review

2014-12-29 Thread Ben Hutchings
On Mon, 2014-12-29 at 01:39 -0800, Guenter Roeck wrote:
> On Mon, Dec 29, 2014 at 02:11:30AM +0100, Ben Hutchings wrote:
> > This is the start of the stable review cycle for the 3.2.66 release.
> > There are 27 patches in this series, which will be posted as responses
> > to this one.  If anyone has any issues with these being applied, please
> > let me know.
> > 
> > Responses should be made by Wed Dec 31 12:00:00 UTC 2014.
> > Anything received after that time might be too late.
> > 
> Build results:
>   total: 111 pass: 108 fail: 3
> Failed builds:
>   mips:allmodconfig
>   xtensa:defconfig
>   xtensa:allmodconfig

So, nothing new there.

> Qemu tests:
>   total: 20 pass: 20 fail: 0
> 
> Details are available at http://server.roeck-us.net:8010/builders.

Thanks.

Ben.

-- 
Ben Hutchings
Anthony's Law of Force: Don't force it, get a larger hammer.


signature.asc
Description: This is a digitally signed message part


Re: [PATCH 3.2 00/27] 3.2.66-rc1 review

2014-12-29 Thread Guenter Roeck
On Mon, Dec 29, 2014 at 02:11:30AM +0100, Ben Hutchings wrote:
> This is the start of the stable review cycle for the 3.2.66 release.
> There are 27 patches in this series, which will be posted as responses
> to this one.  If anyone has any issues with these being applied, please
> let me know.
> 
> Responses should be made by Wed Dec 31 12:00:00 UTC 2014.
> Anything received after that time might be too late.
> 
Build results:
total: 111 pass: 108 fail: 3
Failed builds:
mips:allmodconfig
xtensa:defconfig
xtensa:allmodconfig

Qemu tests:
total: 20 pass: 20 fail: 0

Details are available at http://server.roeck-us.net:8010/builders.

Guenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 3.2 00/27] 3.2.66-rc1 review

2014-12-28 Thread Ben Hutchings
This is the combined patch for 3.2.66-rc1 relative to 3.2.65.

Ben.

-- 
Ben Hutchings
Anthony's Law of Force: Don't force it, get a larger hammer.
diff --git a/Makefile b/Makefile
index 1433109..cda7e1d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 VERSION = 3
 PATCHLEVEL = 2
-SUBLEVEL = 65
-EXTRAVERSION =
+SUBLEVEL = 66
+EXTRAVERSION = -rc1
 NAME = Saber-toothed Squirrel
 
 # *DOCUMENTATION*
diff --git a/arch/powerpc/platforms/cell/spufs/inode.c b/arch/powerpc/platforms/cell/spufs/inode.c
index 70ec4e9..941d5cb 100644
--- a/arch/powerpc/platforms/cell/spufs/inode.c
+++ b/arch/powerpc/platforms/cell/spufs/inode.c
@@ -165,7 +165,7 @@ static void spufs_prune_dir(struct dentry *dir)
 	struct dentry *dentry, *tmp;
 
 	mutex_lock(&dir->d_inode->i_mutex);
-	list_for_each_entry_safe(dentry, tmp, &dir->d_subdirs, d_u.d_child) {
+	list_for_each_entry_safe(dentry, tmp, &dir->d_subdirs, d_child) {
 		spin_lock(&dentry->d_lock);
 		if (!(d_unhashed(dentry)) && dentry->d_inode) {
 			dget_dlock(dentry);
@@ -223,7 +223,7 @@ out:
 	 * - free child's inode if possible
 	 * - free child
 	 */
-	list_for_each_entry_safe(dentry, tmp, &dir->d_subdirs, d_u.d_child) {
+	list_for_each_entry_safe(dentry, tmp, &dir->d_subdirs, d_child) {
 		dput(dentry);
 	}
 
diff --git a/arch/s390/kernel/time.c b/arch/s390/kernel/time.c
index b2f44de..fd65e5e2 100644
--- a/arch/s390/kernel/time.c
+++ b/arch/s390/kernel/time.c
@@ -110,20 +110,10 @@ static void fixup_clock_comparator(unsigned long long delta)
 	set_clock_comparator(S390_lowcore.clock_comparator);
 }
 
-static int s390_next_ktime(ktime_t expires,
+static int s390_next_event(unsigned long delta,
 			   struct clock_event_device *evt)
 {
-	struct timespec ts;
-	u64 nsecs;
-
-	ts.tv_sec = ts.tv_nsec = 0;
-	monotonic_to_bootbased(&ts);
-	nsecs = ktime_to_ns(ktime_add(timespec_to_ktime(ts), expires));
-	do_div(nsecs, 125);
-	S390_lowcore.clock_comparator = sched_clock_base_cc + (nsecs << 9);
-	/* Program the maximum value if we have an overflow (== year 2042) */
-	if (unlikely(S390_lowcore.clock_comparator < sched_clock_base_cc))
-		S390_lowcore.clock_comparator = -1ULL;
+	S390_lowcore.clock_comparator = get_clock() + delta;
 	set_clock_comparator(S390_lowcore.clock_comparator);
 	return 0;
 }
@@ -148,15 +138,14 @@ void init_cpu_timer(void)
 	cpu = smp_processor_id();
 	cd = &per_cpu(comparators, cpu);
 	cd->name		= "comparator";
-	cd->features		= CLOCK_EVT_FEAT_ONESHOT |
-  CLOCK_EVT_FEAT_KTIME;
+	cd->features		= CLOCK_EVT_FEAT_ONESHOT;
 	cd->mult		= 16777;
 	cd->shift		= 12;
 	cd->min_delta_ns	= 1;
 	cd->max_delta_ns	= LONG_MAX;
 	cd->rating		= 400;
 	cd->cpumask		= cpumask_of(cpu);
-	cd->set_next_ktime	= s390_next_ktime;
+	cd->set_next_event	= s390_next_event;
 	cd->set_mode		= s390_set_mode;
 
 	clockevents_register_device(cd);
diff --git a/arch/x86/crypto/ghash-clmulni-intel_asm.S b/arch/x86/crypto/ghash-clmulni-intel_asm.S
index 1eb7f90..eb4d2a2 100644
--- a/arch/x86/crypto/ghash-clmulni-intel_asm.S
+++ b/arch/x86/crypto/ghash-clmulni-intel_asm.S
@@ -24,10 +24,6 @@
 .align 16
 .Lbswap_mask:
 	.octa 0x000102030405060708090a0b0c0d0e0f
-.Lpoly:
-	.octa 0xc201
-.Ltwo_one:
-	.octa 0x00010001
 
 #define DATA	%xmm0
 #define SHASH	%xmm1
@@ -131,27 +127,3 @@ ENTRY(clmul_ghash_update)
 	movups DATA, (%rdi)
 .Lupdate_just_ret:
 	ret
-
-/*
- * void clmul_ghash_setkey(be128 *shash, const u8 *key);
- *
- * Calculate hash_key << 1 mod poly
- */
-ENTRY(clmul_ghash_setkey)
-	movaps .Lbswap_mask, BSWAP
-	movups (%rsi), %xmm0
-	PSHUFB_XMM BSWAP %xmm0
-	movaps %xmm0, %xmm1
-	psllq $1, %xmm0
-	psrlq $63, %xmm1
-	movaps %xmm1, %xmm2
-	pslldq $8, %xmm1
-	psrldq $8, %xmm2
-	por %xmm1, %xmm0
-	# reduction
-	pshufd $0b00100100, %xmm2, %xmm1
-	pcmpeqd .Ltwo_one, %xmm1
-	pand .Lpoly, %xmm1
-	pxor %xmm1, %xmm0
-	movups %xmm0, (%rdi)
-	ret
diff --git a/arch/x86/crypto/ghash-clmulni-intel_glue.c b/arch/x86/crypto/ghash-clmulni-intel_glue.c
index 976aa64..294a264 100644
--- a/arch/x86/crypto/ghash-clmulni-intel_glue.c
+++ b/arch/x86/crypto/ghash-clmulni-intel_glue.c
@@ -29,8 +29,6 @@ void clmul_ghash_mul(char *dst, const be128 *shash);
 void clmul_ghash_update(char *dst, const char *src, unsigned int srclen,
 			const be128 *shash);
 
-void clmul_ghash_setkey(be128 *shash, const u8 *key);
-
 struct ghash_async_ctx {
 	struct cryptd_ahash *cryptd_tfm;
 };
@@ -57,13 +55,23 @@ static int ghash_setkey(struct crypto_shash *tfm,
 			const u8 *key, unsigned int keylen)
 {
 	struct ghash_ctx *ctx = crypto_shash_ctx(tfm);
+	be128 *x = (be128 *)key;
+	u64 a, b;
 
 	if (keylen != GHASH_BLOCK_SIZE) {
 		crypto_shash_set_flags(tfm, CRYPTO_TFM_RES_BAD_KEY_LEN);
 		return -EINVAL;
 	}
 
-	clmul_ghash_setkey(&ctx->shash, key);
+	/* perform multiplication by 'x' in GF(2^128) */
+	a = be64_to_cpu(x->a);
+	b = be64_to_cpu(x->b);
+
+	ctx->shash.a = (__be64)((b << 1) | (a >> 63));
+	ctx->shash.b = (__be64)((a << 1) | (b >> 63));
+
+	if (a >> 63)
+		ctx->shash.b ^= cpu_