Please let me know the status of your photos, waiting to retouching them.
Do your photos need white background? sharpen? retouching? We can do it for
you.
Send us the test photos today and we can start to work on them.
Thanks,
Denna
Hi,
On 21-01-19 06:55, Mogens Jensen wrote:
> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
> On Friday, January 18, 2019 3:35 PM, Hans de Goede <hdegoede(a)redhat.com> wrote:
>
>> Hi,
>>
>> On 1/17/19 8:30 PM, Mogens Jensen wrote:
>>
>>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>>> On Thursday, January 17, 2019 12:05 PM, Hans de Goede hdegoede(a)redhat.com wrote:
>>>
>>>> Hi,
>>>> On 17-01-19 10:12, Dean Wallace wrote:
>>>>
>>>>> Hi Hans, Mogens,
>>>>> On 17-01-19, Mogens Jensen wrote:
>>>>>
>>>>>> Kernel is compiled with SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH and the quirk seems to have fixed the problem caused by commit 648e921888ad ("clk: x86: Stop marking clocks as CLK_IS_CRITICAL"), as sound is now working if running "speaker-test" on my system which is clean ALSA.
>>>>
>>>> Note being "clean ALSA" is really not a good thing now a days,
>>>> for lots of things we depend on pulseaudio (like setting
>>>> up UCM mixer profiles).
>>>
>>> I'm using UCM mixer profile from:
>>> https://github.com/plbossart/UCM/tree/master/chtmax98090
>>> This is enabled with:
>>> alsaucm -c chtmax98090 set _verb HiFi set _enadev Speakers
>>>
>>>>>> Unfortunately, SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH driver is unusable on Clapper Chromebooks as audio played from everything but "speaker-test" as video players or web browsers is extremly low and sounds like played at 10x speed. At the same time kernel log is spammed with messages like this:
>>>>>> max98090 i2c-193C9890:00: PLL unlocked
>>>>>> intel_sst_acpi 80860F28:00: FW Version 01.0c.00.01
>>>>>> writing to lpe: 00000000: 01 01 01 01 00 00 08 00 ff ff ff ff 55 00 00 00 ............U...
>>>>>> writing to lpe: 00000000: 01 01 01 01 00 00 1a 00 ff ff ff ff 75 00 12 00 ............u...
>>>>>> This is probably not related to the problem discussed in this thread, but the result is that I have to use the legacy driver SND_SOC_INTEL_BYT_MAX98090_MACH and therefore still has to revert commit 648e921888ad for sound to work.
>>>>>> Is it possible to create a fix for SND_SOC_INTEL_BYT_MAX98090_MACH on kernel 4.19? Kernel 4.19 is a long term release so it would be very nice to have fix for this version upstream.
>>>>>
>>>>> I have been reverting "clk: x86: Stop marking clocks as CLK_IS_CRITICAL"
>>>>> and the patch that initially added the quirk for swanky because of sound
>>>>> instability issues as you described. I'm compiling vanilla Archlinux
>>>>> kernel with SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH, using pulseaudio,
>>>>> and have sound in all my apps.
>>>>> Baytrail sound has always been a little touchy, especially using headset
>>>>> with mic, but since the clk patch breaking sound and the quirk patch to
>>>>> fix it, there is a lot more instability. Just running pavucontrol, or
>>>>> plugging in headset sets it off. It's a head scratcher.
>>>>
>>>> Mogens, Dean, can you please try the SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH
>>>> driver, without reverting any patches, with the attached patch on top and
>>>> see if that helps?
>>>> Thanks & Regards,
>>>> Hans
>>>
>>> I have applied the patch to kernel 4.19.15 and unfortunately this has not solved the problems.
>>> Audio generated from "speaker-test" is normal, but from everything else is very low and played at 10x speed. However, I'm not seeing the "max98090 i2c-193C9890:00: PLL unlocked" message in kernel log anymore, but it's still spammed with "writing to lpe: ...".
>>
>> Hmm, I've a feeling the problem is your using alsa directly, do you have
>> dmix enabled ? You probably need dmix since the SST sound support
>> only supports 48KHz AFAIK.
>>
>> Can you perhaps give things a try with pulseaudio ?
>>
>> Regards,
>>
>> Hans
>
> You are absolutely correct, software mixing was apparently not enabled on my system and this caused the audio problems. I thought that dmix was enabled by default if hardware mixing was not supported. Thank you very much.
>
> I was completely wrong about "SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH driver seems to be unusable on Clapper Chromebooks". Sorry about that.
>
> To sum up, audio is working perfectly on my Clapper Chromebook running kernel 4.19.15 with SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH + "0001-ASoC-intel-cht_bsw_max98090_ti-Enable-codec-clock-on.patch", even better than before with the legacy driver.
Thank you for testing this. Given that things now work for both you and Dean I've
submitted the patch you both have tested upstream.
Regards,
Hans
Hi Shasha,
On 23.01.19 23:57, Sasha Levin wrote:
> Hi,
>
> [This is an automated email]
>
> This commit has been processed because it contains a -stable tag.
> The stable tag indicates that it's relevant for the following trees: 2.6.26+
>
> The bot has tested the following trees: v4.20.3, v4.19.16, v4.14.94, v4.9.151, v4.4.171, v3.18.132.
>
> v4.20.3: Build OK!
> v4.19.16: Build OK!
> v4.14.94: Build OK!
> v4.9.151: Build OK!
> v4.4.171: Failed to apply! Possible dependencies:
> 2b5f5f5dc114 ("can: bcm: unify bcm_msg_head handling and prepare function parameters")
> 6f3b911d5f29 ("can: bcm: add support for CAN FD frames")
> 72c8a89ad2e4 ("can: bcm: use CAN frame instead of can_frame in comments")
> 95acb490ec51 ("can: bcm: fix indention and other minor style issues")
>
> v3.18.132: Failed to apply! Possible dependencies:
> 069f8457ae52 ("can: fix spelling errors")
> 2b5f5f5dc114 ("can: bcm: unify bcm_msg_head handling and prepare function parameters")
> 6ce8e9ce5989 ("new helper: memcpy_from_msg()")
> 6f3b911d5f29 ("can: bcm: add support for CAN FD frames")
> 72c8a89ad2e4 ("can: bcm: use CAN frame instead of can_frame in comments")
> 95acb490ec51 ("can: bcm: fix indention and other minor style issues")
> ba61a8d9d780 ("can: avoid using timeval for uapi")
>
>
> How should we proceed with this patch?
As we do have a proper upstream commit hash now ...
https://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can.git/commit/?h…
... here is the ported patch for kernels pre version 4.8:
https://marc.info/?l=linux-can&m=154832094402622&w=2
Thanks,
Oliver
ps. the pull request to Dave is still hanging here:
https://marc.info/?l=linux-can&m=154831478900596&w=2
Please let me know the status of your photos, waiting to retouching them.
Do your photos need white background? sharpen? retouching? We can do it for
you.
Send us the test photos today and we can start to work on them.
Thanks,
Denna
Please let me know the status of your photos, waiting to retouching them.
Do your photos need white background? sharpen? retouching? We can do it for
you.
Send us the test photos today and we can start to work on them.
Thanks,
Denna
On Wed, Jan 23, 2019 at 2:57 PM Sasha Levin <sashal(a)kernel.org> wrote:
>
> Hi,
>
> [This is an automated email]
>
> This commit has been processed because it contains a "Fixes:" tag,
> fixing commit: 6b0c81b3be11 mm, oom: reduce dependency on tasklist_lock.
>
> The bot has tested the following trees: v4.20.3, v4.19.16, v4.14.94, v4.9.151, v4.4.171, v3.18.132.
>
> v4.20.3: Build OK!
> v4.19.16: Build OK!
> v4.14.94: Failed to apply! Possible dependencies:
> 5989ad7b5ede ("mm, oom: refactor oom_kill_process()")
>
Very easy to resolve the conflict. Please let me know if you want me
to send a version for 4.14-stable kernel.
> v4.9.151: Build OK!
> v4.4.171: Build OK!
> v3.18.132: Build OK!
>
>
> How should we proceed with this patch?
>
We do want to backport this patch to stable kernels. However shouldn't
we wait for this patch to be applied to Linus's tree first.
Shakeel
Hi Sasha,
Sorry for annoying, please ignore this patch since it has not been
sent to linux-staging mailing list.
On 2019/1/24 6:57, Sasha Levin wrote:
> Hi,
>
> [This is an automated email]
>
> This commit has been processed because it contains a "Fixes:" tag,
> fixing commit: 3883a79abd02 staging: erofs: introduce VLE decompression support.
>
> The bot has tested the following trees: v4.20.3, v4.19.16.
>
> v4.20.3: Build OK!
> v4.19.16: Failed to apply! Possible dependencies:
> ab47dd2b0819 ("staging: erofs: cleanup z_erofs_vle_work_{lookup, register}")
>
Anyway, the corresponding 4.19 patch is attached in the end.
Thanks,
Gao Xiang
>
> How should we proceed with this patch?
>
> --
> Thanks,
> Sasha
>
>From 6982dff48665dae0a6ed77ed2abef476e2d01488 Mon Sep 17 00:00:00 2001
From: Gao Xiang <gaoxiang25(a)huawei.com>
Date: Tue, 22 Jan 2019 17:29:47 +0800
Subject: [PATCH 4.19] staging: erofs: fix mis-acted TAIL merging behavior
EROFS has an optimized path called TAIL merging, which is designed
to merge multiple reads and the corresponding decompressions into
one if these requests read continuous pages almost at the same time.
In general, it behaves as follows:
________________________________________________________________
... | TAIL . HEAD | PAGE | PAGE | TAIL . HEAD | ...
_____|_combined page A_|________|________|_combined page B_|____
1 ] -> [ 2 ] -> [ 3
If the above three reads are requested in the order 1-2-3, it will
generate a large work chain rather than 3 individual work chains
to reduce scheduling overhead and boost up sequential read.
However, if Read 2 is processed slightly earlier than Read 1,
currently it still generates 2 individual work chains (chain 1, 2)
but it does in-place decompression for combined page A, moreover,
if chain 2 decompresses ahead of chain 1, it will be a race and
lead to corrupted decompressed page. This patch fixes it.
Fixes: 3883a79abd02 ("staging: erofs: introduce VLE decompression support")
Cc: <stable(a)vger.kernel.org> # 4.19+
Signed-off-by: Gao Xiang <gaoxiang25(a)huawei.com>
---
drivers/staging/erofs/unzip_vle.c | 69 +++++++++++++++++++++++++--------------
1 file changed, 44 insertions(+), 25 deletions(-)
diff --git a/drivers/staging/erofs/unzip_vle.c b/drivers/staging/erofs/unzip_vle.c
index 8721f0a41d15..05aa5d3a2e82 100644
--- a/drivers/staging/erofs/unzip_vle.c
+++ b/drivers/staging/erofs/unzip_vle.c
@@ -60,15 +60,30 @@ enum z_erofs_vle_work_role {
Z_EROFS_VLE_WORK_SECONDARY,
Z_EROFS_VLE_WORK_PRIMARY,
/*
- * The current work has at least been linked with the following
- * processed chained works, which means if the processing page
- * is the tail partial page of the work, the current work can
- * safely use the whole page, as illustrated below:
- * +--------------+-------------------------------------------+
- * | tail page | head page (of the previous work) |
- * +--------------+-------------------------------------------+
- * /\ which belongs to the current work
- * [ (*) this page can be used for the current work itself. ]
+ * The current work was the tail of an exist chain, but the following
+ * processed chained works are now all hooked up to it.
+ * A new chain should be created for the remaining unprocessed works,
+ * therefore different from Z_EROFS_VLE_WORK_PRIMARY_FOLLOWED,
+ * the next work cannot reuse the whole page in the following scenario:
+ * ________________________________________________________________
+ * | tail (partial) page | head (partial) page |
+ * | (belongs to the next work) | (belongs to the current work) |
+ * |_______PRIMARY_FOLLOWED_______|________PRIMARY_HOOKED___________|
+ */
+ Z_EROFS_VLE_WORK_PRIMARY_HOOKED,
+ /*
+ * The current work has been linked with the processed chained works,
+ * and could be also linked with the potential remaining works, which
+ * means if the processing page is the tail partial page of the work,
+ * the current work can safely use the whole page (since the next work
+ * is under control) for in-place decompression, as illustrated below:
+ * ________________________________________________________________
+ * | tail (partial) page | head (partial) page |
+ * | (of the current work) | (of the previous work) |
+ * | PRIMARY_FOLLOWED or | |
+ * |_____PRIMARY_HOOKED____|____________PRIMARY_FOLLOWED____________|
+ *
+ * [ (*) the above page can be used for the current work itself. ]
*/
Z_EROFS_VLE_WORK_PRIMARY_FOLLOWED,
Z_EROFS_VLE_WORK_MAX
@@ -237,10 +252,10 @@ static int z_erofs_vle_work_add_page(
return ret ? 0 : -EAGAIN;
}
-static inline bool try_to_claim_workgroup(
- struct z_erofs_vle_workgroup *grp,
- z_erofs_vle_owned_workgrp_t *owned_head,
- bool *hosted)
+static enum z_erofs_vle_work_role
+try_to_claim_workgroup(struct z_erofs_vle_workgroup *grp,
+ z_erofs_vle_owned_workgrp_t *owned_head,
+ bool *hosted)
{
DBG_BUGON(*hosted == true);
@@ -254,6 +269,9 @@ static inline bool try_to_claim_workgroup(
*owned_head = grp;
*hosted = true;
+ /* lucky, I am the followee :) */
+ return Z_EROFS_VLE_WORK_PRIMARY_FOLLOWED;
+
} else if (grp->next == Z_EROFS_VLE_WORKGRP_TAIL) {
/*
* type 2, link to the end of a existing open chain,
@@ -263,12 +281,11 @@ static inline bool try_to_claim_workgroup(
if (Z_EROFS_VLE_WORKGRP_TAIL != cmpxchg(&grp->next,
Z_EROFS_VLE_WORKGRP_TAIL, *owned_head))
goto retry;
-
*owned_head = Z_EROFS_VLE_WORKGRP_TAIL;
- } else
- return false; /* :( better luck next time */
+ return Z_EROFS_VLE_WORK_PRIMARY_HOOKED;
+ }
- return true; /* lucky, I am the followee :) */
+ return Z_EROFS_VLE_WORK_PRIMARY; /* :( better luck next time */
}
static struct z_erofs_vle_work *
@@ -343,12 +360,8 @@ z_erofs_vle_work_lookup(struct super_block *sb,
*hosted = false;
if (!primary)
*role = Z_EROFS_VLE_WORK_SECONDARY;
- /* claim the workgroup if possible */
- else if (try_to_claim_workgroup(grp, owned_head, hosted))
- *role = Z_EROFS_VLE_WORK_PRIMARY_FOLLOWED;
- else
- *role = Z_EROFS_VLE_WORK_PRIMARY;
-
+ else /* claim the workgroup if possible */
+ *role = try_to_claim_workgroup(grp, owned_head, hosted);
return work;
}
@@ -431,6 +444,9 @@ static inline void __update_workgrp_llen(struct z_erofs_vle_workgroup *grp,
}
}
+#define builder_is_hooked(builder) \
+ ((builder)->role >= Z_EROFS_VLE_WORK_PRIMARY_HOOKED)
+
#define builder_is_followed(builder) \
((builder)->role >= Z_EROFS_VLE_WORK_PRIMARY_FOLLOWED)
@@ -595,7 +611,7 @@ static int z_erofs_do_read_page(struct z_erofs_vle_frontend *fe,
struct z_erofs_vle_work_builder *const builder = &fe->builder;
const loff_t offset = page_offset(page);
- bool tight = builder_is_followed(builder);
+ bool tight = builder_is_hooked(builder);
struct z_erofs_vle_work *work = builder->work;
#ifdef EROFS_FS_HAS_MANAGED_CACHE
@@ -659,7 +675,7 @@ static int z_erofs_do_read_page(struct z_erofs_vle_frontend *fe,
builder->role = Z_EROFS_VLE_WORK_PRIMARY;
#endif
- tight &= builder_is_followed(builder);
+ tight &= builder_is_hooked(builder);
work = builder->work;
hitted:
cur = end - min_t(unsigned, offset + end - map->m_la, end);
@@ -674,6 +690,9 @@ static int z_erofs_do_read_page(struct z_erofs_vle_frontend *fe,
(tight ? Z_EROFS_PAGE_TYPE_EXCLUSIVE :
Z_EROFS_VLE_PAGE_TYPE_TAIL_SHARED));
+ if (cur)
+ tight &= builder_is_followed(builder);
+
retry:
err = z_erofs_vle_work_add_page(builder, page, page_type);
/* should allocate an additional staging page for pagevec */
--
2.14.4
Some time ago blk_execute_rq() was modified such that it no longer
allocates a sense buffer. Make sg_io() allocate and use a sense buffer.
This patch avoids that the following bug is triggered when running the
libiscsi tests against the scsi_debug driver:
usercopy: Kernel memory exposure attempt detected from null address (offset 0, size 18)!
------------[ cut here ]------------
kernel BUG at mm/usercopy.c:102!
CPU: 5 PID: 693 Comm: iscsi-test-cu Not tainted 5.0.0-rc3-dbg+ #3
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
RIP: 0010:usercopy_abort+0x7a/0x7c
Call Trace:
__check_object_size.cold.1+0x37/0x3d
sg_io+0x5a2/0x700
scsi_cmd_ioctl+0x4d4/0x540
scsi_cmd_blk_ioctl+0x7b/0x8b
sd_ioctl+0xba/0x150
blkdev_ioctl+0x6e1/0xea0
block_ioctl+0x79/0x90
do_vfs_ioctl+0x12b/0x9b0
ksys_ioctl+0x41/0x80
__x64_sys_ioctl+0x43/0x50
do_syscall_64+0x71/0x210
entry_SYSCALL_64_after_hwframe+0x49/0xbe
Cc: Christoph Hellwig <hch(a)lst.de>
Cc: Martin K. Petersen <martin.petersen(a)oracle.com>
Cc: Douglas Gilbert <dgilbert(a)interlog.com>
Cc: <stable(a)vger.kernel.org> # v4.11+
Fixes: 82ed4db499b8 ("block: split scsi_request out of struct request")
Signed-off-by: Bart Van Assche <bvanassche(a)acm.org>
---
block/scsi_ioctl.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c
index 533f4aee8567..066929ec0d61 100644
--- a/block/scsi_ioctl.c
+++ b/block/scsi_ioctl.c
@@ -299,6 +299,7 @@ static int sg_io(struct request_queue *q, struct gendisk *bd_disk,
struct request *rq;
struct scsi_request *req;
struct bio *bio;
+ u8 sense[SCSI_SENSE_BUFFERSIZE];
if (hdr->interface_id != 'S')
return -EINVAL;
@@ -361,6 +362,7 @@ static int sg_io(struct request_queue *q, struct gendisk *bd_disk,
bio = rq->bio;
req->retries = 0;
+ req->sense = sense;
start_time = jiffies;
--
2.20.1.321.g9e740568ce-goog
Since blk_execute_rq() no longer allocates a sense buffer and no longer
initializes the sense pointer the callers of blk_execute_rq() have to do
initialize the sense pointer. Hence this patch that initializes rq->sense
and that removes a superfluous memcpy() statement.
Cc: Christoph Hellwig <hch(a)lst.de>
Cc: Douglas Gilbert <dgilbert(a)interlog.com>
Cc: <stable(a)vger.kernel.org> # v4.11+
Fixes: 82ed4db499b8 ("block: split scsi_request out of struct request")
Signed-off-by: Bart Van Assche <bvanassche(a)acm.org>
---
drivers/scsi/scsi_lib.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 4feba3b5aff1..8b9f4b1bca35 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -271,6 +271,7 @@ int __scsi_execute(struct scsi_device *sdev, const unsigned char *cmd,
rq->cmd_len = COMMAND_SIZE(cmd[0]);
memcpy(rq->cmd, cmd, rq->cmd_len);
rq->retries = retries;
+ rq->sense = sense;
req->timeout = timeout;
req->cmd_flags |= flags;
req->rq_flags |= rq_flags | RQF_QUIET;
@@ -291,8 +292,6 @@ int __scsi_execute(struct scsi_device *sdev, const unsigned char *cmd,
if (resid)
*resid = rq->resid_len;
- if (sense && rq->sense_len)
- memcpy(sense, rq->sense, SCSI_SENSE_BUFFERSIZE);
if (sshdr)
scsi_normalize_sense(rq->sense, rq->sense_len, sshdr);
ret = rq->result;
--
2.20.1.321.g9e740568ce-goog
From: Eric Biggers <ebiggers(a)google.com>
Hash algorithms with an alignmask set, e.g. "xcbc(aes-aesni)" and
"michael_mic", fail the improved hash tests because they sometimes
produce the wrong digest. The bug is that in the case where a
scatterlist element crosses pages, not all the data is actually hashed
because the scatterlist walk terminates too early. This happens because
the 'nbytes' variable in crypto_hash_walk_done() is assigned the number
of bytes remaining in the page, then later interpreted as the number of
bytes remaining in the scatterlist element. Fix it.
Fixes: 900a081f6912 ("crypto: ahash - Fix early termination in hash walk")
Cc: stable(a)vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers(a)google.com>
---
crypto/ahash.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/crypto/ahash.c b/crypto/ahash.c
index ca0d3e281fef..81e2767e2164 100644
--- a/crypto/ahash.c
+++ b/crypto/ahash.c
@@ -86,17 +86,17 @@ static int hash_walk_new_entry(struct crypto_hash_walk *walk)
int crypto_hash_walk_done(struct crypto_hash_walk *walk, int err)
{
unsigned int alignmask = walk->alignmask;
- unsigned int nbytes = walk->entrylen;
walk->data -= walk->offset;
- if (nbytes && walk->offset & alignmask && !err) {
- walk->offset = ALIGN(walk->offset, alignmask + 1);
- nbytes = min(nbytes,
- ((unsigned int)(PAGE_SIZE)) - walk->offset);
- walk->entrylen -= nbytes;
+ if (walk->entrylen && (walk->offset & alignmask) && !err) {
+ unsigned int nbytes;
+ walk->offset = ALIGN(walk->offset, alignmask + 1);
+ nbytes = min(walk->entrylen,
+ (unsigned int)(PAGE_SIZE - walk->offset));
if (nbytes) {
+ walk->entrylen -= nbytes;
walk->data += walk->offset;
return nbytes;
}
@@ -116,7 +116,7 @@ int crypto_hash_walk_done(struct crypto_hash_walk *walk, int err)
if (err)
return err;
- if (nbytes) {
+ if (walk->entrylen) {
walk->offset = 0;
walk->pg++;
return hash_walk_next(walk);
--
2.20.1.321.g9e740568ce-goog
From: Eric Biggers <ebiggers(a)google.com>
gcmaes_crypt_by_sg() dereferences the NULL pointer returned by
scatterwalk_ffwd() when encrypting an empty plaintext and the source
scatterlist ends immediately after the associated data.
Fix it by only fast-forwarding to the src/dst data scatterlists if the
data length is nonzero.
This bug is reproduced by the "rfc4543(gcm(aes))" test vectors when run
with the new AEAD test manager.
Fixes: e845520707f8 ("crypto: aesni - Update aesni-intel_glue to use scatter/gather")
Cc: <stable(a)vger.kernel.org> # v4.17+
Cc: Dave Watson <davejwatson(a)fb.com>
Signed-off-by: Eric Biggers <ebiggers(a)google.com>
---
arch/x86/crypto/aesni-intel_glue.c | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/arch/x86/crypto/aesni-intel_glue.c b/arch/x86/crypto/aesni-intel_glue.c
index 9b5ccde3ef31..1e3d2102033a 100644
--- a/arch/x86/crypto/aesni-intel_glue.c
+++ b/arch/x86/crypto/aesni-intel_glue.c
@@ -813,11 +813,14 @@ static int gcmaes_crypt_by_sg(bool enc, struct aead_request *req,
scatterwalk_map_and_copy(assoc, req->src, 0, assoclen, 0);
}
- src_sg = scatterwalk_ffwd(src_start, req->src, req->assoclen);
- scatterwalk_start(&src_sg_walk, src_sg);
- if (req->src != req->dst) {
- dst_sg = scatterwalk_ffwd(dst_start, req->dst, req->assoclen);
- scatterwalk_start(&dst_sg_walk, dst_sg);
+ if (left) {
+ src_sg = scatterwalk_ffwd(src_start, req->src, req->assoclen);
+ scatterwalk_start(&src_sg_walk, src_sg);
+ if (req->src != req->dst) {
+ dst_sg = scatterwalk_ffwd(dst_start, req->dst,
+ req->assoclen);
+ scatterwalk_start(&dst_sg_walk, dst_sg);
+ }
}
kernel_fpu_begin();
--
2.20.1.321.g9e740568ce-goog
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: 3d4332cd8258 Linux 4.20.4
The results of these automated tests are provided below.
Overall result: PASSED
Patch merge: OK
Compile: OK
Kernel tests: OK
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out a ref:
Repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Ref: 3d4332cd8258 Linux 4.20.4
We then merged the following patches with `git am`:
ipv6-consider-sk_bound_dev_if-when-binding-a-socket-to-a-v4-mapped-address.patch
mlxsw-spectrum-disable-lag-port-tx-before-removing-it.patch
mlxsw-spectrum_switchdev-set-pvid-correctly-during-vlan-deletion.patch
net-dsa-mv88x6xxx-mv88e6390-errata.patch
net-skbuff-do-not-prefer-skb-allocation-fails-early.patch
qmi_wwan-add-mtu-default-to-qmap-network-interface.patch
r8169-add-support-for-new-realtek-ethernet.patch
ipv6-take-rcu_read_lock-in-__inet6_bind-for-mapped-addresses.patch
ipv6-fix-dump-of-specific-table-with-strict-checking.patch
netlink-fixup-regression-in-rtm_getaddr.patch
octeontx2-af-fix-a-resource-leak-in-an-error-handling-path-in-cgx_probe.patch
openvswitch-fix-ipv6-later-frags-parsing.patch
net-clear-skb-tstamp-in-bridge-forwarding-path.patch
netfilter-ipset-allow-matching-on-destination-mac-ad.patch
gpio-pl061-move-irq_chip-definition-inside-struct-pl.patch
asoc-wm97xx-fix-uninitialized-regmap-pointer-problem.patch
drm-amd-display-guard-against-null-stream_state-in-s.patch
drm-amdkfd-fix-interrupt-spin-lock.patch
qtnfmac-fix-error-handling-in-control-path.patch
ixgbe-allow-ipsec-tx-offload-in-vepa-mode.patch
platform-x86-asus-wmi-tell-the-ec-the-os-will-handle.patch
e1000e-allow-non-monotonic-systim-readings.patch
usb-typec-tcpm-do-not-disconnect-link-for-self-power.patch
selftests-bpf-enable-uncomment-all-tests-in-test_lib.patch
of-overlay-add-missing-of_node_put-after-add-new-nod.patch
writeback-don-t-decrement-wb-refcnt-if-wb-bdi.patch
serial-set-suppress_bind_attrs-flag-only-if-builtin.patch
bpf-allow-narrow-loads-with-offset-0.patch
alsa-oxfw-add-support-for-apogee-duet-firewire.patch
x86-mce-fix-wmissing-prototypes-warnings.patch
mips-sibyte-enable-swiotlb-for-swarm-littlesur-and-b.patch
crypto-ecc-regularize-scalar-for-scalar-multiplicati.patch
drm-scheduler-fix-bad-job-be-re-processed-in-tdr.patch
arm64-perf-set-suppress_bind_attrs-flag-to-true.patch
mips-loongson-add-loongson-3a-r2.1-basic-support.patch
x86-fault-don-t-try-to-recover-from-an-implicit-supe.patch
drm-atomic-helper-complete-fake_commit-flip_done-pot.patch
clk-meson-meson8b-add-support-for-more-m-n-values-in.patch
clk-meson-meson8b-fix-incorrect-divider-mapping-in-c.patch
samples-bpf-fix-error-handling-regarding-kprobe_even.patch
usb-gadget-udc-renesas_usb3-add-a-safety-connection-.patch
fpga-altera-cvp-fix-probing-for-multiple-fpgas-on-th.patch
selinux-always-allow-mounting-submounts.patch
arm64-use-a-raw-spinlock-in-__install_bp_hardening_c.patch
asoc-pcm3168a-don-t-disable-pcm3168a-when-config_pm-.patch
scsi-qedi-check-for-session-online-before-getting-is.patch
net-ethernet-ave-set-initial-wol-state-to-disabled.patch
drm-amdgpu-reorder-uvd-ring-init-before-uvd-resume.patch
rxe-ib_wr_reg_mr-does-not-capture-mr-s-iova-field.patch
efi-libstub-disable-some-warnings-for-x86-_64.patch
jffs2-fix-use-of-uninitialized-delayed_work-lockdep-.patch
kbuild-let-fixdep-directly-write-to-.-.cmd-files.patch
clk-imx-make-mux-parent-strings-const.patch
pstore-ram-do-not-treat-empty-buffers-as-valid.patch
media-uvcvideo-refactor-teardown-of-uvc-on-usb-disco.patch
powerpc-xmon-fix-invocation-inside-lock-region.patch
powerpc-pseries-cpuidle-fix-preempt-warning.patch
arm64-relocatable-fix-inconsistencies-in-linker-scri.patch
media-firewire-fix-app_info-parameter-type-in-avc_ca.patch
asoc-use-dma_ops-of-parent-device-for-acp_audio_dma.patch
coresight-tmc-fix-bad-register-address-for-claim.patch
media-venus-core-set-dma-maximum-segment-size.patch
staging-erofs-fix-use-after-free-of-on-stack-z_erofs.patch
net-call-sk_dst_reset-when-set-so_dontroute.patch
scsi-target-use-consistent-left-aligned-ascii-inquir.patch
scsi-target-core-make-sure-that-target_wait_for_sess.patch
selftests-do-not-macro-expand-failed-assertion-expre.patch
arm64-kasan-increase-stack-size-for-kasan_extra.patch
clk-imx6q-reset-exclusive-gates-on-init.patch
arm64-fix-minor-issues-with-the-dcache_by_line_op-ma.patch
bpf-relax-verifier-restriction-on-bpf_mov-bpf_alu.patch
usb-dwc2-fix-disable-all-ep-s-on-disconnect.patch
x86-resctrl-fix-rdt_find_domain-return-value-and-che.patch
kconfig-fix-file-name-and-line-number-of-warn_ignore.patch
kconfig-fix-memory-leak-when-eof-is-encountered-in-q.patch
mmc-atmel-mci-do-not-assume-idle-after-atmci_request.patch
btrfs-volumes-make-sure-there-is-no-overlap-of-dev-e.patch
btrfs-alloc_chunk-fix-more-dup-stripe-size-handling.patch
btrfs-fix-use-after-free-due-to-race-between-replace.patch
btrfs-improve-error-handling-of-btrfs_add_link.patch
tty-serial-do-not-free-trasnmit-buffer-page-under-po.patch
tools-lib-traceevent-fix-compile-warnings-in-tools-l.patch
perf-intel-pt-fix-error-with-config-term-pt-0.patch
perf-tests-arm-disable-breakpoint-tests-32-bit.patch
perf-svghelper-fix-unchecked-usage-of-strncpy.patch
perf-parse-events-fix-unchecked-usage-of-strncpy.patch
perf-vendor-events-intel-fix-load_miss_real_latency-.patch
netfilter-ipt_clusterip-check-mac-address-when-dupli.patch
netfilter-ipt_clusterip-remove-wrong-warn_on_once-in.patch
netfilter-ipt_clusterip-fix-deadlock-in-netns-exit-r.patch
x86-topology-use-total_cpus-for-max-logical-packages.patch
dm-crypt-use-u64-instead-of-sector_t-to-store-iv_off.patch
dm-kcopyd-fix-bug-causing-workqueue-stalls.patch
perf-stat-avoid-segfaults-caused-by-negated-options.patch
tools-lib-subcmd-don-t-add-the-kernel-sources-to-the.patch
dm-snapshot-fix-excessive-memory-usage-and-workqueue.patch
perf-cs-etm-correct-packets-swapping-in-cs_etm__flus.patch
perf-tools-add-missing-sigqueue-prototype-for-system.patch
perf-tools-add-missing-open_memstream-prototype-for-.patch
quota-lock-s_umount-in-exclusive-mode-for-q_xquota-o.patch
clocksource-drivers-integrator-ap-add-missing-of_nod.patch
dm-check-for-device-sector-overflow-if-config_lbdaf-.patch
bluetooth-btusb-add-support-for-intel-bluetooth-devi.patch
alsa-bebob-fix-model-id-of-unit-for-apogee-ensemble.patch
sysfs-disable-lockdep-for-driver-bind-unbind-files.patch
ib-usnic-fix-potential-deadlock.patch
scsi-mpt3sas-fix-memory-ordering-on-64bit-writes.patch
scsi-smartpqi-correct-lun-reset-issues.patch
ath10k-fix-peer-stats-null-pointer-dereference.patch
scsi-smartpqi-call-pqi_free_interrupts-in-pqi_shutdo.patch
kvm-ppc-book3s-hv-align-gfn-to-l1-page-size-when-ins.patch
kvm-ppc-book3s-hv-apply-combination-of-host-and-l1-p.patch
scsi-megaraid-fix-out-of-bound-array-accesses.patch
iomap-don-t-search-past-page-end-in-iomap_is_partial.patch
ocfs2-fix-panic-due-to-unrecovered-local-alloc.patch
mm-page-writeback.c-don-t-break-integrity-writeback-.patch
mm-swap-use-nr_node_ids-for-avail_lists-in-swap_info.patch
userfaultfd-clear-flag-if-remap-event-not-enabled.patch
mm-proc-be-more-verbose-about-unstable-vma-flags-in-.patch
mm-memblock.c-skip-kmemleak-for-kasan_init.patch
Compile testing
---------------
We compiled the kernel for 4 architectures:
s390x:
make options: make INSTALL_MOD_STRIP=1 -j64 targz-pkg -j64
configuration: https://artifacts.cki-project.org/builds/s390x/873ea5d697070570b63f001ce6cb…
powerpc64le:
make options: make INSTALL_MOD_STRIP=1 -j64 targz-pkg -j64
configuration: https://artifacts.cki-project.org/builds/ppc64le/a8b31b98d3ab8809a00574c3d6…
aarch64:
make options: make INSTALL_MOD_STRIP=1 -j64 targz-pkg -j64
configuration: https://artifacts.cki-project.org/builds/aarch64/08f2f4e731cf3053866d349015…
x86_64:
make options: make INSTALL_MOD_STRIP=1 -j64 targz-pkg -j64
configuration: https://artifacts.cki-project.org/builds/x86_64/ee4ca360d8bf2fc0e74e17ce0bb…
Hardware testing
----------------
We booted each kernel and ran the following tests:
s390:
Boot test
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
/distribution/command
LTP lite - release 20180926
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
AMTU (Abstract Machine Test Utility)
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#misc/amtu
powerpc:
Boot test
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
/distribution/command
LTP lite - release 20180926
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
xfstests: xfs
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#/filesystems…
AMTU (Abstract Machine Test Utility)
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#misc/amtu
Usex - version 1.9-29
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#standards/us…
arm64:
Boot test
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
/distribution/command
LTP lite - release 20180926
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
xfstests: xfs
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#/filesystems…
AMTU (Abstract Machine Test Utility)
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#misc/amtu
Usex - version 1.9-29
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#standards/us…
x86_64:
Boot test
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
/distribution/command
LTP lite - release 20180926
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
xfstests: xfs
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#/filesystems…
AMTU (Abstract Machine Test Utility)
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#misc/amtu
Usex - version 1.9-29
- URL: https://github.com/CKI-project/tests-beaker/archive/master.zip#standards/us…
Even if we don't have the correct clock and get a warning, we should not
skip the return.
Fixes: 1fa11ee2d9d0 ("drm/i915/icl: start adding the TBT pll")
Cc: Paulo Zanoni <paulo.r.zanoni(a)intel.com>
Cc: <stable(a)vger.kernel.org> # v4.19+
Signed-off-by: Lucas De Marchi <lucas.demarchi(a)intel.com>
---
drivers/gpu/drm/i915/intel_ddi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
index 8dbf6c9e22fb..4dc03e8c6c10 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
@@ -1021,7 +1021,7 @@ static uint32_t icl_pll_to_ddi_pll_sel(struct intel_encoder *encoder,
return DDI_CLK_SEL_TBT_810;
default:
MISSING_CASE(clock);
- break;
+ return DDI_CLK_SEL_NONE;
}
case DPLL_ID_ICL_MGPLL1:
case DPLL_ID_ICL_MGPLL2:
--
2.20.0
commit c156618e15101a9cc8c815108fec0300a0ec6637 upstream.
The following deadlock can occur between a process waiting for a client
to initialize in while walking the client list during nfsv4 server trunking
detection and another process waiting for the nfs_clid_init_mutex so it
can initialize that client:
Process 1 Process 2
--------- ---------
spin_lock(&nn->nfs_client_lock);
list_add_tail(&CLIENTA->cl_share_link,
&nn->nfs_client_list);
spin_unlock(&nn->nfs_client_lock);
spin_lock(&nn->nfs_client_lock);
list_add_tail(&CLIENTB->cl_share_link,
&nn->nfs_client_list);
spin_unlock(&nn->nfs_client_lock);
mutex_lock(&nfs_clid_init_mutex);
nfs41_walk_client_list(clp, result, cred);
nfs_wait_client_init_complete(CLIENTA);
(waiting for nfs_clid_init_mutex)
Make sure nfs_match_client() only evaluates clients that have completed
initialization in order to prevent that deadlock.
This patch also fixes v4.0 trunking behavior by not marking the client
NFS_CS_READY until the clientid has been confirmed.
Signed-off-by: Scott Mayhew <smayhew(a)redhat.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker(a)Netapp.com>
Signed-off-by: Qian Lu <luqia(a)amazon.com>
---
fs/nfs/client.c | 11 +++++++++++
fs/nfs/nfs4client.c | 17 +++++++++++++----
2 files changed, 24 insertions(+), 4 deletions(-)
diff --git a/fs/nfs/client.c b/fs/nfs/client.c
index 22880ef6d8dd..7d6ddfd60271 100644
--- a/fs/nfs/client.c
+++ b/fs/nfs/client.c
@@ -291,12 +291,23 @@ static struct nfs_client *nfs_match_client(const struct nfs_client_initdata *dat
const struct sockaddr *sap = data->addr;
struct nfs_net *nn = net_generic(data->net, nfs_net_id);
+again:
list_for_each_entry(clp, &nn->nfs_client_list, cl_share_link) {
const struct sockaddr *clap = (struct sockaddr *)&clp->cl_addr;
/* Don't match clients that failed to initialise properly */
if (clp->cl_cons_state < 0)
continue;
+ /* If a client is still initializing then we need to wait */
+ if (clp->cl_cons_state > NFS_CS_READY) {
+ atomic_inc(&clp->cl_count);
+ spin_unlock(&nn->nfs_client_lock);
+ nfs_wait_client_init_complete(clp);
+ nfs_put_client(clp);
+ spin_lock(&nn->nfs_client_lock);
+ goto again;
+ }
+
/* Different NFS versions cannot share the same nfs_client */
if (clp->rpc_ops != data->nfs_mod->rpc_ops)
continue;
diff --git a/fs/nfs/nfs4client.c b/fs/nfs/nfs4client.c
index fed9c8005c17..8f96f6548dc8 100644
--- a/fs/nfs/nfs4client.c
+++ b/fs/nfs/nfs4client.c
@@ -404,15 +404,19 @@ struct nfs_client *nfs4_init_client(struct nfs_client *clp,
if (error < 0)
goto error;
- if (!nfs4_has_session(clp))
- nfs_mark_client_ready(clp, NFS_CS_READY);
-
error = nfs4_discover_server_trunking(clp, &old);
if (error < 0)
goto error;
- if (clp != old)
+ if (clp != old) {
clp->cl_preserve_clid = true;
+ /*
+ * Mark the client as having failed initialization so other
+ * processes walking the nfs_client_list in nfs_match_client()
+ * won't try to use it.
+ */
+ nfs_mark_client_ready(clp, -EPERM);
+ }
nfs_put_client(clp);
clear_bit(NFS_CS_TSM_POSSIBLE, &clp->cl_flags);
return old;
@@ -539,6 +543,9 @@ int nfs40_walk_client_list(struct nfs_client *new,
spin_lock(&nn->nfs_client_lock);
list_for_each_entry(pos, &nn->nfs_client_list, cl_share_link) {
+ if (pos == new)
+ goto found;
+
status = nfs4_match_client(pos, new, &prev, nn);
if (status < 0)
goto out_unlock;
@@ -559,6 +566,7 @@ int nfs40_walk_client_list(struct nfs_client *new,
* way that a SETCLIENTID_CONFIRM to pos can succeed is
* if new and pos point to the same server:
*/
+found:
atomic_inc(&pos->cl_count);
spin_unlock(&nn->nfs_client_lock);
@@ -572,6 +580,7 @@ int nfs40_walk_client_list(struct nfs_client *new,
case 0:
nfs4_swap_callback_idents(pos, new);
pos->cl_confirm = new->cl_confirm;
+ nfs_mark_client_ready(pos, NFS_CS_READY);
prev = NULL;
*result = pos;
--
2.14.4
Request to include the following patch into stable for linux-4.19 and
linux-4.20:
scsi: mpt3sas: fix memory ordering on 64bit writes
commit: 23c3828aa2f8
Commit 09c2f95ad404 introduced a bug apparent on powerpc64 systems
causing SAS HBAs relying on mpt3sas to drop from the PCIe bus under
load, rendering those devices virtually useless.
As linux-4.19 is a longterm kernel, the bug would affect those systems
for a long time otherwise.
The crypto API wants the updated IV in req->info after decryption. The
updated IV used to be copied correctly to req->info after running the
decryption job. Since 115957bb3e59 this is done before running the job
so instead of the updated IV only the unmodified input IV is given back
to the crypto API.
This was observed running the gcm(aes) selftest which internally uses
ctr(aes) implemented by the CAAM engine.
Fixes: 115957bb3e59 ("crypto: caam - fix IV DMA mapping and updating")
Signed-off-by: Sascha Hauer <s.hauer(a)pengutronix.de>
Cc: stable(a)vger.kernel.org
---
drivers/crypto/caam/caamalg.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/drivers/crypto/caam/caamalg.c b/drivers/crypto/caam/caamalg.c
index 869f092432de..c05c7938439c 100644
--- a/drivers/crypto/caam/caamalg.c
+++ b/drivers/crypto/caam/caamalg.c
@@ -917,10 +917,10 @@ static void skcipher_decrypt_done(struct device *jrdev, u32 *desc, u32 err,
{
struct skcipher_request *req = context;
struct skcipher_edesc *edesc;
-#ifdef DEBUG
struct crypto_skcipher *skcipher = crypto_skcipher_reqtfm(req);
int ivsize = crypto_skcipher_ivsize(skcipher);
+#ifdef DEBUG
dev_err(jrdev, "%s %d: err 0x%x\n", __func__, __LINE__, err);
#endif
@@ -937,6 +937,14 @@ static void skcipher_decrypt_done(struct device *jrdev, u32 *desc, u32 err,
edesc->dst_nents > 1 ? 100 : req->cryptlen, 1);
skcipher_unmap(jrdev, edesc, req);
+
+ /*
+ * The crypto API expects us to set the IV (req->iv) to the last
+ * ciphertext block.
+ */
+ scatterwalk_map_and_copy(req->iv, req->src, req->cryptlen - ivsize,
+ ivsize, 0);
+
kfree(edesc);
skcipher_request_complete(req, err);
@@ -1588,13 +1596,6 @@ static int skcipher_decrypt(struct skcipher_request *req)
if (IS_ERR(edesc))
return PTR_ERR(edesc);
- /*
- * The crypto API expects us to set the IV (req->iv) to the last
- * ciphertext block.
- */
- scatterwalk_map_and_copy(req->iv, req->src, req->cryptlen - ivsize,
- ivsize, 0);
-
/* Create and submit job descriptor*/
init_skcipher_job(req, edesc, false);
desc = edesc->hw_desc;
--
2.19.1
I'm announcing the release of the 4.19.17 kernel.
All users of the 4.19 kernel series must upgrade.
The updated 4.19.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.19.y
and can be browsed at the normal kernel.org git web browser:
http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2
arch/arm64/boot/dts/marvell/armada-ap806.dtsi | 17
arch/arm64/include/asm/kvm_arm.h | 3
arch/arm64/kernel/head.S | 5
arch/arm64/kernel/kaslr.c | 8
arch/arm64/kvm/hyp/switch.c | 2
arch/mips/Kconfig | 1
arch/mips/bcm47xx/setup.c | 31 +
arch/mips/lantiq/irq.c | 68 --
arch/mips/pci/msi-octeon.c | 4
arch/x86/xen/time.c | 12
block/partition-generic.c | 8
crypto/authenc.c | 14
crypto/authencesn.c | 2
crypto/sm3_generic.c | 2
drivers/block/loop.c | 443 +++++++++------
drivers/block/loop.h | 1
drivers/block/nbd.c | 5
drivers/crypto/Kconfig | 1
drivers/crypto/bcm/cipher.c | 44 -
drivers/crypto/caam/caamhash.c | 15
drivers/crypto/ccree/cc_aead.c | 40 -
drivers/crypto/talitos.c | 26
drivers/gpu/drm/drm_fb_helper.c | 7
drivers/gpu/drm/i915/gvt/kvmgt.c | 14
drivers/infiniband/core/nldev.c | 4
drivers/infiniband/hw/vmw_pvrdma/pvrdma.h | 35 +
drivers/infiniband/hw/vmw_pvrdma/pvrdma_qp.c | 6
drivers/media/common/videobuf2/videobuf2-core.c | 14
drivers/media/platform/vivid/vivid-kthread-cap.c | 5
drivers/media/platform/vivid/vivid-kthread-out.c | 5
drivers/media/platform/vivid/vivid-vid-common.c | 2
drivers/media/v4l2-core/v4l2-ioctl.c | 4
drivers/mfd/tps6586x.c | 24
drivers/mmc/host/sdhci-msm.c | 43 +
drivers/net/bonding/bond_main.c | 3
drivers/net/dsa/realtek-smi.c | 18
drivers/net/ethernet/microchip/lan743x_main.c | 11
drivers/net/ethernet/realtek/r8169.c | 7
drivers/net/tun.c | 11
drivers/of/property.c | 1
drivers/scsi/scsi_pm.c | 26
drivers/scsi/sd.c | 6
drivers/target/iscsi/cxgbit/cxgbit_cm.c | 23
drivers/tty/tty_io.c | 22
drivers/tty/tty_ldsem.c | 10
drivers/video/fbdev/omap2/omapfb/omapfb-ioctl.c | 2
drivers/xen/events/events_base.c | 2
fs/block_dev.c | 28
fs/btrfs/disk-io.c | 8
fs/btrfs/inode.c | 3
fs/pstore/ram.c | 9
include/linux/bcma/bcma_soc.h | 1
include/linux/genhd.h | 2
include/net/netfilter/nf_conntrack_count.h | 19
include/uapi/rdma/vmw_pvrdma-abi.h | 1
init/Kconfig | 1
lib/int_sqrt.c | 2
net/bridge/br_netfilter_hooks.c | 2
net/bridge/netfilter/ebtables.c | 6
net/can/gw.c | 30 -
net/core/filter.c | 21
net/core/lwt_bpf.c | 1
net/ipv4/ip_sockglue.c | 12
net/ipv4/tcp_timer.c | 2
net/ipv6/datagram.c | 11
net/ipv6/icmp.c | 8
net/netfilter/nf_conncount.c | 290 ++++-----
net/netfilter/nft_connlimit.c | 14
net/packet/af_packet.c | 4
net/sctp/ipv6.c | 5
net/sctp/protocol.c | 4
net/smc/af_smc.c | 4
net/sunrpc/rpcb_clnt.c | 8
net/tipc/netlink_compat.c | 50 +
net/tipc/topsrv.c | 2
security/security.c | 7
security/selinux/ss/policydb.c | 3
security/yama/yama_lsm.c | 4
tools/testing/selftests/android/Makefile | 2
tools/testing/selftests/futex/functional/Makefile | 1
tools/testing/selftests/gpio/Makefile | 1
tools/testing/selftests/kvm/Makefile | 2
tools/testing/selftests/lib.mk | 8
tools/testing/selftests/networking/timestamping/Makefile | 1
tools/testing/selftests/vm/Makefile | 1
86 files changed, 981 insertions(+), 656 deletions(-)
Adit Ranadive (1):
RDMA/vmw_pvrdma: Return the correct opcode when creating WR
Ard Biesheuvel (1):
arm64: kaslr: ensure randomized quantities are clean to the PoC
Arnd Bergmann (1):
mips: fix n32 compat_ipc_parse_version
Aymen Sghaier (1):
crypto: caam - fix zero-length buffer DMA mapping
Bryan Whitehead (1):
lan743x: Remove phy_read from link status change function
Christophe Leroy (2):
crypto: talitos - reorder code in talitos_edesc_alloc()
crypto: talitos - fix ablkcipher for CONFIG_VMAP_STACK
Cong Wang (1):
smc: move unhash as early as possible in smc_release()
David Sterba (1):
Revert "btrfs: balance dirty metadata pages in btrfs_finish_ordered_io"
Dmitry Safonov (4):
tty/ldsem: Wake up readers after timed out down_write()
tty: Hold tty_ldisc_lock() during tty_reopen()
tty: Simplify tty->count math in tty_reopen()
tty: Don't hold ldisc lock in tty_reopen() if ldisc present
Eric Biggers (4):
crypto: sm3 - fix undefined shift by >= width of value
crypto: ccree - convert to use crypto_authenc_extractkeys()
crypto: bcm - convert to use crypto_authenc_extractkeys()
crypto: authenc - fix parsing key with misaligned rta_len
Eric Dumazet (2):
ipv6: fix kernel-infoleak in ipv6_local_error()
ipv6: make icmp6_send() robust against null skb->dev
Florian La Roche (1):
fix int_sqrt64() for very large numbers
Florian Westphal (5):
netfilter: nf_conncount: don't skip eviction when age is negative
netfilter: nf_conncount: split gc in two phases
netfilter: nf_conncount: restart search when nodes have been erased
netfilter: nf_conncount: merge lookup and add functions
netfilter: nf_conncount: fix argument order to find_next_bit
Greg Kroah-Hartman (1):
Linux 4.19.17
Hans Verkuil (3):
media: vivid: fix error handling of kthread_run
media: vivid: set min width/height to a value > 0
media: vb2: vb2_mmap: move lock up
Harsh Jain (1):
crypto: authencesn - Avoid twice completion call in decrypt path
Hauke Mehrtens (1):
MIPS: lantiq: Fix IPI interrupt handling
Heiner Kallweit (2):
r8169: don't try to read counters if chip is in a PCI power-save state
r8169: load Realtek PHY driver module before r8169
Heinrich Schuchardt (1):
arm64: dts: marvell: armada-ap806: reserve PSCI area
Ivan Mironov (2):
scsi: sd: Fix cache_type_store()
drm/fb-helper: Ignore the value of fb_var_screeninfo.pixclock
J. Bruce Fields (1):
sunrpc: handle ENOMEM in rpcb_getport_async
Jaegeuk Kim (1):
loop: drop caches if offset or block_size are changed
James Morris (1):
LSM: Check for NULL cred-security on free
Jan Kara (16):
blockdev: Fix livelocks on loop device
loop: Fold __loop_release into loop_release
loop: Get rid of loop_index_mutex
loop: Push lo_ctl_mutex down into individual ioctls
loop: Split setting of lo_state from loop_clr_fd
loop: Push loop_ctl_mutex down into loop_clr_fd()
loop: Push loop_ctl_mutex down to loop_get_status()
loop: Push loop_ctl_mutex down to loop_set_status()
loop: Push loop_ctl_mutex down to loop_set_fd()
loop: Push loop_ctl_mutex down to loop_change_fd()
loop: Move special partition reread handling in loop_clr_fd()
loop: Move loop_reread_partitions() out of loop_ctl_mutex
loop: Fix deadlock when calling blkdev_reread_part()
loop: Avoid circular locking dependency between loop_ctl_mutex and bd_mutex
loop: Get rid of 'nested' acquisition of loop_ctl_mutex
nbd: Use set_blocksize() to set device blocksize
Jason Gunthorpe (1):
packet: Do not leak dev refcounts on error exit
JianJhen Chen (1):
net: bridge: fix a bug on using a neighbour cache entry without checking its state
Johan Hovold (1):
net: dsa: realtek-smi: fix OF child-node lookup
Jonathan Hunter (1):
mfd: tps6586x: Handle interrupts on suspend
Josef Bacik (1):
btrfs: wait on ordered extents on abort cleanup
Juergen Gross (1):
xen: Fix x86 sched_clock() interface for xen
Julia Lawall (1):
OF: properties: add missing of_node_put
Kees Cook (2):
Yama: Check for pid death before checking ancestry
pstore/ram: Avoid allocation and leak of platform data
Leon Romanovsky (1):
RDMA/nldev: Don't expose unsafe global rkey to regular user
Loic Poulain (1):
mmc: sdhci-msm: Disable CDR function on TX
Mark Rutland (2):
arm64/kvm: consistently handle host HCR_EL2 flags
arm64: Don't trap host pointer auth use to EL2
Mauro Carvalho Chehab (1):
media: vb2: be sure to unlock mutex on errors
Oliver Hartkopp (1):
can: gw: ensure DLC boundaries after CAN frame modification
Pablo Neira Ayuso (2):
netfilter: nf_conncount: move all list iterations under spinlock
netfilter: nf_conncount: speculative garbage collection on empty lists
Paul Burton (1):
kbuild: Disable LD_DEAD_CODE_DATA_ELIMINATION with ftrace & GCC <= 4.7
Rafał Miłecki (1):
MIPS: BCM47XX: Setup struct device for the SoC
Sakari Ailus (1):
media: v4l: ioctl: Validate num_planes for debug messages
Sasha Levin (1):
Revert "scsi: target: iscsi: cxgbit: fix csk leak"
Shakeel Butt (1):
netfilter: ebtables: account ebt_table_info to kmemcg
Shawn Bohrer (1):
netfilter: nf_conncount: replace CONNCOUNT_LOCK_SLOTS with CONNCOUNT_SLOTS
Shuah Khan (1):
selftests: Fix test errors related to lib.mk khdr target
Stanislav Fomichev (1):
tun: publish tfile after it's fully initialized
Stanley Chu (1):
scsi: core: Synchronize request queue PM status only on successful resume
Stephen Smalley (1):
selinux: fix GPF on invalid policy
Tetsuo Handa (3):
block/loop: Don't grab "struct file" for vfs_getattr() operation.
block/loop: Use global lock for ioctl() operation.
loop: Fix double mutex_unlock(&loop_ctl_mutex) in loop_control_ioctl()
Varun Prakash (2):
scsi: target: iscsi: cxgbit: fix csk leak
scsi: target: iscsi: cxgbit: fix csk leak
Vlad Tsyrklevich (1):
omap2fb: Fix stack memory disclosure
Willem de Bruijn (3):
bonding: update nest level on unlink
ip: on queued skb use skb_header_pointer instead of pskb_may_pull
bpf: in __bpf_redirect_no_mac pull mac only if present
Xin Long (1):
sctp: allocate sctp_sockaddr_entry with kzalloc
Ying Xue (6):
tipc: fix uninit-value in in tipc_conn_rcv_sub
tipc: fix uninit-value in tipc_nl_compat_link_reset_stats
tipc: fix uninit-value in tipc_nl_compat_bearer_enable
tipc: fix uninit-value in tipc_nl_compat_link_set
tipc: fix uninit-value in tipc_nl_compat_name_table_dump
tipc: fix uninit-value in tipc_nl_compat_doit
Yuchung Cheng (1):
tcp: change txhash on SYN-data timeout
Yufen Yu (1):
block: use rcu_work instead of call_rcu to avoid sleep in softirq
YunQiang Su (1):
Disable MSI also when pcie-octeon.pcie_disable on
Zhenyu Wang (1):
drm/i915/gvt: Fix mmap range check