* [PATCH 4/4] pata: imx: support controller modes up to PIO4
From: Vladimir Zapolskiy @ 2016-11-09 0:56 UTC (permalink / raw)
To: Tejun Heo, Bartlomiej Zolnierkiewicz; +Cc: linux-ide
In-Reply-To: <20161109005638.17691-1-vz@mleia.com>
Having timing settings for all supported by the controller PIO modes
now it is possible to expand its PIO mask.
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
---
drivers/ata/pata_imx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/ata/pata_imx.c b/drivers/ata/pata_imx.c
index 8f13c9f..d4caa23 100644
--- a/drivers/ata/pata_imx.c
+++ b/drivers/ata/pata_imx.c
@@ -160,7 +160,7 @@ static int pata_imx_probe(struct platform_device *pdev)
ap = host->ports[0];
ap->ops = &pata_imx_port_ops;
- ap->pio_mask = ATA_PIO0;
+ ap->pio_mask = ATA_PIO4;
ap->flags |= ATA_FLAG_SLAVE_POSS;
io_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
--
2.10.2
^ permalink raw reply related
* [PATCH 2/4] pata: imx: set controller PIO mode with .set_piomode callback
From: Vladimir Zapolskiy @ 2016-11-09 0:56 UTC (permalink / raw)
To: Tejun Heo, Bartlomiej Zolnierkiewicz; +Cc: linux-ide
In-Reply-To: <20161109005638.17691-1-vz@mleia.com>
Convert .set_mode callback function to more specific .set_piomode,
the driver does not have support of DMA modes, thus a simpler version
of the callback is preferred.
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
---
drivers/ata/pata_imx.c | 27 ++++++++-------------------
1 file changed, 8 insertions(+), 19 deletions(-)
diff --git a/drivers/ata/pata_imx.c b/drivers/ata/pata_imx.c
index 203e309..00df18b 100644
--- a/drivers/ata/pata_imx.c
+++ b/drivers/ata/pata_imx.c
@@ -38,28 +38,17 @@ struct pata_imx_priv {
u32 ata_ctl;
};
-static int pata_imx_set_mode(struct ata_link *link, struct ata_device **unused)
+static void pata_imx_set_piomode(struct ata_port *ap, struct ata_device *adev)
{
- struct ata_device *dev;
- struct ata_port *ap = link->ap;
struct pata_imx_priv *priv = ap->host->private_data;
u32 val;
- ata_for_each_dev(dev, link, ENABLED) {
- dev->pio_mode = dev->xfer_mode = XFER_PIO_0;
- dev->xfer_shift = ATA_SHIFT_PIO;
- dev->flags |= ATA_DFLAG_PIO;
-
- val = __raw_readl(priv->host_regs + PATA_IMX_ATA_CONTROL);
- if (ata_pio_need_iordy(dev))
- val |= PATA_IMX_ATA_CTRL_IORDY_EN;
- else
- val &= ~PATA_IMX_ATA_CTRL_IORDY_EN;
- __raw_writel(val, priv->host_regs + PATA_IMX_ATA_CONTROL);
-
- ata_dev_info(dev, "configured for PIO\n");
- }
- return 0;
+ val = __raw_readl(priv->host_regs + PATA_IMX_ATA_CONTROL);
+ if (ata_pio_need_iordy(adev))
+ val |= PATA_IMX_ATA_CTRL_IORDY_EN;
+ else
+ val &= ~PATA_IMX_ATA_CTRL_IORDY_EN;
+ __raw_writel(val, priv->host_regs + PATA_IMX_ATA_CONTROL);
}
static struct scsi_host_template pata_imx_sht = {
@@ -70,7 +59,7 @@ static struct ata_port_operations pata_imx_port_ops = {
.inherits = &ata_sff_port_ops,
.sff_data_xfer = ata_sff_data_xfer_noirq,
.cable_detect = ata_cable_unknown,
- .set_mode = pata_imx_set_mode,
+ .set_piomode = pata_imx_set_piomode,
};
static void pata_imx_setup_port(struct ata_ioports *ioaddr)
--
2.10.2
^ permalink raw reply related
* [PATCH 3/4] pata: imx: add support of setting timings for PIO modes
From: Vladimir Zapolskiy @ 2016-11-09 0:56 UTC (permalink / raw)
To: Tejun Heo, Bartlomiej Zolnierkiewicz; +Cc: linux-ide
In-Reply-To: <20161109005638.17691-1-vz@mleia.com>
The controller is capable to operate in up to PIO4 mode, however
before the change the driver relies on timing settings done by
a bootloader for PIO0 mode only. The change adds more flexibility
in PIO mode selection at runtime and makes the driver to work even if
bootloader does not preset ATA timings.
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
---
drivers/ata/pata_imx.c | 47 ++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 46 insertions(+), 1 deletion(-)
diff --git a/drivers/ata/pata_imx.c b/drivers/ata/pata_imx.c
index 00df18b..8f13c9f 100644
--- a/drivers/ata/pata_imx.c
+++ b/drivers/ata/pata_imx.c
@@ -11,7 +11,6 @@
*
* TODO:
* - dmaengine support
- * - check if timing stuff needed
*/
#include <linux/ata.h>
@@ -22,6 +21,16 @@
#define DRV_NAME "pata_imx"
+#define PATA_IMX_ATA_TIME_OFF 0x00
+#define PATA_IMX_ATA_TIME_ON 0x01
+#define PATA_IMX_ATA_TIME_1 0x02
+#define PATA_IMX_ATA_TIME_2W 0x03
+#define PATA_IMX_ATA_TIME_2R 0x04
+#define PATA_IMX_ATA_TIME_AX 0x05
+#define PATA_IMX_ATA_TIME_PIO_RDX 0x06
+#define PATA_IMX_ATA_TIME_4 0x07
+#define PATA_IMX_ATA_TIME_9 0x08
+
#define PATA_IMX_ATA_CONTROL 0x24
#define PATA_IMX_ATA_CTRL_FIFO_RST_B (1<<7)
#define PATA_IMX_ATA_CTRL_ATA_RST_B (1<<6)
@@ -31,6 +40,10 @@
#define PATA_IMX_DRIVE_DATA 0xA0
#define PATA_IMX_DRIVE_CONTROL 0xD8
+static u32 pio_t4[] = { 30, 20, 15, 10, 10 };
+static u32 pio_t9[] = { 20, 15, 10, 10, 10 };
+static u32 pio_tA[] = { 35, 35, 35, 35, 35 };
+
struct pata_imx_priv {
struct clk *clk;
/* timings/interrupt/control regs */
@@ -38,11 +51,43 @@ struct pata_imx_priv {
u32 ata_ctl;
};
+static void pata_imx_set_timing(struct ata_device *adev,
+ struct pata_imx_priv *priv)
+{
+ struct ata_timing timing;
+ unsigned long clkrate;
+ u32 T, mode;
+
+ clkrate = clk_get_rate(priv->clk);
+
+ if (adev->pio_mode < XFER_PIO_0 || adev->pio_mode > XFER_PIO_4 ||
+ !clkrate)
+ return;
+
+ T = 1000000000 / clkrate;
+ ata_timing_compute(adev, adev->pio_mode, &timing, T * 1000, 0);
+
+ mode = adev->pio_mode - XFER_PIO_0;
+
+ writeb(3, priv->host_regs + PATA_IMX_ATA_TIME_OFF);
+ writeb(3, priv->host_regs + PATA_IMX_ATA_TIME_ON);
+ writeb(timing.setup, priv->host_regs + PATA_IMX_ATA_TIME_1);
+ writeb(timing.act8b, priv->host_regs + PATA_IMX_ATA_TIME_2W);
+ writeb(timing.act8b, priv->host_regs + PATA_IMX_ATA_TIME_2R);
+ writeb(1, priv->host_regs + PATA_IMX_ATA_TIME_PIO_RDX);
+
+ writeb(pio_t4[mode] / T + 1, priv->host_regs + PATA_IMX_ATA_TIME_4);
+ writeb(pio_t9[mode] / T + 1, priv->host_regs + PATA_IMX_ATA_TIME_9);
+ writeb(pio_tA[mode] / T + 1, priv->host_regs + PATA_IMX_ATA_TIME_AX);
+}
+
static void pata_imx_set_piomode(struct ata_port *ap, struct ata_device *adev)
{
struct pata_imx_priv *priv = ap->host->private_data;
u32 val;
+ pata_imx_set_timing(adev, priv);
+
val = __raw_readl(priv->host_regs + PATA_IMX_ATA_CONTROL);
if (ata_pio_need_iordy(adev))
val |= PATA_IMX_ATA_CTRL_IORDY_EN;
--
2.10.2
^ permalink raw reply related
* [PATCH 1/4] pata: imx: sort headers out
From: Vladimir Zapolskiy @ 2016-11-09 0:56 UTC (permalink / raw)
To: Tejun Heo, Bartlomiej Zolnierkiewicz; +Cc: linux-ide
In-Reply-To: <20161109005638.17691-1-vz@mleia.com>
Put headers in alphabetic order and remove redundant ones.
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
---
drivers/ata/pata_imx.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/ata/pata_imx.c b/drivers/ata/pata_imx.c
index 139d207..203e309 100644
--- a/drivers/ata/pata_imx.c
+++ b/drivers/ata/pata_imx.c
@@ -13,14 +13,12 @@
* - dmaengine support
* - check if timing stuff needed
*/
-#include <linux/kernel.h>
-#include <linux/module.h>
-#include <linux/blkdev.h>
-#include <scsi/scsi_host.h>
+
#include <linux/ata.h>
+#include <linux/clk.h>
#include <linux/libata.h>
+#include <linux/module.h>
#include <linux/platform_device.h>
-#include <linux/clk.h>
#define DRV_NAME "pata_imx"
--
2.10.2
^ permalink raw reply related
* [PATCH 0/4] pata: imx: set timings for PIO modes up to PIO4
From: Vladimir Zapolskiy @ 2016-11-09 0:56 UTC (permalink / raw)
To: Tejun Heo, Bartlomiej Zolnierkiewicz; +Cc: linux-ide
The changeset adds support of PIO modes up to PIO4 by setting
necessary timings in the driver, before the change it is assumed
that the timings are always set by a bootloader once and thus
only one possible PIO mode has been supported (PIO0). With
this change the driver can be used on boards without ATA controller
configuration done by a bootloader.
The change is tested on a legacy i.MX31 board with an HDD connected
by a 40-pin flat cable.
Vladimir Zapolskiy (4):
pata: imx: sort headers out
pata: imx: set controller PIO mode with .set_piomode callback
pata: imx: add support of setting timings for PIO modes
pata: imx: support controller modes up to PIO4
drivers/ata/pata_imx.c | 82 +++++++++++++++++++++++++++++++++++---------------
1 file changed, 57 insertions(+), 25 deletions(-)
--
2.10.2
^ permalink raw reply
* Re: [RFC PATCH 16/24] ARM: vITS: handle MAPD command
From: Stefano Stabellini @ 2016-11-09 0:54 UTC (permalink / raw)
To: Andre Przywara; +Cc: xen-devel, Julien Grall, Stefano Stabellini
In-Reply-To: <20160928182457.12433-17-andre.przywara@arm.com>
On Wed, 28 Sep 2016, Andre Przywara wrote:
> The MAPD command maps a device by associating a memory region for
> storing ITTEs with a certain device ID.
> We just store the given guest physical address in the device table.
> We don't map the device tables permanently, as their alignment
> requirement is only 256 Bytes, thus making mapping of several tables
> complicated. We map the device tables on demand when we need them later.
>
> Also we propagate the MAPD request to the hardware ITS, as the device ID
> is only meaningful there.
>
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
> ---
> xen/arch/arm/vgic-its.c | 31 +++++++++++++++++++++++++++++++
> 1 file changed, 31 insertions(+)
>
> diff --git a/xen/arch/arm/vgic-its.c b/xen/arch/arm/vgic-its.c
> index caad320..83d47e1 100644
> --- a/xen/arch/arm/vgic-its.c
> +++ b/xen/arch/arm/vgic-its.c
> @@ -250,6 +250,34 @@ static int its_handle_mapc(struct virt_its *its, uint64_t *cmdptr)
> return ret;
> }
>
> +static int its_handle_mapd(struct virt_its *its, uint64_t *cmdptr)
> +{
> + uint32_t devid = its_cmd_get_deviceid(cmdptr);
> + int size = its_cmd_get_size(cmdptr);
> + bool valid = its_cmd_get_validbit(cmdptr);
> + paddr_t itt_addr = its_cmd_mask_field(cmdptr, 2, 0, 52) & GENMASK(51, 8);
> +
> + if ( !its->dev_table )
> + return -1;
We should validate devid, size and itt_addr?
> + spin_lock(&its->its_lock);
> + if ( valid )
> + its->dev_table[devid] = DEV_TABLE_ENTRY(itt_addr, size + 1);
> + else
> + its->dev_table[devid] = 0;
> +
> + spin_unlock(&its->its_lock);
> +
> + /* DomUs (will later) have their ITTs allocated at domain creation time,
> + * when Dom0 configures the passthrough.
> + */
> + if ( its->hw_its )
> + return gicv3_its_map_device(its->hw_its,
> + its->d, devid, size + 1, valid);
> +
> + return 0;
> +}
> +
> #define ITS_CMD_BUFFER_SIZE(baser) ((((baser) & 0xff) + 1) << 12)
>
> static int vgic_its_handle_cmds(struct domain *d, struct virt_its *its,
> @@ -279,6 +307,9 @@ static int vgic_its_handle_cmds(struct domain *d, struct virt_its *its,
> case GITS_CMD_MAPC:
> its_handle_mapc(its, cmdptr);
> break;
> + case GITS_CMD_MAPD:
> + its_handle_mapd(its, cmdptr);
> + break;
> case GITS_CMD_SYNC:
> /* We handle ITS commands synchronously, so we ignore SYNC. */
> break;
> --
> 2.9.0
>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply
* Re: [PATCH 2/9] drm/i915: Add per-pipe plane identifier
From: Matt Roper @ 2016-11-09 0:53 UTC (permalink / raw)
To: ville.syrjala; +Cc: intel-gfx
In-Reply-To: <1478616439-10150-3-git-send-email-ville.syrjala@linux.intel.com>
On Tue, Nov 08, 2016 at 04:47:12PM +0200, ville.syrjala@linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> As I told people in [1] we really should not be confusing enum plane
> as a per-pipe plane identifier. Looks like that happened nonetheless, so
> let's fix it up by splitting the two into two enums.
>
> We'll also want something we just directly pass to various register
> offset macros and whatnot on SKL+. So let's make this new thing work for that.
> Currently we pass intel_plane->plane for the "sprites" and just a
> hardcoded zero for the "primary" planes. We want to get rid of that
> hardocoding so that we can share the same code for all planes (apart
> from the legacy cursor of course).
>
> [1] https://lists.freedesktop.org/archives/intel-gfx/2015-September/076082.html
>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
So the goal here is to make intel_plane->plane represent which of the
system's primary planes (A, B, or C) the plane structure refers to?
From a quick Cocci test, it looks like there's only a single use of the
value for that purpose in our driver (in primary_get_hw_state). I think
all of the other calls to DSPCNTR are actually using crtc->plane as
their index, which should have the same value. Would it make more sense
to just drop intel_plane->plane entirely and switch the last user over
to crtc->plane so that we're not carrying around a structure field that
is either bogus or empty on the majority of the platform's planes?
While we're at it, we could rename 'enum plane' to something like 'enum
primary_plane' to make it extra clear what its purpose is and avoid
future confusion. And maybe a similar rename to crtc->plane as well.
We use the standalone term 'plane' in a generic manner in too many
places in our driver and it means something slightly different
everywhere...
Matt
> ---
> drivers/gpu/drm/i915/i915_drv.h | 28 +++++++++++++++++++++-------
> drivers/gpu/drm/i915/intel_display.c | 2 ++
> drivers/gpu/drm/i915/intel_drv.h | 3 ++-
> drivers/gpu/drm/i915/intel_sprite.c | 1 +
> 4 files changed, 26 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 30777dee3f9c..2451b88b1e82 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -171,22 +171,36 @@ static inline bool transcoder_is_dsi(enum transcoder transcoder)
> }
>
> /*
> - * I915_MAX_PLANES in the enum below is the maximum (across all platforms)
> - * number of planes per CRTC. Not all platforms really have this many planes,
> - * which means some arrays of size I915_MAX_PLANES may have unused entries
> - * between the topmost sprite plane and the cursor plane.
> + * Global legacy plane identifier. Valid only for primary/sprite
> + * planes on pre-g4x, and only for primary planes on g4x+.
> */
> enum plane {
> - PLANE_A = 0,
> + PLANE_A,
> PLANE_B,
> PLANE_C,
> - PLANE_CURSOR,
> - I915_MAX_PLANES,
> };
> #define plane_name(p) ((p) + 'A')
>
> #define sprite_name(p, s) ((p) * INTEL_INFO(dev_priv)->num_sprites[(p)] + (s) + 'A')
>
> +/*
> + * Per-pipe plane identifier.
> + * I915_MAX_PLANES in the enum below is the maximum (across all platforms)
> + * number of planes per CRTC. Not all platforms really have this many planes,
> + * which means some arrays of size I915_MAX_PLANES may have unused entries
> + * between the topmost sprite plane and the cursor plane.
> + *
> + * This is expected to be passed to various register macros
> + * (eg. PLANE_CTL(), PS_PLANE_SEL(), etc.) so adjust with care.
> + */
> +enum plane_id {
> + PLANE_PRIMARY,
> + PLANE_SPRITE0,
> + PLANE_SPRITE1,
> + PLANE_CURSOR,
> + I915_MAX_PLANES,
> +};
> +
> enum port {
> PORT_NONE = -1,
> PORT_A = 0,
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 10869360cfdc..b318119330e8 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -15008,6 +15008,7 @@ intel_primary_plane_create(struct drm_i915_private *dev_priv, enum pipe pipe)
> primary->plane = (enum plane) !pipe;
> else
> primary->plane = (enum plane) pipe;
> + primary->id = PLANE_PRIMARY;
> primary->frontbuffer_bit = INTEL_FRONTBUFFER_PRIMARY(pipe);
> primary->check_plane = intel_check_primary_plane;
>
> @@ -15203,6 +15204,7 @@ intel_cursor_plane_create(struct drm_i915_private *dev_priv, enum pipe pipe)
> cursor->max_downscale = 1;
> cursor->pipe = pipe;
> cursor->plane = pipe;
> + cursor->id = PLANE_CURSOR;
> cursor->frontbuffer_bit = INTEL_FRONTBUFFER_CURSOR(pipe);
> cursor->check_plane = intel_check_cursor_plane;
> cursor->update_plane = intel_update_cursor_plane;
> diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
> index 398195bf6dd1..58fc8e1d2aa8 100644
> --- a/drivers/gpu/drm/i915/intel_drv.h
> +++ b/drivers/gpu/drm/i915/intel_drv.h
> @@ -767,7 +767,8 @@ struct intel_plane_wm_parameters {
>
> struct intel_plane {
> struct drm_plane base;
> - int plane;
> + u8 plane;
> + enum plane_id id;
> enum pipe pipe;
> bool can_scale;
> int max_downscale;
> diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
> index 5e4eb7cafef0..4b44863a07c2 100644
> --- a/drivers/gpu/drm/i915/intel_sprite.c
> +++ b/drivers/gpu/drm/i915/intel_sprite.c
> @@ -1126,6 +1126,7 @@ intel_sprite_plane_create(struct drm_i915_private *dev_priv,
>
> intel_plane->pipe = pipe;
> intel_plane->plane = plane;
> + intel_plane->id = PLANE_SPRITE0 + plane;
> intel_plane->frontbuffer_bit = INTEL_FRONTBUFFER_SPRITE(pipe, plane);
> intel_plane->check_plane = intel_check_sprite_plane;
>
> --
> 2.7.4
>
--
Matt Roper
Graphics Software Engineer
IoTG Platform Enabling & Development
Intel Corporation
(916) 356-2795
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply
* 9233 linux-fbdev
From: xa0admin @ 2016-11-09 0:52 UTC (permalink / raw)
To: linux-fbdev
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
^ permalink raw reply
* Re: [PATCH v3 04/18] Input: synaptics-rmi4 - Add parameters for dribble packets and palm detect gesture
From: Dmitry Torokhov @ 2016-11-09 0:51 UTC (permalink / raw)
To: Benjamin Tissoires
Cc: Andrew Duggan, Lyude Paul, Christopher Heiny, Nick Dyer,
Bjorn Andersson, Dennis Wassenberg, linux-kernel, linux-input
In-Reply-To: <1476373872-18027-5-git-send-email-benjamin.tissoires@redhat.com>
On Thu, Oct 13, 2016 at 05:50:58PM +0200, Benjamin Tissoires wrote:
> From: Andrew Duggan <aduggan@synaptics.com>
>
> The rmi_f11 driver currently disables dribble packets and the palm detect
> gesture for all devices. This patch creates a parameter in the 2d sensor
> platform data for controlling this functionality on a per device basis.
>
> For more information on dribble packets:
> Commit 05ba999fcabb ("HID: rmi: disable dribble packets on Synaptics
> touchpads")
>
> For more information on the palm detect gesture:
> Commit f097deef59a6 ("HID: rmi: disable palm detect gesture when present")
>
> Signed-off-by: Andrew Duggan <aduggan@synaptics.com>
> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Applied, thank you.
>
> ---
>
> new in v3
> ---
> drivers/input/rmi4/rmi_2d_sensor.h | 2 ++
> drivers/input/rmi4/rmi_f01.c | 6 +++---
> drivers/input/rmi4/rmi_f11.c | 32 ++++++++++++++++++++++++++++----
> include/linux/rmi.h | 21 +++++++++++++--------
> 4 files changed, 46 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/input/rmi4/rmi_2d_sensor.h b/drivers/input/rmi4/rmi_2d_sensor.h
> index 77fcdfe..c871bef 100644
> --- a/drivers/input/rmi4/rmi_2d_sensor.h
> +++ b/drivers/input/rmi4/rmi_2d_sensor.h
> @@ -67,6 +67,8 @@ struct rmi_2d_sensor {
> u8 report_rel;
> u8 x_mm;
> u8 y_mm;
> + enum rmi_reg_state dribble;
> + enum rmi_reg_state palm_detect;
> };
>
> int rmi_2d_sensor_of_probe(struct device *dev,
> diff --git a/drivers/input/rmi4/rmi_f01.c b/drivers/input/rmi4/rmi_f01.c
> index fac81fc..2cfa9f6 100644
> --- a/drivers/input/rmi4/rmi_f01.c
> +++ b/drivers/input/rmi4/rmi_f01.c
> @@ -327,12 +327,12 @@ static int rmi_f01_probe(struct rmi_function *fn)
> }
>
> switch (pdata->power_management.nosleep) {
> - case RMI_F01_NOSLEEP_DEFAULT:
> + case RMI_REG_STATE_DEFAULT:
> break;
> - case RMI_F01_NOSLEEP_OFF:
> + case RMI_REG_STATE_OFF:
> f01->device_control.ctrl0 &= ~RMI_F01_CTRL0_NOSLEEP_BIT;
> break;
> - case RMI_F01_NOSLEEP_ON:
> + case RMI_REG_STATE_ON:
> f01->device_control.ctrl0 |= RMI_F01_CTRL0_NOSLEEP_BIT;
> break;
> }
> diff --git a/drivers/input/rmi4/rmi_f11.c b/drivers/input/rmi4/rmi_f11.c
> index 3218742..cce82a1 100644
> --- a/drivers/input/rmi4/rmi_f11.c
> +++ b/drivers/input/rmi4/rmi_f11.c
> @@ -1142,6 +1142,8 @@ static int rmi_f11_initialize(struct rmi_function *fn)
> sensor->topbuttonpad = f11->sensor_pdata.topbuttonpad;
> sensor->kernel_tracking = f11->sensor_pdata.kernel_tracking;
> sensor->dmax = f11->sensor_pdata.dmax;
> + sensor->dribble = f11->sensor_pdata.dribble;
> + sensor->palm_detect = f11->sensor_pdata.palm_detect;
>
> if (f11->sens_query.has_physical_props) {
> sensor->x_mm = f11->sens_query.x_sensor_size_mm;
> @@ -1209,11 +1211,33 @@ static int rmi_f11_initialize(struct rmi_function *fn)
> ctrl->ctrl0_11[RMI_F11_DELTA_Y_THRESHOLD] =
> sensor->axis_align.delta_y_threshold;
>
> - if (f11->sens_query.has_dribble)
> - ctrl->ctrl0_11[0] = ctrl->ctrl0_11[0] & ~BIT(6);
> + if (f11->sens_query.has_dribble) {
> + switch (sensor->dribble) {
> + case RMI_REG_STATE_OFF:
> + ctrl->ctrl0_11[0] = ctrl->ctrl0_11[0] & ~BIT(6);
Changed to
ctrl->ctrl0_11[0] &= ~BIT(6);
> + break;
> + case RMI_REG_STATE_ON:
> + ctrl->ctrl0_11[0] = ctrl->ctrl0_11[0] | BIT(6);
> + break;
> + case RMI_REG_STATE_DEFAULT:
> + default:
> + break;
> + }
> + }
>
> - if (f11->sens_query.has_palm_det)
> - ctrl->ctrl0_11[11] = ctrl->ctrl0_11[11] & ~BIT(0);
> + if (f11->sens_query.has_palm_det) {
> + switch (sensor->palm_detect) {
> + case RMI_REG_STATE_OFF:
> + ctrl->ctrl0_11[11] = ctrl->ctrl0_11[11] & ~BIT(0);
> + break;
> + case RMI_REG_STATE_ON:
> + ctrl->ctrl0_11[11] = ctrl->ctrl0_11[11] & BIT(0);
> + break;
> + case RMI_REG_STATE_DEFAULT:
> + default:
> + break;
> + }
> + }
>
> rc = f11_write_control_regs(fn, &f11->sens_query,
> &f11->dev_controls, fn->fd.query_base_addr);
> diff --git a/include/linux/rmi.h b/include/linux/rmi.h
> index 5944e6c..ac904bb 100644
> --- a/include/linux/rmi.h
> +++ b/include/linux/rmi.h
> @@ -99,6 +99,8 @@ struct rmi_2d_sensor_platform_data {
> bool topbuttonpad;
> bool kernel_tracking;
> int dmax;
> + int dribble;
> + int palm_detect;
> };
>
> /**
> @@ -116,14 +118,17 @@ struct rmi_f30_data {
> bool disable;
> };
>
> -/**
> - * struct rmi_f01_power - override default power management settings.
> - *
> +
> +/*
> + * Set the state of a register
> + * DEFAULT - use the default value set by the firmware config
> + * OFF - explicitly disable the register
> + * ON - explicitly enable the register
> */
> -enum rmi_f01_nosleep {
> - RMI_F01_NOSLEEP_DEFAULT = 0,
> - RMI_F01_NOSLEEP_OFF = 1,
> - RMI_F01_NOSLEEP_ON = 2
> +enum rmi_reg_state {
> + RMI_REG_STATE_DEFAULT = 0,
> + RMI_REG_STATE_OFF = 1,
> + RMI_REG_STATE_ON = 2
> };
>
> /**
> @@ -143,7 +148,7 @@ enum rmi_f01_nosleep {
> * when the touch sensor is in doze mode, in units of 10ms.
> */
> struct rmi_f01_power_management {
> - enum rmi_f01_nosleep nosleep;
> + enum rmi_reg_state nosleep;
> u8 wakeup_threshold;
> u8 doze_holdoff;
> u8 doze_interval;
> --
> 2.7.4
>
--
Dmitry
^ permalink raw reply
* Re: Postinsts question
From: Khem Raj @ 2016-11-09 0:50 UTC (permalink / raw)
To: Vuille, Martin (Martin), yocto@yoctoproject.org
In-Reply-To: <30C2D590D16A5C46ADFE6521910377987FF75F11@AZ-US1EXMB02.global.avaya.com>
[-- Attachment #1.1: Type: text/plain, Size: 420 bytes --]
On 11/8/16 3:23 PM, Vuille, Martin (Martin) wrote:
> We are running with our rootfs mounted read-only.
>
> Consequently, any postinsts that get deferred to first boot fail.
>
>
>
> Is there a way to fail the build for any postinsts that can’t
>
> be performed during the build and have to be deferred?
I hope you are using "read-only-rootfs" in IMAGE_FEATURES
>
>
>
> MV
>
>
>
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 211 bytes --]
^ permalink raw reply
* Re: Postinsts question
From: Burton, Ross @ 2016-11-09 0:50 UTC (permalink / raw)
To: Vuille, Martin (Martin); +Cc: yocto@yoctoproject.org
In-Reply-To: <30C2D590D16A5C46ADFE6521910377987FF75F11@AZ-US1EXMB02.global.avaya.com>
[-- Attachment #1: Type: text/plain, Size: 664 bytes --]
On 8 November 2016 at 23:23, Vuille, Martin (Martin) <vmartin@avaya.com>
wrote:
> Is there a way to fail the build for any postinsts that can’t
>
> be performed during the build and have to be deferred?
>
>
Sadly not that I'm aware of currently. If you're using a sufficiently
recent release (and by that I mean 2.2 / morty) then there is integrated
support for image QA tests (added in oe-core c9bef2ec if you want to
backport it) which lets you write an image QA function that could verify
that there are no delayed postinsts present in the image.
This would be a sensible addition for read-only rootfs, would you mind
filing a bug?
Ross
[-- Attachment #2: Type: text/html, Size: 1285 bytes --]
^ permalink raw reply
* Re: [PATCH v2 1/3] ARM: dts: imx6qdl-apalis: Do not rely on DDC I2C bus bitbang for HDMI
From: Stefan Agner @ 2016-11-09 0:50 UTC (permalink / raw)
To: maitysanchayan
Cc: Shawn Guo, Vladimir Zapolskiy, marcel.ziswiler, linux-arm-kernel,
devicetree, linux-kernel, Philipp Zabel
In-Reply-To: <20161108173315.GA16082@Sanchayan-Arch.localdomain>
On 2016-11-08 09:33, maitysanchayan@gmail.com wrote:
> Hello Shawn,
>
> On 16-10-22 15:43:04, Vladimir Zapolskiy wrote:
>> Hi Shawn,
>>
>> On 10/22/2016 06:25 AM, Shawn Guo wrote:
>> > On Mon, Sep 19, 2016 at 10:41:51AM +0530, Sanchayan Maity wrote:
>> > > Remove the use of DDC I2C bus bitbang to support reading of EDID
>> > > and rely on support from internal HDMI I2C master controller instead.
>> > > As a result remove the device tree property ddc-i2c-bus.
>> > >
>> > > Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
>> >
>> > I think that the dw-hdmi i2c support [1] is a prerequisite of this
>> > patch. I do not see it lands on v4.9-rc1. Or am I missing something?
>> >
>> > Shawn
>> >
>> > [1] https://patchwork.kernel.org/patch/9296883/
>> >
>>
>> I'm adding Philipp to Cc, since he is the last one who tested the change
>> and helped me to push the change to the mainline:
>>
>> https://lists.freedesktop.org/archives/dri-devel/2016-September/118569.html
>>
>> The problem is that there is no official DW HDMI bridge maintainer, may be
>> you can review the change, and if you find it satisfactory push it through
>> ARM/iMX tree.
>
> Shawn, is it okay if that patch goes through your ARM/iMX tree?
I don't think it makes sense that the DRM bridge changes go through
Shawn's tree. Dave should merge Philipps pull request...
--
Stefan
^ permalink raw reply
* [PATCH v2 1/3] ARM: dts: imx6qdl-apalis: Do not rely on DDC I2C bus bitbang for HDMI
From: Stefan Agner @ 2016-11-09 0:50 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161108173315.GA16082@Sanchayan-Arch.localdomain>
On 2016-11-08 09:33, maitysanchayan at gmail.com wrote:
> Hello Shawn,
>
> On 16-10-22 15:43:04, Vladimir Zapolskiy wrote:
>> Hi Shawn,
>>
>> On 10/22/2016 06:25 AM, Shawn Guo wrote:
>> > On Mon, Sep 19, 2016 at 10:41:51AM +0530, Sanchayan Maity wrote:
>> > > Remove the use of DDC I2C bus bitbang to support reading of EDID
>> > > and rely on support from internal HDMI I2C master controller instead.
>> > > As a result remove the device tree property ddc-i2c-bus.
>> > >
>> > > Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
>> >
>> > I think that the dw-hdmi i2c support [1] is a prerequisite of this
>> > patch. I do not see it lands on v4.9-rc1. Or am I missing something?
>> >
>> > Shawn
>> >
>> > [1] https://patchwork.kernel.org/patch/9296883/
>> >
>>
>> I'm adding Philipp to Cc, since he is the last one who tested the change
>> and helped me to push the change to the mainline:
>>
>> https://lists.freedesktop.org/archives/dri-devel/2016-September/118569.html
>>
>> The problem is that there is no official DW HDMI bridge maintainer, may be
>> you can review the change, and if you find it satisfactory push it through
>> ARM/iMX tree.
>
> Shawn, is it okay if that patch goes through your ARM/iMX tree?
I don't think it makes sense that the DRM bridge changes go through
Shawn's tree. Dave should merge Philipps pull request...
--
Stefan
^ permalink raw reply
* Re: BUG: Hung task timeouts in for-4.10/dio
From: Damien Le Moal @ 2016-11-09 0:50 UTC (permalink / raw)
To: Jens Axboe, Logan Gunthorpe, Christoph Hellwig; +Cc: linux-block, Mike Snitzer
In-Reply-To: <1e0e590b-fde3-a86d-bc60-8e5465928533@fb.com>
Jens,
On 11/9/16 05:21, Jens Axboe wrote:
> On 11/08/2016 12:55 PM, Logan Gunthorpe wrote:
>> Hey,
>>
>> I've attached the output of dmesg from a working boot and the output of
>> mount.
>>
>> Pretty much all the file systems are ext4. We have some experimental
>> nvme devices in this system which I did try removing to eliminate that
>> possibility.
>>
>> Let me know if you need anything else.
>
> You're using dm, that might be related. Mike, have you tried booting
> for-4.10/block and checking if dm works fine?
Using yesterday's tree, I experienced similar problems with
for-4.10/block without using dm (using ext4 on top of SSDs): random
tasks hung, starting from boot, with the machine eventually completely
freezing.
I did not dig into the problem a lot. I just looked at task stack traces
(echo t > /proc/sysrq-trigger) and noticed that hung tasks are waiting
for requests. Ex:
[ 55.356418] plymouthd D ffffffff81671758 0 353 1
0x00000000
[ 55.356419] ffff8807fbf1ec00 0000000000000000 ffff8807fba6d500
ffff8807fba3b600
[ 55.356420] ffff88081fb97900 ffff8807f04079a8 ffffffff81671758
000000000000158f
[ 55.356421] 0000000000000000 ffff8807f3373800 ffff8807fba3b600
ffff88081fb97900
[ 55.356421] Call Trace:
[ 55.356421] [<ffffffff81671758>] ? __schedule+0x178/0x650
[ 55.356422] [<ffffffff81671c70>] schedule+0x40/0x90
[ 55.356423] [<ffffffff816749d1>] schedule_timeout+0x2b1/0x3e0
[ 55.356424] [<ffffffff8115419d>] ? mempool_alloc_slab+0x1d/0x30
[ 55.356425] [<ffffffff810e0971>] ? ktime_get+0x41/0xb0
[ 55.356426] [<ffffffff81671574>] io_schedule_timeout+0xa4/0x110
[ 55.356427] [<ffffffff8130ee2b>] get_request+0x3fb/0x7d0
[ 55.356428] [<ffffffff8120fd83>] ? __find_get_block+0xf3/0x180
[ 55.356429] [<ffffffff810be260>] ? wait_woken+0x90/0x90
[ 55.356431] [<ffffffff813117cb>] blk_queue_bio+0xfb/0x3c0
[ 55.356432] [<ffffffff8130fb90>] generic_make_request+0xd0/0x180
[ 55.356433] [<ffffffff8130fcac>] submit_bio+0x6c/0x130
[ 55.356436] [<ffffffff81270f08>] ext4_io_submit+0x38/0x50
[ 55.356437] [<ffffffff8126c241>] ext4_writepages+0x561/0xdb0
[ 55.356439] [<ffffffff811601e1>] do_writepages+0x21/0x30
[ 55.356440] [<ffffffff811520aa>] __filemap_fdatawrite_range+0xaa/0xf0
[ 55.356440] [<ffffffff811524df>] ? __generic_file_write_iter+0x14f/0x1d0
[ 55.356441] [<ffffffff8115213c>] filemap_flush+0x1c/0x20
[ 55.356442] [<ffffffff812698bc>] ext4_alloc_da_blocks+0x2c/0x80
[ 55.356443] [<ffffffff81262268>] ext4_release_file+0x78/0xc0
[ 55.356446] [<ffffffff811db2a9>] __fput+0xb9/0x200
[ 55.356447] [<ffffffff811db42e>] ____fput+0xe/0x10
[ 55.356449] [<ffffffff81097bf5>] task_work_run+0x85/0xb0
[ 55.356450] [<ffffffff810016a7>] exit_to_usermode_loop+0x97/0xa0
[ 55.356451] [<ffffffff810019e3>] syscall_return_slowpath+0x53/0x60
[ 55.356452] [<ffffffff8167605f>] entry_SYSCALL_64_fastpath+0x92/0x94
I needed the ZBC code so I detached the head back to 5f2808f and
everything then worked fine. I will try to bisect.
Best regards.
--
Damien Le Moal, Ph.D.
Sr. Manager, System Software Research Group,
Western Digital Corporation
Damien.LeMoal@wdc.com
(+81) 0466-98-3593 (ext. 513593)
1 kirihara-cho, Fujisawa,
Kanagawa, 252-0888 Japan
www.wdc.com, www.hgst.com
^ permalink raw reply
* mmotm 2016-11-08-16-49 uploaded
From: akpm @ 2016-11-09 0:50 UTC (permalink / raw)
To: mm-commits, linux-kernel, linux-mm, linux-fsdevel, linux-next,
sfr, mhocko, broonie
The mm-of-the-moment snapshot 2016-11-08-16-49 has been uploaded to
http://www.ozlabs.org/~akpm/mmotm/
mmotm-readme.txt says
README for mm-of-the-moment:
http://www.ozlabs.org/~akpm/mmotm/
This is a snapshot of my -mm patch queue. Uploaded at random hopefully
more than once a week.
You will need quilt to apply these patches to the latest Linus release (4.x
or 4.x-rcY). The series file is in broken-out.tar.gz and is duplicated in
http://ozlabs.org/~akpm/mmotm/series
The file broken-out.tar.gz contains two datestamp files: .DATE and
.DATE-yyyy-mm-dd-hh-mm-ss. Both contain the string yyyy-mm-dd-hh-mm-ss,
followed by the base kernel version against which this patch series is to
be applied.
This tree is partially included in linux-next. To see which patches are
included in linux-next, consult the `series' file. Only the patches
within the #NEXT_PATCHES_START/#NEXT_PATCHES_END markers are included in
linux-next.
A git tree which contains the memory management portion of this tree is
maintained at git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
by Michal Hocko. It contains the patches which are between the
"#NEXT_PATCHES_START mm" and "#NEXT_PATCHES_END" markers, from the series
file, http://www.ozlabs.org/~akpm/mmotm/series.
A full copy of the full kernel tree with the linux-next and mmotm patches
already applied is available through git within an hour of the mmotm
release. Individual mmotm releases are tagged. The master branch always
points to the latest release, so it's constantly rebasing.
http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/
To develop on top of mmotm git:
$ git remote add mmotm git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
$ git remote update mmotm
$ git checkout -b topic mmotm/master
<make changes, commit>
$ git send-email mmotm/master.. [...]
To rebase a branch with older patches to a new mmotm release:
$ git remote update mmotm
$ git rebase --onto mmotm/master <topic base> topic
The directory http://www.ozlabs.org/~akpm/mmots/ (mm-of-the-second)
contains daily snapshots of the -mm tree. It is updated more frequently
than mmotm, and is untested.
A git copy of this tree is available at
http://git.cmpxchg.org/cgit.cgi/linux-mmots.git/
and use of this tree is similar to
http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/, described above.
This mmotm tree contains the following patches against 4.9-rc4:
(patches marked "*" will be included in linux-next)
origin.patch
i-need-old-gcc.patch
* mm-remove-extra-newline-from-allocation-stall-warning.patch
* mm-remove-extra-newline-from-allocation-stall-warning-fix.patch
* mm-frontswap-make-sure-allocated-frontswap-map-is-assigned.patch
* shmem-fix-pageflags-after-swapping-dma32-object.patch
* scripts-bloat-o-meter-fix-sigpipe.patch
* mm-cma-check-the-max-limit-for-cma-allocation.patch
* swapfile-fix-memory-corruption-via-malformed-swapfile.patch
* mm-hwpoison-fix-thp-split-handling-in-memory_failure.patch
* revert-console-dont-prefer-first-registered-if-dt-specifies-stdout-path.patch
* ocfs2-fix-not-enough-credit-panic.patch
* mm-hugetlb-fix-huge-page-reservation-leak-in-private-mapping-error-paths.patch
* mm-filemap-dont-allow-partially-uptodate-page-for-pipes.patch
* coredump-fix-unfreezable-coredumping-task.patch
* memcg-prevent-memcg-caches-to-be-both-off_slab-objfreelist_slab.patch
* mm-kmemleak-scan-dataro_after_init.patch
* lib-stackdepot-export-save-fetch-stack-for-drivers.patch
* arm-arch-arm-include-asm-pageh-needs-personalityh.patch
* prctl-remove-one-shot-limitation-for-changing-exe-link.patch
* prctl-remove-one-shot-limitation-for-changing-exe-link-fix.patch
* kbuild-simpler-generation-of-assembly-constants.patch
* m32r-add-simple-dma.patch
* ocfs2-dlm-clean-up-useless-bug_on-default-case-in-dlm_finalize_reco_handler.patch
* ocfs2-delete-redundant-code-and-set-the-node-bit-into-maybe_map-directly.patch
* ocfs2-dlm-clean-up-deadcode-in-dlm_master_request_handler.patch
* block-restore-proc-partitions-to-not-display-non-partitionable-removable-devices.patch
* kernel-watchdog-use-nmi-registers-snapshot-in-hardlockup-handler.patch
mm.patch
* mm-memcontrol-use-special-workqueue-for-creating-per-memcg-caches.patch
* slub-move-synchronize_sched-out-of-slab_mutex-on-shrink.patch
* slub-avoid-false-postive-warning.patch
* mm-check-kmem_create_cache-flags-are-commons.patch
* mm-slab-faster-active-and-free-stats.patch
* dont-touch-single-threaded-ptes-which-are-on-the-right-node.patch
* dont-touch-single-threaded-ptes-which-are-on-the-right-node-v3.patch
* vmscan-set-correct-defer-count-for-shrinker.patch
* mm-compaction-allow-compaction-for-gfp_nofs-requests.patch
* mm-compaction-allow-compaction-for-gfp_nofs-requests-fix.patch
* mm-gup-make-unnecessarily-global-vma_permits_fault-static.patch
* mm-hugetlb-use-the-right-pte-val-for-compare-in-hugetlb_cow.patch
* mm-hugetlb-use-huge_pte_lock-instead-of-opencoding-the-lock.patch
* z3fold-limit-first_num-to-the-actual-range-of-possible-buddy-indexes.patch
* kmemleak-fix-reference-to-documentation.patch
* mm-dont-steal-highatomic-pageblock.patch
* mm-prevent-double-decrease-of-nr_reserved_highatomic.patch
* mm-try-to-exhaust-highatomic-reserve-before-the-oom.patch
* mm-make-unreserve-highatomic-functions-reliable.patch
* mm-vmallocc-simplify-proc-vmallocinfo-implementation.patch
* mm-thp-avoid-unlikely-branches-for-split_huge_pmd.patch
* mm-mempolicy-clean-up-__gfp_thisnode-confusion-in-policy_zonelist.patch
* mm-mempolicy-clean-up-__gfp_thisnode-confusion-in-policy_zonelist-checkpatch-fixes.patch
* mm-compaction-fix-nr_isolated_-stats-for-pfn-based-migration.patch
* shmem-avoid-maybe-uninitialized-warning.patch
* mm-use-the-correct-page-size-when-removing-the-page.patch
* mm-update-mmu_gather-range-correctly.patch
* mm-hugetlb-add-tlb_remove_hugetlb_entry-for-handling-hugetlb-pages.patch
* mm-add-tlb_remove_check_page_size_change-to-track-page-size-change.patch
* mm-remove-the-page-size-change-check-in-tlb_remove_page.patch
* mm-fixup-get_user_pages-comments.patch
* mm-mempolicyc-forbid-static-or-relative-flags-for-local-numa-mode.patch
* mm-add-locked-parameter-to-get_user_pages_remote.patch
* mm-unexport-__get_user_pages_unlocked.patch
* mm-unexport-__get_user_pages_unlocked-checkpatch-fixes.patch
* z3fold-make-pages_nr-atomic.patch
* z3fold-extend-compaction-function.patch
* mm-hugetlb-rename-some-allocation-functions.patch
* mm-page_owner-align-with-pageblock_nr-pages.patch
* mm-walk-the-zone-in-pageblock_nr_pages-steps.patch
* kasan-support-panic_on_warn.patch
* mm-percpuc-fix-panic-triggered-by-bug_on-falsely.patch
* proc-report-no_new_privs-state.patch
* proc-make-struct-pid_entry-len-unsigned.patch
* proc-make-struct-struct-map_files_info-len-unsigned-int.patch
* proc-optimize-render_sigset_t.patch
* proc-just-list_del-struct-pde_opener.patch
* proc-fix-type-of-struct-pde_opener-closing-field.patch
* proc-kmalloc-struct-pde_opener.patch
* proc-tweak-comments-about-2-stage-open-and-everything.patch
* hung_task-decrement-sysctl_hung_task_warnings-only-if-it-is-positive.patch
* compiler-gcch-use-proved-instead-of-proofed.patch
* get_maintainer-look-for-arbitrary-letter-prefixes-in-sections.patch
* maintainers-add-b-for-uri-where-to-file-bugs.patch
* maintainers-add-drm-and-drm-i915-bug-filing-info.patch
* maintainers-add-c-for-uri-for-chat-where-developers-hang-out.patch
* maintainers-add-drm-and-drm-i915-irc-channels.patch
* let-config_strict_devmem-depends-on-config_devmem.patch
* lib-rbtreec-fix-typo-in-comment-of-____rb_erase_color.patch
* lib-ida-document-locking-requirements-a-bit-better-v2.patch
* lib-add-crc64-ecma-module.patch
* checkpatch-dont-try-to-get-maintained-status-when-no-tree-is-given.patch
* scripts-checkpatchpl-fix-spelling.patch
* checkpatch-dont-check-pl-files-improve-absolute-path-commit-log-test.patch
* checkpatch-avoid-multiple-line-dereferences.patch
* vfs-change-d_manage-to-take-a-struct-path.patch
* vfs-add-path_is_mountpoint-helper.patch
* vfs-add-path_has_submounts.patch
* autofs-change-autofs4_expire_wait-to-take-struct-path.patch
* autofs-change-autofs4_wait-to-take-struct-path.patch
* autofs-use-path_is_mountpoint-to-fix-unreliable-d_mountpoint-checks.patch
* autofs-use-path_has_submounts-to-fix-unreliable-have_submount-checks.patch
* vfs-remove-unused-have_submounts-function.patch
* signals-avoid-unnecessary-taking-of-sighand-siglock.patch
* coredump-clarify-unsafe-core_pattern-warning.patch
* revert-kdump-vmcoreinfo-report-memory-sections-virtual-addresses.patch
* kexec-change-to-export-the-value-of-phys_base-instead-of-symbol-address.patch
* kdump-vmcoreinfo-report-actual-value-of-phys_base.patch
* relay-check-array-offset-before-using-it.patch
* kconfig-lib-kconfigdebug-fix-references-to-documenation.patch
* kconfig-lib-kconfigubsan-fix-reference-to-ubsan-documentation.patch
* debug-more-properly-delay-for-secondary-cpus.patch
* debug-more-properly-delay-for-secondary-cpus-fix.patch
* initramfs-select-builtin-initram-compression-algorithm-on-kconfig-instead-of-makefile.patch
* initramfs-allow-again-choice-of-the-embedded-initram-compression-algorithm.patch
* ipc-semc-avoid-using-spin_unlock_wait.patch
* ipc-sem-add-hysteresis.patch
* ipc-msg-make-msgrcv-work-with-long_min.patch
* ipc-sem-do-not-call-wake_sem_queue_do-prematurely.patch
* ipc-sem-rework-task-wakeups.patch
* ipc-sem-rework-task-wakeups-checkpatch-fixes.patch
* ipc-sem-optimize-perform_atomic_semop.patch
* ipc-sem-optimize-perform_atomic_semop-fix.patch
* ipc-sem-optimize-perform_atomic_semop-checkpatch-fixes.patch
* ipc-sem-explicitly-inline-check_restart.patch
* ipc-sem-use-proper-list-api-for-pending_list-wakeups.patch
* ipc-fixed-warnings.patch
linux-next.patch
* drivers-net-wireless-intel-iwlwifi-dvm-calibc-fix-min-warning.patch
* kexec_file-allow-arch-specific-memory-walking-for-kexec_add_buffer.patch
* kexec_file-change-kexec_add_buffer-to-take-kexec_buf-as-argument.patch
* kexec_file-factor-out-kexec_locate_mem_hole-from-kexec_add_buffer.patch
* powerpc-change-places-using-config_kexec-to-use-config_kexec_core-instead.patch
* powerpc-factor-out-relocation-code-in-module_64c.patch
* powerpc-implement-kexec_file_load.patch
* powerpc-add-functions-to-read-elf-files-of-any-endianness.patch
* powerpc-add-support-for-loading-elf-kernels-with-kexec_file_load.patch
* powerpc-add-purgatory-for-kexec_file_load-implementation.patch
* powerpc-enable-config_kexec_file-in-powerpc-server-defconfigs.patch
* powerpc-ima-get-the-kexec-buffer-passed-by-the-previous-kernel.patch
* ima-on-soft-reboot-restore-the-measurement-list.patch
* ima-permit-duplicate-measurement-list-entries.patch
* ima-maintain-memory-size-needed-for-serializing-the-measurement-list.patch
* powerpc-ima-send-the-kexec-buffer-to-the-next-kernel.patch
* ima-on-soft-reboot-save-the-measurement-list.patch
* ima-store-the-builtin-custom-template-definitions-in-a-list.patch
* ima-support-restoring-multiple-template-formats.patch
* ima-define-a-canonical-binary_runtime_measurements-list-format.patch
* ima-platform-independent-hash-value.patch
* ktestpl-fix-english.patch
* watchdog-move-shared-definitions-to-nmih.patch
* watchdog-move-hardlockup-detector-to-separate-file.patch
* sparc-implement-watchdog_nmi_enable-and-watchdog_nmi_disable.patch
mm-add-strictlimit-knob-v2.patch
make-sure-nobodys-leaking-resources.patch
releasing-resources-with-children.patch
make-frame_pointer-default=y.patch
kernel-forkc-export-kernel_thread-to-modules.patch
mutex-subsystem-synchro-test-module.patch
slab-leaks3-default-y.patch
add-debugging-aid-for-memory-initialisation-problems.patch
workaround-for-a-pci-restoring-bug.patch
^ permalink raw reply
* mmotm 2016-11-08-16-49 uploaded
From: akpm @ 2016-11-09 0:50 UTC (permalink / raw)
To: mm-commits, linux-kernel, linux-mm, linux-fsdevel, linux-next,
sfr, mhocko, broonie
The mm-of-the-moment snapshot 2016-11-08-16-49 has been uploaded to
http://www.ozlabs.org/~akpm/mmotm/
mmotm-readme.txt says
README for mm-of-the-moment:
http://www.ozlabs.org/~akpm/mmotm/
This is a snapshot of my -mm patch queue. Uploaded at random hopefully
more than once a week.
You will need quilt to apply these patches to the latest Linus release (4.x
or 4.x-rcY). The series file is in broken-out.tar.gz and is duplicated in
http://ozlabs.org/~akpm/mmotm/series
The file broken-out.tar.gz contains two datestamp files: .DATE and
.DATE-yyyy-mm-dd-hh-mm-ss. Both contain the string yyyy-mm-dd-hh-mm-ss,
followed by the base kernel version against which this patch series is to
be applied.
This tree is partially included in linux-next. To see which patches are
included in linux-next, consult the `series' file. Only the patches
within the #NEXT_PATCHES_START/#NEXT_PATCHES_END markers are included in
linux-next.
A git tree which contains the memory management portion of this tree is
maintained at git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
by Michal Hocko. It contains the patches which are between the
"#NEXT_PATCHES_START mm" and "#NEXT_PATCHES_END" markers, from the series
file, http://www.ozlabs.org/~akpm/mmotm/series.
A full copy of the full kernel tree with the linux-next and mmotm patches
already applied is available through git within an hour of the mmotm
release. Individual mmotm releases are tagged. The master branch always
points to the latest release, so it's constantly rebasing.
http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/
To develop on top of mmotm git:
$ git remote add mmotm git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
$ git remote update mmotm
$ git checkout -b topic mmotm/master
<make changes, commit>
$ git send-email mmotm/master.. [...]
To rebase a branch with older patches to a new mmotm release:
$ git remote update mmotm
$ git rebase --onto mmotm/master <topic base> topic
The directory http://www.ozlabs.org/~akpm/mmots/ (mm-of-the-second)
contains daily snapshots of the -mm tree. It is updated more frequently
than mmotm, and is untested.
A git copy of this tree is available at
http://git.cmpxchg.org/cgit.cgi/linux-mmots.git/
and use of this tree is similar to
http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/, described above.
This mmotm tree contains the following patches against 4.9-rc4:
(patches marked "*" will be included in linux-next)
origin.patch
i-need-old-gcc.patch
* mm-remove-extra-newline-from-allocation-stall-warning.patch
* mm-remove-extra-newline-from-allocation-stall-warning-fix.patch
* mm-frontswap-make-sure-allocated-frontswap-map-is-assigned.patch
* shmem-fix-pageflags-after-swapping-dma32-object.patch
* scripts-bloat-o-meter-fix-sigpipe.patch
* mm-cma-check-the-max-limit-for-cma-allocation.patch
* swapfile-fix-memory-corruption-via-malformed-swapfile.patch
* mm-hwpoison-fix-thp-split-handling-in-memory_failure.patch
* revert-console-dont-prefer-first-registered-if-dt-specifies-stdout-path.patch
* ocfs2-fix-not-enough-credit-panic.patch
* mm-hugetlb-fix-huge-page-reservation-leak-in-private-mapping-error-paths.patch
* mm-filemap-dont-allow-partially-uptodate-page-for-pipes.patch
* coredump-fix-unfreezable-coredumping-task.patch
* memcg-prevent-memcg-caches-to-be-both-off_slab-objfreelist_slab.patch
* mm-kmemleak-scan-dataro_after_init.patch
* lib-stackdepot-export-save-fetch-stack-for-drivers.patch
* arm-arch-arm-include-asm-pageh-needs-personalityh.patch
* prctl-remove-one-shot-limitation-for-changing-exe-link.patch
* prctl-remove-one-shot-limitation-for-changing-exe-link-fix.patch
* kbuild-simpler-generation-of-assembly-constants.patch
* m32r-add-simple-dma.patch
* ocfs2-dlm-clean-up-useless-bug_on-default-case-in-dlm_finalize_reco_handler.patch
* ocfs2-delete-redundant-code-and-set-the-node-bit-into-maybe_map-directly.patch
* ocfs2-dlm-clean-up-deadcode-in-dlm_master_request_handler.patch
* block-restore-proc-partitions-to-not-display-non-partitionable-removable-devices.patch
* kernel-watchdog-use-nmi-registers-snapshot-in-hardlockup-handler.patch
mm.patch
* mm-memcontrol-use-special-workqueue-for-creating-per-memcg-caches.patch
* slub-move-synchronize_sched-out-of-slab_mutex-on-shrink.patch
* slub-avoid-false-postive-warning.patch
* mm-check-kmem_create_cache-flags-are-commons.patch
* mm-slab-faster-active-and-free-stats.patch
* dont-touch-single-threaded-ptes-which-are-on-the-right-node.patch
* dont-touch-single-threaded-ptes-which-are-on-the-right-node-v3.patch
* vmscan-set-correct-defer-count-for-shrinker.patch
* mm-compaction-allow-compaction-for-gfp_nofs-requests.patch
* mm-compaction-allow-compaction-for-gfp_nofs-requests-fix.patch
* mm-gup-make-unnecessarily-global-vma_permits_fault-static.patch
* mm-hugetlb-use-the-right-pte-val-for-compare-in-hugetlb_cow.patch
* mm-hugetlb-use-huge_pte_lock-instead-of-opencoding-the-lock.patch
* z3fold-limit-first_num-to-the-actual-range-of-possible-buddy-indexes.patch
* kmemleak-fix-reference-to-documentation.patch
* mm-dont-steal-highatomic-pageblock.patch
* mm-prevent-double-decrease-of-nr_reserved_highatomic.patch
* mm-try-to-exhaust-highatomic-reserve-before-the-oom.patch
* mm-make-unreserve-highatomic-functions-reliable.patch
* mm-vmallocc-simplify-proc-vmallocinfo-implementation.patch
* mm-thp-avoid-unlikely-branches-for-split_huge_pmd.patch
* mm-mempolicy-clean-up-__gfp_thisnode-confusion-in-policy_zonelist.patch
* mm-mempolicy-clean-up-__gfp_thisnode-confusion-in-policy_zonelist-checkpatch-fixes.patch
* mm-compaction-fix-nr_isolated_-stats-for-pfn-based-migration.patch
* shmem-avoid-maybe-uninitialized-warning.patch
* mm-use-the-correct-page-size-when-removing-the-page.patch
* mm-update-mmu_gather-range-correctly.patch
* mm-hugetlb-add-tlb_remove_hugetlb_entry-for-handling-hugetlb-pages.patch
* mm-add-tlb_remove_check_page_size_change-to-track-page-size-change.patch
* mm-remove-the-page-size-change-check-in-tlb_remove_page.patch
* mm-fixup-get_user_pages-comments.patch
* mm-mempolicyc-forbid-static-or-relative-flags-for-local-numa-mode.patch
* mm-add-locked-parameter-to-get_user_pages_remote.patch
* mm-unexport-__get_user_pages_unlocked.patch
* mm-unexport-__get_user_pages_unlocked-checkpatch-fixes.patch
* z3fold-make-pages_nr-atomic.patch
* z3fold-extend-compaction-function.patch
* mm-hugetlb-rename-some-allocation-functions.patch
* mm-page_owner-align-with-pageblock_nr-pages.patch
* mm-walk-the-zone-in-pageblock_nr_pages-steps.patch
* kasan-support-panic_on_warn.patch
* mm-percpuc-fix-panic-triggered-by-bug_on-falsely.patch
* proc-report-no_new_privs-state.patch
* proc-make-struct-pid_entry-len-unsigned.patch
* proc-make-struct-struct-map_files_info-len-unsigned-int.patch
* proc-optimize-render_sigset_t.patch
* proc-just-list_del-struct-pde_opener.patch
* proc-fix-type-of-struct-pde_opener-closing-field.patch
* proc-kmalloc-struct-pde_opener.patch
* proc-tweak-comments-about-2-stage-open-and-everything.patch
* hung_task-decrement-sysctl_hung_task_warnings-only-if-it-is-positive.patch
* compiler-gcch-use-proved-instead-of-proofed.patch
* get_maintainer-look-for-arbitrary-letter-prefixes-in-sections.patch
* maintainers-add-b-for-uri-where-to-file-bugs.patch
* maintainers-add-drm-and-drm-i915-bug-filing-info.patch
* maintainers-add-c-for-uri-for-chat-where-developers-hang-out.patch
* maintainers-add-drm-and-drm-i915-irc-channels.patch
* let-config_strict_devmem-depends-on-config_devmem.patch
* lib-rbtreec-fix-typo-in-comment-of-____rb_erase_color.patch
* lib-ida-document-locking-requirements-a-bit-better-v2.patch
* lib-add-crc64-ecma-module.patch
* checkpatch-dont-try-to-get-maintained-status-when-no-tree-is-given.patch
* scripts-checkpatchpl-fix-spelling.patch
* checkpatch-dont-check-pl-files-improve-absolute-path-commit-log-test.patch
* checkpatch-avoid-multiple-line-dereferences.patch
* vfs-change-d_manage-to-take-a-struct-path.patch
* vfs-add-path_is_mountpoint-helper.patch
* vfs-add-path_has_submounts.patch
* autofs-change-autofs4_expire_wait-to-take-struct-path.patch
* autofs-change-autofs4_wait-to-take-struct-path.patch
* autofs-use-path_is_mountpoint-to-fix-unreliable-d_mountpoint-checks.patch
* autofs-use-path_has_submounts-to-fix-unreliable-have_submount-checks.patch
* vfs-remove-unused-have_submounts-function.patch
* signals-avoid-unnecessary-taking-of-sighand-siglock.patch
* coredump-clarify-unsafe-core_pattern-warning.patch
* revert-kdump-vmcoreinfo-report-memory-sections-virtual-addresses.patch
* kexec-change-to-export-the-value-of-phys_base-instead-of-symbol-address.patch
* kdump-vmcoreinfo-report-actual-value-of-phys_base.patch
* relay-check-array-offset-before-using-it.patch
* kconfig-lib-kconfigdebug-fix-references-to-documenation.patch
* kconfig-lib-kconfigubsan-fix-reference-to-ubsan-documentation.patch
* debug-more-properly-delay-for-secondary-cpus.patch
* debug-more-properly-delay-for-secondary-cpus-fix.patch
* initramfs-select-builtin-initram-compression-algorithm-on-kconfig-instead-of-makefile.patch
* initramfs-allow-again-choice-of-the-embedded-initram-compression-algorithm.patch
* ipc-semc-avoid-using-spin_unlock_wait.patch
* ipc-sem-add-hysteresis.patch
* ipc-msg-make-msgrcv-work-with-long_min.patch
* ipc-sem-do-not-call-wake_sem_queue_do-prematurely.patch
* ipc-sem-rework-task-wakeups.patch
* ipc-sem-rework-task-wakeups-checkpatch-fixes.patch
* ipc-sem-optimize-perform_atomic_semop.patch
* ipc-sem-optimize-perform_atomic_semop-fix.patch
* ipc-sem-optimize-perform_atomic_semop-checkpatch-fixes.patch
* ipc-sem-explicitly-inline-check_restart.patch
* ipc-sem-use-proper-list-api-for-pending_list-wakeups.patch
* ipc-fixed-warnings.patch
linux-next.patch
* drivers-net-wireless-intel-iwlwifi-dvm-calibc-fix-min-warning.patch
* kexec_file-allow-arch-specific-memory-walking-for-kexec_add_buffer.patch
* kexec_file-change-kexec_add_buffer-to-take-kexec_buf-as-argument.patch
* kexec_file-factor-out-kexec_locate_mem_hole-from-kexec_add_buffer.patch
* powerpc-change-places-using-config_kexec-to-use-config_kexec_core-instead.patch
* powerpc-factor-out-relocation-code-in-module_64c.patch
* powerpc-implement-kexec_file_load.patch
* powerpc-add-functions-to-read-elf-files-of-any-endianness.patch
* powerpc-add-support-for-loading-elf-kernels-with-kexec_file_load.patch
* powerpc-add-purgatory-for-kexec_file_load-implementation.patch
* powerpc-enable-config_kexec_file-in-powerpc-server-defconfigs.patch
* powerpc-ima-get-the-kexec-buffer-passed-by-the-previous-kernel.patch
* ima-on-soft-reboot-restore-the-measurement-list.patch
* ima-permit-duplicate-measurement-list-entries.patch
* ima-maintain-memory-size-needed-for-serializing-the-measurement-list.patch
* powerpc-ima-send-the-kexec-buffer-to-the-next-kernel.patch
* ima-on-soft-reboot-save-the-measurement-list.patch
* ima-store-the-builtin-custom-template-definitions-in-a-list.patch
* ima-support-restoring-multiple-template-formats.patch
* ima-define-a-canonical-binary_runtime_measurements-list-format.patch
* ima-platform-independent-hash-value.patch
* ktestpl-fix-english.patch
* watchdog-move-shared-definitions-to-nmih.patch
* watchdog-move-hardlockup-detector-to-separate-file.patch
* sparc-implement-watchdog_nmi_enable-and-watchdog_nmi_disable.patch
mm-add-strictlimit-knob-v2.patch
make-sure-nobodys-leaking-resources.patch
releasing-resources-with-children.patch
make-frame_pointer-default=y.patch
kernel-forkc-export-kernel_thread-to-modules.patch
mutex-subsystem-synchro-test-module.patch
slab-leaks3-default-y.patch
add-debugging-aid-for-memory-initialisation-problems.patch
workaround-for-a-pci-restoring-bug.patch
^ permalink raw reply
* mmotm 2016-11-08-16-49 uploaded
From: akpm @ 2016-11-09 0:50 UTC (permalink / raw)
To: mm-commits, linux-kernel, linux-mm, linux-fsdevel, linux-next,
sfr, mhocko, broonie
The mm-of-the-moment snapshot 2016-11-08-16-49 has been uploaded to
http://www.ozlabs.org/~akpm/mmotm/
mmotm-readme.txt says
README for mm-of-the-moment:
http://www.ozlabs.org/~akpm/mmotm/
This is a snapshot of my -mm patch queue. Uploaded at random hopefully
more than once a week.
You will need quilt to apply these patches to the latest Linus release (4.x
or 4.x-rcY). The series file is in broken-out.tar.gz and is duplicated in
http://ozlabs.org/~akpm/mmotm/series
The file broken-out.tar.gz contains two datestamp files: .DATE and
.DATE-yyyy-mm-dd-hh-mm-ss. Both contain the string yyyy-mm-dd-hh-mm-ss,
followed by the base kernel version against which this patch series is to
be applied.
This tree is partially included in linux-next. To see which patches are
included in linux-next, consult the `series' file. Only the patches
within the #NEXT_PATCHES_START/#NEXT_PATCHES_END markers are included in
linux-next.
A git tree which contains the memory management portion of this tree is
maintained at git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
by Michal Hocko. It contains the patches which are between the
"#NEXT_PATCHES_START mm" and "#NEXT_PATCHES_END" markers, from the series
file, http://www.ozlabs.org/~akpm/mmotm/series.
A full copy of the full kernel tree with the linux-next and mmotm patches
already applied is available through git within an hour of the mmotm
release. Individual mmotm releases are tagged. The master branch always
points to the latest release, so it's constantly rebasing.
http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/
To develop on top of mmotm git:
$ git remote add mmotm git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
$ git remote update mmotm
$ git checkout -b topic mmotm/master
<make changes, commit>
$ git send-email mmotm/master.. [...]
To rebase a branch with older patches to a new mmotm release:
$ git remote update mmotm
$ git rebase --onto mmotm/master <topic base> topic
The directory http://www.ozlabs.org/~akpm/mmots/ (mm-of-the-second)
contains daily snapshots of the -mm tree. It is updated more frequently
than mmotm, and is untested.
A git copy of this tree is available at
http://git.cmpxchg.org/cgit.cgi/linux-mmots.git/
and use of this tree is similar to
http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/, described above.
This mmotm tree contains the following patches against 4.9-rc4:
(patches marked "*" will be included in linux-next)
origin.patch
i-need-old-gcc.patch
* mm-remove-extra-newline-from-allocation-stall-warning.patch
* mm-remove-extra-newline-from-allocation-stall-warning-fix.patch
* mm-frontswap-make-sure-allocated-frontswap-map-is-assigned.patch
* shmem-fix-pageflags-after-swapping-dma32-object.patch
* scripts-bloat-o-meter-fix-sigpipe.patch
* mm-cma-check-the-max-limit-for-cma-allocation.patch
* swapfile-fix-memory-corruption-via-malformed-swapfile.patch
* mm-hwpoison-fix-thp-split-handling-in-memory_failure.patch
* revert-console-dont-prefer-first-registered-if-dt-specifies-stdout-path.patch
* ocfs2-fix-not-enough-credit-panic.patch
* mm-hugetlb-fix-huge-page-reservation-leak-in-private-mapping-error-paths.patch
* mm-filemap-dont-allow-partially-uptodate-page-for-pipes.patch
* coredump-fix-unfreezable-coredumping-task.patch
* memcg-prevent-memcg-caches-to-be-both-off_slab-objfreelist_slab.patch
* mm-kmemleak-scan-dataro_after_init.patch
* lib-stackdepot-export-save-fetch-stack-for-drivers.patch
* arm-arch-arm-include-asm-pageh-needs-personalityh.patch
* prctl-remove-one-shot-limitation-for-changing-exe-link.patch
* prctl-remove-one-shot-limitation-for-changing-exe-link-fix.patch
* kbuild-simpler-generation-of-assembly-constants.patch
* m32r-add-simple-dma.patch
* ocfs2-dlm-clean-up-useless-bug_on-default-case-in-dlm_finalize_reco_handler.patch
* ocfs2-delete-redundant-code-and-set-the-node-bit-into-maybe_map-directly.patch
* ocfs2-dlm-clean-up-deadcode-in-dlm_master_request_handler.patch
* block-restore-proc-partitions-to-not-display-non-partitionable-removable-devices.patch
* kernel-watchdog-use-nmi-registers-snapshot-in-hardlockup-handler.patch
mm.patch
* mm-memcontrol-use-special-workqueue-for-creating-per-memcg-caches.patch
* slub-move-synchronize_sched-out-of-slab_mutex-on-shrink.patch
* slub-avoid-false-postive-warning.patch
* mm-check-kmem_create_cache-flags-are-commons.patch
* mm-slab-faster-active-and-free-stats.patch
* dont-touch-single-threaded-ptes-which-are-on-the-right-node.patch
* dont-touch-single-threaded-ptes-which-are-on-the-right-node-v3.patch
* vmscan-set-correct-defer-count-for-shrinker.patch
* mm-compaction-allow-compaction-for-gfp_nofs-requests.patch
* mm-compaction-allow-compaction-for-gfp_nofs-requests-fix.patch
* mm-gup-make-unnecessarily-global-vma_permits_fault-static.patch
* mm-hugetlb-use-the-right-pte-val-for-compare-in-hugetlb_cow.patch
* mm-hugetlb-use-huge_pte_lock-instead-of-opencoding-the-lock.patch
* z3fold-limit-first_num-to-the-actual-range-of-possible-buddy-indexes.patch
* kmemleak-fix-reference-to-documentation.patch
* mm-dont-steal-highatomic-pageblock.patch
* mm-prevent-double-decrease-of-nr_reserved_highatomic.patch
* mm-try-to-exhaust-highatomic-reserve-before-the-oom.patch
* mm-make-unreserve-highatomic-functions-reliable.patch
* mm-vmallocc-simplify-proc-vmallocinfo-implementation.patch
* mm-thp-avoid-unlikely-branches-for-split_huge_pmd.patch
* mm-mempolicy-clean-up-__gfp_thisnode-confusion-in-policy_zonelist.patch
* mm-mempolicy-clean-up-__gfp_thisnode-confusion-in-policy_zonelist-checkpatch-fixes.patch
* mm-compaction-fix-nr_isolated_-stats-for-pfn-based-migration.patch
* shmem-avoid-maybe-uninitialized-warning.patch
* mm-use-the-correct-page-size-when-removing-the-page.patch
* mm-update-mmu_gather-range-correctly.patch
* mm-hugetlb-add-tlb_remove_hugetlb_entry-for-handling-hugetlb-pages.patch
* mm-add-tlb_remove_check_page_size_change-to-track-page-size-change.patch
* mm-remove-the-page-size-change-check-in-tlb_remove_page.patch
* mm-fixup-get_user_pages-comments.patch
* mm-mempolicyc-forbid-static-or-relative-flags-for-local-numa-mode.patch
* mm-add-locked-parameter-to-get_user_pages_remote.patch
* mm-unexport-__get_user_pages_unlocked.patch
* mm-unexport-__get_user_pages_unlocked-checkpatch-fixes.patch
* z3fold-make-pages_nr-atomic.patch
* z3fold-extend-compaction-function.patch
* mm-hugetlb-rename-some-allocation-functions.patch
* mm-page_owner-align-with-pageblock_nr-pages.patch
* mm-walk-the-zone-in-pageblock_nr_pages-steps.patch
* kasan-support-panic_on_warn.patch
* mm-percpuc-fix-panic-triggered-by-bug_on-falsely.patch
* proc-report-no_new_privs-state.patch
* proc-make-struct-pid_entry-len-unsigned.patch
* proc-make-struct-struct-map_files_info-len-unsigned-int.patch
* proc-optimize-render_sigset_t.patch
* proc-just-list_del-struct-pde_opener.patch
* proc-fix-type-of-struct-pde_opener-closing-field.patch
* proc-kmalloc-struct-pde_opener.patch
* proc-tweak-comments-about-2-stage-open-and-everything.patch
* hung_task-decrement-sysctl_hung_task_warnings-only-if-it-is-positive.patch
* compiler-gcch-use-proved-instead-of-proofed.patch
* get_maintainer-look-for-arbitrary-letter-prefixes-in-sections.patch
* maintainers-add-b-for-uri-where-to-file-bugs.patch
* maintainers-add-drm-and-drm-i915-bug-filing-info.patch
* maintainers-add-c-for-uri-for-chat-where-developers-hang-out.patch
* maintainers-add-drm-and-drm-i915-irc-channels.patch
* let-config_strict_devmem-depends-on-config_devmem.patch
* lib-rbtreec-fix-typo-in-comment-of-____rb_erase_color.patch
* lib-ida-document-locking-requirements-a-bit-better-v2.patch
* lib-add-crc64-ecma-module.patch
* checkpatch-dont-try-to-get-maintained-status-when-no-tree-is-given.patch
* scripts-checkpatchpl-fix-spelling.patch
* checkpatch-dont-check-pl-files-improve-absolute-path-commit-log-test.patch
* checkpatch-avoid-multiple-line-dereferences.patch
* vfs-change-d_manage-to-take-a-struct-path.patch
* vfs-add-path_is_mountpoint-helper.patch
* vfs-add-path_has_submounts.patch
* autofs-change-autofs4_expire_wait-to-take-struct-path.patch
* autofs-change-autofs4_wait-to-take-struct-path.patch
* autofs-use-path_is_mountpoint-to-fix-unreliable-d_mountpoint-checks.patch
* autofs-use-path_has_submounts-to-fix-unreliable-have_submount-checks.patch
* vfs-remove-unused-have_submounts-function.patch
* signals-avoid-unnecessary-taking-of-sighand-siglock.patch
* coredump-clarify-unsafe-core_pattern-warning.patch
* revert-kdump-vmcoreinfo-report-memory-sections-virtual-addresses.patch
* kexec-change-to-export-the-value-of-phys_base-instead-of-symbol-address.patch
* kdump-vmcoreinfo-report-actual-value-of-phys_base.patch
* relay-check-array-offset-before-using-it.patch
* kconfig-lib-kconfigdebug-fix-references-to-documenation.patch
* kconfig-lib-kconfigubsan-fix-reference-to-ubsan-documentation.patch
* debug-more-properly-delay-for-secondary-cpus.patch
* debug-more-properly-delay-for-secondary-cpus-fix.patch
* initramfs-select-builtin-initram-compression-algorithm-on-kconfig-instead-of-makefile.patch
* initramfs-allow-again-choice-of-the-embedded-initram-compression-algorithm.patch
* ipc-semc-avoid-using-spin_unlock_wait.patch
* ipc-sem-add-hysteresis.patch
* ipc-msg-make-msgrcv-work-with-long_min.patch
* ipc-sem-do-not-call-wake_sem_queue_do-prematurely.patch
* ipc-sem-rework-task-wakeups.patch
* ipc-sem-rework-task-wakeups-checkpatch-fixes.patch
* ipc-sem-optimize-perform_atomic_semop.patch
* ipc-sem-optimize-perform_atomic_semop-fix.patch
* ipc-sem-optimize-perform_atomic_semop-checkpatch-fixes.patch
* ipc-sem-explicitly-inline-check_restart.patch
* ipc-sem-use-proper-list-api-for-pending_list-wakeups.patch
* ipc-fixed-warnings.patch
linux-next.patch
* drivers-net-wireless-intel-iwlwifi-dvm-calibc-fix-min-warning.patch
* kexec_file-allow-arch-specific-memory-walking-for-kexec_add_buffer.patch
* kexec_file-change-kexec_add_buffer-to-take-kexec_buf-as-argument.patch
* kexec_file-factor-out-kexec_locate_mem_hole-from-kexec_add_buffer.patch
* powerpc-change-places-using-config_kexec-to-use-config_kexec_core-instead.patch
* powerpc-factor-out-relocation-code-in-module_64c.patch
* powerpc-implement-kexec_file_load.patch
* powerpc-add-functions-to-read-elf-files-of-any-endianness.patch
* powerpc-add-support-for-loading-elf-kernels-with-kexec_file_load.patch
* powerpc-add-purgatory-for-kexec_file_load-implementation.patch
* powerpc-enable-config_kexec_file-in-powerpc-server-defconfigs.patch
* powerpc-ima-get-the-kexec-buffer-passed-by-the-previous-kernel.patch
* ima-on-soft-reboot-restore-the-measurement-list.patch
* ima-permit-duplicate-measurement-list-entries.patch
* ima-maintain-memory-size-needed-for-serializing-the-measurement-list.patch
* powerpc-ima-send-the-kexec-buffer-to-the-next-kernel.patch
* ima-on-soft-reboot-save-the-measurement-list.patch
* ima-store-the-builtin-custom-template-definitions-in-a-list.patch
* ima-support-restoring-multiple-template-formats.patch
* ima-define-a-canonical-binary_runtime_measurements-list-format.patch
* ima-platform-independent-hash-value.patch
* ktestpl-fix-english.patch
* watchdog-move-shared-definitions-to-nmih.patch
* watchdog-move-hardlockup-detector-to-separate-file.patch
* sparc-implement-watchdog_nmi_enable-and-watchdog_nmi_disable.patch
mm-add-strictlimit-knob-v2.patch
make-sure-nobodys-leaking-resources.patch
releasing-resources-with-children.patch
make-frame_pointer-default=y.patch
kernel-forkc-export-kernel_thread-to-modules.patch
mutex-subsystem-synchro-test-module.patch
slab-leaks3-default-y.patch
add-debugging-aid-for-memory-initialisation-problems.patch
workaround-for-a-pci-restoring-bug.patch
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply
* Re: stable-rc build: 72 warnings 1 failures (stable-rc/v4.4.30-35-gf821e08)
From: Eric W. Biederman @ 2016-11-09 0:45 UTC (permalink / raw)
To: Arnd Bergmann
Cc: kernel-build-reports, Olof's autobuilder, olof, stable,
Greg KH
In-Reply-To: <2049467.HlUiazMrKa@wuerfel>
Arnd Bergmann <arnd@arndb.de> writes:
> On Tuesday, November 8, 2016 9:16:28 AM CET Olof's autobuilder wrote:
>> Here are the build results from automated periodic testing.
>>
>> The tree being built was stable-rc, found at:
>>
>> https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable-rc.git/
>>
>> Topmost commit:
>>
>> f821e08 Linux 4.4.31-rc1
>>
>> Build logs (stderr only) can be found at the following link (experimental):
>>
>> http://arm-soc.lixom.net/buildlogs/stable-rc/v4.4.30-35-gf821e08/
>
> These seem to be largely caused by building with gcc-6. It's probably
> a good idea to keep supporting that configuration though and
> backport the fixes. Here are the upstream commit IDs I've found.
>
>> -------------------------------------------------------------------------------
>>
>> Failed defconfigs:
>> powerpc.pasemi_defconfig
>>
>> -------------------------------------------------------------------------------
>>
>
>> 1 fs/devpts/inode.c:462:23: warning: self-comparison always evaluates to false [-Wtautological-compare]
>
> I think this was accidentally fixed by eedf265aa003 ("devpts: Make each mount of
> devpts an independent filesystem."), which unfortunately is not a
> candidate for stable
Well eedf265aa003 ("devpts: Make each mount of devpts an independent
filesystem.") does contain a somewhat serious bug fix, and it was tested
to ensure it works everywhere so that might possibly be a canidate for
stable.
Certainly that is a change I would aim at vendor trees that care about
containers.
>> 1 net/netfilter/xt_owner.c:27:23: warning: self-comparison always evaluates to false [-Wtautological-compare]
>
> Apparently also fixed as a side-effect of a larger patch:
>
> 9847371a84b0 ("netfilter: Allow xt_owner in any user namespace")
>
> This one might be appropriate for a stable backport, Eric Biederman
> would know for sure.
Well it is a feature patch. This sounds like an error message that is
only generated when user namespace support is disabled. And we are
making it go away by making the code more expensive.
I am not a great fan of that warning being on by default, as it seems to
encourage more expensive code to be generated by macros. Has that
warning caught any real bugs yet?
Eric
^ permalink raw reply
* Re: [RFC PATCH 15/24] ARM: vITS: handle MAPC command
From: Stefano Stabellini @ 2016-11-09 0:48 UTC (permalink / raw)
To: Andre Przywara; +Cc: xen-devel, Julien Grall, Stefano Stabellini
In-Reply-To: <20160928182457.12433-16-andre.przywara@arm.com>
On Wed, 28 Sep 2016, Andre Przywara wrote:
> The MAPC command associates a given collection ID with a given
> redistributor, thus mapping collections to VCPUs.
> We just store the vcpu_id in the collection table for that.
>
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
> ---
> xen/arch/arm/vgic-its.c | 30 ++++++++++++++++++++++++++++++
> 1 file changed, 30 insertions(+)
>
> diff --git a/xen/arch/arm/vgic-its.c b/xen/arch/arm/vgic-its.c
> index 7072753..caad320 100644
> --- a/xen/arch/arm/vgic-its.c
> +++ b/xen/arch/arm/vgic-its.c
> @@ -223,6 +223,33 @@ out_unlock:
> return ret;
> }
>
> +static int its_handle_mapc(struct virt_its *its, uint64_t *cmdptr)
> +{
> + uint32_t collid = its_cmd_get_collection(cmdptr);
> + uint64_t rdbase = its_cmd_mask_field(cmdptr, 2, 16, 44);
> + int ret = -1;
I take 44 is a bit arbitrary here? It might be best to #define it.
> + if ( collid >= its->max_collections )
> + return ret;
> +
> + if ( rdbase >= its->d->max_vcpus )
> + return ret;
> +
> + spin_lock(&its->its_lock);
> + if ( its->coll_table )
> + {
> + if ( its_cmd_get_validbit(cmdptr) )
> + its->coll_table[collid] = rdbase;
> + else
> + its->coll_table[collid] = UNMAPPED_COLLECTION;
> +
> + ret = 0;
> + }
> + spin_unlock(&its->its_lock);
> +
> + return ret;
> +}
> +
> #define ITS_CMD_BUFFER_SIZE(baser) ((((baser) & 0xff) + 1) << 12)
>
> static int vgic_its_handle_cmds(struct domain *d, struct virt_its *its,
> @@ -249,6 +276,9 @@ static int vgic_its_handle_cmds(struct domain *d, struct virt_its *its,
> case GITS_CMD_INT:
> its_handle_int(its, cmdptr);
> break;
> + case GITS_CMD_MAPC:
> + its_handle_mapc(its, cmdptr);
> + break;
> case GITS_CMD_SYNC:
> /* We handle ITS commands synchronously, so we ignore SYNC. */
> break;
> --
> 2.9.0
>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply
* Re: [PATCH 2/2] kernel: Support compiling out the prctl syscall
From: Josh Triplett @ 2016-11-09 0:47 UTC (permalink / raw)
To: Kees Cook
Cc: Andrew Morton, Johannes Weiner, Arnd Bergmann, Ingo Molnar,
Andy Lutomirski, Petr Mladek, Thomas Garnier, Ard Biesheuvel,
Nicolas Pitre, Zefan Li, Li Bin, Eric W. Biederman, Dmitry Vyukov,
Ralf Baechle, Alex Thorlton, Michal Hocko, Mateusz Guzik,
Cyrill Gorcunov, John Stultz, Al Viro, Zach Brown, Anna Schumaker,
Dave Hansen, LKML, Linux API
In-Reply-To: <CAGXu5j+V11oF0gcqBQTsBMgetsSdRqLQffobhyEbze82gbW2vA@mail.gmail.com>
On Tue, Nov 08, 2016 at 04:40:02PM -0800, Kees Cook wrote:
> On Tue, Nov 8, 2016 at 4:18 PM, Josh Triplett <josh@joshtriplett.org> wrote:
> > Some embedded systems can do without the prctl syscall, saving some
> > space.
> >
> > This also avoids regular increases in tinyconfig size as people add more
> > non-optional functionality to prctl (observed via the 0-day kernel
> > infrastructure).
> >
> > bloat-o-meter results:
> >
> > add/remove: 0/3 grow/shrink: 0/1 up/down: 0/-2143 (-2143)
> > function old new delta
> > offsets 23 12 -11
> > prctl_set_auxv 97 - -97
> > sys_prctl 794 - -794
> > prctl_set_mm 1241 - -1241
> > Total: Before=1902583, After=1900440, chg -0.11%
> >
> > Signed-off-by: Josh Triplett <josh@joshtriplett.org>
>
> I'm absolutely a fan of doing this, but I wonder how this interacts
> with the LSMs that define prctl hooks, etc. I wouldn't expect a system
> that didn't want prctl to want an LSM, but maybe the LSMs all need to
> depend on CONFIG_PRCTL now?
I did think about that (as well as SECCOMP), but I did confirm that the
kernel builds fine with allyesconfig minus CONFIG_PRCTL. An LSM that
wants to restrict access to some prctls should be fine with no process
having any access to prctl. :) Beyond that, anything wanting
configuration via LSM (such as SECCOMP) still exists and functions, even
if you can't access it from outside the kernel.
^ permalink raw reply
* Re: [PATCH 2/2] kernel: Support compiling out the prctl syscall
From: Josh Triplett @ 2016-11-09 0:47 UTC (permalink / raw)
To: Kees Cook
Cc: Andrew Morton, Johannes Weiner, Arnd Bergmann, Ingo Molnar,
Andy Lutomirski, Petr Mladek, Thomas Garnier, Ard Biesheuvel,
Nicolas Pitre, Zefan Li, Li Bin, Eric W. Biederman, Dmitry Vyukov,
Ralf Baechle, Alex Thorlton, Michal Hocko, Mateusz Guzik,
Cyrill Gorcunov, John Stultz, Al Viro, Zach Brown
In-Reply-To: <CAGXu5j+V11oF0gcqBQTsBMgetsSdRqLQffobhyEbze82gbW2vA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
On Tue, Nov 08, 2016 at 04:40:02PM -0800, Kees Cook wrote:
> On Tue, Nov 8, 2016 at 4:18 PM, Josh Triplett <josh-iaAMLnmF4UmaiuxdJuQwMA@public.gmane.org> wrote:
> > Some embedded systems can do without the prctl syscall, saving some
> > space.
> >
> > This also avoids regular increases in tinyconfig size as people add more
> > non-optional functionality to prctl (observed via the 0-day kernel
> > infrastructure).
> >
> > bloat-o-meter results:
> >
> > add/remove: 0/3 grow/shrink: 0/1 up/down: 0/-2143 (-2143)
> > function old new delta
> > offsets 23 12 -11
> > prctl_set_auxv 97 - -97
> > sys_prctl 794 - -794
> > prctl_set_mm 1241 - -1241
> > Total: Before=1902583, After=1900440, chg -0.11%
> >
> > Signed-off-by: Josh Triplett <josh-iaAMLnmF4UmaiuxdJuQwMA@public.gmane.org>
>
> I'm absolutely a fan of doing this, but I wonder how this interacts
> with the LSMs that define prctl hooks, etc. I wouldn't expect a system
> that didn't want prctl to want an LSM, but maybe the LSMs all need to
> depend on CONFIG_PRCTL now?
I did think about that (as well as SECCOMP), but I did confirm that the
kernel builds fine with allyesconfig minus CONFIG_PRCTL. An LSM that
wants to restrict access to some prctls should be fine with no process
having any access to prctl. :) Beyond that, anything wanting
configuration via LSM (such as SECCOMP) still exists and functions, even
if you can't access it from outside the kernel.
^ permalink raw reply
* Re: [PATCH v4] drm: bridge: add DesignWare HDMI I2S audio support
From: Kuninori Morimoto @ 2016-11-09 0:47 UTC (permalink / raw)
To: Russell King - ARM Linux
Cc: Archit Taneja, Mark Brown, David Airlie, Fabio Estevam,
Daniel Vetter, Koji Matsuoka, Thierry Reding, Linux-ALSA,
Liam Girdwood, Simon, linux-renesas-soc, dri-devel, linux-kernel,
Jose Abreu
In-Reply-To: <20161108111009.GO1041@n2100.armlinux.org.uk>
Hi Russell
> > @@ -11,4 +11,11 @@ struct dw_hdmi_audio_data {
> > u8 *eld;
> > };
> >
> > +struct dw_hdmi_i2s_audio_data {
> > + struct dw_hdmi *hdmi;
> > +
> > + void (*write)(struct dw_hdmi *hdmi, u8 val, int offset);
> > + u8 (*read)(struct dw_hdmi *hdmi, int offset);
> > +};
>
> Another slight concern here is why we need this separate data for i2s -
> maybe adding the write/read ops to struct dw_hdmi_audio_data would be
> a better thing to do, which would then allow the AHB audio to drop
> the .base argument in the future.
>
> I'm not that bothered about this though. So...
Thank you for your feedback.
Maybe we can merge these in incremental patch if needed ?
^ permalink raw reply
* Re: [PATCH v4] drm: bridge: add DesignWare HDMI I2S audio support
From: Kuninori Morimoto @ 2016-11-09 0:47 UTC (permalink / raw)
To: Russell King - ARM Linux
Cc: Archit Taneja, Mark Brown, David Airlie, Fabio Estevam,
Daniel Vetter, Koji Matsuoka, Thierry Reding, Linux-ALSA,
Liam Girdwood, Simon, linux-renesas-soc, dri-devel, linux-kernel,
Jose Abreu
In-Reply-To: <20161108111009.GO1041@n2100.armlinux.org.uk>
Hi Russell
> > @@ -11,4 +11,11 @@ struct dw_hdmi_audio_data {
> > u8 *eld;
> > };
> >
> > +struct dw_hdmi_i2s_audio_data {
> > + struct dw_hdmi *hdmi;
> > +
> > + void (*write)(struct dw_hdmi *hdmi, u8 val, int offset);
> > + u8 (*read)(struct dw_hdmi *hdmi, int offset);
> > +};
>
> Another slight concern here is why we need this separate data for i2s -
> maybe adding the write/read ops to struct dw_hdmi_audio_data would be
> a better thing to do, which would then allow the AHB audio to drop
> the .base argument in the future.
>
> I'm not that bothered about this though. So...
Thank you for your feedback.
Maybe we can merge these in incremental patch if needed ?
^ permalink raw reply
* Re: [PATCH] i2c: imx: defer probe if bus recovery GPIOs are not ready
From: Stefan Agner @ 2016-11-09 0:34 UTC (permalink / raw)
To: stable; +Cc: Wolfram Sang, stable
In-Reply-To: <20161109003239.16940-1-stefan@agner.ch>
On 2016-11-08 16:32, Stefan Agner wrote:
> commit 533169d164c6b4c8571d0d48779f6ff6be593d72 upstream.
>
> Some SoC might load the GPIO driver after the I2C driver and
> using the I2C bus recovery mechanism via GPIOs. In this case
> it is crucial to defer probing if the GPIO request functions
> do so, otherwise the I2C driver gets loaded without recovery
> mechanisms enabled.
>
> Signed-off-by: Stefan Agner <stefan@agner.ch>
> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> Acked-by: Li Yang <leoyang.li@nxp.com>
> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
> Cc: stable@kernel.org
I forgot to mention, this should be applied to 4.4 only.
Later versions made the return value void, and it would require a larger
rework. I am mainly concerned about LTS...
--
Stefan
> ---
> drivers/i2c/busses/i2c-imx.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c
> index d4d8536..32fae2c 100644
> --- a/drivers/i2c/busses/i2c-imx.c
> +++ b/drivers/i2c/busses/i2c-imx.c
> @@ -1002,10 +1002,13 @@ static void i2c_imx_init_recovery_info(struct
> imx_i2c_struct *i2c_imx,
> rinfo->scl_gpio = of_get_named_gpio_flags(pdev->dev.of_node,
> "scl-gpios", 0, NULL);
>
> - if (!gpio_is_valid(rinfo->sda_gpio) ||
> - !gpio_is_valid(rinfo->scl_gpio) ||
> - IS_ERR(i2c_imx->pinctrl_pins_default) ||
> - IS_ERR(i2c_imx->pinctrl_pins_gpio)) {
> + if (rinfo->sda_gpio == -EPROBE_DEFER ||
> + rinfo->scl_gpio == -EPROBE_DEFER) {
> + return -EPROBE_DEFER;
> + } else if (!gpio_is_valid(rinfo->sda_gpio) ||
> + !gpio_is_valid(rinfo->scl_gpio) ||
> + IS_ERR(i2c_imx->pinctrl_pins_default) ||
> + IS_ERR(i2c_imx->pinctrl_pins_gpio)) {
> dev_dbg(&pdev->dev, "recovery information incomplete\n");
> return;
> }
^ permalink raw reply
* Re: [pinctrl:devel 43/47] drivers/pinctrl/samsung/pinctrl-s3c64xx.c:283:9: error: 'struct samsung_pinctrl_drv_data' has no member named 'virt_base'; did you mean 'pin_base'?
From: Chanwoo Choi @ 2016-11-09 0:47 UTC (permalink / raw)
To: Linus Walleij
Cc: kbuild-all@01.org, linux-gpio@vger.kernel.org,
Krzysztof Kozlowski
In-Reply-To: <CACRpkdZ=Uc5Ugw8=VM823tPKzsA=UghQc75pkd1pcWp4QAbJ5A@mail.gmail.com>
Hi Linus,
On 2016년 11월 08일 22:17, Linus Walleij wrote:
> On Tue, Nov 8, 2016 at 1:58 PM, kbuild test robot
> <fengguang.wu@intel.com> wrote:
>
>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git devel
>> head: 05e51a4da2af5f68c911adcb888f103460a2e5b3
>> commit: e40fde2c098df8bbaf82b5b80b43aa49eb2cb9af [43/47] pinctrl: samsung: Add the support the multiple IORESOURCE_MEM for one pin-bank
>> config: arm-allmodconfig (attached as .config)
>> compiler: arm-linux-gnueabi-gcc (Debian 6.1.1-9) 6.1.1 20160705
>> reproduce:
>> wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
>> chmod +x ~/bin/make.cross
>> git checkout e40fde2c098df8bbaf82b5b80b43aa49eb2cb9af
>> # save the attached .config to linux build tree
>> make.cross ARCH=arm
>>
>> All error/warnings (new ones prefixed by >>):
>>
>> drivers/pinctrl/samsung/pinctrl-s3c64xx.c: In function 's3c64xx_irq_set_function':
>>>> drivers/pinctrl/samsung/pinctrl-s3c64xx.c:283:9: error: 'struct samsung_pinctrl_drv_data' has no member named 'virt_base'; did you mean 'pin_base'?
>> reg = d->virt_base + bank->pctl_offset;
>> ^~
>
> This patch does not compile. I took out both patches from my tree as they
> are causing build regressions.
>
> Please develop against the latest release candidate or the "devel" branch
> in the pin control tree.
>
> Please also split the patches better as Krzysztof requested.
I'm sorry for my mistake. I'll resend the patch after fixing it.
Best Regards,
Chanwoo Choi
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.