Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update master #1

Merged
merged 33 commits into from
Dec 12, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
aa24163
cgroup/cpuset: remove circular dependency deadlock
KAGA-KOKO Nov 15, 2017
1599a18
cpuset: Make cpuset hotplug synchronous
KAGA-KOKO Nov 15, 2017
7d229c6
main: kernel_start: move housekeeping_init() before workqueue_init_ea…
talshorer Nov 3, 2017
c98a980
workqueue: respect isolated cpus when queueing an unbound work
talshorer Nov 3, 2017
16a27df
ata: mediatek: Fix typo in module description
AlbertJP Nov 20, 2017
ddf7005
debug cgroup: use task_css_set instead of rcu_dereference
Nov 19, 2017
c1da86c
pata_pdc2027x: Remove unnecessary error check
ArvindYadavCs Nov 25, 2017
20f9cee
pata_pdc2027x : make pdc2027x_*_timing structures const
ArvindYadavCs Nov 25, 2017
abee210
percpu: hack to let the CRIS architecture to boot until they clean up
Nov 27, 2017
52cf373
cgroup: properly init u64_stats
lynxeye-dev Nov 28, 2017
d2890c3
crypto: rsa - fix buffer overread when stripping leading zeroes
ebiggers Nov 27, 2017
b32a7dc
crypto: algif_aead - fix reference counting of null skcipher
ebiggers Nov 28, 2017
887207e
crypto: af_alg - fix NULL pointer dereference in
ebiggers Nov 28, 2017
af3ff80
crypto: hmac - require that the underlying hash algorithm is unkeyed
ebiggers Nov 29, 2017
ecaaab5
crypto: salsa20 - fix blkcipher_walk API usage
ebiggers Nov 29, 2017
ce179cb
ahci: qoriq: refine port register configuration
andynxp Dec 4, 2017
2467c04
ahci: mtk: Change driver name to ahci-mtk
mbgg Dec 1, 2017
2dc0b46
libata: sata_down_spd_limit should return if driver has not recorded …
Nov 14, 2017
11db855
Revert "cpuset: Make cpuset hotplug synchronous"
htejun Dec 4, 2017
e8b3f8d
workqueue/hotplug: simplify workqueue_offline_cpu()
laijs Dec 1, 2017
62408c1
workqueue/hotplug: remove the workaround in rebind_workers()
laijs Dec 1, 2017
bdfbbda
Revert "cgroup/cpuset: remove circular dependency deadlock"
htejun Dec 4, 2017
c2f31b7
cgroup: add warning about RT not being supported on cgroup2
htejun Dec 5, 2017
4f7f555
ipmi: Stop timers before cleaning up the module
Nov 15, 2017
1ac8aa8
ipmi_si: Fix oops with PCI devices
cminyard Nov 30, 2017
51614b2
ipmi_si: fix crash on parisc
Dec 6, 2017
01dfee9
workqueue: remove unneeded kallsyms include
sergey-senozhatsky Dec 8, 2017
916b20e
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git…
torvalds Dec 12, 2017
bfb529e
Merge tag 'for-linus-4.15-2' of git://github.com/cminyard/linux-ipmi
torvalds Dec 12, 2017
a83cb7e
Merge branch 'for-4.15-fixes' of git://git.kernel.org/pub/scm/linux/k…
torvalds Dec 12, 2017
72dd379
Merge branch 'for-4.15-fixes' of git://git.kernel.org/pub/scm/linux/k…
torvalds Dec 12, 2017
085bec8
Merge branch 'for-4.15-fixes' of git://git.kernel.org/pub/scm/linux/k…
torvalds Dec 12, 2017
a638349
Merge branch 'for-4.15-fixes' of git://git.kernel.org/pub/scm/linux/k…
torvalds Dec 12, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions Documentation/cgroup-v2.txt
Original file line number Diff line number Diff line change
Expand Up @@ -898,6 +898,13 @@ controller implements weight and absolute bandwidth limit models for
normal scheduling policy and absolute bandwidth allocation model for
realtime scheduling policy.

WARNING: cgroup2 doesn't yet support control of realtime processes and
the cpu controller can only be enabled when all RT processes are in
the root cgroup. Be aware that system management software may already
have placed RT processes into nonroot cgroups during the system boot
process, and these processes may need to be moved to the root cgroup
before the cpu controller can be enabled.


CPU Interface Files
~~~~~~~~~~~~~~~~~~~
Expand Down
7 changes: 0 additions & 7 deletions arch/x86/crypto/salsa20_glue.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,13 +59,6 @@ static int encrypt(struct blkcipher_desc *desc,

salsa20_ivsetup(ctx, walk.iv);

if (likely(walk.nbytes == nbytes))
{
salsa20_encrypt_bytes(ctx, walk.src.virt.addr,
walk.dst.virt.addr, nbytes);
return blkcipher_walk_done(desc, &walk, 0);
}

while (walk.nbytes >= 64) {
salsa20_encrypt_bytes(ctx, walk.src.virt.addr,
walk.dst.virt.addr,
Expand Down
13 changes: 7 additions & 6 deletions crypto/af_alg.c
Original file line number Diff line number Diff line change
Expand Up @@ -672,14 +672,15 @@ void af_alg_free_areq_sgls(struct af_alg_async_req *areq)
}

tsgl = areq->tsgl;
for_each_sg(tsgl, sg, areq->tsgl_entries, i) {
if (!sg_page(sg))
continue;
put_page(sg_page(sg));
}
if (tsgl) {
for_each_sg(tsgl, sg, areq->tsgl_entries, i) {
if (!sg_page(sg))
continue;
put_page(sg_page(sg));
}

if (areq->tsgl && areq->tsgl_entries)
sock_kfree_s(sk, tsgl, areq->tsgl_entries * sizeof(*tsgl));
}
}
EXPORT_SYMBOL_GPL(af_alg_free_areq_sgls);

Expand Down
2 changes: 1 addition & 1 deletion crypto/algif_aead.c
Original file line number Diff line number Diff line change
Expand Up @@ -503,6 +503,7 @@ static void aead_release(void *private)
struct aead_tfm *tfm = private;

crypto_free_aead(tfm->aead);
crypto_put_default_null_skcipher2();
kfree(tfm);
}

Expand Down Expand Up @@ -535,7 +536,6 @@ static void aead_sock_destruct(struct sock *sk)
unsigned int ivlen = crypto_aead_ivsize(tfm);

af_alg_pull_tsgl(sk, ctx->used, NULL, 0);
crypto_put_default_null_skcipher2();
sock_kzfree_s(sk, ctx->iv, ivlen);
sock_kfree_s(sk, ctx, ctx->len);
af_alg_release_parent(sk);
Expand Down
6 changes: 5 additions & 1 deletion crypto/hmac.c
Original file line number Diff line number Diff line change
Expand Up @@ -195,11 +195,15 @@ static int hmac_create(struct crypto_template *tmpl, struct rtattr **tb)
salg = shash_attr_alg(tb[1], 0, 0);
if (IS_ERR(salg))
return PTR_ERR(salg);
alg = &salg->base;

/* The underlying hash algorithm must be unkeyed */
err = -EINVAL;
if (crypto_shash_alg_has_setkey(salg))
goto out_put_alg;

ds = salg->digestsize;
ss = salg->statesize;
alg = &salg->base;
if (ds > alg->cra_blocksize ||
ss < alg->cra_blocksize)
goto out_put_alg;
Expand Down
2 changes: 1 addition & 1 deletion crypto/rsa_helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ int rsa_get_n(void *context, size_t hdrlen, unsigned char tag,
return -EINVAL;

if (fips_enabled) {
while (!*ptr && n_sz) {
while (n_sz && !*ptr) {
ptr++;
n_sz--;
}
Expand Down
7 changes: 0 additions & 7 deletions crypto/salsa20_generic.c
Original file line number Diff line number Diff line change
Expand Up @@ -188,13 +188,6 @@ static int encrypt(struct blkcipher_desc *desc,

salsa20_ivsetup(ctx, walk.iv);

if (likely(walk.nbytes == nbytes))
{
salsa20_encrypt_bytes(ctx, walk.dst.virt.addr,
walk.src.virt.addr, nbytes);
return blkcipher_walk_done(desc, &walk, 0);
}

while (walk.nbytes >= 64) {
salsa20_encrypt_bytes(ctx, walk.dst.virt.addr,
walk.src.virt.addr,
Expand Down
5 changes: 3 additions & 2 deletions crypto/shash.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,12 @@

static const struct crypto_type crypto_shash_type;

static int shash_no_setkey(struct crypto_shash *tfm, const u8 *key,
unsigned int keylen)
int shash_no_setkey(struct crypto_shash *tfm, const u8 *key,
unsigned int keylen)
{
return -ENOSYS;
}
EXPORT_SYMBOL_GPL(shash_no_setkey);

static int shash_setkey_unaligned(struct crypto_shash *tfm, const u8 *key,
unsigned int keylen)
Expand Down
6 changes: 3 additions & 3 deletions drivers/ata/ahci_mtk.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* MeidaTek AHCI SATA driver
* MediaTek AHCI SATA driver
*
* Copyright (c) 2017 MediaTek Inc.
* Author: Ryder Lee <ryder.lee@mediatek.com>
Expand All @@ -25,7 +25,7 @@
#include <linux/reset.h>
#include "ahci.h"

#define DRV_NAME "ahci"
#define DRV_NAME "ahci-mtk"

#define SYS_CFG 0x14
#define SYS_CFG_SATA_MSK GENMASK(31, 30)
Expand Down Expand Up @@ -192,5 +192,5 @@ static struct platform_driver mtk_ahci_driver = {
};
module_platform_driver(mtk_ahci_driver);

MODULE_DESCRIPTION("MeidaTek SATA AHCI Driver");
MODULE_DESCRIPTION("MediaTek SATA AHCI Driver");
MODULE_LICENSE("GPL v2");
12 changes: 12 additions & 0 deletions drivers/ata/ahci_qoriq.c
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@

/* port register default value */
#define AHCI_PORT_PHY_1_CFG 0xa003fffe
#define AHCI_PORT_PHY2_CFG 0x28184d1f
#define AHCI_PORT_PHY3_CFG 0x0e081509
#define AHCI_PORT_TRANS_CFG 0x08000029
#define AHCI_PORT_AXICC_CFG 0x3fffffff

Expand Down Expand Up @@ -183,13 +185,17 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv)
writel(readl(qpriv->ecc_addr) | ECC_DIS_ARMV8_CH2,
qpriv->ecc_addr);
writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1);
writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2);
writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3);
writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS);
if (qpriv->is_dmacoherent)
writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC);
break;

case AHCI_LS2080A:
writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1);
writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2);
writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3);
writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS);
if (qpriv->is_dmacoherent)
writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC);
Expand All @@ -201,6 +207,8 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv)
writel(readl(qpriv->ecc_addr) | ECC_DIS_ARMV8_CH2,
qpriv->ecc_addr);
writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1);
writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2);
writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3);
writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS);
if (qpriv->is_dmacoherent)
writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC);
Expand All @@ -212,13 +220,17 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv)
writel(readl(qpriv->ecc_addr) | ECC_DIS_LS1088A,
qpriv->ecc_addr);
writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1);
writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2);
writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3);
writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS);
if (qpriv->is_dmacoherent)
writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC);
break;

case AHCI_LS2088A:
writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1);
writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2);
writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3);
writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS);
if (qpriv->is_dmacoherent)
writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC);
Expand Down
12 changes: 9 additions & 3 deletions drivers/ata/libata-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -3082,13 +3082,19 @@ int sata_down_spd_limit(struct ata_link *link, u32 spd_limit)
bit = fls(mask) - 1;
mask &= ~(1 << bit);

/* Mask off all speeds higher than or equal to the current
* one. Force 1.5Gbps if current SPD is not available.
/*
* Mask off all speeds higher than or equal to the current one. At
* this point, if current SPD is not available and we previously
* recorded the link speed from SStatus, the driver has already
* masked off the highest bit so mask should already be 1 or 0.
* Otherwise, we should not force 1.5Gbps on a link where we have
* not previously recorded speed from SStatus. Just return in this
* case.
*/
if (spd > 1)
mask &= (1 << (spd - 1)) - 1;
else
mask &= 1;
return -EINVAL;

/* were we already at the bottom? */
if (!mask)
Expand Down
16 changes: 6 additions & 10 deletions drivers/ata/pata_pdc2027x.c
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ static int pdc2027x_set_mode(struct ata_link *link, struct ata_device **r_failed
* is issued to the device. However, if the controller clock is 133MHz,
* the following tables must be used.
*/
static struct pdc2027x_pio_timing {
static const struct pdc2027x_pio_timing {
u8 value0, value1, value2;
} pdc2027x_pio_timing_tbl[] = {
{ 0xfb, 0x2b, 0xac }, /* PIO mode 0 */
Expand All @@ -92,15 +92,15 @@ static struct pdc2027x_pio_timing {
{ 0x23, 0x09, 0x25 }, /* PIO mode 4, IORDY on, Prefetch off */
};

static struct pdc2027x_mdma_timing {
static const struct pdc2027x_mdma_timing {
u8 value0, value1;
} pdc2027x_mdma_timing_tbl[] = {
{ 0xdf, 0x5f }, /* MDMA mode 0 */
{ 0x6b, 0x27 }, /* MDMA mode 1 */
{ 0x69, 0x25 }, /* MDMA mode 2 */
};

static struct pdc2027x_udma_timing {
static const struct pdc2027x_udma_timing {
u8 value0, value1, value2;
} pdc2027x_udma_timing_tbl[] = {
{ 0x4a, 0x0f, 0xd5 }, /* UDMA mode 0 */
Expand Down Expand Up @@ -649,7 +649,7 @@ static long pdc_detect_pll_input_clock(struct ata_host *host)
* @host: target ATA host
* @board_idx: board identifier
*/
static int pdc_hardware_init(struct ata_host *host, unsigned int board_idx)
static void pdc_hardware_init(struct ata_host *host, unsigned int board_idx)
{
long pll_clock;

Expand All @@ -665,8 +665,6 @@ static int pdc_hardware_init(struct ata_host *host, unsigned int board_idx)

/* Adjust PLL control register */
pdc_adjust_pll(host, pll_clock, board_idx);

return 0;
}

/**
Expand Down Expand Up @@ -753,8 +751,7 @@ static int pdc2027x_init_one(struct pci_dev *pdev,
//pci_enable_intx(pdev);

/* initialize adapter */
if (pdc_hardware_init(host, board_idx) != 0)
return -EIO;
pdc_hardware_init(host, board_idx);

pci_set_master(pdev);
return ata_host_activate(host, pdev->irq, ata_bmdma_interrupt,
Expand All @@ -778,8 +775,7 @@ static int pdc2027x_reinit_one(struct pci_dev *pdev)
else
board_idx = PDC_UDMA_133;

if (pdc_hardware_init(host, board_idx))
return -EIO;
pdc_hardware_init(host, board_idx);

ata_host_resume(host);
return 0;
Expand Down
Loading